[ADT] Remove MSVC-only "no two-phase name lookup" typename path.
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 9 Jul 2019 15:24:19 +0000 (15:24 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 9 Jul 2019 15:24:19 +0000 (15:24 +0000)
Now that we've dropped VS2015 support (D64326) we can use the regular codepath as VS2017+ correctly handles it

llvm-svn: 365502

llvm/unittests/ADT/DenseMapTest.cpp

index 383c2a5..7e85ce7 100644 (file)
@@ -119,17 +119,8 @@ TYPED_TEST(DenseMapTest, EmptyIntMapTest) {
   // Lookup tests
   EXPECT_FALSE(this->Map.count(this->getKey()));
   EXPECT_TRUE(this->Map.find(this->getKey()) == this->Map.end());
-#if !defined(_MSC_VER) || defined(__clang__)
   EXPECT_EQ(typename TypeParam::mapped_type(),
             this->Map.lookup(this->getKey()));
-#else
-  // MSVC, at least old versions, cannot parse the typename to disambiguate
-  // TypeParam::mapped_type as a type. However, because MSVC doesn't implement
-  // two-phase name lookup, it also doesn't require the typename. Deal with
-  // this mutual incompatibility through specialized code.
-  EXPECT_EQ(TypeParam::mapped_type(),
-            this->Map.lookup(this->getKey()));
-#endif
 }
 
 // Constant map tests