[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Incorrect byte compiler error/warning message positions. A possible
Re: Incorrect byte compiler error/warning message positions. A possible fix.
Mon, 15 Nov 2021 06:22:50 +0100
Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
Alan Mackenzie <email@example.com> writes:
> The byte compiler reports wrong source positions in its error and
> warning messages; not every time, but perhaps most of the time. There
> are currently at least six open bugs for this problem, e.g. bug #22288.
In my experience, the vast majority of the warning messages point to the
correct position. But, yes, it does sometimes give the wrong position.
> In the new scheme it is no longer true that (eq #<foo at 20081> 'foo).
> The Lisp form for a function being compiled is manipulated as at
> present, only its symbols will have positions. These will get stripped
> out of the symbols before final code generation.
Hm... interesting. But couldn't the same stripping be done even if the
symbols are eq? That way eq would be slower during byte compilation,
but not otherwise?
> The biggest problem is with macros, and I think I can solve this.
There's also an issue with byte-hunk-handlers and byte-optimizer forms
(etc), I'd guess? They inspect the forms and do operations based on the
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no