GNU bug report logs -
#6490
24.0.50; src/lread.c: old style backquote bug?
Previous Next
Reported by: Tetsurou Okazaki <okazaki <at> be.to>
Date: Tue, 22 Jun 2010 09:18:02 UTC
Severity: normal
Merged with 6973,
7148,
7286,
10321
Found in versions 24.0.50, 24.0.92
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
Full log
Message #8 received at 6490 <at> debbugs.gnu.org (full text, mbox):
> Attached patch for Emacs fixes this error.
I'm glad the patch fixes things for you, since this patch indeed looks
perfectly harmless, but I'm a bit puzzled because it doesn't just look
harmless: it looks to me like the patch does change anything to the way
the code works. So could you explain to me how&why the patch fixes
the problem? I'm probably just overlooking some "obvious" detail,
Stefan
> === modified file 'src/lread.c'
> --- src/lread.c 2010-06-16 14:10:02 +0000
> +++ src/lread.c 2010-06-22 07:48:58 +0000
> @@ -2693,21 +2693,26 @@
> old-style. For Emacs-25, we should completely remove this
> first_in_list exception (old-style can still be obtained via
> "(\`" anyway). */
> - if (first_in_list && (c = READCHAR, UNREAD (c), c == ' '))
> - {
> - Vold_style_backquotes = Qt;
> - goto default_label;
> - }
> - else
> - {
> - Lisp_Object value;
> -
> - new_backquote_flag++;
> - value = read0 (readcharfun);
> - new_backquote_flag--;
> -
> - return Fcons (Qbackquote, Fcons (value, Qnil));
> - }
> + {
> + int next_char = READCHAR;
> + UNREAD (next_char);
> +
> + if (first_in_list && next_char == ' ')
> + {
> + Vold_style_backquotes = Qt;
> + goto default_label;
> + }
> + else
> + {
> + Lisp_Object value;
> +
> + new_backquote_flag++;
> + value = read0 (readcharfun);
> + new_backquote_flag--;
> +
> + return Fcons (Qbackquote, Fcons (value, Qnil));
> + }
> + }
> case ',':
> if (new_backquote_flag)
This bug report was last modified 13 years and 156 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.