diff --git a/uppsrc/Core/Other.h b/uppsrc/Core/Other.h index b4d07c905..a80b1104b 100644 --- a/uppsrc/Core/Other.h +++ b/uppsrc/Core/Other.h @@ -44,6 +44,10 @@ public: template TT& Create(Args... args) { TT *q = new TT(args...); Attach(q); return *q; } + template // with C++ conforming compiler, this would not be neede - GCC bug workaround + TT& Create() { TT *q = new TT; Attach(q); return *q; } + template + T& Create(Args... args) { T *q = new T(args...); Attach(q); return *q; } T& Create() { T *q = new T; Attach(q); return *q; } template diff --git a/uppsrc/Painter/Painter.upp b/uppsrc/Painter/Painter.upp index f84e5eab9..7f9b4f24a 100644 --- a/uppsrc/Painter/Painter.upp +++ b/uppsrc/Painter/Painter.upp @@ -16,22 +16,22 @@ file BufferPainter.h, Xform2D.cpp, Approximate.cpp, - Stroker.cpp optimize_speed, + Stroker.cpp, Dasher.cpp, Transformer.cpp, - Interpolator.cpp optimize_speed, - Rasterizer.cpp optimize_speed, - RasterizerClip.cpp optimize_speed, - Path.cpp optimize_speed, + Interpolator.cpp, + Rasterizer.cpp, + RasterizerClip.cpp, + Path.cpp, Context.cpp, Fillers.h, - Fillers.cpp optimize_speed, + Fillers.cpp, RenderChar.cpp, - Render.cpp optimize_speed, - Image.cpp optimize_speed, - Mask.cpp optimize_speed, - Gradient.cpp optimize_speed, - RadialGradient.cpp optimize_speed, + Render.cpp, + Image.cpp, + Mask.cpp, + Gradient.cpp, + RadialGradient.cpp, OnPath.cpp, SVG readonly separator, SvgInternal.h,