svn commit: r288830 - in projects/clang370-import: contrib/libcxxrt lib/libcxxrt

Dimitry Andric dim at FreeBSD.org
Mon Oct 5 17:47:24 UTC 2015


Author: dim
Date: Mon Oct  5 17:47:23 2015
New Revision: 288830
URL: https://svnweb.freebsd.org/changeset/base/288830

Log:
  Add std::uncaught_exceptions() to libcxxrt (C++17, see N4152 and N4259).
  This has also been submitted upstream.

Modified:
  projects/clang370-import/contrib/libcxxrt/exception.cc
  projects/clang370-import/lib/libcxxrt/Version.map

Modified: projects/clang370-import/contrib/libcxxrt/exception.cc
==============================================================================
--- projects/clang370-import/contrib/libcxxrt/exception.cc	Mon Oct  5 17:45:13 2015	(r288829)
+++ projects/clang370-import/contrib/libcxxrt/exception.cc	Mon Oct  5 17:47:23 2015	(r288830)
@@ -1474,6 +1474,15 @@ namespace std
 		return info->globals.uncaughtExceptions != 0;
 	}
 	/**
+	 * Returns the number of exceptions currently being thrown that have not
+	 * been caught.  This can occur inside a nested catch statement.
+	 */
+	int uncaught_exceptions() throw()
+	{
+		__cxa_thread_info *info = thread_info();
+		return info->globals.uncaughtExceptions;
+	}
+	/**
 	 * Returns the current unexpected handler.
 	 */
 	unexpected_handler get_unexpected() throw()

Modified: projects/clang370-import/lib/libcxxrt/Version.map
==============================================================================
--- projects/clang370-import/lib/libcxxrt/Version.map	Mon Oct  5 17:45:13 2015	(r288829)
+++ projects/clang370-import/lib/libcxxrt/Version.map	Mon Oct  5 17:47:23 2015	(r288830)
@@ -356,3 +356,9 @@ GLIBCXX_3.4.9 {
     };
 } GLIBCXX_3.4;
 
+GLIBCXX_3.4.22 {
+    extern "C++" {
+        "std::uncaught_exceptions()";
+    };
+} GLIBCXX_3.4.9;
+


More information about the svn-src-projects mailing list