[llvm-branch-commits] [clang] [SSAF][UnsafeBufferUsage] Remove UnsafeBufferUsageExtractor.h (PR #191931)

Balázs Benics via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Fri Apr 17 07:22:32 PDT 2026


================
@@ -68,52 +69,82 @@ class UnsafeBufferUsageTest : public TestFixture {
 protected:
   TUSummary TUSum;
   TUSummaryBuilder Builder;
-  UnsafeBufferUsageTUSummaryExtractor Extractor;
+  std::unique_ptr<TUSummaryExtractor> Extractor;
   std::unique_ptr<ASTUnit> AST;
 
   UnsafeBufferUsageTest()
       : TUSum(BuildNamespace(BuildNamespaceKind::CompilationUnit, "Mock.cpp")),
-        Builder(TUSum), Extractor(Builder) {}
+        Builder(TUSum), Extractor(nullptr) {}
 
-  template <typename ContributorDecl = NamedDecl>
-  std::unique_ptr<UnsafeBufferUsageEntitySummary>
-  setUpTest(StringRef Code, StringRef ContributorName) {
+  bool setUpTest(StringRef Code) {
     AST = tooling::buildASTFromCodeWithArgs(
         Code, {"-Wno-unused-value", "-Wno-int-to-pointer-cast"});
 
-    const auto *ContributorDefn =
-        findDeclByName<ContributorDecl>(ContributorName, AST->getASTContext());
+    for (auto &E : clang::ssaf::TUSummaryExtractorRegistry::entries()) {
+      if (E.getName() == UnsafeBufferUsageEntitySummary::Name) {
+        Extractor = E.instantiate(Builder);
+        break;
+      }
+    }
----------------
steakhal wrote:

I think we should just use `makeTUSummaryExtractor()`.
That should have been always returned `TUSummaryExtractor` - I know you will need to patch it from ASTConsumer.

https://github.com/llvm/llvm-project/pull/191931


More information about the llvm-branch-commits mailing list