[all-commits] [llvm/llvm-project] c1c278: [clang][ssaf] Integrate source-edit-generation (#2...

Jan Korous via All-commits all-commits at lists.llvm.org
Fri Jul 17 15:23:10 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c1c278e7484038f1d14314f38736532975fafd20
      https://github.com/llvm/llvm-project/commit/c1c278e7484038f1d14314f38736532975fafd20
  Author: Jan Korous <jkorous at apple.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    A clang/docs/ScalableStaticAnalysis/user-docs/SourceEditGeneration.rst
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Frontend/SSAFOptions.h
    M clang/include/clang/Options/Options.td
    A clang/include/clang/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/ScalableStaticAnalysis/Frontend/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.cpp
    M clang/test/Analysis/Scalable/help.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/Inputs/empty-suite.json
    A clang/test/Analysis/Scalable/source-edit-generation/Inputs/two-function-suite.json
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/CMakeLists.txt
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/TestTransformationPlugin/CMakeLists.txt
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/TestTransformationPlugin/TestTransformation.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/lit.local.cfg
    A clang/test/Analysis/Scalable/source-edit-generation/cli-errors.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/coexistence.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/downgradable-errors.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/happy-path.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/write-failure.cpp
    M clang/test/CMakeLists.txt

  Log Message:
  -----------
  [clang][ssaf] Integrate source-edit-generation (#208590)

Adds the four `--ssaf-*` driver flags
(`--ssaf-source-transformation=`,
`--ssaf-global-scope-analysis-result=`, `--ssaf-src-edit-file=`,
`--ssaf-transformation-report-file=`) under `SSAF_Group`, marshalled
into `FrontendOptions`. The compilation-unit identifier flag introduced
earlier is reused. The driver forwards all four flags to `cc1`.

Adds twelve `warn_ssaf_*` diagnostics under
`-Wscalable-static-analysis-framework` (`DefaultError`) covering the
orphan-flag matrix, unknown transformation names, unknown output
formats, WPA-suite read failures, and edit/report write failures.

Adds `clang::ssaf::SourceTransformationFrontendAction` — a
`WrapperFrontendAction` that, when any source-edit flag is set,
validates the CLI as a group, loads the WPASuite from the configured
path, instantiates the named transformation, and serializes the
accumulated edits and findings through the configured formats. The
action is wrapped in `ExecuteCompilerInvocation` after the existing
TU-summary wrap so both pipelines stack as independent `ASTConsumer`s on
the same translation unit; they exchange no data.

Assisted-By: Claude Opus 4.7



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list