1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
// PR c++/87145 // { dg-do compile { target c++11 } } struct S { int val; constexpr operator int() const { return static_cast<int>(val); } }; template<int N> struct F { }; template<unsigned N> constexpr void foo() { F<int{N}> f; F<S{N}> f2; } int main() { foo<2>(); }