[Mesa-dev] [PATCH] clover: Prevent Clang from printing number of errors and warnings to stderr.

Francisco Jerez currojerez at riseup.net
Tue May 13 09:55:28 PDT 2014


Tom Stellard <tom at stellard.net> writes:

> On Tue, May 13, 2014 at 11:35:36AM +0200, Francisco Jerez wrote:
>> Tom Stellard <tom at stellard.net> writes:
>> 
>> > On Tue, May 13, 2014 at 01:23:03AM +0200, Francisco Jerez wrote:
>> >> Tom Stellard <thomas.stellard at amd.com> writes:
>> >> 
>> >> > https://bugs.freedesktop.org/show_bug.cgi?id=78581
>> >> >
>> >> > CC: "10.1 10.2" <mesa-stable at lists.freedesktop.org>
>> >> > ---
>> >> >  src/gallium/state_trackers/clover/llvm/invocation.cpp | 4 ++++
>> >> >  1 file changed, 4 insertions(+)
>> >> >
>> >> > diff --git a/src/gallium/state_trackers/clover/llvm/invocation.cpp b/src/gallium/state_trackers/clover/llvm/invocation.cpp
>> >> > index 82e262f..c211a06 100644
>> >> > --- a/src/gallium/state_trackers/clover/llvm/invocation.cpp
>> >> > +++ b/src/gallium/state_trackers/clover/llvm/invocation.cpp
>> >> > @@ -187,6 +187,10 @@ namespace {
>> >> >        c.getLangOpts().NoBuiltin = true;
>> >> >        c.getTargetOpts().Triple = triple;
>> >> >        c.getTargetOpts().CPU = processor;
>> >> > +
>> >> > +      // This prevents Clang from printing the number of warnings and errors
>> >> > +      // to stderr.
>> >> > +      c.getDiagnosticOpts().ShowCarets = false;
>> >> 
>> >> Hm...  Why does 'ShowCarets = true' lead Clang to print errors to
>> >> stderr?
>> >> 
>> >
>> > I'm not really sure.  Here is the relevant code in Clang:
>> >
>> > https://github.com/llvm-mirror/clang/blob/master/lib/Frontend/CompilerInstance.cpp#L728
>> >
>> 
>> It doesn't look like this is the intended behaviour?  Clang bug
>> probably?
>> 
>
> There is a FIXME comment higher up in the function that says stderr
> should be replaced with an OutputStream parameter once the all the
> APIs take OutputStream as a parameter.  I can file a bug for this,
> but I think for now, we'll have to work around it in clover.
>
Please do, and add a reference to the Clang bug in the comment too if
you don't mind.

Thanks.

> -Tom
>
>> > -Tom
>> >
>> >> >  #if HAVE_LLVM <= 0x0301
>> >> >        c.getInvocation().setLangDefaults(clang::IK_OpenCL);
>> >> >  #else
>> >> > -- 
>> >> > 1.8.1.5
>> >
>> >
>> >
>> >
>> >> _______________________________________________
>> >> mesa-dev mailing list
>> >> mesa-dev at lists.freedesktop.org
>> >> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 229 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20140513/dfd846b3/attachment.sig>


More information about the mesa-dev mailing list