1 // Origin: PR c++/43558 2 // { dg-do compile } 3 4 class Compressible; 5 template <class T, class EngineTag> class Engine; 6 template <class T> 7 class Engine<T, Compressible> 8 { 9 public: 10 typedef T Element_t; 11 //Element_t read(int); 12 T read(int); 13 }; 14 15 template <class T> read(int)16T Engine<T, Compressible>::read(int) 17 { 18 } 19 20 Engine<int, Compressible> x; 21 22