From-SVN: r34385
This commit is contained in:
Jason Merrill 2000-06-03 22:02:19 -04:00
parent f9a7ae04e9
commit 7a50d89174

View File

@ -1,17 +1,33 @@
// Build don't link:
// Test for partial specialization of a member function template.
// Origin: Jason Merrill <jason@cygnus.com>
template <class T> struct A {
template <class U> void f(U);
template <class U> int f(U) { return 42; }
};
template <>
template <class U>
void A<int>::f(U);
int A<char>::f(U);
A<int> a;
template <>
template <class U>
int A<double>::f(U) { return 24; }
void g ()
int main ()
{
a.f (3);
A<int> ai;
if (ai.f(0) != 42)
return 1;
A<double> ad;
if (ad.f(0) != 24)
return 1;
A<char> ac;
if (ac.f(0) != 36)
return 1;
}
template <>
template <class U>
int A<char>::f(U) { return 36; }