Skip to content

Commit d524847

Browse files
committed
gcc-parser: move the [...] suffix to the key event ID
... in CLANG_WARNING reports
1 parent ab02217 commit d524847

File tree

6 files changed

+61506
-1
lines changed

6 files changed

+61506
-1
lines changed

src/gcc-parser.cc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -564,6 +564,7 @@ struct GccPostProcessor::Private {
564564
void transSuffixGeneric(Defect *pDef, const std::string, const RE &) const;
565565
void transShellCheckId(Defect *pDef) const;
566566

567+
const RE reClangWarningEvt = RE("^(.*) (\\[[A-Za-z.]+\\])$");
567568
const RE reGccAnalCoreEvt = RE("^(.*) (\\[-Wanalyzer-[^ \\]]+\\])$");
568569
const RE reGccAnalCwe = RE("^(.*) \\[CWE-([0-9]+)\\]$");
569570
const RE reGccWarningEvt = RE("^(.*) (\\[-W[^ \\]]+\\])$");
@@ -630,6 +631,7 @@ void GccPostProcessor::Private::transSuffixGeneric(
630631
void GccPostProcessor::apply(Defect *pDef) const
631632
{
632633
d->transGccAnal(pDef);
634+
d->transSuffixGeneric(pDef, "CLANG_WARNING", d->reClangWarningEvt);
633635
d->transSuffixGeneric(pDef, "COMPILER_WARNING", d->reGccWarningEvt);
634636
d->transSuffixGeneric(pDef, "SHELLCHECK_WARNING", d->reShellCheckId);
635637
d->langDetector.inferLangFromChecker(pDef);

tests/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,7 @@ test_csgrep(csgrep "61-json-parser-cov-v7-lang" )
181181
test_csgrep(csgrep "62-csparser-checker-lang" )
182182
test_csgrep(csgrep "63-gcc-parser-checker-lang" )
183183
test_csgrep(csgrep "64-json-parser-unknown-node" )
184+
test_csgrep(csgrep "65-gcc-parser-clang-warn-suff")
184185
test_csparser(csparser-5.8 00)
185186
test_csparser(csparser-5.8 01)
186187
test_csparser(csparser-5.8 02)
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
--mode=json --checker CLANG --quiet

0 commit comments

Comments
 (0)