aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2017-04-24 12:40:02 +0100
committerJonathan Wakely <redi@gcc.gnu.org>2017-04-24 12:40:02 +0100
commit71f257f78e8b2568c76f226d665b890902453121 (patch)
tree1fa4d3027973af4664bce888b6b611ffd23f18e1
parent24c40f9a2cc832de74cb55f6ec1dfb45b7161379 (diff)
downloadgcc-71f257f78e8b2568c76f226d665b890902453121.zip
gcc-71f257f78e8b2568c76f226d665b890902453121.tar.gz
gcc-71f257f78e8b2568c76f226d665b890902453121.tar.bz2
PR libstdc++/80493 fix invalid exception specification
PR libstdc++/80493 * include/experimental/optional (optional::swap): Fix exception specification. From-SVN: r247093
-rw-r--r--libstdc++-v3/ChangeLog6
-rw-r--r--libstdc++-v3/include/experimental/optional2
2 files changed, 7 insertions, 1 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index bd43faa..6330a49 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,9 @@
+2017-04-24 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/80493
+ * include/experimental/optional (optional::swap): Fix exception
+ specification.
+
2017-04-21 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/80316
diff --git a/libstdc++-v3/include/experimental/optional b/libstdc++-v3/include/experimental/optional
index 197a1fc..4a1e71d 100644
--- a/libstdc++-v3/include/experimental/optional
+++ b/libstdc++-v3/include/experimental/optional
@@ -690,7 +690,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
void
swap(optional& __other)
noexcept(is_nothrow_move_constructible<_Tp>()
- && noexcept(swap(declval<_Tp&>(), declval<_Tp&>())))
+ && __is_nothrow_swappable<_Tp>::value)
{
using std::swap;