Only define wxCLANG_WARNING_SUPPRESS/RESTORE when using clang

This makes sense and avoids an error if some other header sabotages our
__has_warning definition check by providing a dummy definition for it (as ICU
does, for whatever reason).
This commit is contained in:
Vadim Zeitlin 2017-03-20 00:26:10 +01:00
parent c4f6cf21dc
commit 3b298cc8b2

View File

@ -641,7 +641,7 @@ typedef short int WXTYPE;
virtual wxClassInfo *GetClassInfo() const
wxCLANG_WARNING_RESTORE(inconsistent-missing-override)
*/
#if defined(__has_warning)
#if defined(__clang__) && defined(__has_warning)
# define wxCLANG_HAS_WARNING(x) __has_warning(x) /* allow macro expansion for the warning name */
# define wxCLANG_IF_VALID_WARNING(x,y) \
wxCONCAT(wxCLANG_IF_VALID_WARNING_,wxCLANG_HAS_WARNING(wxSTRINGIZE(wxCONCAT(-W,x))))(y)