diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/tc1/dr80.C')
-rw-r--r-- | gcc/testsuite/g++.dg/tc1/dr80.C | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/tc1/dr80.C b/gcc/testsuite/g++.dg/tc1/dr80.C new file mode 100644 index 000000000..2327428a0 --- /dev/null +++ b/gcc/testsuite/g++.dg/tc1/dr80.C @@ -0,0 +1,53 @@ +// { dg-do compile } +// Origin: Giovanni Bajo <giovannibajo at gcc dot gnu dot org> +// DR80: Class members with same name as class + +struct A +{ + int A; +}; + +struct A2 +{ + static int A2; // { dg-error "same name as" } +}; + + +template <class> +struct A3 +{ + int A3; +}; + +template <class> +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 <class> +struct B3 +{ + B3(); + int B3; // { dg-error "same name as" "this error should appear at parsing time" { xfail *-*-* } } +}; + +template <class> +struct B4 +{ + B4(); + static int B4; // { dg-error "same name as" } +}; |