From b7db2e9f82422cf18a88711f2f350fe1696a25eb Mon Sep 17 00:00:00 2001 From: "Duncan P. N. Exon Smith" Date: Sat, 9 Mar 2019 20:15:01 +0000 Subject: [PATCH] Stop relying on allocator behaviour in modules unit test Another fixup for r355778 for Windows bots, this time to stop accidentally relying on allocator behaviour for the test to pass. llvm-svn: 355780 --- .../Serialization/InMemoryModuleCacheTest.cpp | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/clang/unittests/Serialization/InMemoryModuleCacheTest.cpp b/clang/unittests/Serialization/InMemoryModuleCacheTest.cpp index 3cba5f59615e..ed5e1538eba7 100644 --- a/clang/unittests/Serialization/InMemoryModuleCacheTest.cpp +++ b/clang/unittests/Serialization/InMemoryModuleCacheTest.cpp @@ -71,12 +71,15 @@ TEST(InMemoryModuleCacheTest, addBuiltPCM) { } TEST(InMemoryModuleCacheTest, tryToDropPCM) { - auto B = getBuffer(1); - auto *RawB = B.get(); + auto B1 = getBuffer(1); + auto B2 = getBuffer(2); + auto *RawB1 = B1.get(); + auto *RawB2 = B2.get(); + ASSERT_NE(RawB1, RawB2); InMemoryModuleCache Cache; EXPECT_EQ(InMemoryModuleCache::Unknown, Cache.getPCMState("B")); - EXPECT_EQ(RawB, &Cache.addPCM("B", std::move(B))); + EXPECT_EQ(RawB1, &Cache.addPCM("B", std::move(B1))); EXPECT_FALSE(Cache.tryToDropPCM("B")); EXPECT_EQ(nullptr, Cache.lookupPCM("B")); EXPECT_EQ(InMemoryModuleCache::ToBuild, Cache.getPCMState("B")); @@ -90,17 +93,13 @@ TEST(InMemoryModuleCacheTest, tryToDropPCM) { EXPECT_DEATH(Cache.finalizePCM("B"), "Trying to finalize a dropped PCM"); #endif - B = getBuffer(2); - ASSERT_NE(RawB, B.get()); - RawB = B.get(); - // Add a new one. - EXPECT_EQ(RawB, &Cache.addBuiltPCM("B", std::move(B))); + EXPECT_EQ(RawB2, &Cache.addBuiltPCM("B", std::move(B2))); EXPECT_TRUE(Cache.isPCMFinal("B")); // Can try to drop again, but this should error and do nothing. EXPECT_TRUE(Cache.tryToDropPCM("B")); - EXPECT_EQ(RawB, Cache.lookupPCM("B")); + EXPECT_EQ(RawB2, Cache.lookupPCM("B")); } TEST(InMemoryModuleCacheTest, finalizePCM) {