[all-commits] [llvm/llvm-project] 69fcf4: Emit SARIF Diagnostics: Create `clang::SarifDocume...

Vaibhav Yenamandra via All-commits all-commits at lists.llvm.org
Mon Jul 11 09:19:40 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 69fcf4fd5a014b763061f13b5c4434d49c42c35a
      https://github.com/llvm/llvm-project/commit/69fcf4fd5a014b763061f13b5c4434d49c42c35a
  Author: Vaibhav Yenamandra <vyenamandra at bloomberg.net>
  Date:   2022-07-11 (Mon, 11 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:
  -----------
  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