bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#49749: 26.3; 26.3 & 27.2: invalid byte compiler warning in short-cir


From: Lars Ingebrigtsen
Subject: bug#49749: 26.3; 26.3 & 27.2: invalid byte compiler warning in short-circuited or form
Date: Wed, 28 Jul 2021 17:26:24 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Pierre Rouleau <prouleau001@gmail.com> writes:

> (defun f-or ()
>   "Use or."
>   (when (or (null (boundp 'foo))
>             (null foo))  ;=> ``Warning: reference to free variable ‘foo’``    
>                       
>     (message "foo is not set")))

The message about invalid stuff is only discarded if Emacs is trivially
able to deduce that it'll never be evaluated -- and as you've found out,
it's easy to make that heuristic not be heeded (see
`byte-compile-maybe-guarded' for details).

So I'm not sure this is a bug -- Emacs can't determine all cases where
we won't be executing the code in question at compile time.

Anybody else think that this is something that should be improved?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





reply via email to

[Prev in Thread] Current Thread [Next in Thread]