diff --git a/llvm/include/llvm/ADT/STLExtras.h b/llvm/include/llvm/ADT/STLExtras.h --- a/llvm/include/llvm/ADT/STLExtras.h +++ b/llvm/include/llvm/ADT/STLExtras.h @@ -252,6 +252,7 @@ /// Test whether \p RangeOrContainer is empty. Similar to C++17 std::empty. template +LLVM_DEPRECATED("Use x.empty() instead", "empty") constexpr bool empty(const T &RangeOrContainer) { return adl_begin(RangeOrContainer) == adl_end(RangeOrContainer); } diff --git a/llvm/unittests/ADT/STLExtrasTest.cpp b/llvm/unittests/ADT/STLExtrasTest.cpp --- a/llvm/unittests/ADT/STLExtrasTest.cpp +++ b/llvm/unittests/ADT/STLExtrasTest.cpp @@ -399,23 +399,6 @@ EXPECT_EQ(5, count); } -TEST(STLExtrasTest, EmptyTest) { - std::vector V; - EXPECT_TRUE(llvm::empty(V)); - V.push_back(nullptr); - EXPECT_FALSE(llvm::empty(V)); - - std::initializer_list E = {}; - std::initializer_list NotE = {7, 13, 42}; - EXPECT_TRUE(llvm::empty(E)); - EXPECT_FALSE(llvm::empty(NotE)); - - auto R0 = make_range(V.begin(), V.begin()); - EXPECT_TRUE(llvm::empty(R0)); - auto R1 = make_range(V.begin(), V.end()); - EXPECT_FALSE(llvm::empty(R1)); -} - TEST(STLExtrasTest, DropBeginTest) { SmallVector vec{0, 1, 2, 3, 4};