GNU bug report logs -
#22288
25.0.50; Incorrect line and column number in byte-compilation warning
Previous Next
Reported by: Clément Pit--Claudel <clement.pitclaudel <at> live.com>
Date: Sat, 2 Jan 2016 01:52:04 UTC
Severity: minor
Merged with 2681,
8774,
9109,
24128,
24592
Found in versions 23.0.91, 23.3.1, 24.0.50, 24.3.1, 25.0.50, 25.1
Done: Alan Mackenzie <acm <at> muc.de>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Sat, 22 Jan 2022 18:16:58 +0000
with message-id <YexKGvOcfTMQtFJD <at> ACM>
and subject line Re: bug#22288: 25.0.50; Incorrect line and column number in byte-compilation warning
has caused the debbugs.gnu.org bug report #22288,
regarding 23.0.91; incorrect line shown by lisp compiler
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
22288: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=22288
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
When I byte compile this file:
---~/temp.el------------------------------------------------
(defun test (vec)
(cond ((= (length vec) 0)
(message "LEN=0"))
((= (length vec) 1)
(message "LEN=1"))
((= (length vec 2))
(message "LEN=2"))))
------------------------------------------------------------
The *Compile-Log* buffer shows these warnings:
Compiling file /home/handa/temp.el at Mon Mar 16 13:12:33 2009
In test:
temp.el:4:11:Warning: `=' called with 1 arg, but requires 2
temp.el:4:14:Warning: `length' called with 2 args, but requires 1
But the bug is on 6th line, not the 4th line.
---
Kenichi Handa
handa <at> m17n.org
[Message part 3 (message/rfc822, inline)]
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
This bug report was last modified 3 years and 118 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.