2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.pt / crash55.C
blob57a6606fca7024ea1dfd85364e5f0cd71155864c
1 // { dg-do assemble  }
2 // Origin: Jakub Jelinek <jakub@redhat.com>
4 template<class T> struct foo {
5   foo();
6   void c();
7   static void d(foo* x) { x->c(); }
8 };
9 template<class T> struct bar {
10   bar();
12 template <class T> struct baz {
13   typedef foo<T> t;
14   t *e;
15   baz();
16   ~baz() { t::d(e); }
18 template <class T> void foo<T>::c()
20   bar<T>* x = (bar<T>*)this;
21   x->bar<T>::~bar();
23 void a(void)
25   baz<char> b;