aboutsummaryrefslogtreecommitdiff
path: root/libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp')
-rw-r--r--libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp b/libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
index 1ae9653..699597d 100644
--- a/libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
+++ b/libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
@@ -91,6 +91,22 @@ constexpr bool test() {
assert(state1.copyAssignCalled);
}
+ // CheckForInvalidWrites
+ {
+ {
+ CheckForInvalidWrites<true, true> e;
+ std::unexpected<int> un(std::in_place, 42);
+ e = un;
+ assert(e.check());
+ }
+ {
+ CheckForInvalidWrites<false, true> e;
+ std::unexpected<bool> un(std::in_place, true);
+ e = un;
+ assert(e.check());
+ }
+ }
+
return true;
}