// { dg-do compile } // Origin: // PR c++/6716 // ICE in complex class structure when components are incomplete template struct X { T t; // { dg-error "incomplete" } }; template struct Y { X x; // { dg-message "instantiated" } }; template struct Z { // { dg-error "declaration" } Y > y; // { dg-message "instantiated" } }; struct ZZ : Z { };