1/* { dg-do compile } */ 2 3struct rgba8; 4template<class ColorT> class span_gouraud { 5public: 6 struct coord_type { }; 7 coord_type m_coord[3]; 8}; 9template<class ColorT> class span_gouraud_rgba : public span_gouraud<ColorT> 10{ 11 typedef ColorT color_type; 12 typedef span_gouraud<color_type> base_type; 13 typedef typename base_type::coord_type coord_type; 14public: 15 void prepare() { 16 coord_type coord[3]; 17 } 18}; 19void the_application() { 20 typedef span_gouraud_rgba<rgba8> gouraud_span_gen_type; 21 gouraud_span_gen_type span_gouraud; 22 span_gouraud.prepare(); 23} 24