2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.pt / explicit83.C
blob9aa44f597efa98dbd36e3bb4d896f74a0d86530c
1 // { dg-do assemble  }
2 // Copyright (C) 2000 Free Software Foundation, Inc.
3 // Contributed by Nathan Sidwell 7 Sep 2000 <nathan@codesourcery.com>
5 // Bug 512. Conversion operator functions in template_id's were always
6 // being looked up in global scope.
8 class C
10 public:
12   template <typename T>
13   void f () {}
15   template<typename T>
16   operator int ()
17   { return 0;
18   }
21 template void C::f <int>();
23 template C::operator int<float> ();
25 template C::operator int<double> ();
27 typedef int (C::* ptrmem_t) ();
29 template<ptrmem_t U, ptrmem_t V>
30 void foo ()
34 template void 
35 foo<&C::operator int<float>, &C::operator int<double> > ();