aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/ADT/ArrayRefTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/unittests/ADT/ArrayRefTest.cpp')
-rw-r--r--llvm/unittests/ADT/ArrayRefTest.cpp41
1 files changed, 24 insertions, 17 deletions
diff --git a/llvm/unittests/ADT/ArrayRefTest.cpp b/llvm/unittests/ADT/ArrayRefTest.cpp
index 9fcddc8..eded12d 100644
--- a/llvm/unittests/ADT/ArrayRefTest.cpp
+++ b/llvm/unittests/ADT/ArrayRefTest.cpp
@@ -16,27 +16,34 @@ using namespace llvm;
// Check that the ArrayRef-of-pointer converting constructor only allows adding
// cv qualifiers (not removing them, or otherwise changing the type)
-static_assert(std::is_convertible_v<ArrayRef<int *>, ArrayRef<const int *>>,
- "Adding const");
-static_assert(std::is_convertible_v<ArrayRef<int *>, ArrayRef<volatile int *>>,
- "Adding volatile");
-static_assert(!std::is_convertible_v<ArrayRef<int *>, ArrayRef<float *>>,
+static_assert(
+ std::is_convertible<ArrayRef<int *>, ArrayRef<const int *>>::value,
+ "Adding const");
+static_assert(
+ std::is_convertible<ArrayRef<int *>, ArrayRef<volatile int *>>::value,
+ "Adding volatile");
+static_assert(!std::is_convertible<ArrayRef<int *>, ArrayRef<float *>>::value,
"Changing pointer of one type to a pointer of another");
-static_assert(!std::is_convertible_v<ArrayRef<const int *>, ArrayRef<int *>>,
- "Removing const");
-static_assert(!std::is_convertible_v<ArrayRef<volatile int *>, ArrayRef<int *>>,
- "Removing volatile");
+static_assert(
+ !std::is_convertible<ArrayRef<const int *>, ArrayRef<int *>>::value,
+ "Removing const");
+static_assert(
+ !std::is_convertible<ArrayRef<volatile int *>, ArrayRef<int *>>::value,
+ "Removing volatile");
// Check that we can't accidentally assign a temporary location to an ArrayRef.
// (Unfortunately we can't make use of the same thing with constructors.)
-static_assert(!std::is_assignable_v<ArrayRef<int *> &, int *>,
- "Assigning from single prvalue element");
-static_assert(!std::is_assignable_v<ArrayRef<int *> &, int *&&>,
- "Assigning from single xvalue element");
-static_assert(std::is_assignable_v<ArrayRef<int *> &, int *&>,
- "Assigning from single lvalue element");
static_assert(
- !std::is_assignable_v<ArrayRef<int *> &, std::initializer_list<int *>>,
+ !std::is_assignable<ArrayRef<int *>&, int *>::value,
+ "Assigning from single prvalue element");
+static_assert(
+ !std::is_assignable<ArrayRef<int *>&, int * &&>::value,
+ "Assigning from single xvalue element");
+static_assert(
+ std::is_assignable<ArrayRef<int *>&, int * &>::value,
+ "Assigning from single lvalue element");
+static_assert(
+ !std::is_assignable<ArrayRef<int *>&, std::initializer_list<int *>>::value,
"Assigning from an initializer list");
namespace {
@@ -254,7 +261,7 @@ TEST(ArrayRefTest, makeArrayRefFromStdArray) {
}
}
-static_assert(std::is_trivially_copyable_v<ArrayRef<int>>,
+static_assert(std::is_trivially_copyable<ArrayRef<int>>::value,
"trivially copyable");
TEST(ArrayRefTest, makeMutableArrayRef) {