[cfe-dev] Notes in Clang diagnostics and LLVM DiagnosticInfo
tsett
tsett at gmx.net
Sun Feb 23 01:08:48 PST 2014
Hi Tobias,
I got the problem.
I use the DiagnostigBuilder::setForceEmit() for this.
An instance of DiagnostigBuilder will be returned if you use the
report-function.
Hope this helps.
Best,
Robert
Am 23.02.2014 09:56, schrieb Tobias Grosser:
> Hi,
>
> I just saw the LLVM DiagnosticInfo being integrated into clang in
> r200931 by Quentin and noticed interesting behaviour when using Notes.
>
> Specifically, I was using the interface in Polly to emit informative
> messages to the user (similar to icc's -vec-report). To emit this
> information I used the Severity 'Note' as these are neither warnings nor
> errors, just pieces of information that help the user understand what
> happens.
>
> However, when running clang I realized my notes are not emitted as
> expected. I tracked it down to this piece of code:
>
> // If the client doesn't care about this message, don't issue it.
> // If this is a note and the last real diagnostic was ignored, ignore
> // it too.
> if (DiagLevel == DiagnosticIDs::Ignored ||
> (DiagLevel == DiagnosticIDs::Note &&
> Diag.LastDiagLevel == DiagnosticIDs::Ignored))
> return false;
>
> From my reading it seems the only way in which clang supports notes is
> as a piece of additional information for 'real diagnostic'. Now I wonder
> what is the right way to emit independent informative messages. I see
> two approaches:
>
> 1) Make it possible to create first-class notes, that do not depend on
> previous diagnostics and that are not ignored.
>
> 2) Introduce an additional severity level (e.g. Info) that is a first
> class Diagnostic.
>
> 2) allows us to also provide 'notes' for our info-diagnostics.
>
> E.g. something like this:
>
> /tmp/test.c:1:6: info: Polly detected an optimizable code region
> /tmp/test.c:3:9: note: End of optimizable code region
>
> Does anybody have some ideas/opinions regarding this issue?
>
> Cheers,
> Tobias
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
More information about the cfe-dev
mailing list