summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp')
-rw-r--r--libcxx/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/libcxx/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp b/libcxx/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp
index 26221e8a1f4..e4278f0e0ab 100644
--- a/libcxx/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp
+++ b/libcxx/test/std/utilities/variant/variant.variant/variant.ctor/default.pass.cpp
@@ -32,7 +32,7 @@
#include "variant_test_helpers.hpp"
struct NonDefaultConstructible {
- NonDefaultConstructible(int) {}
+ constexpr NonDefaultConstructible(int) {}
};
struct NotNoexcept {
@@ -99,6 +99,11 @@ void test_default_ctor_basic() {
assert(std::get<0>(v) == 0);
}
{
+ std::variant<int, NonDefaultConstructible> v;
+ assert(v.index() == 0);
+ assert(std::get<0>(v) == 0);
+ }
+ {
using V = std::variant<int, long>;
constexpr V v;
static_assert(v.index() == 0, "");
@@ -110,6 +115,12 @@ void test_default_ctor_basic() {
static_assert(v.index() == 0, "");
static_assert(std::get<0>(v) == 0, "");
}
+ {
+ using V = std::variant<int, NonDefaultConstructible>;
+ constexpr V v;
+ static_assert(v.index() == 0, "");
+ static_assert(std::get<0>(v) == 0, "");
+ }
}
int main() {
OpenPOWER on IntegriCloud