--- Begin Message ---
Subject: |
25.0.50; funcall with hard-quote inside cl-labels uses the local function binding |
Date: |
Tue, 27 Jan 2015 17:22:36 +0200 |
In emacs-24 the below snippet returns (:global :local), whereas in master now,
(:local :local).
(defun foo ()
:global)
(cl-labels ((foo () :local))
(list (funcall 'foo) (funcall #'foo)))
It's a bug, according to
http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg00895.html.
In GNU Emacs 25.0.50.7 (x86_64-unknown-linux-gnu, GTK+ Version 3.12.2)
of 2015-01-27 on axl
Repository revision: 11527553647f61798562f04c50b789edb8c15ac3
Windowing system distributor `The X.Org Foundation', version 11.0.11601901
System Description: Ubuntu 14.10
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#19704: 25.0.50; funcall with hard-quote inside cl-labels uses the local function binding |
Date: |
Sat, 11 Jun 2016 17:38:34 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) |
>> Looks OK, tho a bit on the hackish side. Maybe a simpler solution is to
>> replace (or 'quote 'function) with 'function (i.e. only apply the
>> optimization to (funcall #'foo ...) and not to (funcall 'foo ...)).
> This works, and it matches the existing comment better too.
Thanks, installed,
Stefan
--- End Message ---