aboutsummaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2016-12-08 02:49:07 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2016-12-08 02:49:07 +0000
commit1f0155f24337194f4706f727db42f467244caa9e (patch)
tree967a086ef85d076431ae92fa4fe09afe0d1d50ea /www
parentf5457ae5ebdeb012f213018a46dfea196ea1a872 (diff)
[c++1z] P0003R5: Removing dynamic exception specifications.
We continue to support dynamic exception specifications in C++1z as an extension, but produce an error-by-default warning when we encounter one. This allows users to opt back into the feature with a warning flag, and implicitly opts system headers back into the feature should they happen to use it. There is one semantic change implied by P0003R5 but not implemented here: violating a throw() exception specification should now call std::terminate directly instead of calling std::unexpected(), but since P0003R5 also removes std::unexpected() and std::set_unexpected, and the default unexpected handler calls std::terminate(), a conforming C++1z program cannot tell that we are still calling it. The upside of this strategy is perfect backwards compatibility; the downside is that we don't get the more efficient 'noexcept' codegen for 'throw()'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@289019 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'www')
-rw-r--r--www/cxx_status.html2
1 files changed, 1 insertions, 1 deletions
diff --git a/www/cxx_status.html b/www/cxx_status.html
index 0dc245e456..9e6b675227 100644
--- a/www/cxx_status.html
+++ b/www/cxx_status.html
@@ -740,7 +740,7 @@ as the draft C++1z standard evolves.
<tr>
<td>Removing deprecated dynamic exception specifications</td>
<td><a href="http://wg21.link/p0003r5">P0003R5</a></td>
- <td class="none" align="center">No</td>
+ <td class="svn" align="center">SVN</td>
</tr>
<tr>
<td>Pack expansions in <em>using-declarations</em></td>