g++ 4.8 warns about unused typedef's in local scope resulting in hundreds of
warnings when building wx, suppress them by using WX_ATTRIBUTE_UNUSED for
these typedefs.
Closes #15137.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74272
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
#define wxCHECKED_DELETE(ptr) \
wxSTATEMENT_MACRO_BEGIN \
#define wxCHECKED_DELETE(ptr) \
wxSTATEMENT_MACRO_BEGIN \
- typedef char complete[sizeof(*ptr)]; \
+ typedef char complete[sizeof(*ptr)] WX_ATTRIBUTE_UNUSED; \
delete ptr; \
wxSTATEMENT_MACRO_END
#define wxCHECKED_DELETE_ARRAY(ptr) \
wxSTATEMENT_MACRO_BEGIN \
delete ptr; \
wxSTATEMENT_MACRO_END
#define wxCHECKED_DELETE_ARRAY(ptr) \
wxSTATEMENT_MACRO_BEGIN \
- typedef char complete[sizeof(*ptr)]; \
+ typedef char complete[sizeof(*ptr)] WX_ATTRIBUTE_UNUSED; \
delete [] ptr; \
wxSTATEMENT_MACRO_END
delete [] ptr; \
wxSTATEMENT_MACRO_END
+#if defined(__GNUC__)
+ #define WX_ATTRIBUTE_UNUSED __attribute__ ((unused))
+#else
+ #define WX_ATTRIBUTE_UNUSED
+#endif
+
/* Macro to issue warning when using deprecated functions with gcc3 or MSVC7: */
#if wxCHECK_GCC_VERSION(3, 1)
#define wxDEPRECATED(x) __attribute__((deprecated)) x
/* Macro to issue warning when using deprecated functions with gcc3 or MSVC7: */
#if wxCHECK_GCC_VERSION(3, 1)
#define wxDEPRECATED(x) __attribute__((deprecated)) x
template <typename T>
inline void wxDELETE(T*& ptr)
{
template <typename T>
inline void wxDELETE(T*& ptr)
{
- typedef char TypeIsCompleteCheck[sizeof(T)];
+ typedef char TypeIsCompleteCheck[sizeof(T)] WX_ATTRIBUTE_UNUSED;
template <typename T>
inline void wxDELETEA(T*& ptr)
{
template <typename T>
inline void wxDELETEA(T*& ptr)
{
- typedef char TypeIsCompleteCheck[sizeof(T)];
+ typedef char TypeIsCompleteCheck[sizeof(T)] WX_ATTRIBUTE_UNUSED;