1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-05 03:20:39 -08:00

* src/lread.c (lisp_file_lexically_bound_p): Handle #! lines.

Fixes: debbugs:12528
This commit is contained in:
Glenn Morris 2012-09-28 00:40:42 -07:00
parent 5bc93c6718
commit 757140ff9a
2 changed files with 21 additions and 2 deletions

View file

@ -1,3 +1,7 @@
2012-09-28 Glenn Morris <rgm@gnu.org>
* lread.c (lisp_file_lexically_bound_p): Handle #! lines. (Bug#12528)
2012-09-27 Paul Eggert <eggert@cs.ucla.edu>
Check more robustly for timer_settime.

View file

@ -764,13 +764,28 @@ DEFUN ("get-file-char", Fget_file_char, Sget_file_char, 0, 0, 0,
/* Return true if the lisp code read using READCHARFUN defines a non-nil
`lexical-binding' file variable. After returning, the stream is
positioned following the first line, if it is a comment, otherwise
nothing is read. */
positioned following the first line, if it is a comment or #! line,
otherwise nothing is read. */
static int
lisp_file_lexically_bound_p (Lisp_Object readcharfun)
{
int ch = READCHAR;
if (ch == '#')
{
ch = READCHAR;
if (ch != '!')
{
UNREAD (ch);
UNREAD ('#');
return 0;
}
while (ch != '\n' && ch != EOF)
ch = READCHAR;
if (ch == '\n') ch = READCHAR;
}
if (ch != ';')
/* The first line isn't a comment, just give up. */
{