1 // { dg-do compile { target c++11 } } 2 template<typename T, T a, T... Params> 3 struct max 4 { 5 static const T value = a > max<T, Params>::value ? a : max<T, Params>::value; // { dg-error "not expanded|Params" } 6 }; 7 8 template<typename T, T a, T b> 9 struct max<T, a, b> 10 { 11 static const T value = a > b ? a : b; 12 }; 13 14 static const int value1 = max< int, 1, 2>::value; 15 static const int value2 = max< int, 1, 3, 5>::value; 16