1 2 3 4 5 6 7 8 9 10
// { dg-do assemble } template <class T, int i> struct S1; template <class T, int i, int j> struct S2 { typedef typename S1<T, (i >= j ? 0 : 1) >::type type; };