From: Jason Merrill Date: Tue, 9 Oct 2001 15:44:25 +0000 (-0400) Subject: reorganize X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=12eac81ab0ea8146723271aca4838a4e09fc645d;p=gcc.git reorganize From-SVN: r46125 --- diff --git a/gcc/testsuite/g++.dg/README b/gcc/testsuite/g++.dg/README index 318b819834d..edf1d5a38a5 100644 --- a/gcc/testsuite/g++.dg/README +++ b/gcc/testsuite/g++.dg/README @@ -5,8 +5,9 @@ eh Tests for exception handling. ext Tests for GNU language extensions. inherit Tests for inheritance -- virtual functions, multiple inheritance, etc. init Tests for initialization semantics, constructors/destructors, etc. -lookup Tests for lookup semantics, namespaces, etc. +lookup Tests for lookup semantics, namespaces, using, etc. overload Tests for overload resolution and conversions. +parse Tests for parsing. rtti Tests for run-time type identification (typeid, dynamic_cast, etc.) template Tests for templates. warn Tests for compiler warnings. diff --git a/gcc/testsuite/g++.dg/init/array1.C b/gcc/testsuite/g++.dg/init/array1.C new file mode 100644 index 00000000000..8618e1e6018 --- /dev/null +++ b/gcc/testsuite/g++.dg/init/array1.C @@ -0,0 +1,26 @@ +// Test that completing an array declared with a typedef doesn't change +// the typedef. + +// { dg-do run } + +typedef int iArr[]; + +const iArr array4={ + {1},{2},{3},{4} +}; + +const iArr array3={ + {1},{2},{3} +}; + +const iArr array5={ + {1},{2},{3},{4},{5} +}; + +int main() +{ + if (sizeof (array4)/sizeof (array4[0]) != 4 + || sizeof (array3)/sizeof (array3[0]) != 3 + || sizeof (array5)/sizeof (array5[0]) != 5) + return 1; +} diff --git a/gcc/testsuite/g++.dg/lookup/using2.C b/gcc/testsuite/g++.dg/lookup/using2.C new file mode 100644 index 00000000000..aac33423336 --- /dev/null +++ b/gcc/testsuite/g++.dg/lookup/using2.C @@ -0,0 +1,44 @@ +// Copyright (C) 2001 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, +// USA. + +// Contributed by Gabriel Dos Reis + +// { dg-do compile } + +namespace N +{ + template void f() {} +} + +using N::f< 0 >; // { dg-error "using-declaration" "" } + +struct A { + template void f(T); + template struct X { }; +}; + +struct B : A { + using A::X; // OK + using A::f; // OK +}; + +struct C : A { + using A::f; // { dg-error "using-declaration" "" } + using A::X; // { dg-error "parse error" "" } +}; + diff --git a/gcc/testsuite/g++.dg/other/parse-angle-bracket.C b/gcc/testsuite/g++.dg/other/parse-angle-bracket.C deleted file mode 100644 index 9c1f2476c71..00000000000 --- a/gcc/testsuite/g++.dg/other/parse-angle-bracket.C +++ /dev/null @@ -1,9 +0,0 @@ -// Contributed by Gabriel Dos Reis -// Origin: Bill Somerville -// { dg-do compile } - -int main() -{ - ( int() > int() ); // { dg-bogus "parse" "" { xfail *-*-* } } - return 0; -} diff --git a/gcc/testsuite/g++.dg/other/using-declaration.C b/gcc/testsuite/g++.dg/other/using-declaration.C deleted file mode 100644 index aac33423336..00000000000 --- a/gcc/testsuite/g++.dg/other/using-declaration.C +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (C) 2001 Free Software Foundation, Inc. -// -// This file is part of the GNU ISO C++ Library. This library is free -// software; you can redistribute it and/or modify it under the -// terms of the GNU General Public License as published by the -// Free Software Foundation; either version 2, or (at your option) -// any later version. - -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License along -// with this library; see the file COPYING. If not, write to the Free -// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -// USA. - -// Contributed by Gabriel Dos Reis - -// { dg-do compile } - -namespace N -{ - template void f() {} -} - -using N::f< 0 >; // { dg-error "using-declaration" "" } - -struct A { - template void f(T); - template struct X { }; -}; - -struct B : A { - using A::X; // OK - using A::f; // OK -}; - -struct C : A { - using A::f; // { dg-error "using-declaration" "" } - using A::X; // { dg-error "parse error" "" } -}; - diff --git a/gcc/testsuite/g++.dg/parse/angle-bracket.C b/gcc/testsuite/g++.dg/parse/angle-bracket.C new file mode 100644 index 00000000000..9c1f2476c71 --- /dev/null +++ b/gcc/testsuite/g++.dg/parse/angle-bracket.C @@ -0,0 +1,9 @@ +// Contributed by Gabriel Dos Reis +// Origin: Bill Somerville +// { dg-do compile } + +int main() +{ + ( int() > int() ); // { dg-bogus "parse" "" { xfail *-*-* } } + return 0; +}