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