diff --git xpcom/glue/nsISupportsImpl.h xpcom/glue/nsISupportsImpl.h index 9102102..e1f34c0 100644 --- mozilla/xpcom/glue/nsISupportsImpl.h +++ mozilla/xpcom/glue/nsISupportsImpl.h @@ -32,11 +32,11 @@ #include "mozilla/TypeTraits.h" #if defined(__clang__) - // bug 1028428 shows that at least in FreeBSD 10.0 with Clang 3.4 and libc++ 3.4, - // std::is_destructible is buggy in that it returns false when it should return true - // on ipc::SharedMemory. On the other hand, all Clang versions currently in use - // seem to handle the fallback just fine. -# define MOZ_CAN_USE_IS_DESTRUCTIBLE_FALLBACK +# if MOZ_USING_LIBCXX && __has_include() +# define MOZ_HAVE_STD_IS_DESTRUCTIBLE +# else +# define MOZ_CAN_USE_IS_DESTRUCTIBLE_FALLBACK +# endif #elif defined(__GNUC__) // GCC 4.7 is has buggy std::is_destructible # if MOZ_USING_LIBSTDCXX && MOZ_GCC_VERSION_AT_LEAST(4, 8, 0)