Commit 7a50d891 by Jason Merrill

expand

From-SVN: r34385
parent f9a7ae04
// 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; }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment