diff options
Diffstat (limited to 'libcxx/test/utilities/optional/optional.object/optional.object.ctor/default.pass.cpp')
| -rw-r--r-- | libcxx/test/utilities/optional/optional.object/optional.object.ctor/default.pass.cpp | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/libcxx/test/utilities/optional/optional.object/optional.object.ctor/default.pass.cpp b/libcxx/test/utilities/optional/optional.object/optional.object.ctor/default.pass.cpp deleted file mode 100644 index 6a1763de22b..00000000000 --- a/libcxx/test/utilities/optional/optional.object/optional.object.ctor/default.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. -// -//===----------------------------------------------------------------------===// - -// <optional> - -// constexpr optional() noexcept; - -#include <experimental/optional> -#include <type_traits> -#include <cassert> - -#if _LIBCPP_STD_VER > 11 - -using std::experimental::optional; - -template <class Opt> -void -test_constexpr() -{ - static_assert(std::is_nothrow_default_constructible<Opt>::value, ""); - constexpr Opt opt; - static_assert(static_cast<bool>(opt) == false, ""); - - struct test_constexpr_ctor - : public Opt - { - constexpr test_constexpr_ctor() {} - }; - -} - -template <class Opt> -void -test() -{ - static_assert(std::is_nothrow_default_constructible<Opt>::value, ""); - Opt opt; - assert(static_cast<bool>(opt) == false); - - struct test_constexpr_ctor - : public Opt - { - constexpr test_constexpr_ctor() {} - }; -} - -struct X -{ - X(); -}; - -#endif // _LIBCPP_STD_VER > 11 - -int main() -{ -#if _LIBCPP_STD_VER > 11 - test_constexpr<optional<int>>(); - test_constexpr<optional<int*>>(); - test<optional<X>>(); -#endif // _LIBCPP_STD_VER > 11 -} |

