GNU bug report logs - #63302
29.0.90; Native comp does not respect byte-compile-warnings

Previous Next

Package: emacs;

Reported by: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>

Date: Fri, 5 May 2023 11:53:02 UTC

Severity: normal

Found in version 29.0.90

Done: Andrea Corallo <akrl <at> sdf.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 63302 in the body.
You can then email your comments to 63302 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#63302; Package emacs. (Fri, 05 May 2023 11:53:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 05 May 2023 11:53:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 29.0.90; Native comp does not respect byte-compile-warnings
Date: Fri, 05 May 2023 12:51:47 +0100
`byte-compile-warnings` is commonly set to to remove `docstring` so
spurious `docstring wider than 80 characters` are removed.  When it is
set to such a way, normal byte compilation of a el file with a docstring
longer than 80 characters will not result in the above warning, but
natively compiling the same file will.

The expectation should be that nativecomp respects this variable at the
very least, or that the linting capabilities is moved out of byte
compilation into a seperate package ala elisp-lint. A compiler should
compile any program that is valid without producing any warnings except
obsolete/deprecations.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63302; Package emacs. (Fri, 05 May 2023 13:23:02 GMT) Full text and rfc822 format available.

Message #8 received at 63302 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>, Andrea Corallo <akrl <at> sdf.org>
Cc: 63302 <at> debbugs.gnu.org
Subject: Re: bug#63302: 29.0.90;
 Native comp does not respect byte-compile-warnings
Date: Fri, 05 May 2023 16:22:46 +0300
> From: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>
> Date: Fri, 05 May 2023 12:51:47 +0100
> 
> 
> `byte-compile-warnings` is commonly set to to remove `docstring` so
> spurious `docstring wider than 80 characters` are removed.  When it is
> set to such a way, normal byte compilation of a el file with a docstring
> longer than 80 characters will not result in the above warning, but
> natively compiling the same file will.
> 
> The expectation should be that nativecomp respects this variable at the
> very least, or that the linting capabilities is moved out of byte
> compilation into a seperate package ala elisp-lint. A compiler should
> compile any program that is valid without producing any warnings except
> obsolete/deprecations.

Please show a recipe for reproducing this warning from native
compilation.

I suspect that you are talking about JIT native-compilation, which
happens in a separate Emacs process, in which case we need a way of
injecting settings into that separate process to suppress warnings
selectively, or for doing any other similar jobs.  Seeing a recipe for
reproducing this will confirm or contradict my guess.

Andrea, any comments?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63302; Package emacs. (Sat, 06 May 2023 16:54:02 GMT) Full text and rfc822 format available.

Message #11 received at 63302 <at> debbugs.gnu.org (full text, mbox):

From: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 63302 <at> debbugs.gnu.org, Andrea Corallo <akrl <at> sdf.org>
Subject: Re: bug#63302: 29.0.90;
 Native comp does not respect byte-compile-warnings
Date: Sat, 6 May 2023 17:52:35 +0100
[Message part 1 (text/plain, inline)]
Yes I'm talking about nativecomp.

Reproduction:

