From 6eda66b0a9f793c65852aa94430ae9bd891bcf63 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 1 Sep 2021 17:57:48 -0700 Subject: [PATCH] PR50294: Fix a performance regression from 2c9dbcd. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Per the contract of ReadLateParsedTemplates, we should not be returning the same results multiple times. No functionality change intended, other than to runtime. Thanks to Luboš Luňák for identifying the cause of the regression! --- clang/lib/Serialization/ASTReader.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/clang/lib/Serialization/ASTReader.cpp b/clang/lib/Serialization/ASTReader.cpp index 128350ce9ff8f0..dfa7d55af735da 100644 --- a/clang/lib/Serialization/ASTReader.cpp +++ b/clang/lib/Serialization/ASTReader.cpp @@ -8412,6 +8412,8 @@ void ASTReader::ReadLateParsedTemplates( LPTMap.insert(std::make_pair(FD, std::move(LT))); } } + + LateParsedTemplates.clear(); } void ASTReader::LoadSelector(Selector Sel) {