From: Giovanni Bajo Date: Tue, 17 Feb 2004 15:33:49 +0000 (+0000) Subject: dr176.C: Add missing semicolon (typo). X-Git-Tag: releases/gcc-4.0.0~10071 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cc7ce44e4c87839efaaddd07d1f03cc50a78d047;p=thirdparty%2Fgcc.git dr176.C: Add missing semicolon (typo). * g++.dg/tc1/dr176.C: Add missing semicolon (typo). * g++.dg/tc1/dr101.C, g++.dg/tc1/dr135.C, g++.dg/tc1/dr142.C, g++.dg/tc1/dr152.C, g++.dg/tc1/dr159.C, g++.dg/tc1/dr161.C, g++.dg/tc1/dr166.C, g++.dg/tc1/dr176.C, g++.dg/tc1/dr193.C, g++.dg/tc1/dr194.C, g++.dg/tc1/dr217.C, g++.dg/tc1/dr56.C, g++.dg/tc1/dr68.C, g++.dg/tc1/dr76.C, g++.dg/tc1/dr80.C, g++.dg/tc1/dr94.C: Fix line terminator. From-SVN: r77950 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 90b56780ef38..2f5a95651a2f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,13 @@ +2004-02-17 Giovanni Bajo + + * g++.dg/tc1/dr176.C: Add missing semicolon (typo). + * g++.dg/tc1/dr101.C, g++.dg/tc1/dr135.C, g++.dg/tc1/dr142.C, + g++.dg/tc1/dr152.C, g++.dg/tc1/dr159.C, g++.dg/tc1/dr161.C, + g++.dg/tc1/dr166.C, g++.dg/tc1/dr176.C, g++.dg/tc1/dr193.C, + g++.dg/tc1/dr194.C, g++.dg/tc1/dr217.C, g++.dg/tc1/dr56.C, + g++.dg/tc1/dr68.C, g++.dg/tc1/dr76.C, g++.dg/tc1/dr80.C, + g++.dg/tc1/dr94.C: Fix line terminator. + 2004-02-16 Geoffrey Keating * gcc.c-torture/compile/20040216-1.c: New. diff --git a/gcc/testsuite/g++.dg/tc1/dr101.C b/gcc/testsuite/g++.dg/tc1/dr101.C index 79cb1b0ebe3d..ede2215601f0 100644 --- a/gcc/testsuite/g++.dg/tc1/dr101.C +++ b/gcc/testsuite/g++.dg/tc1/dr101.C @@ -1,31 +1,31 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR101: Redeclaration of extern "C" names via using-declarations - -namespace Test1 { - - typedef unsigned int X; - extern "C" void f1(); - namespace N { - typedef unsigned int X; - extern "C" void f1(); - } - using N::f1; // { dg-bogus "" "redeclaration through 'using' should not be ambiguous" } - using N::X; // { dg-bogus "" "redeclaration through 'using' should not be ambiguous" } -} - - -namespace Test2 { - - typedef unsigned int X; - extern "C" int f2(); - namespace N { - typedef unsigned int X; - extern "C" int f2(); - } - using namespace N; - int i = f2(); // { dg-bogus "" "redeclaration through 'using' should not be ambiguous" } - X x; // { dg-bogus "" "redeclaration through 'using' should not be ambiguous" { xfail *-*-* } } - -} - +// DR101: Redeclaration of extern "C" names via using-declarations + +namespace Test1 { + + typedef unsigned int X; + extern "C" void f1(); + namespace N { + typedef unsigned int X; + extern "C" void f1(); + } + using N::f1; // { dg-bogus "" "redeclaration through 'using' should not be ambiguous" } + using N::X; // { dg-bogus "" "redeclaration through 'using' should not be ambiguous" } +} + + +namespace Test2 { + + typedef unsigned int X; + extern "C" int f2(); + namespace N { + typedef unsigned int X; + extern "C" int f2(); + } + using namespace N; + int i = f2(); // { dg-bogus "" "redeclaration through 'using' should not be ambiguous" } + X x; // { dg-bogus "" "redeclaration through 'using' should not be ambiguous" { xfail *-*-* } } + +} + diff --git a/gcc/testsuite/g++.dg/tc1/dr135.C b/gcc/testsuite/g++.dg/tc1/dr135.C index 91a7727e3757..beed8cdfd7fa 100644 --- a/gcc/testsuite/g++.dg/tc1/dr135.C +++ b/gcc/testsuite/g++.dg/tc1/dr135.C @@ -1,8 +1,8 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR135: Class type in in-class member function definitions - -struct S { - S f() { return S(); } // { dg-bogus "" "incomplete class type is allowed as return type" } - void g(S) { } // { dg-bogus "" "incomplete class type is allowed as parameter type" } -}; +// DR135: Class type in in-class member function definitions + +struct S { + S f() { return S(); } // { dg-bogus "" "incomplete class type is allowed as return type" } + void g(S) { } // { dg-bogus "" "incomplete class type is allowed as parameter type" } +}; diff --git a/gcc/testsuite/g++.dg/tc1/dr142.C b/gcc/testsuite/g++.dg/tc1/dr142.C index 6043c3d87e2b..c49f4dd20d34 100644 --- a/gcc/testsuite/g++.dg/tc1/dr142.C +++ b/gcc/testsuite/g++.dg/tc1/dr142.C @@ -1,32 +1,32 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR142: Injection-related errors in access example - -class B { // { dg-error "inaccessible" } -public: - int mi; // { dg-error "inaccessible" } - static int si; // { dg-error "inaccessible" } -}; - -class D: private B { -}; - -class DD: public D { - void f(); -}; - -void DD::f() { - mi = 3; // { dg-error "within this context" "" } - si = 3; // { dg-error "within this context" "" } - ::B b; - b.mi = 3; - b.si = 3; - ::B::si = 3; - ::B* bp1 = this; // { dg-error "inaccessible base" "" } - ::B* bp2 = (::B*)this; - bp2->mi = 3; - - - B b2; // { dg-error "within this context" "" } - B::si = 3; // { dg-error "within this context" "" } -} +// DR142: Injection-related errors in access example + +class B { // { dg-error "inaccessible" } +public: + int mi; // { dg-error "inaccessible" } + static int si; // { dg-error "inaccessible" } +}; + +class D: private B { +}; + +class DD: public D { + void f(); +}; + +void DD::f() { + mi = 3; // { dg-error "within this context" "" } + si = 3; // { dg-error "within this context" "" } + ::B b; + b.mi = 3; + b.si = 3; + ::B::si = 3; + ::B* bp1 = this; // { dg-error "inaccessible base" "" } + ::B* bp2 = (::B*)this; + bp2->mi = 3; + + + B b2; // { dg-error "within this context" "" } + B::si = 3; // { dg-error "within this context" "" } +} diff --git a/gcc/testsuite/g++.dg/tc1/dr152.C b/gcc/testsuite/g++.dg/tc1/dr152.C index 23c73b5e4e3f..1b6dd870d189 100644 --- a/gcc/testsuite/g++.dg/tc1/dr152.C +++ b/gcc/testsuite/g++.dg/tc1/dr152.C @@ -1,36 +1,36 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR152: explicit copy constructors +// DR152: explicit copy constructors -namespace N1 { - struct X { - X(); - explicit X(const X&); - }; - void f(X); - int foo() - { - X x; - f(x); // { dg-error "" "" } - } +namespace N1 { + struct X { + X(); + explicit X(const X&); + }; + void f(X); + int foo() + { + X x; + f(x); // { dg-error "" "" } + } } -namespace N2 { - template - struct X { - X(); - explicit X(const X&); - }; - - template - void f(T ) {} - - template - int foo() - { - X x; - N2::f(x); // { dg-error "" "" } - } - - template int foo(); // { dg-error "instantiated from here" } +namespace N2 { + template + struct X { + X(); + explicit X(const X&); + }; + + template + void f(T ) {} + + template + int foo() + { + X x; + N2::f(x); // { dg-error "" "" } + } + + template int foo(); // { dg-error "instantiated from here" } } diff --git a/gcc/testsuite/g++.dg/tc1/dr159.C b/gcc/testsuite/g++.dg/tc1/dr159.C index 6d04921f7cd5..74d23f1cd1fa 100644 --- a/gcc/testsuite/g++.dg/tc1/dr159.C +++ b/gcc/testsuite/g++.dg/tc1/dr159.C @@ -1,12 +1,12 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR159: Namespace qualification in declarators - -namespace N { - namespace M { - void f(); - void g(); - } - void M::f(){} - void N::M::g(){} -} +// DR159: Namespace qualification in declarators + +namespace N { + namespace M { + void f(); + void g(); + } + void M::f(){} + void N::M::g(){} +} diff --git a/gcc/testsuite/g++.dg/tc1/dr161.C b/gcc/testsuite/g++.dg/tc1/dr161.C index f08935354f89..49f679a0c1d6 100644 --- a/gcc/testsuite/g++.dg/tc1/dr161.C +++ b/gcc/testsuite/g++.dg/tc1/dr161.C @@ -1,50 +1,50 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR161: Access to protected nested type - -namespace N1 { - struct A - { - protected: - typedef int type; - }; - - struct B : public A - { - void test(void) - { - A::type t; - } - - friend void ftest(void) - { - A::type t; - } - }; -} - - -namespace N2 { - template - struct A - { - protected: - typedef int type; - }; - - template - struct B : public A - { - void test(B b) - { - typename A::type t; - } - - friend void ftest(B b) - { - typename A::type t; - } - }; - - template struct B; -} +// DR161: Access to protected nested type + +namespace N1 { + struct A + { + protected: + typedef int type; + }; + + struct B : public A + { + void test(void) + { + A::type t; + } + + friend void ftest(void) + { + A::type t; + } + }; +} + + +namespace N2 { + template + struct A + { + protected: + typedef int type; + }; + + template + struct B : public A + { + void test(B b) + { + typename A::type t; + } + + friend void ftest(B b) + { + typename A::type t; + } + }; + + template struct B; +} diff --git a/gcc/testsuite/g++.dg/tc1/dr166.C b/gcc/testsuite/g++.dg/tc1/dr166.C index 6f2a26df501c..cc4631a5f38a 100644 --- a/gcc/testsuite/g++.dg/tc1/dr166.C +++ b/gcc/testsuite/g++.dg/tc1/dr166.C @@ -1,60 +1,60 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR166: Friend declarations of template-ids - -namespace N { - template void f(T); - void g(); - - namespace M { - class A { - friend void f(int); // N::f - static int x; // { dg-error "private" } - }; - - class B { - template friend void f(T); // M::f - static int x; // { dg-error "private" } - }; - - class C { - friend void g(); // M::g - static int x; // { dg-error "private" } - }; - - template void f(T) // will be instantiated as f - { - M::A::x = 0; // { dg-error "within this context" } - M::B::x = 0; - } - template <> void f(int) - { M::A::x = 0; } // { dg-error "within this context" } - template <> void f(double ) - { - M::B::x = 0; - M::f(0); // { dg-error "instantiated" } - } - - void g(void) - { M::C::x = 0; } - } - - template void f(T) // will be instantiated as f - { - M::A::x = 0; // { dg-error "within this context" } - M::B::x = 0; // { dg-error "within this context" } - } - - template <> void f(int ) - { - N::f(0); // { dg-error "instantiated" } - M::A::x = 0; - M::B::x = 0; // { dg-error "within this context" } - } - - template <> void f(char ) - { M::A::x = 0; } // { dg-error "within this context" } - - void g(void) - { M::C::x = 0; } // { dg-error "within this context" } -} +// DR166: Friend declarations of template-ids + +namespace N { + template void f(T); + void g(); + + namespace M { + class A { + friend void f(int); // N::f + static int x; // { dg-error "private" } + }; + + class B { + template friend void f(T); // M::f + static int x; // { dg-error "private" } + }; + + class C { + friend void g(); // M::g + static int x; // { dg-error "private" } + }; + + template void f(T) // will be instantiated as f + { + M::A::x = 0; // { dg-error "within this context" } + M::B::x = 0; + } + template <> void f(int) + { M::A::x = 0; } // { dg-error "within this context" } + template <> void f(double ) + { + M::B::x = 0; + M::f(0); // { dg-error "instantiated" } + } + + void g(void) + { M::C::x = 0; } + } + + template void f(T) // will be instantiated as f + { + M::A::x = 0; // { dg-error "within this context" } + M::B::x = 0; // { dg-error "within this context" } + } + + template <> void f(int ) + { + N::f(0); // { dg-error "instantiated" } + M::A::x = 0; + M::B::x = 0; // { dg-error "within this context" } + } + + template <> void f(char ) + { M::A::x = 0; } // { dg-error "within this context" } + + void g(void) + { M::C::x = 0; } // { dg-error "within this context" } +} diff --git a/gcc/testsuite/g++.dg/tc1/dr176.C b/gcc/testsuite/g++.dg/tc1/dr176.C index b308ad8693b2..aad805bbd2ee 100644 --- a/gcc/testsuite/g++.dg/tc1/dr176.C +++ b/gcc/testsuite/g++.dg/tc1/dr176.C @@ -1,29 +1,29 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR176: Name injection and templates - -namespace N1 { - template struct Base { - Base* p; - Base* p2; - ::Base* p3; // { dg-error "" "" } - }; - - template struct Derived: public Base { - Base* p; // { dg-bogus "" "injected class name in derived classes" { xfail *-*-* } } - Base* p2; - typename Derived::Base* p3; // { dg-bogus "" "injected class name in derived classes" { xfail *-*-* } } - }; - - template struct Derived; // { dg-bogus "instantiated from here" "everything should be looked up at parsing time (after DR224)" { xfail *-*-* } } -} - - -namespace N2 { - template struct Base {}; - template struct Derived: public Base { - typename Derived::template Base* p1; // { dg-bogus "" "" { xfail *-*-* } } - } - - template struct Derived; -} +// DR176: Name injection and templates + +namespace N1 { + template struct Base { + Base* p; + Base* p2; + ::Base* p3; // { dg-error "" "" } + }; + + template struct Derived: public Base { + Base* p; // { dg-bogus "" "injected class name in derived classes" { xfail *-*-* } } + Base* p2; + typename Derived::Base* p3; // { dg-bogus "" "injected class name in derived classes" { xfail *-*-* } } + }; + + template struct Derived; // { dg-bogus "instantiated from here" "everything should be looked up at parsing time (after DR224)" { xfail *-*-* } } +} + + +namespace N2 { + template struct Base {}; + template struct Derived: public Base { + typename Derived::template Base* p1; // { dg-bogus "" "" { xfail *-*-* } } + }; + + template struct Derived; +} diff --git a/gcc/testsuite/g++.dg/tc1/dr193.C b/gcc/testsuite/g++.dg/tc1/dr193.C index 1319b884aa78..5855593e5a98 100644 --- a/gcc/testsuite/g++.dg/tc1/dr193.C +++ b/gcc/testsuite/g++.dg/tc1/dr193.C @@ -1,72 +1,72 @@ // { dg-do run } // Origin: Giovanni Bajo -// DR193: Order of destruction of local automatics of destructor - -extern "C" void abort(void); - -namespace N1 { - bool a_done = false; - struct A - { - ~A() - { - a_done = true; - } - }; - - struct B - { - ~B() - { - if (!a_done) - abort(); - } - }; - - struct C { - B x; - ~C() { - A y; - }; - }; -} - - -namespace N2 { - bool a_done = false; - - template - struct A - { - ~A() - { - a_done = true; - } - }; - - template - struct B - { - ~B() - { - if (!a_done) - abort(); - } - }; - - template - struct C { - B x; - ~C() { - A y; - }; - }; -} - - -int main(void) -{ - N1::C c1; - N2::C c2; - return 0; -} +// DR193: Order of destruction of local automatics of destructor + +extern "C" void abort(void); + +namespace N1 { + bool a_done = false; + struct A + { + ~A() + { + a_done = true; + } + }; + + struct B + { + ~B() + { + if (!a_done) + abort(); + } + }; + + struct C { + B x; + ~C() { + A y; + }; + }; +} + + +namespace N2 { + bool a_done = false; + + template + struct A + { + ~A() + { + a_done = true; + } + }; + + template + struct B + { + ~B() + { + if (!a_done) + abort(); + } + }; + + template + struct C { + B x; + ~C() { + A y; + }; + }; +} + + +int main(void) +{ + N1::C c1; + N2::C c2; + return 0; +} diff --git a/gcc/testsuite/g++.dg/tc1/dr194.C b/gcc/testsuite/g++.dg/tc1/dr194.C index 3491468b74e8..3ed130071eb8 100644 --- a/gcc/testsuite/g++.dg/tc1/dr194.C +++ b/gcc/testsuite/g++.dg/tc1/dr194.C @@ -3,14 +3,14 @@ // DR194: Identifying constructors struct A -{ - inline explicit A(); +{ + inline explicit A(); }; template struct B -{ - inline explicit B(); +{ + inline explicit B(); }; template struct B; diff --git a/gcc/testsuite/g++.dg/tc1/dr217.C b/gcc/testsuite/g++.dg/tc1/dr217.C index 1fb3ce29ba8d..cfa2803974d6 100644 --- a/gcc/testsuite/g++.dg/tc1/dr217.C +++ b/gcc/testsuite/g++.dg/tc1/dr217.C @@ -1,14 +1,14 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR217: Default arguments for non-template member functions of class -// templates - -template -struct S -{ - void foo (int); -}; - -template -void S::foo (int = 0) // { dg-error "" "default arguments for parameters of member functions of class templates can be specified in the initial declaration only" { xfail *-*-* } } -{ } +// DR217: Default arguments for non-template member functions of class +// templates + +template +struct S +{ + void foo (int); +}; + +template +void S::foo (int = 0) // { dg-error "" "default arguments for parameters of member functions of class templates can be specified in the initial declaration only" { xfail *-*-* } } +{ } diff --git a/gcc/testsuite/g++.dg/tc1/dr48.C b/gcc/testsuite/g++.dg/tc1/dr48.C index 16732d2dad22..19c173878223 100644 --- a/gcc/testsuite/g++.dg/tc1/dr48.C +++ b/gcc/testsuite/g++.dg/tc1/dr48.C @@ -1,13 +1,13 @@ // { dg-do link } // Origin: Giovanni Bajo -// DR48: Definitions of unused static members - -struct A { - static const int size = 10; - int array[size]; -}; - -int main() { - A a; - return 0; -} +// DR48: Definitions of unused static members + +struct A { + static const int size = 10; + int array[size]; +}; + +int main() { + A a; + return 0; +} diff --git a/gcc/testsuite/g++.dg/tc1/dr56.C b/gcc/testsuite/g++.dg/tc1/dr56.C index 1451ce8cf932..a5caea82655e 100644 --- a/gcc/testsuite/g++.dg/tc1/dr56.C +++ b/gcc/testsuite/g++.dg/tc1/dr56.C @@ -1,12 +1,12 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR56: Redeclaring typedefs within classes - -class X { - typedef int I; - typedef int I; // { dg-error "" "Cannot redeclare a typedef in a class scope" { xfail *-*-* } } -}; - -// In non-class scope, they are allowed. -typedef int A; -typedef int A; +// DR56: Redeclaring typedefs within classes + +class X { + typedef int I; + typedef int I; // { dg-error "" "Cannot redeclare a typedef in a class scope" { xfail *-*-* } } +}; + +// In non-class scope, they are allowed. +typedef int A; +typedef int A; diff --git a/gcc/testsuite/g++.dg/tc1/dr68.C b/gcc/testsuite/g++.dg/tc1/dr68.C index 60b2c6b6c84b..253f049432d7 100644 --- a/gcc/testsuite/g++.dg/tc1/dr68.C +++ b/gcc/testsuite/g++.dg/tc1/dr68.C @@ -1,20 +1,20 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR68: Grammar does not allow "friend class A;" - -namespace A{ - class B{}; -} - -namespace B{ - class A{}; - class C{ - friend class ::A::B; - }; -} - - -template class K; -class J { - friend class K; -}; +// DR68: Grammar does not allow "friend class A;" + +namespace A{ + class B{}; +} + +namespace B{ + class A{}; + class C{ + friend class ::A::B; + }; +} + + +template class K; +class J { + friend class K; +}; diff --git a/gcc/testsuite/g++.dg/tc1/dr76.C b/gcc/testsuite/g++.dg/tc1/dr76.C index dfe7ecf80c2d..6d3d1c12a048 100644 --- a/gcc/testsuite/g++.dg/tc1/dr76.C +++ b/gcc/testsuite/g++.dg/tc1/dr76.C @@ -1,8 +1,8 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR76: Are const volatile variables considered "constant expressions"? - -volatile const int a = 5; - -template struct K; -template struct K; // { dg-error "non-constant" } +// DR76: Are const volatile variables considered "constant expressions"? + +volatile const int a = 5; + +template struct K; +template struct K; // { dg-error "non-constant" } diff --git a/gcc/testsuite/g++.dg/tc1/dr80.C b/gcc/testsuite/g++.dg/tc1/dr80.C index e7d373169be6..2327428a0b55 100644 --- a/gcc/testsuite/g++.dg/tc1/dr80.C +++ b/gcc/testsuite/g++.dg/tc1/dr80.C @@ -1,53 +1,53 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR80: Class members with same name as class - -struct A -{ - int A; -}; - -struct A2 -{ - static int A2; // { dg-error "same name as" } -}; - - -template -struct A3 -{ - int A3; -}; - -template -struct A4 -{ - static int A4; // { dg-error "same name as" } -}; - - -struct B -{ - B(); - int B; // { dg-error "same name as" } -}; - -struct B2 -{ - B2(); - static int B2; // { dg-error "same name as" } -}; - -template -struct B3 -{ - B3(); - int B3; // { dg-error "same name as" "this error should appear at parsing time" { xfail *-*-* } } -}; - -template -struct B4 -{ - B4(); - static int B4; // { dg-error "same name as" } -}; +// DR80: Class members with same name as class + +struct A +{ + int A; +}; + +struct A2 +{ + static int A2; // { dg-error "same name as" } +}; + + +template +struct A3 +{ + int A3; +}; + +template +struct A4 +{ + static int A4; // { dg-error "same name as" } +}; + + +struct B +{ + B(); + int B; // { dg-error "same name as" } +}; + +struct B2 +{ + B2(); + static int B2; // { dg-error "same name as" } +}; + +template +struct B3 +{ + B3(); + int B3; // { dg-error "same name as" "this error should appear at parsing time" { xfail *-*-* } } +}; + +template +struct B4 +{ + B4(); + static int B4; // { dg-error "same name as" } +}; diff --git a/gcc/testsuite/g++.dg/tc1/dr94.C b/gcc/testsuite/g++.dg/tc1/dr94.C index 3909c6554533..97cf0c25649c 100644 --- a/gcc/testsuite/g++.dg/tc1/dr94.C +++ b/gcc/testsuite/g++.dg/tc1/dr94.C @@ -1,9 +1,9 @@ // { dg-do compile } // Origin: Giovanni Bajo -// DR94: Inconsistencies in the descriptions of constant expressions - -struct S { - static const int c = 5; -}; -int a[S::c]; - +// DR94: Inconsistencies in the descriptions of constant expressions + +struct S { + static const int c = 5; +}; +int a[S::c]; +