[all-commits] [llvm/llvm-project] fd4b3f: [analyzer] NFC: Separate PathDiagnosticConsumer op...

NoQ via All-commits all-commits at lists.llvm.org
Tue Oct 13 10:53:34 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: fd4b3f123d6e64769881e4c6351d5bbbdac30ce3
      https://github.com/llvm/llvm-project/commit/fd4b3f123d6e64769881e4c6351d5bbbdac30ce3
  Author: Artem Dergachev <artem.dergachev at gmail.com>
  Date:   2020-10-13 (Tue, 13 Oct 2020)

  Changed paths:
    M clang/include/clang/Analysis/PathDiagnostic.h
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
    M clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
    M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp

  Log Message:
  -----------
  [analyzer] NFC: Separate PathDiagnosticConsumer options from AnalyzerOptions.

The AnalyzerOptions object contains too much information that's
entirely specific to the Analyzer. It is also being referenced by
path diagnostic consumers to tweak their behavior. In order for path
diagnostic consumers to function separately from the analyzer,
make a smaller options object that only contains relevant options.

Differential Revision: https://reviews.llvm.org/D67420


  Commit: b76dc111dd02672488df794570d82e3edbbfa5d8
      https://github.com/llvm/llvm-project/commit/b76dc111dd02672488df794570d82e3edbbfa5d8
  Author: Artem Dergachev <artem.dergachev at gmail.com>
  Date:   2020-10-13 (Tue, 13 Oct 2020)

  Changed paths:
    A clang/include/clang/Analysis/IssueHash.h
    R clang/include/clang/StaticAnalyzer/Core/IssueHash.h
    M clang/lib/Analysis/CMakeLists.txt
    A clang/lib/Analysis/IssueHash.cpp
    M clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
    R clang/lib/StaticAnalyzer/Core/IssueHash.cpp
    M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp

  Log Message:
  -----------
  [analyzer] NFC: Move IssueHash to libAnalysis.

IssueHash is an attempt to introduce stable warning identifiers
that won't change when code around them gets moved around.
Path diagnostic consumers print issue hashes for the emitted diagnostics.

This move will allow us to ultimately move path diagnostic consumers
to libAnalysis.

Differential Revision: https://reviews.llvm.org/D67421


  Commit: 44b7cf2983b6a8373c99a9b254f8c3f944e03f35
      https://github.com/llvm/llvm-project/commit/44b7cf2983b6a8373c99a9b254f8c3f944e03f35
  Author: Artem Dergachev <artem.dergachev at gmail.com>
  Date:   2020-10-13 (Tue, 13 Oct 2020)

  Changed paths:
    A clang/include/clang/Analysis/PathDiagnosticConsumers.def
    A clang/include/clang/Analysis/PathDiagnosticConsumers.h
    M clang/include/clang/StaticAnalyzer/Core/Analyses.def
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
    R clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
    M clang/include/clang/module.modulemap
    M clang/lib/Analysis/CMakeLists.txt
    A clang/lib/Analysis/HTMLPathDiagnosticConsumer.cpp
    A clang/lib/Analysis/PlistHTMLPathDiagnosticConsumer.cpp
    A clang/lib/Analysis/PlistPathDiagnosticConsumer.cpp
    A clang/lib/Analysis/SarifPathDiagnosticConsumer.cpp
    A clang/lib/Analysis/TextPathDiagnosticConsumer.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/StaticAnalyzer/Core/CMakeLists.txt
    R clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
    R clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
    R clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
    R clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp

  Log Message:
  -----------
  [analyzer] NFC: Move path diagnostic consumer implementations to libAnalysis.

With this change, we're more or less ready to allow users outside
of the Static Analyzer to take advantage of path diagnostic consumers
for emitting their warnings in different formats.

Differential Revision: https://reviews.llvm.org/D67422


Compare: https://github.com/llvm/llvm-project/compare/0ccf9263cceb...44b7cf2983b6


More information about the All-commits mailing list