diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.brendan/crash18.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.brendan/crash18.C | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/crash18.C b/gcc/testsuite/g++.old-deja/g++.brendan/crash18.C new file mode 100644 index 000000000..119ba4605 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.brendan/crash18.C @@ -0,0 +1,18 @@ +// { dg-do compile } +// GROUPS passed old-abort +typedef int element; +class Pix { +public: + Pix(); + Pix(const Pix&); + + // Friend functions so that v == x works as does x == v works + friend int operator==(void *v, const Pix& x) // { dg-error "previously" } + { return v == index; } // { dg-error "from this location" } + // ??? should be operator!= + friend int operator==(void *v, const Pix& x) // { dg-error "redefinition" } + { return v != index; } +private: +// friend class List<T>; + element *index; // { dg-error "invalid use of non-static data member" } +}; |