mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-28 04:33:05 +00:00
Work around a bug with MSVC 10 where it fails to recognize a valid use
of typename. GCC and Clang were fine with this, but MSVC won't accept it. Fortunately, it also doesn't need it. Yuck. Thanks to Nakamura for pointing this out in IRC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158593 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
06e6c385cb
commit
7027ba92dd
@ -66,8 +66,17 @@ TYPED_TEST(DenseMapTest, EmptyIntMapTest) {
|
||||
// Lookup tests
|
||||
EXPECT_FALSE(this->Map.count(this->getKey()));
|
||||
EXPECT_TRUE(this->Map.find(this->getKey()) == this->Map.end());
|
||||
#ifndef _MSC_VER
|
||||
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
|
||||
|
Loading…
Reference in New Issue
Block a user