1// { dg-do compile } 2// Contributed by Matty T. <mattyt-bugzilla at tpg dot com dot au> 3// PR c++/13813 [DR206]: Check semantic constraints of members of 4// non-dependent type at instantiation time. 5 6 7// DR206 explains that this is ill-formed, no diagnostic required. We emit 8// a diagnostic instead. 9class E; 10template < class A > class Z { 11 A a; 12 E e; // { dg-error "incomplete type" } 13}; 14 15 16// Nested classes are always dependent names. 17template < class A > class Y { 18 class F; 19 F e; // { dg-bogus "" "nested classes are always dependent, see DR108 and DR224" } 20}; 21