From 8f1eb525250248966fd7edaea3567fe508994fe3 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Fri, 6 Mar 2015 15:45:26 +0100 Subject: [PATCH] Windows: Fix build of qwindowsfontdatabase.cpp with MinGW 4.9.2/-Werror. Disable warning: qwindowsfontdatabase.cpp: In member function 'virtual QFontEngine* QWindowsFontDatabase::fontEngine(const QByteArray&, qreal, QFont::HintingPreference)': qwindowsfontdatabase.cpp:1111:74: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing] Change-Id: Ifce69db7d1f3b78d52e5b4e01db8e7bbfb62b439 Reviewed-by: Konstantin Ritt --- src/plugins/platforms/windows/qwindowsfontdatabase.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/plugins/platforms/windows/qwindowsfontdatabase.cpp b/src/plugins/platforms/windows/qwindowsfontdatabase.cpp index 287ee4c46e..9e037723fe 100644 --- a/src/plugins/platforms/windows/qwindowsfontdatabase.cpp +++ b/src/plugins/platforms/windows/qwindowsfontdatabase.cpp @@ -1104,11 +1104,18 @@ QFontEngine *QWindowsFontDatabase::fontEngine(const QByteArray &fontData, qreal GUID guid; CoCreateGuid(&guid); +#ifdef Q_CC_GNU +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif QString uniqueFamilyName = QLatin1Char('f') + QString::number(guid.Data1, 36) + QLatin1Char('-') + QString::number(guid.Data2, 36) + QLatin1Char('-') + QString::number(guid.Data3, 36) + QLatin1Char('-') + QString::number(*reinterpret_cast(guid.Data4), 36); +#ifdef Q_CC_GNU +# pragma GCC diagnostic pop +#endif QString actualFontName = font.changeFamilyName(uniqueFamilyName); if (actualFontName.isEmpty()) {