1 // PR c++/86355
2 // { dg-do compile { target c++11 } }
3 
4 template <int...> struct integral_constant {
5   static const int value = 1;
6 };
7 template <class... T> using mp_all = integral_constant<T::value...>;
8 template <class... T> using check2 = mp_all<mp_all<T..., integral_constant<0>>>;
9 check2<> x;
10 
11 template <class T, class U> struct assert_same;
12 template <class T> struct assert_same<T,T> { };
13 assert_same<decltype(x),integral_constant<1>> a;
14