--- Begin Message ---
Subject: |
24.0.50; Warning: assignment to free variable (unwind-protect) |
Date: |
Sun, 17 Jul 2011 10:37:12 -0500 |
cat > foo.el <<EOF
(unwind-protect
(let ((foo "foo"))
(insert foo))
(setq foo "bar"))
EOF
Compiling foo.el results in the warning:
bar.el:2:12:Warning: assignment to free variable `foo'
The line number is wrong. The assignment to free variable `foo' happens
in the unwindform.
In GNU Emacs 24.0.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.20.1)
of 2011-07-11 on regnitz
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#22288: 25.0.50; Incorrect line and column number in byte-compilation warning |
Date: |
Sat, 22 Jan 2022 18:16:58 +0000 |
Hello Everybody.
This bug has just been fixed in master by merging in branch
scratch/correct-warning-pos.
--
Alan Mackenzie (Nuremberg, Germany).
On Fri, Jan 01, 2016 at 10:54:24 -0500, Clément Pit--Claudel wrote:
> Hi all,
> The byte-compiler doesn't always report the right line and column numbers.
> For example for the following program in test.el:
> (defun test ()
> (let (a))
> a)
> Running M-x byte-compile-file RET test.el RET yields:
> > Compiling file /home/clement/test.el at Fri Jan 1 10:48:41 2016
> > In test:
> > test.el:2:9:Warning: reference to free variable ‘a’
> The correct warning would be
> > test.el:3:2:Warning: reference to free variable ‘a’
> Note that the following program gives the right error:
> (defun test ()
> (let (b))
> a)
> > test.el:3:3:Warning: reference to free variable ‘a’
> Although one might argue that it should be
> > test.el:3:2:Warning: reference to free variable ‘a’
> (that is, column 2, not 3) given that Emacs starts counting columns at 0.
> Cheers,
> Clément.
> In GNU Emacs 25.0.50.8 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.8)
> of 2015-12-29 built on clem-w50-mint
> Repository revision: a21bb238ce7bcc9c13a9cf66db77918304daa2fc
> Windowing system distributor 'The X.Org Foundation', version 11.0.11501000
> System Description: Linux Mint 17.2 Rafaela
--- End Message ---