A simple script to generate a matrix of clang diagnostic flags.
I created this application to support a today I learned (TIL) note on what diagnostic flags are available in which version. The matrix is published:
The matrix does not contain information for all versions of clang and the matrix may contain errors if the code is not working as expected.
The URL do not point directly to the llvm releases documentation site, they point to a proxy. The reason for this was that the Markdown rendering broke on the GitHub website.
In order to cut the size of the matrix, I introduced the use of a proxy, which takes a short form of the URL translates to the full URL.
Example:
https://pxy.fi/5/rsanitize-address
It emitted by the clang diagnostic flags matrix generator (diag.pl
). Parsed from:
https://releases.llvm.org/5.0.0/tools/clang/docs/DiagnosticsReference.html#rsanitize-address
As part of the data collection fase.
The proxy reverts this translation and redirects to the proper page. I have published a blog post, giving some more details.
carton exec -- perl diag.pl > matrix.md
All requiresments are listed in the cpanfile
, so installation can be performed easilyusing carton
:
carton
A generated version of the matrix is available.