Did you mean to use with-eval-after-load? eval-after-load takes a quoted form IIRC. Clément. On 2016-09-06 11:11, Roland Winkler wrote: > > cat > foo.el < (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 > > > >