]> granicus.if.org Git - llvm/commitdiff
[ADT] Enable ArrayRef/StringRef is_assignable tests on MSVC
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 9 Jul 2019 12:20:04 +0000 (12:20 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 9 Jul 2019 12:20:04 +0000 (12:20 +0000)
Now that we've dropped VS2015 support (D64326) we can enable these static_asserts on MSVC builds as VS2017+ correctly handles them

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365471 91177308-0d34-0410-b5e6-96231b3b80d8

unittests/ADT/ArrayRefTest.cpp
unittests/ADT/StringRefTest.cpp

index 4f8275c4bb3f7d34dc743838782eb60aee8c8ccc..04b92c078afd07f34aaa01e002a20050772f9875 100644 (file)
@@ -33,10 +33,6 @@ static_assert(
 
 // 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.)
-//
-// Disable this check under MSVC; even MSVC 2015 isn't inconsistent between
-// std::is_assignable and actually writing such an assignment.
-#if !defined(_MSC_VER)
 static_assert(
     !std::is_assignable<ArrayRef<int *>&, int *>::value,
     "Assigning from single prvalue element");
@@ -49,7 +45,6 @@ static_assert(
 static_assert(
     !std::is_assignable<ArrayRef<int *>&, std::initializer_list<int *>>::value,
     "Assigning from an initializer list");
-#endif
 
 namespace {
 
index 6f83dc3224a3d30f92533174f0178dfad34a6f29..a45e83c1163d5964ddc5a9e31a8ae2d121667971 100644 (file)
@@ -34,10 +34,6 @@ std::ostream &operator<<(std::ostream &OS,
 // Check that we can't accidentally assign a temporary std::string to a
 // StringRef. (Unfortunately we can't make use of the same thing with
 // constructors.)
-//
-// Disable this check under MSVC; even MSVC 2015 isn't consistent between
-// std::is_assignable and actually writing such an assignment.
-#if !defined(_MSC_VER)
 static_assert(
     !std::is_assignable<StringRef&, std::string>::value,
     "Assigning from prvalue std::string");
@@ -56,8 +52,6 @@ static_assert(
 static_assert(
     std::is_assignable<StringRef&, const char * &>::value,
     "Assigning from lvalue C string");
-#endif
-
 
 namespace {
 TEST(StringRefTest, Construction) {