1 // { dg-do compile }
2 // Origin: Scott Snyder <snyder@fnal.gov>
3 
4 // PR c++/7639
5 // ICE when accessing member with incomplete type.
6 
7 class ACE_Null_Mutex;	// { dg-message "forward declaration" }
8 
9 template <class TYPE>
10 struct ACE_Cleanup_Adapter
11 {
objectACE_Cleanup_Adapter12   TYPE &object ()
13   { return object_; }
14   TYPE object_;		// { dg-error "incomplete type" }
15 };
16 
17 template class ACE_Cleanup_Adapter<ACE_Null_Mutex>; // { dg-message "required from here" }
18