[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/eval.c
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] Changes to emacs/src/eval.c |
Date: |
Tue, 26 Jul 2005 12:28:45 -0400 |
Index: emacs/src/eval.c
diff -c emacs/src/eval.c:1.254 emacs/src/eval.c:1.255
*** emacs/src/eval.c:1.254 Sat Jul 23 19:09:09 2005
--- emacs/src/eval.c Tue Jul 26 16:28:44 2005
***************
*** 807,824 ****
register Lisp_Object sym, tem, tail;
sym = Fcar (args);
- if (SYMBOL_CONSTANT_P (sym))
- {
- /* For updward compatibility, allow (defvar :foo (quote :foo)). */
- tem = Fcar (Fcdr (args));
- if (! (CONSP (tem)
- && EQ (XCAR (tem), Qquote)
- && CONSP (XCDR (tem))
- && EQ (XCAR (XCDR (tem)), sym)))
- error ("Constant symbol `%s' specified in defvar",
- SDATA (SYMBOL_NAME (sym)));
- }
-
tail = Fcdr (args);
if (!NILP (Fcdr (Fcdr (tail))))
error ("Too many arguments");
--- 807,812 ----
***************
*** 826,831 ****
--- 814,831 ----
tem = Fdefault_boundp (sym);
if (!NILP (tail))
{
+ if (SYMBOL_CONSTANT_P (sym))
+ {
+ /* For upward compatibility, allow (defvar :foo (quote :foo)). */
+ Lisp_Object tem = Fcar (tail);
+ if (! (CONSP (tem)
+ && EQ (XCAR (tem), Qquote)
+ && CONSP (XCDR (tem))
+ && EQ (XCAR (XCDR (tem)), sym)))
+ error ("Constant symbol `%s' specified in defvar",
+ SDATA (SYMBOL_NAME (sym)));
+ }
+
if (NILP (tem))
Fset_default (sym, Feval (Fcar (tail)));
else
- [Emacs-diffs] Changes to emacs/src/eval.c, Lute Kamstra, 2005/07/04
- [Emacs-diffs] Changes to emacs/src/eval.c, Richard M . Stallman, 2005/07/09
- [Emacs-diffs] Changes to emacs/src/eval.c, Stefan Monnier, 2005/07/13
- [Emacs-diffs] Changes to emacs/src/eval.c, Juanma Barranquero, 2005/07/19
- [Emacs-diffs] Changes to emacs/src/eval.c, Juanma Barranquero, 2005/07/20
- [Emacs-diffs] Changes to emacs/src/eval.c, Andreas Schwab, 2005/07/21
- [Emacs-diffs] Changes to emacs/src/eval.c, Richard M . Stallman, 2005/07/23
- [Emacs-diffs] Changes to emacs/src/eval.c,
Stefan Monnier <=