// { dg-do run } | |
template<class T_type, int N> | |
class foo { | |
public: | |
enum bar { z = 0 }; | |
}; | |
template<int N> | |
class foo<double, N> { | |
public: | |
enum bar { z = 1 }; | |
}; | |
template<class T_type> | |
class foo<T_type, 2> { | |
public: | |
enum bar { z = 2 }; | |
}; | |
int main() | |
{ | |
if ((foo<int,3>::z == 0) && (foo<double,3>::z == 1) | |
&& (foo<float,2>::z == 2)) | |
return 0; | |
else | |
return 1; | |
} |