summaryrefslogtreecommitdiffstats
path: root/llvm/unittests/ADT/DenseSetTest.cpp
diff options
context:
space:
mode:
authorLang Hames <lhames@gmail.com>2018-10-15 18:34:36 +0000
committerLang Hames <lhames@gmail.com>2018-10-15 18:34:36 +0000
commit28332c415c323d3d7db1031bd39f62498f18486e (patch)
tree9d74925557b9a31ad776655ff1a63e35434155a8 /llvm/unittests/ADT/DenseSetTest.cpp
parent4cf1da0e021bbd05665e8dbc7eebb94a5f1ea461 (diff)
downloadbcm5719-llvm-28332c415c323d3d7db1031bd39f62498f18486e.tar.gz
bcm5719-llvm-28332c415c323d3d7db1031bd39f62498f18486e.zip
[ADT] Fix a bug in DenseSet's initializer_list constructor.
Without this fix, DenseSet crashes with an assertion if constructed with an initializer_list whose length is not a power of two. llvm-svn: 344542
Diffstat (limited to 'llvm/unittests/ADT/DenseSetTest.cpp')
-rw-r--r--llvm/unittests/ADT/DenseSetTest.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/unittests/ADT/DenseSetTest.cpp b/llvm/unittests/ADT/DenseSetTest.cpp
index 04f84e041fb..7368e2ed0e0 100644
--- a/llvm/unittests/ADT/DenseSetTest.cpp
+++ b/llvm/unittests/ADT/DenseSetTest.cpp
@@ -80,6 +80,14 @@ TYPED_TEST(DenseSetTest, InitializerList) {
EXPECT_EQ(0u, set.count(3));
}
+TYPED_TEST(DenseSetTest, InitializerListWithNonPowerOfTwoLength) {
+ TypeParam set({1, 2, 3});
+ EXPECT_EQ(3u, set.size());
+ EXPECT_EQ(1u, set.count(1));
+ EXPECT_EQ(1u, set.count(2));
+ EXPECT_EQ(1u, set.count(3));
+}
+
TYPED_TEST(DenseSetTest, ConstIteratorComparison) {
TypeParam set({1});
const TypeParam &cset = set;
OpenPOWER on IntegriCloud