https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115970
--- Comment #9 from David Malcolm <dmalcolm at gcc dot gnu.org> ---
As noted in comment #8, I've pushed a version of this to trunk as
r16-5170-g8a155c170b443e332b3db4922f0f0d588a17604f.
Differences from previous versions:
* I renamed the envvar to "EXPERIMENTAL_SARIF_SOCKET" to emphasize the
experimental nature of this feature
* fixed the SGR color code issue
* replaced sarif-listener.c with a Python script
* added documentation
Possible followup work:
* maybe convert the value to be a set of key=value pairs akin to
-fdiagnostics-add-output=, with vars:
* socket=NAME_OF_SOCKET
* granularity={log,result} for specifying whether you want individual
notifications on diagnostics, or one big one at the end of the cc1/cc1plus/etc
invocation with all diagnostics, and all metadata (and things like nested
logical locations which rely on the "log"-level data)
* other vars from sarif sink, like "version"
* what are we leaving unsaid/unspecified?
* does there need to be some kind of protocol between producer and consumer?