GNU bug report logs - #24381
25.0.95; eval-after-load for features

Previous Next

Package: emacs;

Reported by: "Roland Winkler" <winkler <at> gnu.org>

Date: Tue, 6 Sep 2016 15:13:01 UTC

Severity: normal

Found in version 25.0.95

Done: "Roland Winkler" <winkler <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: "Roland Winkler" <winkler <at> gnu.org>
Subject: bug#24381: closed (Re: bug#24381: 25.0.95; eval-after-load for
 features)
Date: Tue, 06 Sep 2016 15:41:03 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#24381: 25.0.95; eval-after-load for features

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 24381 <at> debbugs.gnu.org.

-- 
24381: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=24381
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: "Roland Winkler" <winkler <at> gnu.org>
To: Clément Pit--Claudel <clement.pit <at> gmail.com>
Cc: 24381-done <at> debbugs.gnu.org
Subject: Re: bug#24381: 25.0.95; eval-after-load for features
Date: Tue, 6 Sep 2016 10:39:58 -0500
On Tue Sep 6 2016 Clément Pit--Claudel wrote:
> Did you mean to use with-eval-after-load?  eval-after-load takes a
> quoted form IIRC.

You are right, it must have been too early in the morning for me.
I am sorry for the noise.

Closing.

[Message part 3 (message/rfc822, inline)]
From: "Roland Winkler" <winkler <at> gnu.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 25.0.95; eval-after-load for features
Date: Tue, 6 Sep 2016 10:11:47 -0500
cat > foo.el <<EOF
(eval-after-load 'foo
  (message "feature foo loaded: %s" (featurep 'foo)))
EOF

emacs -Q -l foo.el

According to the doc string of eval-after-load:

  Alternatively, FILE can be a feature (i.e. a symbol), in which case FORM
  is evaluated at the end of any file that ‘provide’s this feature.

So I would expect that the above form is not run because the file
foo.el does not provide the feature foo.  Yet the algorithm
underlying eval-after-load compares the symbol foo with the string
"foo.el" and this is sufficient to evaluate the form.

I think that the behavior described in the docstring would be
useful: my init.el is broken into smaller files which have the same
names as the features they refer to.  So I suggest to change the
behavior of eval-after-load instead of fixing its docstring.  But
there might also be other issues that I am not aware of.




In GNU Emacs 25.0.95.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.8)
 of 2016-07-15 built on lukas
Windowing system distributor 'The X.Org Foundation', version 11.0.11600000
System Description:	Ubuntu 14.04.5 LTS



This bug report was last modified 8 years and 256 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.