From: Stefan Monnier Date: Tue, 26 Jul 2005 16:28:44 +0000 (+0000) Subject: (Fdefvar): Allow (defvar enable-multibyte-characters). X-Git-Tag: emacs-pretest-22.0.90~7875 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=1c9916a1f9dc944ee733f5c77db39013123da8da;p=emacs.git (Fdefvar): Allow (defvar enable-multibyte-characters). --- diff --git a/src/ChangeLog b/src/ChangeLog index ec3ecb56660..e352ada73a3 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2005-07-26 Stefan Monnier + + * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters). + 2005-07-25 Jason Rumney * w32menu.c (w32_menu_display_help): Suppress tooltip when @@ -22,7 +26,7 @@ (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold instead of gc_cons_combined_threshold. - * lisp.h (gc_cons_threshold, gc_relative_threshold): Declared. + * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare. (gc_cons_combined_threshold): Declaration deleted. 2005-07-23 YAMAMOTO Mitsuharu diff --git a/src/eval.c b/src/eval.c index d118a30804c..56fe670f1b1 100644 --- a/src/eval.c +++ b/src/eval.c @@ -807,18 +807,6 @@ usage: (defvar SYMBOL &optional INITVALUE DOCSTRING) */) 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"); @@ -826,6 +814,18 @@ usage: (defvar SYMBOL &optional INITVALUE DOCSTRING) */) 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