1 // PR c++/41727 2 3 struct tag0; 4 5 template < class Tag > struct outer 6 { 7 template < typename Arg0, typename Arg1 > struct inner; 8 }; 9 10 template < int Value > struct value_wrap { }; 11 12 template </* class Tag */> 13 template < typename Arg0, int Arg1 > 14 struct outer <tag0 >::inner < Arg0, value_wrap < Arg1 > > 15 { 16 typedef Arg0 type; 17 }; 18 19 typedef outer < tag0 > 20 ::inner < tag0, value_wrap < 999 > > 21 ::type // { dg-bogus "incomplete" "" { xfail *-*-* } } 22 outer_inner_type; 23