diff options
Diffstat (limited to 'libcxx/test/std/utilities/optional/optional.object/optional.object.assign/nullopt_t.pass.cpp')
-rw-r--r-- | libcxx/test/std/utilities/optional/optional.object/optional.object.assign/nullopt_t.pass.cpp | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/nullopt_t.pass.cpp b/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/nullopt_t.pass.cpp deleted file mode 100644 index 991f4334304..00000000000 --- a/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/nullopt_t.pass.cpp +++ /dev/null @@ -1,67 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// UNSUPPORTED: c++98, c++03, c++11, c++14 -// <optional> - -// optional<T>& operator=(nullopt_t) noexcept; - -#include <optional> -#include <type_traits> -#include <cassert> - -#include "test_macros.h" -#include "archetypes.hpp" - -using std::optional; -using std::nullopt_t; -using std::nullopt; - -int main() -{ - { - optional<int> opt; - static_assert(noexcept(opt = nullopt) == true, ""); - opt = nullopt; - assert(static_cast<bool>(opt) == false); - } - { - optional<int> opt(3); - opt = nullopt; - assert(static_cast<bool>(opt) == false); - } - using TT = TestTypes::TestType; - TT::reset(); - { - optional<TT> opt; - static_assert(noexcept(opt = nullopt) == true, ""); - assert(TT::destroyed == 0); - opt = nullopt; - assert(TT::constructed == 0); - assert(TT::alive == 0); - assert(TT::destroyed == 0); - assert(static_cast<bool>(opt) == false); - } - assert(TT::alive == 0); - assert(TT::destroyed == 0); - TT::reset(); - { - optional<TT> opt(42); - assert(TT::destroyed == 0); - TT::reset_constructors(); - opt = nullopt; - assert(TT::constructed == 0); - assert(TT::alive == 0); - assert(TT::destroyed == 1); - assert(static_cast<bool>(opt) == false); - } - assert(TT::alive == 0); - assert(TT::destroyed == 1); - TT::reset(); -} |