Doing a M-x eval-buffer on a file containing this:
(funcall
(let ((a 0))
(lambda ()
a)))
;; Local Variables:
;; lexical-binding: t
;; End:
Will result in an error:
funcall: Symbol's value as variable is void: a
But a file containing this:
;; -*- lexical-binding: t -*-
(funcall
(let ((a 0))
(lambda ()
a)))
Will work as expected. No problem.
I was expecting these these to be equivalent. I checked the manual, "Specifying File Variables" and that seems to say that using either the first line or variable list should have the same effect.
Seems related to #15070 and #20139.
(I'm not sure about the exact version of Emacs. It's probably old, I'm on Ubuntu 14.04 at the moment. Dpkg reports 24.3+1-2ubuntu1.)
-- Tim