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()13 int 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