http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53460
--- Comment #6 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-05-24 09:43:13 UTC --- More reduced: template<typename T> class OwnPtr { public: ~OwnPtr(); }; template<class T> class GlyphMetricsMap { public: GlyphMetricsMap() { } OwnPtr<int> m_pages; }; class SimpleFontData { public: void boundsForGlyph() const; }; inline __attribute__((__always_inline__)) void SimpleFontData::boundsForGlyph() const { new GlyphMetricsMap<int>; } void offsetToMiddleOfGlyph(const SimpleFontData* fontData) { fontData->boundsForGlyph(); }