#endif
#endif
+#if defined(__has_include)
+ #if !defined(HAVE_TYPE_TRAITS) && __has_include(<type_traits>)
+ #define HAVE_TYPE_TRAITS
+ #endif
+
+ #if !defined(HAVE_TR1_TYPE_TRAITS) && __has_include(<tr1/type_traits>)
+ #define HAVE_TR1_TYPE_TRAITS
+ #endif
+
+ #if !defined(HAVE_STD_UNORDERED_MAP) && __has_include(<unordered_map>)
+ #define HAVE_STD_UNORDERED_MAP
+ #endif
+
+ #if !defined(HAVE_TR1_UNORDERED_MAP) && __has_include(<tr1/unordered_map>)
+ #define HAVE_TR1_UNORDERED_MAP
+ #endif
+
+ #if !defined(HAVE_STD_UNORDERED_SET) && __has_include(<unordered_set>)
+ #define HAVE_STD_UNORDERED_SET
+ #endif
+
+ #if !defined(HAVE_TR1_UNORDERED_SET) && __has_include(<tr1/unordered_set>)
+ #define HAVE_TR1_UNORDERED_SET
+ #endif
+#endif // defined(__has_include)
+
/* provide replacement for C99 va_copy() if the compiler doesn't have it */
/* could be already defined by configure or the user */
#endif /* va_copy/!va_copy */
#endif /* wxVaCopy */
-#ifndef HAVE_VARIADIC_MACROS
- #if wxCHECK_WATCOM_VERSION(1,2)
- #define HAVE_VARIADIC_MACROS
- #endif
-
- #if wxCHECK_VISUALC_VERSION(9)
- #define HAVE_VARIADIC_MACROS
- #endif
-#endif /* HAVE_VARIADIC_MACROS */
-
-
#ifndef HAVE_WOSTREAM
/*
Mingw <= 3.4 and all versions of Cygwin don't have std::wostream
# endif
#endif
+#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
template <typename T>
inline void wxDELETE(T*& ptr)
{
- typedef char TypeIsCompleteCheck[sizeof(T)];
+ typedef char TypeIsCompleteCheck[sizeof(T)] WX_ATTRIBUTE_UNUSED;
if ( ptr != NULL )
{
template <typename T>
inline void wxDELETEA(T*& ptr)
{
- typedef char TypeIsCompleteCheck[sizeof(T)];
+ typedef char TypeIsCompleteCheck[sizeof(T)] WX_ATTRIBUTE_UNUSED;
if ( ptr != NULL )
{