aboutsummaryrefslogtreecommitdiff
path: root/test/std/language.support/support.exception/propagation/make_exception_ptr.pass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/std/language.support/support.exception/propagation/make_exception_ptr.pass.cpp')
-rw-r--r--test/std/language.support/support.exception/propagation/make_exception_ptr.pass.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/test/std/language.support/support.exception/propagation/make_exception_ptr.pass.cpp b/test/std/language.support/support.exception/propagation/make_exception_ptr.pass.cpp
index 4980c656b2b5..35821d9bd1b6 100644
--- a/test/std/language.support/support.exception/propagation/make_exception_ptr.pass.cpp
+++ b/test/std/language.support/support.exception/propagation/make_exception_ptr.pass.cpp
@@ -7,9 +7,6 @@
//
//===----------------------------------------------------------------------===//
-// exception_ptr has not been implemented on Windows
-// XFAIL: LIBCXX-WINDOWS-FIXME
-
// UNSUPPORTED: libcpp-no-exceptions
// <exception>
@@ -41,7 +38,12 @@ int main()
}
catch (const A& a)
{
+#ifndef _LIBCPP_ABI_MICROSOFT
assert(A::constructed == 1);
+#else
+ // On Windows exception_ptr copies the exception
+ assert(A::constructed == 2);
+#endif
assert(p != nullptr);
p = nullptr;
assert(p == nullptr);
@@ -50,4 +52,5 @@ int main()
}
assert(A::constructed == 0);
}
+ assert(A::constructed == 0);
}