* g++.old-deja/g++.other/crash24.C: New test.
* g++.old-deja/g++.other/crash25.C: New test.
* g++.old-deja/g++.other/crash26.C: New test.
* g++.old-deja/g++.other/crash27.C: New test.
* g++.old-deja/g++.other/crash28.C: New test.
* g++.old-deja/g++.other/crash29.C: New test.
* g++.old-deja/g++.other/crash30.C: New test.
* g++.old-deja/g++.other/crash31.C: New test.
* g++.old-deja/g++.other/crash32.C: New test.
* g++.old-deja/g++.other/crash33.C: New test.
* g++.old-deja/g++.other/crash34.C: New test.
* g++.old-deja/g++.other/crash35.C: New test.
From-SVN: r37275
+2000-11-06 Jakub Jelinek <jakub@redhat.com>
+
+ * g++.old-deja/g++.other/crash24.C: New test.
+ * g++.old-deja/g++.other/crash25.C: New test.
+ * g++.old-deja/g++.other/crash26.C: New test.
+ * g++.old-deja/g++.other/crash27.C: New test.
+ * g++.old-deja/g++.other/crash28.C: New test.
+ * g++.old-deja/g++.other/crash29.C: New test.
+ * g++.old-deja/g++.other/crash30.C: New test.
+ * g++.old-deja/g++.other/crash31.C: New test.
+ * g++.old-deja/g++.other/crash32.C: New test.
+ * g++.old-deja/g++.other/crash33.C: New test.
+ * g++.old-deja/g++.other/crash34.C: New test.
+ * g++.old-deja/g++.other/crash35.C: New test.
+
2000-11-06 Jakub Jelinek <jakub@redhat.com>
* gcc.c-torture/execute/20001031-1.c: New test.
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+// crash test - XFAIL *-*-*
+
+#include <iostream>
+
+class foo {
+ public:
+ class __iterator;
+ friend class __iterator;
+ typedef __iterator const_iterator;
+ virtual ~foo() { }
+ __iterator begin(); // ERROR -
+};
+static void iteratorTest(const foo &x)
+{
+ foo::const_iterator i = x.begin(); // ERROR -
+ for (; i; ++i) // ERROR -
+ cout << *i;
+}
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+class X {
+public:
+ X();
+ virtual ~X();
+}
+
+X::x()
+{ // ERROR -
+}
+
+X::~x()
+{ // ERROR -
+}
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+// crash test - XFAIL *-*-*
+
+class foo {
+public:
+ foo(int);
+};
+
+void bar(bool x)
+{
+ if(x)
+ foo *a = new foo(foo::not); // ERROR -
+}
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+// crash test - XFAIL *-*-*
+
+X(Y(long, Type, CLink)); break; default: break; } } } // ERROR -
+
+struct A {
+ inline A ();
+};
+
+inline A::A ()
+{
+}
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+// crash test - XFAIL *-*-*
+
+namespace N
+{
+ class X;
+ template <class T>
+ class Y
+ {
+ public:
+ inline Y () {}
+ inline operator const Y<X> & () const
+ {
+ return *reinterpret_cast<const Y<X> *>(this);
+ }
+ };
+}
+class bar
+{
+public:
+ inline bar () {}
+ inline bar (const ::N::Y< ::N::X>& a);
+};
+
+class foo
+{
+ bool b;
+public:
+ foo();
+ void x () throw(bar);
+};
+void foo::x() throw(bar)
+{
+ if (!b) throw bar (static_cast<::N::X*>(this)); // ERROR - parse error
+}
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+// crash test - XFAIL *-*-*
+
+class bar
+{
+public:
+ void foo ();
+ void baz ();
+};
+void bar::foo ()
+{
+ baz x(); // ERROR -
+}
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+// crash test - XFAIL *-*-*
+
+struct foo
+{
+ foo();
+ void x();
+};
+
+void foo::x() throw(bar) // ERROR - parse error
+{
+}
+
+void bar()
+{
+ foo x;
+}
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+// crash test - XFAIL *-*-*
+
+namespace bar
+{
+struct foo
+{
+ foo();
+}; // ERROR - parse error
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+// crash test - XFAIL *-*-*
+
+struct foo
+{
+ enum e
+ {
+ not // ERROR -
+ };
+ ~foo();
+ void x (foo *&a, bool b = (unsigned char)0);
+};
+
+namespace N
+{
+ struct bar;
+
+ template<class T>
+ struct baz
+ {
+ baz(T *p);
+ };
+
+ typedef baz<bar> c;
+}
+
+struct z
+{
+ int a;
+};
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+template <class T>
+inline const T& bar(const T& a, const T& b)
+{
+ return a < b ? b : a;
+}
+
+int foo(void)
+{
+ return bar(sizeof(int), sizeof(long));
+}
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+// crash test - XFAIL *-*-*
+
+class v
+{
+ double x, y;
+public:
+ v();
+};
+
+class w : public v {
+public :
+ static const w X;
+ w();
+};
+
+void bar(w x);
+
+void foo()
+{
+ bar(w::X);
+}
--- /dev/null
+// Build don't link:
+// Origin: Jakub Jelinek <jakub@redhat.com>
+
+// crash test - XFAIL *-*-*
+
+void foo()
+{
+ if [ // ERROR - parse error
+}