1c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas Gregor// RUN: %clang_cc1 -std=c++11 %s -verify 2c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas Gregor 3c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas Gregortemplate<int i> class X { /* ... */ }; 4c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas GregorX< 1>2 > x1; // expected-error{{expected unqualified-id}} 5c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas GregorX<(1>2)> x2; // OK 6c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas Gregortemplate<class T> class Y { /* ... */ }; 7c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas GregorY<X<1>> x3; // OK, same as Y<X<1> > x3; 8c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas GregorY<X<6>>1>> x4; // expected-error{{expected unqualified-id}} 9c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas GregorY<X<(6>>1)>> x5; 10c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas Gregor 11c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas Gregorint a, b; 12c86c40b912e53fb11ff8f745ed616035b8b7259cDouglas GregorY<decltype(a < b)> x6; 13