[clang] 96ed679 - [unittest][TrasnformerTest] Fix asan stack-use-after-return
Fangrui Song via cfe-commits
cfe-commits at lists.llvm.org
Tue Nov 3 12:34:52 PST 2020
Author: Fangrui Song
Date: 2020-11-03T12:34:45-08:00
New Revision: 96ed6793b35e8267b0c94ebe69ae94f07024f476
URL: https://github.com/llvm/llvm-project/commit/96ed6793b35e8267b0c94ebe69ae94f07024f476
DIFF: https://github.com/llvm/llvm-project/commit/96ed6793b35e8267b0c94ebe69ae94f07024f476.diff
LOG: [unittest][TrasnformerTest] Fix asan stack-use-after-return
Added:
Modified:
clang/unittests/Tooling/TransformerTest.cpp
Removed:
################################################################################
diff --git a/clang/unittests/Tooling/TransformerTest.cpp b/clang/unittests/Tooling/TransformerTest.cpp
index 46f1d63752d8..1f0637446a00 100644
--- a/clang/unittests/Tooling/TransformerTest.cpp
+++ b/clang/unittests/Tooling/TransformerTest.cpp
@@ -126,11 +126,14 @@ class ClangRefactoringTestBase : public testing::Test {
template <typename R>
void testRule(R Rule, StringRef Input, StringRef Expected) {
- Transformer T(std::move(Rule), consumer());
- T.registerMatchers(&MatchFinder);
+ Transformers.push_back(
+ std::make_unique<Transformer>(std::move(Rule), consumer()));
+ Transformers.back()->registerMatchers(&MatchFinder);
compareSnippets(Expected, rewrite(Input));
}
+ // Transformers are referenced by MatchFinder.
+ std::vector<std::unique_ptr<Transformer>> Transformers;
clang::ast_matchers::MatchFinder MatchFinder;
// Records whether any errors occurred in individual changes.
int ErrorCount = 0;
More information about the cfe-commits
mailing list