1 // { dg-do compile { target c++14 } } 2 3 template<int A, int B> 4 struct S1 5 { 6 static constexpr int a = A; 7 static constexpr int b = B; 8 }; 9 10 template<typename T> 11 constexpr int var = T::a + T::b; 12 main()13int main () 14 { 15 static_assert(var<S1<11, 100>> == var<S1<199, 23>>/2 16 && var<S1<50, 120>> == var<S1<150, var<S1<10, 10>>>> 17 && var<S1<53, 23>> != 222, ""); 18 } 19