Hi, This patch increments gaggedWarnings count if a warning or deprecation message was suppressed. Used by the front-end to catch potential errors in code that is being compiled in a speculative context.
Bootstrapped and regression tested on x86_64-linux-gnu/-m32/-mx32 and committed to mainline. Regards, Iain. --- gcc/d/ChangeLog: * d-diagnostic.cc (vwarning): Increment gaggedWarnings if warning message was suppressed. (vdeprecation): Likewise for deprecation messages. --- gcc/d/d-diagnostic.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gcc/d/d-diagnostic.cc b/gcc/d/d-diagnostic.cc index 659fae24459..3bf5a535edd 100644 --- a/gcc/d/d-diagnostic.cc +++ b/gcc/d/d-diagnostic.cc @@ -239,6 +239,8 @@ vwarning (const Loc &loc, const char *format, va_list ap) d_diagnostic_report_diagnostic (loc, 0, format, ap, DK_WARNING, false); } + else if (global.gag) + global.gaggedWarnings++; } /* Print supplementary message about the last warning with explicit location @@ -297,6 +299,8 @@ vdeprecation (const Loc &loc, const char *format, va_list ap, DK_WARNING, false); free (xformat); } + else if (global.gag) + global.gaggedWarnings++; } /* Print supplementary message about the last deprecation with explicit -- 2.27.0