(a cherry-pick of commit
e965562c from 'master')
* gc_cpp.cc [GC_NEW_DELETE_NEED_THROW && __cplusplus>=201103L
&& !__clang__] (GC_DECL_NEW_THROW): Define to empty.
#ifdef GC_NEW_DELETE_NEED_THROW
# include <new> /* for std::bad_alloc */
-# define GC_DECL_NEW_THROW throw(std::bad_alloc)
+# if (__cplusplus < 201103L || defined(__clang__))
+# define GC_DECL_NEW_THROW throw(std::bad_alloc)
+# else
+# define GC_DECL_NEW_THROW /* empty */
+# endif
# define GC_DECL_DELETE_THROW throw()
#else
# define GC_DECL_NEW_THROW /* empty */