commit 735307c6ba52a958da314aca09a1bf8ca8210a63
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Mon Apr 27 22:33:26 2015 +0100
* libsupc++/exception (uncaught_exceptions): Add comment. Reorder #if.
* testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
Use -std=gnu++1z. Check feature-test macro.
@@ -126,8 +126,9 @@ namespace std
*/
bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
-#if !defined(__STRICT_ANSI__) || __cplusplus > 201402L
+#if __cplusplus > 201402L || !defined(__STRICT_ANSI__) // c++1z or gnu++98
#define __cpp_lib_uncaught_exceptions 201411
+ /// The number of uncaught exceptions.
int uncaught_exceptions() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
#endif
@@ -15,12 +15,18 @@
// with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>.
-// { dg-options "-std=gnu++11" }
+// { dg-options "-std=gnu++1z" }
#include <cassert>
#include <exception>
#include <testsuite_hooks.h>
+#ifndef __cpp_lib_uncaught_exceptions
+# error "Feature-test macro for uncaught_exceptions missing"
+#elif __cpp_lib_uncaught_exceptions != 201411
+# error "Feature-test macro for uncaught_exceptions has wrong value"
+#endif
+
struct UncaughtVerifier
{
int expected_count_ = 0;