From: David Blaikie Date: Wed, 12 Aug 2015 23:26:12 +0000 (+0000) Subject: Simplify PackedVector by removing user-defined special members that aren't any differ... X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=149fe5ef04fc5f3036085233cd1f65b83e49b2e2;p=oota-llvm.git Simplify PackedVector by removing user-defined special members that aren't any different than the defaults This causes the other special members (like move and copy construction, and move assignment) to come through for free. Some code in clang was depending on the (deprecated, in the original code) copy ctor. Now that there's no user-defined special members, they're all available without any deprecation concerns. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@244835 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/ADT/PackedVector.h b/include/llvm/ADT/PackedVector.h index 2341e89fa11..09267173fd7 100644 --- a/include/llvm/ADT/PackedVector.h +++ b/include/llvm/ADT/PackedVector.h @@ -96,7 +96,7 @@ public: } }; - PackedVector() { } + PackedVector() = default; explicit PackedVector(unsigned size) : Bits(size << (BitNum-1)) { } bool empty() const { return Bits.empty(); } @@ -135,19 +135,10 @@ public: return Bits != RHS.Bits; } - const PackedVector &operator=(const PackedVector &RHS) { - Bits = RHS.Bits; - return *this; - } - PackedVector &operator|=(const PackedVector &RHS) { Bits |= RHS.Bits; return *this; } - - void swap(PackedVector &RHS) { - Bits.swap(RHS.Bits); - } }; // Leave BitNum=0 undefined. diff --git a/unittests/ADT/PackedVectorTest.cpp b/unittests/ADT/PackedVectorTest.cpp index 55b5d8d049d..199a6704309 100644 --- a/unittests/ADT/PackedVectorTest.cpp +++ b/unittests/ADT/PackedVectorTest.cpp @@ -52,18 +52,6 @@ TEST(PackedVectorTest, Operation) { EXPECT_FALSE(Vec == Vec2); EXPECT_TRUE(Vec != Vec2); - Vec2.swap(Vec); - EXPECT_EQ(3U, Vec.size()); - EXPECT_FALSE(Vec.empty()); - EXPECT_EQ(0U, Vec[0]); - EXPECT_EQ(0U, Vec[1]); - EXPECT_EQ(0U, Vec[2]); - - EXPECT_EQ(2U, Vec2[0]); - EXPECT_EQ(0U, Vec2[1]); - EXPECT_EQ(1U, Vec2[2]); - EXPECT_EQ(3U, Vec2[3]); - Vec = Vec2; EXPECT_TRUE(Vec == Vec2); EXPECT_FALSE(Vec != Vec2);