emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: native-comp *Warnings* buffer


From: Eric Abrahamsen
Subject: Re: native-comp *Warnings* buffer
Date: Thu, 13 May 2021 15:00:46 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Eric Abrahamsen <eric@ericabrahamsen.net> writes:

> Andrea Corallo via "Emacs development discussions."
> <emacs-devel@gnu.org> writes:
>
>> Eric Abrahamsen <eric@ericabrahamsen.net> writes:
>>
>>> Eric Abrahamsen <eric@ericabrahamsen.net> writes:
>>>
>>>> I understand the utility of having these warnings, but does the buffer
>>>> need to be popped up every thirty seconds? Couldn't it just be displayed
>>>> once, when it's created, and then left alone? Compilation has been going
>>>> on for several minutes since rebuilding Emacs, and it's actually hard to
>>>> use with *Warnings* occupying my other window every few seconds!
>>>
>>> I should say that I know about
>>> `native-comp-async-report-warnings-errors', and I'd actually like to see
>>> these warnings (as many of them are about my own code :(), I'd just like
>>> to have them in the background.
>>
>> Hi Eric,
>>
>> unfortunately new warnings are showed when they are found while
>> compiling.  I agree this is annoying but at the same time I'm not sure
>> this behavior wrong.
>>
>> Anyway in comp.el we just call `display-warning'.  If there's a better
>> way to handle this any suggestion or patch is very welcome :)
>
> It looks like `warning-suppress-types' might do it!
>
> List of warning types not to display immediately.
> If any element of this list matches the TYPE argument to ‘display-warning’,
> the warning is logged nonetheless, but the warnings buffer is
> not immediately displayed.
> The element must match an initial segment of the list TYPE.
> Thus, (foo bar) as an element matches (foo bar)
> or (foo bar ANYTHING...) as TYPE.
> If TYPE is a symbol FOO, that is equivalent to the list (FOO),
> so only the element (FOO) will match it.
>
> Let-binding this with 'comp in the value should do it.
>
> We could add 'suppress or 'quiet as an alternate value
> `native-comp-async-report-warnings-errors', and use that to optionally
> change the value of `warning-suppress-types'.

Well I guess I could have figured this out myself: the clickable
"Disable showing" button at the end of every warning does exactly this:
customizes `warning-suppress-types' so that the '(comp) warnings are
still logged to *Warnings*, but it doesn't pop up the buffer. This seems
like enough customization to me, and there's no need to add any code!

Actually it looks like `native-comp-async-report-warnings-errors' could
be replaced by customization of `warning-suppress-log-types', which will
prevent logging altogether. Anyway, problem solved!



reply via email to

[Prev in Thread] Current Thread [Next in Thread]