comparison src/eval.c @ 90201:fbb2bea03df9

Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-69 Merge from emacs--cvs-trunk--0 Patches applied: * emacs--cvs-trunk--0 (patch 474-484) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 88-91) - Merge from emacs--cvs-trunk--0 - Update FSF's address in GPL notices - Update from CVS
author Miles Bader <miles@gnu.org>
date Thu, 14 Jul 2005 08:02:00 +0000
parents f9a65d7ebd29 66b8e5d68b93
children 187d6a1f84f7
comparison
equal deleted inserted replaced
90200:f9a65d7ebd29 90201:fbb2bea03df9
805 { 805 {
806 register Lisp_Object sym, tem, tail; 806 register Lisp_Object sym, tem, tail;
807 807
808 sym = Fcar (args); 808 sym = Fcar (args);
809 if (SYMBOL_CONSTANT_P (sym)) 809 if (SYMBOL_CONSTANT_P (sym))
810 error ("Constant symbol `%s' specified in defvar", 810 {
811 SDATA (SYMBOL_NAME (sym))); 811 /* For updward compatibility, allow (defvar :foo (quote :foo)). */
812 tem = Fcar (Fcdr (args));
813 if (! (CONSP (tem)
814 && EQ (XCAR (tem), Qquote)
815 && CONSP (XCDR (tem))
816 && EQ (XCAR (XCDR (tem)), sym)))
817 error ("Constant symbol `%s' specified in defvar",
818 SDATA (SYMBOL_NAME (sym)));
819 }
812 820
813 tail = Fcdr (args); 821 tail = Fcdr (args);
814 if (!NILP (Fcdr (Fcdr (tail)))) 822 if (!NILP (Fcdr (Fcdr (tail))))
815 error ("Too many arguments"); 823 error ("Too many arguments");
816 824
2083 return Fsymbol_value (form); 2091 return Fsymbol_value (form);
2084 if (!CONSP (form)) 2092 if (!CONSP (form))
2085 return form; 2093 return form;
2086 2094
2087 QUIT; 2095 QUIT;
2088 if (consing_since_gc > gc_cons_threshold) 2096 if (consing_since_gc > gc_cons_combined_threshold)
2089 { 2097 {
2090 GCPRO1 (form); 2098 GCPRO1 (form);
2091 Fgarbage_collect (); 2099 Fgarbage_collect ();
2092 UNGCPRO; 2100 UNGCPRO;
2093 } 2101 }
2783 struct backtrace backtrace; 2791 struct backtrace backtrace;
2784 register Lisp_Object *internal_args; 2792 register Lisp_Object *internal_args;
2785 register int i; 2793 register int i;
2786 2794
2787 QUIT; 2795 QUIT;
2788 if (consing_since_gc > gc_cons_threshold) 2796 if (consing_since_gc > gc_cons_combined_threshold)
2789 Fgarbage_collect (); 2797 Fgarbage_collect ();
2790 2798
2791 if (++lisp_eval_depth > max_lisp_eval_depth) 2799 if (++lisp_eval_depth > max_lisp_eval_depth)
2792 { 2800 {
2793 if (max_lisp_eval_depth < 100) 2801 if (max_lisp_eval_depth < 100)