1 // PR c++/71662 2 // { dg-do compile { target c++11 } } 3 // { dg-additional-options "-Wno-return-type" } 4 5 template < typename T > struct A 6 { 7 enum E : T; 8 E h (); 9 }; 10 11 A < int > a; 12 A < int >::E b = a.h (); 13 14 template < typename T > enum A < T >::E : T { e }; // { dg-message "enumeration" } 15 h()16template < typename T > typename A < T >::E A < T >::h () 17 { 18 return e; // { dg-error "declared" } 19 } 20