summaryrefslogtreecommitdiffstats
path: root/libcxx/test/utilities/optional/optional.object/optional.object.assign/move.pass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/utilities/optional/optional.object/optional.object.assign/move.pass.cpp')
-rw-r--r--libcxx/test/utilities/optional/optional.object/optional.object.assign/move.pass.cpp30
1 files changed, 16 insertions, 14 deletions
diff --git a/libcxx/test/utilities/optional/optional.object/optional.object.assign/move.pass.cpp b/libcxx/test/utilities/optional/optional.object/optional.object.assign/move.pass.cpp
index a1574d6bb62..d27313dad42 100644
--- a/libcxx/test/utilities/optional/optional.object/optional.object.assign/move.pass.cpp
+++ b/libcxx/test/utilities/optional/optional.object/optional.object.assign/move.pass.cpp
@@ -13,12 +13,14 @@
// noexcept(is_nothrow_move_assignable<T>::value &&
// is_nothrow_move_constructible<T>::value);
-#include <optional>
+#include <experimental/optional>
#include <type_traits>
#include <cassert>
#if _LIBCPP_STD_VER > 11
+using std::experimental::optional;
+
struct X
{
static bool throw_now;
@@ -45,16 +47,16 @@ int main()
{
#if _LIBCPP_STD_VER > 11
{
- static_assert(std::is_nothrow_move_assignable<std::optional<int>>::value, "");
- std::optional<int> opt;
- constexpr std::optional<int> opt2;
+ static_assert(std::is_nothrow_move_assignable<optional<int>>::value, "");
+ optional<int> opt;
+ constexpr optional<int> opt2;
opt = std::move(opt2);
static_assert(static_cast<bool>(opt2) == false, "");
assert(static_cast<bool>(opt) == static_cast<bool>(opt2));
}
{
- std::optional<int> opt;
- constexpr std::optional<int> opt2(2);
+ optional<int> opt;
+ constexpr optional<int> opt2(2);
opt = std::move(opt2);
static_assert(static_cast<bool>(opt2) == true, "");
static_assert(*opt2 == 2, "");
@@ -62,15 +64,15 @@ int main()
assert(*opt == *opt2);
}
{
- std::optional<int> opt(3);
- constexpr std::optional<int> opt2;
+ optional<int> opt(3);
+ constexpr optional<int> opt2;
opt = std::move(opt2);
static_assert(static_cast<bool>(opt2) == false, "");
assert(static_cast<bool>(opt) == static_cast<bool>(opt2));
}
{
- std::optional<int> opt(3);
- constexpr std::optional<int> opt2(2);
+ optional<int> opt(3);
+ constexpr optional<int> opt2(2);
opt = std::move(opt2);
static_assert(static_cast<bool>(opt2) == true, "");
static_assert(*opt2 == 2, "");
@@ -78,9 +80,9 @@ int main()
assert(*opt == *opt2);
}
{
- static_assert(!std::is_nothrow_move_assignable<std::optional<X>>::value, "");
- std::optional<X> opt;
- std::optional<X> opt2(X{});
+ static_assert(!std::is_nothrow_move_assignable<optional<X>>::value, "");
+ optional<X> opt;
+ optional<X> opt2(X{});
assert(static_cast<bool>(opt2) == true);
try
{
@@ -95,7 +97,7 @@ int main()
}
}
{
- static_assert(std::is_nothrow_move_assignable<std::optional<Y>>::value, "");
+ static_assert(std::is_nothrow_move_assignable<optional<Y>>::value, "");
}
#endif // _LIBCPP_STD_VER > 11
}
OpenPOWER on IntegriCloud