1. (setq package-native-compile t)
2. (setq byte-compile-warnings '(not docstrings
docstrings-non-ascii-quotes))
3. (setq native-comp-async-report-warnings-errors 'silent)
4. M-x package-install ov
5. Observe the differences between the *Compile-Log* buffer and the
*Warnings* buffer.


Jimmy


On Fri, May 5, 2023 at 2:22 PM Eli Zaretskii <eliz <at> gnu.org> wrote:

> > From: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>
> > Date: Fri, 05 May 2023 12:51:47 +0100
> >
> >
> > `byte-compile-warnings` is commonly set to to remove `docstring` so
> > spurious `docstring wider than 80 characters` are removed.  When it is
> > set to such a way, normal byte compilation of a el file with a docstring
> > longer than 80 characters will not result in the above warning, but
> > natively compiling the same file will.
> >
> > The expectation should be that nativecomp respects this variable at the
> > very least, or that the linting capabilities is moved out of byte
> > compilation into a seperate package ala elisp-lint. A compiler should
> > compile any program that is valid without producing any warnings except
> > obsolete/deprecations.
>
> Please show a recipe for reproducing this warning from native
> compilation.
>
> I suspect that you are talking about JIT native-compilation, which
> happens in a separate Emacs process, in which case we need a way of
> injecting settings into that separate process to suppress warnings
> selectively, or for doing any other similar jobs.  Seeing a recipe for
> reproducing this will confirm or contradict my guess.
>
> Andrea, any comments?
>
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63302; Package emacs. (Wed, 10 May 2023 09:58:01 GMT) Full text and rfc822 format available.

Message #14 received at 63302 <at> debbugs.gnu.org (full text, mbox):

From: Andrea Corallo <akrl <at> sdf.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>, 63302 <at> debbugs.gnu.org
Subject: Re: bug#63302: 29.0.90; Native comp does not respect
 byte-compile-warnings
Date: Wed, 10 May 2023 09:57:53 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>
>> Date: Fri, 05 May 2023 12:51:47 +0100
>> 
>> 
>> `byte-compile-warnings` is commonly set to to remove `docstring` so
>> spurious `docstring wider than 80 characters` are removed.  When it is
>> set to such a way, normal byte compilation of a el file with a docstring
>> longer than 80 characters will not result in the above warning, but
>> natively compiling the same file will.
>> 
>> The expectation should be that nativecomp respects this variable at the
>> very least, or that the linting capabilities is moved out of byte
>> compilation into a seperate package ala elisp-lint. A compiler should
>> compile any program that is valid without producing any warnings except
>> obsolete/deprecations.
>
> Please show a recipe for reproducing this warning from native
> compilation.
>
> I suspect that you are talking about JIT native-compilation, which
> happens in a separate Emacs process, in which case we need a way of
> injecting settings into that separate process to suppress warnings
> selectively, or for doing any other similar jobs.  Seeing a recipe for
> reproducing this will confirm or contradict my guess.
>
> Andrea, any comments?

Hi Eli,

yep, I guess we probably have to just forward the variable to the
spawned processes.

Will look at that and report.

  Andrea




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63302; Package emacs. (Wed, 10 May 2023 11:54:01 GMT) Full text and rfc822 format available.

Message #17 received at 63302 <at> debbugs.gnu.org (full text, mbox):

From: Andrea Corallo <akrl <at> sdf.org>
To: Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 63302 <at> debbugs.gnu.org
Subject: Re: bug#63302: 29.0.90; Native comp does not respect
 byte-compile-warnings
Date: Wed, 10 May 2023 11:53:12 +0000
[Message part 1 (text/plain, inline)]
Jimmy Yuen Ho Wong <wyuenho <at> gmail.com> writes:

> Yes I'm talking about nativecomp.
>
> Reproduction:
>
> 1. (setq package-native-compile t)
> 2. (setq byte-compile-warnings '(not docstrings docstrings-non-ascii-quotes))
> 3. (setq native-comp-async-report-warnings-errors 'silent)
> 4. M-x package-install ov
> 5. Observe the differences between the *Compile-Log* buffer and the *Warnings* buffer.
>
> Jimmy

Hi Jimmy,

could you try the attached and report if it solves the reported issue?

Best Regards

  Andrea

[warning.patch (text/x-diff, inline)]
diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el
index 025d21631bb..d7a60b9f007 100644
--- a/lisp/emacs-lisp/comp.el
+++ b/lisp/emacs-lisp/comp.el
@@ -3732,6 +3732,7 @@ comp-final
                            ',native-comp-compiler-options
                            native-comp-driver-options
                            ',native-comp-driver-options
+                           byte-compile-warnings ',byte-compile-warnings
                            load-path ',load-path)
                      ,native-comp-async-env-modifier-form
                      (message "Compiling %s..." ',output)
@@ -4004,6 +4005,7 @@ comp-run-async-workers
                                              native-comp-driver-options
                                              load-path
                                              backtrace-line-length
+                                             byte-compile-warnings
                                              ;; package-load-list
                                              ;; package-user-dir
                                              ;; package-directory-list

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63302; Package emacs. (Sun, 14 May 2023 21:59:01 GMT) Full text and rfc822 format available.

Message #20 received at 63302 <at> debbugs.gnu.org (full text, mbox):

From: Jimmy Wong <wyuenho <at> gmail.com>
To: Andrea Corallo <akrl <at> sdf.org>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 63302 <at> debbugs.gnu.org
Subject: Re: bug#63302: 29.0.90; Native comp does not respect
 byte-compile-warnings
Date: Sun, 14 May 2023 22:57:52 +0100
[Message part 1 (text/plain, inline)]
This works, thank you!
On 10 May 2023 at 12:53 PM +0100, Andrea Corallo <akrl <at> sdf.org>, wrote:
> Jimmy Yuen Ho Wong <wyuenho <at> gmail.com> writes:
>
> > Yes I'm talking about nativecomp.
> >
> > Reproduction:
> >
> > 1. (setq package-native-compile t)
> > 2. (setq byte-compile-warnings '(not docstrings docstrings-non-ascii-quotes))
> > 3. (setq native-comp-async-report-warnings-errors 'silent)
> > 4. M-x package-install ov
> > 5. Observe the differences between the *Compile-Log* buffer and the *Warnings* buffer.
> >
> > Jimmy
>
> Hi Jimmy,
>
> could you try the attached and report if it solves the reported issue?
>
> Best Regards
>
> Andrea
>
[Message part 2 (text/html, inline)]
[warning.patch (application/octet-stream, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63302; Package emacs. (Wed, 17 May 2023 07:50:01 GMT) Full text and rfc822 format available.

Message #23 received at 63302 <at> debbugs.gnu.org (full text, mbox):

From: Andrea Corallo <akrl <at> sdf.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 63302 <at> debbugs.gnu.org, Jimmy Wong <wyuenho <at> gmail.com>
Subject: Re: bug#63302: 29.0.90; Native comp does not respect
 byte-compile-warnings
Date: Wed, 17 May 2023 07:49:19 +0000
Jimmy Wong <wyuenho <at> gmail.com> writes:

> This works, thank you!

Cool!

Eli do we want to have this into master or 29?

Best Regards

  Andrea




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#63302; Package emacs. (Wed, 17 May 2023 11:06:02 GMT) Full text and rfc822 format available.

Message #26 received at 63302 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Andrea Corallo <akrl <at> sdf.org>
Cc: 63302 <at> debbugs.gnu.org, wyuenho <at> gmail.com
Subject: Re: bug#63302: 29.0.90; Native comp does not respect
 byte-compile-warnings
Date: Wed, 17 May 2023 14:05:34 +0300
> From: Andrea Corallo <akrl <at> sdf.org>
> Cc: 63302 <at> debbugs.gnu.org, Jimmy Wong <wyuenho <at> gmail.com>
> Date: Wed, 17 May 2023 07:49:19 +0000
> 
> Jimmy Wong <wyuenho <at> gmail.com> writes:
> 
> > This works, thank you!
> 
> Cool!
> 
> Eli do we want to have this into master or 29?

Please install on emacs-29, and thanks.




Reply sent to Andrea Corallo <akrl <at> sdf.org>:
You have taken responsibility. (Wed, 17 May 2023 13:15:04 GMT) Full text and rfc822 format available.

Notification sent to Jimmy Yuen Ho Wong <wyuenho <at> gmail.com>:
bug acknowledged by developer. (Wed, 17 May 2023 13:15:04 GMT) Full text and rfc822 format available.

Message #31 received at 63302-done <at> debbugs.gnu.org (full text, mbox):

From: Andrea Corallo <akrl <at> sdf.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: wyuenho <at> gmail.com, 63302-done <at> debbugs.gnu.org
Subject: Re: bug#63302: 29.0.90; Native comp does not respect
 byte-compile-warnings
Date: Wed, 17 May 2023 13:14:42 +0000
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Andrea Corallo <akrl <at> sdf.org>
>> Cc: 63302 <at> debbugs.gnu.org, Jimmy Wong <wyuenho <at> gmail.com>
>> Date: Wed, 17 May 2023 07:49:19 +0000
>> 
>> Jimmy Wong <wyuenho <at> gmail.com> writes:
>> 
>> > This works, thank you!
>> 
>> Cool!
>> 
>> Eli do we want to have this into master or 29?
>
> Please install on emacs-29, and thanks.

Done as 1e57b2b4c79, closing then.

Thanks

  Andrea




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 15 Jun 2023 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 287 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.