summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std
diff options
context:
space:
mode:
authorMarshall Clow <mclow.lists@gmail.com>2016-07-12 15:50:53 +0000
committerMarshall Clow <mclow.lists@gmail.com>2016-07-12 15:50:53 +0000
commit8001ccd06e4b851ba9e974ba1421e2877cc2a997 (patch)
treed3ec8cd9143744d98ca2c4d69bcc7f59b6518d26 /libcxx/test/std
parentd9d8da2821c11654de4f7c1ea33e51c5f68e37c7 (diff)
downloadbcm5719-llvm-8001ccd06e4b851ba9e974ba1421e2877cc2a997.tar.gz
bcm5719-llvm-8001ccd06e4b851ba9e974ba1421e2877cc2a997.zip
Add tests for the meta.unary.props that do not require a complete type. This is part of LWG#2582
llvm-svn: 275184
Diffstat (limited to 'libcxx/test/std')
-rw-r--r--libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_const.pass.cpp4
-rw-r--r--libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp3
-rw-r--r--libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp3
-rw-r--r--libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_volatile.pass.cpp4
4 files changed, 14 insertions, 0 deletions
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_const.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_const.pass.cpp
index 7f63ae40aca..616f25180a6 100644
--- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_const.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_const.pass.cpp
@@ -29,6 +29,8 @@ void test_is_const()
#endif
}
+struct A; // incomplete
+
int main()
{
test_is_const<void>();
@@ -39,6 +41,8 @@ int main()
test_is_const<char[3]>();
test_is_const<char[]>();
+ test_is_const<A>();
+
static_assert(!std::is_const<int&>::value, "");
static_assert(!std::is_const<const int&>::value, "");
}
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp
index 94bf7fb5804..745efd00895 100644
--- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp
@@ -50,6 +50,8 @@ public:
~Class();
};
+struct A; // incomplete
+
int main()
{
test_is_not_signed<void>();
@@ -61,6 +63,7 @@ int main()
test_is_not_signed<char[]>();
test_is_not_signed<bool>();
test_is_not_signed<unsigned>();
+ test_is_not_signed<A>();
test_is_signed<int>();
test_is_signed<double>();
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp
index 9ca42432df1..376c7e005ce 100644
--- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp
@@ -50,6 +50,8 @@ public:
~Class();
};
+struct A; // incomplete
+
int main()
{
test_is_not_unsigned<void>();
@@ -61,6 +63,7 @@ int main()
test_is_not_unsigned<char[]>();
test_is_not_unsigned<int>();
test_is_not_unsigned<double>();
+ test_is_not_unsigned<A>();
test_is_unsigned<bool>();
test_is_unsigned<unsigned>();
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_volatile.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_volatile.pass.cpp
index 36697a3f3eb..cc8d66ae688 100644
--- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_volatile.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_volatile.pass.cpp
@@ -29,6 +29,8 @@ void test_is_volatile()
#endif
}
+struct A; // incomplete
+
int main()
{
test_is_volatile<void>();
@@ -39,6 +41,8 @@ int main()
test_is_volatile<char[3]>();
test_is_volatile<char[]>();
+ test_is_volatile<A>();
+
static_assert(!std::is_volatile<int&>::value, "");
static_assert(!std::is_volatile<volatile int&>::value, "");
}
OpenPOWER on IntegriCloud