summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/utilities
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2019-06-21 14:31:34 +0000
committerEric Fiselier <eric@efcs.ca>2019-06-21 14:31:34 +0000
commit87cf92d9cb9379f7d3f1a601fc17d56bb2d18d80 (patch)
tree8a97a03cd630b433be99dd7a407166c6616279cc /libcxx/test/std/utilities
parentfa1c7d9bdf64ff4ae2348a127e984de1aeb23740 (diff)
downloadbcm5719-llvm-87cf92d9cb9379f7d3f1a601fc17d56bb2d18d80.tar.gz
bcm5719-llvm-87cf92d9cb9379f7d3f1a601fc17d56bb2d18d80.zip
Make rvalue metaprogramming traits work in C++03.
The next step is to get move and forward working in C++03. llvm-svn: 364053
Diffstat (limited to 'libcxx/test/std/utilities')
-rw-r--r--libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/add_lvalue_ref.pass.cpp4
-rw-r--r--libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp2
-rw-r--r--libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp2
-rw-r--r--libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_lvalue_reference.pass.cpp2
-rw-r--r--libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_rvalue_reference.pass.cpp2
-rw-r--r--libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp2
-rw-r--r--libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_reference.pass.cpp3
-rw-r--r--libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp2
-rw-r--r--libcxx/test/std/utilities/utility/declval/declval.pass.cpp4
9 files changed, 0 insertions, 23 deletions
diff --git a/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/add_lvalue_ref.pass.cpp b/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/add_lvalue_ref.pass.cpp
index b40e68ab4e3..3abc949335e 100644
--- a/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/add_lvalue_ref.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/add_lvalue_ref.pass.cpp
@@ -58,23 +58,19 @@ int main(int, char**)
// LWG 2101 specifically talks about add_lvalue_reference and functions.
// The term of art is "a referenceable type", which a cv- or ref-qualified function is not.
test_function0<void()>();
-#if TEST_STD_VER >= 11
test_function1<void() const>();
test_function1<void() &>();
test_function1<void() &&>();
test_function1<void() const &>();
test_function1<void() const &&>();
-#endif
// But a cv- or ref-qualified member function *is* "a referenceable type"
test_function0<void (Foo::*)()>();
-#if TEST_STD_VER >= 11
test_function0<void (Foo::*)() const>();
test_function0<void (Foo::*)() &>();
test_function0<void (Foo::*)() &&>();
test_function0<void (Foo::*)() const &>();
test_function0<void (Foo::*)() const &&>();
-#endif
return 0;
}
diff --git a/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp b/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp
index 22628a3a2cf..d67db440fa2 100644
--- a/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp
@@ -6,8 +6,6 @@
//
//===----------------------------------------------------------------------===//
-// UNSUPPORTED: c++98, c++03
-
// type_traits
// add_rvalue_reference
diff --git a/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp b/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp
index 50927fadb83..2b11e0b7332 100644
--- a/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp
@@ -36,13 +36,11 @@ int main(int, char**)
test_remove_reference<int*&, int*>();
test_remove_reference<const int*&, const int*>();
-#if TEST_STD_VER >= 11
test_remove_reference<int&&, int>();
test_remove_reference<const int&&, const int>();
test_remove_reference<int(&&)[3], int[3]>();
test_remove_reference<int*&&, int*>();
test_remove_reference<const int*&&, const int*>();
-#endif
return 0;
}
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_lvalue_reference.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_lvalue_reference.pass.cpp
index ed32cd9b999..9235efbb1dd 100644
--- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_lvalue_reference.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_lvalue_reference.pass.cpp
@@ -10,8 +10,6 @@
// is_lvalue_reference
-// UNSUPPORTED: c++98, c++03
-
#include <type_traits>
#include <cstddef> // for std::nullptr_t
#include "test_macros.h"
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_rvalue_reference.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_rvalue_reference.pass.cpp
index d17ed5feeff..b424c7e038c 100644
--- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_rvalue_reference.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/is_rvalue_reference.pass.cpp
@@ -10,8 +10,6 @@
// is_rvalue_reference
-// UNSUPPORTED: c++98, c++03
-
#include <type_traits>
#include <cstddef> // for std::nullptr_t
#include "test_macros.h"
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp
index e40a2a01443..b2537790cb7 100644
--- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp
@@ -6,8 +6,6 @@
//
//===----------------------------------------------------------------------===//
-// UNSUPPORTED: c++98, c++03
-
// type_traits
// rvalue_ref
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_reference.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_reference.pass.cpp
index bb8a2d62ca9..e6fd1e67aed 100644
--- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_reference.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_reference.pass.cpp
@@ -75,10 +75,7 @@ typedef void (*FunctionPtr)();
int main(int, char**)
{
test_is_reference<int&>();
-#if TEST_STD_VER >= 11
test_is_reference<int&&>();
-#endif
-
test_is_not_reference<std::nullptr_t>();
test_is_not_reference<void>();
test_is_not_reference<int>();
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp
index f00307aa969..13b35d3a779 100644
--- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp
@@ -6,8 +6,6 @@
//
//===----------------------------------------------------------------------===//
-// UNSUPPORTED: c++98, c++03
-
// type_traits
// rvalue_ref
diff --git a/libcxx/test/std/utilities/utility/declval/declval.pass.cpp b/libcxx/test/std/utilities/utility/declval/declval.pass.cpp
index 6509fd4377c..f56a6fd779e 100644
--- a/libcxx/test/std/utilities/utility/declval/declval.pass.cpp
+++ b/libcxx/test/std/utilities/utility/declval/declval.pass.cpp
@@ -23,11 +23,7 @@ class A
int main(int, char**)
{
-#if TEST_STD_VER >= 11
static_assert((std::is_same<decltype(std::declval<A>()), A&&>::value), "");
-#else
- static_assert((std::is_same<decltype(std::declval<A>()), A&>::value), "");
-#endif
return 0;
}
OpenPOWER on IntegriCloud