Remove old autovect-branch by moving to "dead" directory.
[official-gcc.git] / old-autovect-branch / gcc / testsuite / g++.dg / parse / conv_op1.C
blobe892f01aadd7a9e45dcdf6a8d689ebc5f6e3e3f1
2 // { dg-do compile }
4 // Copyright (C) 2002 Free Software Foundation, Inc.
5 // Contributed by Nathan Sidwell 21 Dec 2002 <nathan@codesourcery.com>
7 // PR 8572. ICE with templated conversion operators.
9 template <typename T> struct A
11   struct B { };
12   operator B* () const;
13   B *Foo ();
16 template <typename T> typename A<T>::B *A<T>::Foo ()
18   return 0;
21 template <typename T> A<T>::operator typename A<T>::B* () const
23   return 0;
26 void Foo (A<int> &p)
28   p.Foo ();
29   static_cast <A<int>::B *> (p);