1// { dg-do compile } 2 3// Copyright (C) 2003 Free Software Foundation, Inc. 4// Contributed by Nathan Sidwell 14 Aug 2003 <nathan@codesourcery.com> 5 6// required from did not indicate the nested class 7 8template<class T> struct X 9{ 10 T m; // { dg-error "incomplete type|invalid use" } 11}; 12 13template<class T > 14struct Derived 15{ 16 class Nested : public X<T> // { dg-message "required" "" } 17 { 18 }; 19 20 Nested m; // { dg-message "required" "" } 21 22 void Foo (); 23}; 24 25void Foo (Derived<void> &x) 26{ 27 x.Foo (); // { dg-message "required" "" } 28} 29