[all-commits] [llvm/llvm-project] 4b03ad: [clang] Emit SARIF Diagnostics: Create `clang::Sar...

Vaibhav Yenamandra via All-commits all-commits at lists.llvm.org
Mon Jul 18 05:38:20 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4b03ad650645e2f74a8824c8f69b095ca321fdfe
      https://github.com/llvm/llvm-project/commit/4b03ad650645e2f74a8824c8f69b095ca321fdfe
  Author: Vaibhav Yenamandra <vyenamandra at bloomberg.net>
  Date:   2022-07-18 (Mon, 18 Jul 2022)

  Changed paths:
    A clang/include/clang/Basic/Sarif.h
    M clang/lib/Basic/CMakeLists.txt
    A clang/lib/Basic/Sarif.cpp
    M clang/unittests/Basic/CMakeLists.txt
    A clang/unittests/Basic/SarifTest.cpp

  Log Message:
  -----------
  [clang] Emit SARIF Diagnostics: Create `clang::SarifDocumentWriter` interface

[clang] Emit SARIF Diagnostics: Create clang::SarifDocumentWriter interface

Create an interface for writing SARIF documents from within clang:

The primary intent of this change is to introduce the interface
clang::SarifDocumentWriter, which allows incrementally adding
diagnostic data to a JSON backed document. The proposed interface is
not yet connected to the compiler internals, which will be covered in
future work. As such this change will not change the input/output
interface of clang.

This change also introduces the clang::FullSourceRange type that is
modeled after clang::SourceRange + clang::FullSourceLoc, this is useful
for packaging a pair of clang::SourceLocation objects with their
corresponding SourceManagers.

Previous discussions:

RFC for this change: https://lists.llvm.org/pipermail/cfe-dev/2021-March/067907.html
https://lists.llvm.org/pipermail/cfe-dev/2021-July/068480.html
SARIF Standard (2.1.0):

https://docs.oasis-open.org/sarif/sarif/v2.1.0/os/sarif-v2.1.0-os.html

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




More information about the All-commits mailing list