diff options
author | Volker Reichelt <reichelt@igpm.rwth-aachen.de> | 2004-07-12 23:51:18 +0000 |
---|---|---|
committer | Volker Reichelt <reichelt@gcc.gnu.org> | 2004-07-12 23:51:18 +0000 |
commit | 812424036177ad5ed0d460195525494a1cfdcc17 (patch) | |
tree | a6e94b1f01e93d2819e72d7303dad14a3a348b08 /gcc | |
parent | 81f80f5feb49bd8bcc73e6de5edc096bf727d478 (diff) | |
download | gcc-812424036177ad5ed0d460195525494a1cfdcc17.zip gcc-812424036177ad5ed0d460195525494a1cfdcc17.tar.gz gcc-812424036177ad5ed0d460195525494a1cfdcc17.tar.bz2 |
re PR c++/5402 (ICE in pop_binding)
PR c++/5402
* g++.dg/lookup/name-clash1.C: New test.
PR c++/9777
* g++.dg/lookup/name-clash2.C: New test.
PR c++/12102
* g++.dg/lookup/name-clash3.C: New test.
From-SVN: r84587
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 11 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/lookup/name-clash1.C | 20 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/lookup/name-clash2.C | 16 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/lookup/name-clash3.C | 14 |
4 files changed, 61 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 7abecb6..6b873b8 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,14 @@ +2004-07-12 Volker Reichelt <reichelt@igpm.rwth-aachen.de> + + PR c++/5402 + * g++.dg/lookup/name-clash1.C: New test. + + PR c++/9777 + * g++.dg/lookup/name-clash2.C: New test. + + PR c++/12102 + * g++.dg/lookup/name-clash3.C: New test. + 2004-07-12 Giovanni Bajo <giovannibajo@gcc.gnu.org> * g++.dg/lookup/new2.C: New test. diff --git a/gcc/testsuite/g++.dg/lookup/name-clash1.C b/gcc/testsuite/g++.dg/lookup/name-clash1.C new file mode 100644 index 0000000..6ee4be3 --- /dev/null +++ b/gcc/testsuite/g++.dg/lookup/name-clash1.C @@ -0,0 +1,20 @@ +// { dg-do compile } + +// Origin: Jakub Jelinek <jakub@redhat.com> +// PR c++/5402 + +struct A +{ + struct B {}; +}; + +struct C +{ + typedef int B; +}; + +struct D : A +{ + struct E : C {}; + struct B {}; +}; diff --git a/gcc/testsuite/g++.dg/lookup/name-clash2.C b/gcc/testsuite/g++.dg/lookup/name-clash2.C new file mode 100644 index 0000000..c200eee --- /dev/null +++ b/gcc/testsuite/g++.dg/lookup/name-clash2.C @@ -0,0 +1,16 @@ +// { dg-do compile } + +// Origin: Sven Bilke <bilkes@mail.nih.gov> +// PR c++/9777 + +struct A +{ + struct X {}; + struct Y { void X(); }; +}; + +struct B : A +{ + struct Y : A::Y {}; + struct X : A::X {}; +}; diff --git a/gcc/testsuite/g++.dg/lookup/name-clash3.C b/gcc/testsuite/g++.dg/lookup/name-clash3.C new file mode 100644 index 0000000..eb52a7c --- /dev/null +++ b/gcc/testsuite/g++.dg/lookup/name-clash3.C @@ -0,0 +1,14 @@ +// { dg-do compile } + +// Origin: Volker Reichelt <reichelt@igpm.rwth-aachen.de> +// PR c++/12102 + +struct A +{ + struct C {} C; +}; + +struct B : A +{ + struct C {} C; +}; |