1*67e74705SXin Li // RUN: not %clang_cc1 -fsyntax-only %s 2*67e74705SXin Li namespace PR6375 { 3*67e74705SXin Li template<class Conv> class rasterizer_sl_clip Conv::xi(x2), Conv::yi(y2)); 4*67e74705SXin Li namespace agg 5*67e74705SXin Li { 6*67e74705SXin Li template<class Clip=rasterizer_sl_clip_int> class rasterizer_scanline_aa 7*67e74705SXin Li { sweep_scanline(Scanline & sl)8*67e74705SXin Li template<class Scanline> bool sweep_scanline(Scanline& sl) 9*67e74705SXin Li { 10*67e74705SXin Li unsigned num_cells = m_outline.scanline_num_cells(m_scan_y); 11*67e74705SXin Li while(num_cells) { } 12*67e74705SXin Li } 13*67e74705SXin Li } 14*67e74705SXin Li class scanline_u8 {} 15*67e74705SXin Li template<class PixelFormat> class renderer_base { } 16*67e74705SXin Li } 17*67e74705SXin Li template<class Rasterizer, class Scanline, class BaseRenderer, class ColorT> 18*67e74705SXin Li void render_scanlines_aa_solid(Rasterizer& ras, Scanline& sl, BaseRenderer& ren, const ColorT& color) 19*67e74705SXin Li { 20*67e74705SXin Li while(ras.sweep_scanline(sl)) 21*67e74705SXin Li { 22*67e74705SXin Li } 23*67e74705SXin Li }; 24*67e74705SXin Li namespace agg 25*67e74705SXin Li { 26*67e74705SXin Li struct rgba8 27*67e74705SXin Li { 28*67e74705SXin Li }; 29*67e74705SXin Li template<class Rasterizer, class Scanline, class Renderer, class Ctrl> 30*67e74705SXin Li void render_ctrl(Rasterizer& ras, Scanline& sl, Renderer& r, Ctrl& c) 31*67e74705SXin Li { 32*67e74705SXin Li unsigned i; 33*67e74705SXin Li render_scanlines_aa_solid(ras, sl, r, c.color(i)); 34*67e74705SXin Li } 35*67e74705SXin Li template<class ColorT> class rbox_ctrl : public rbox_ctrl_impl 36*67e74705SXin Li { 37*67e74705SXin Li const ColorT& color(unsigned i) const { return *m_colors[i]; } 38*67e74705SXin Li } 39*67e74705SXin Li class the_application : public agg::platform_support 40*67e74705SXin Li { 41*67e74705SXin Li agg::rbox_ctrl<agg::rgba8> m_polygons; 42*67e74705SXin Li virtual void on_init() 43*67e74705SXin Li { 44*67e74705SXin Li typedef agg::renderer_base<pixfmt_type> base_ren_type; 45*67e74705SXin Li base_ren_type ren_base(pf); 46*67e74705SXin Li agg::scanline_u8 sl; 47*67e74705SXin Li agg::rasterizer_scanline_aa<> ras; 48*67e74705SXin Li agg::render_ctrl(ras, sl, ren_base, m_polygons); 49*67e74705SXin Li } 50*67e74705SXin Li }; 51*67e74705SXin Li } 52*67e74705SXin Li } 53