diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.other/access3.C | 25 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.pt/memtemp79.C | 6 |
2 files changed, 31 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.other/access3.C b/gcc/testsuite/g++.old-deja/g++.other/access3.C new file mode 100644 index 0000000..87c4c81 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.other/access3.C @@ -0,0 +1,25 @@ +// The standard sez that a use of a name gets the most access it can through +// the various paths that can reach it. Here, the access decl in B gives +// us access. + +struct A +{ + void f (); // gets bogus error - ref below XFAIL *-*-* +}; + +struct B: private virtual A +{ + A::f; +}; + +struct C: private virtual A, public B +{ +}; + +int +main () +{ + C c; + + c.f (); // gets bogus error - private XFAIL *-*-* +} diff --git a/gcc/testsuite/g++.old-deja/g++.pt/memtemp79.C b/gcc/testsuite/g++.old-deja/g++.pt/memtemp79.C new file mode 100644 index 0000000..4eeffde --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.pt/memtemp79.C @@ -0,0 +1,6 @@ +// Build don't link: + +struct foo { + template<typename T> static void bar( foo* ); + template<typename T> void bar() const; // gets bogus error - quals XFAIL *-*-* +}; |