GNU bug report logs - #64232
28.2; Incorrect(?) byte compilation warning about ‘ansi-color-apply-on-region’

Previous Next

Package: emacs;

Reported by: Zack Weinberg <zack <at> owlfolio.org>

Date: Thu, 22 Jun 2023 19:57:02 UTC

Severity: normal

Found in version 28.2

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


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

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Michael Heerdegen <michael_heerdegen <at> web.de>
Cc: Eli Zaretskii <eliz <at> gnu.org>, Zack Weinberg <zack <at> owlfolio.org>,
 64232 <at> debbugs.gnu.org
Subject: Re: bug#64232: 28.2; Incorrect(?) byte compilation warning about
 ‘ansi-color-apply-on-region’
Date: Wed, 28 Jun 2023 09:41:32 -0400
> diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
> index 99202185d8d..f468e34bb42 100644
> --- a/lisp/emacs-lisp/bytecomp.el
> +++ b/lisp/emacs-lisp/bytecomp.el
> @@ -554,7 +554,9 @@ byte-compile-initial-macro-environment
>                                   (let ((byte-compile-unresolved-functions
>                                          byte-compile-unresolved-functions)
>                                         (byte-compile-new-defuns
> -                                        byte-compile-new-defuns))
> +                                        byte-compile-new-defuns)
> +                                       (byte-compile-noruntime-functions
> +                                        byte-compile-noruntime-functions))
>                                     (setf result
>                                           (byte-compile-eval
>                                            (byte-run-strip-symbol-positions

Hmm... this doesn't look right: one of the main purpose of
`byte-compile-eval` is (beside calling `eval`) to populate
`byte-compile-noruntime-functions`, so if you let-bind it around the
call, it's like calling `eval` and we can just get rid of
`byte-compile-noruntime-functions` altogether.

The "natural" place to put the let-binding would be in
`byte-compile-close-variables` (assuming it still fixes the bug).


        Stefan





This bug report was last modified 1 year and 323 days ago.

Previous Next


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