Mercurial > emacs
comparison src/eval.c @ 90054:f2ebccfa87d4
Revision: miles@gnu.org--gnu-2004/emacs--unicode--0--patch-74
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-709
Update from CVS: src/indent.c (Fvertical_motion): Fix last change.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-710
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-715
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-716
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-74
Update from CVS
| author | Miles Bader <miles@gnu.org> |
|---|---|
| date | Wed, 08 Dec 2004 05:02:30 +0000 |
| parents | cb7f41387eb3 d118146048e5 |
| children | fb79180b618d |
comparison
equal
deleted
inserted
replaced
| 90053:fff5f1a61d92 | 90054:f2ebccfa87d4 |
|---|---|
| 202 init_eval_once () | 202 init_eval_once () |
| 203 { | 203 { |
| 204 specpdl_size = 50; | 204 specpdl_size = 50; |
| 205 specpdl = (struct specbinding *) xmalloc (specpdl_size * sizeof (struct specbinding)); | 205 specpdl = (struct specbinding *) xmalloc (specpdl_size * sizeof (struct specbinding)); |
| 206 specpdl_ptr = specpdl; | 206 specpdl_ptr = specpdl; |
| 207 max_specpdl_size = 600; | 207 max_specpdl_size = 1000; |
| 208 max_lisp_eval_depth = 300; | 208 max_lisp_eval_depth = 300; |
| 209 | 209 |
| 210 Vrun_hooks = Qnil; | 210 Vrun_hooks = Qnil; |
| 211 } | 211 } |
| 212 | 212 |
| 571 `call-interactively', the way to do that is by adding an extra | 571 `call-interactively', the way to do that is by adding an extra |
| 572 optional argument, and making the `interactive' spec specify non-nil | 572 optional argument, and making the `interactive' spec specify non-nil |
| 573 unconditionally for that argument. (`p' is a good way to do this.) */) | 573 unconditionally for that argument. (`p' is a good way to do this.) */) |
| 574 () | 574 () |
| 575 { | 575 { |
| 576 return (INTERACTIVE && interactive_p (1)) ? Qt : Qnil; | 576 return interactive_p (1) ? Qt : Qnil; |
| 577 } | 577 } |
| 578 | 578 |
| 579 | 579 |
| 580 /* Return 1 if function in which this appears was called using | 580 /* Return 1 if function in which this appears was called using |
| 581 call-interactively. | 581 call-interactively. |
| 593 btp = backtrace_list; | 593 btp = backtrace_list; |
| 594 | 594 |
| 595 /* If this isn't a byte-compiled function, there may be a frame at | 595 /* If this isn't a byte-compiled function, there may be a frame at |
| 596 the top for Finteractive_p. If so, skip it. */ | 596 the top for Finteractive_p. If so, skip it. */ |
| 597 fun = Findirect_function (*btp->function); | 597 fun = Findirect_function (*btp->function); |
| 598 if (SUBRP (fun) && XSUBR (fun) == &Sinteractive_p) | 598 if (SUBRP (fun) && (XSUBR (fun) == &Sinteractive_p |
| 599 || XSUBR (fun) == &Scalled_interactively_p)) | |
| 599 btp = btp->next; | 600 btp = btp->next; |
| 600 | 601 |
| 601 /* If we're running an Emacs 18-style byte-compiled function, there | 602 /* If we're running an Emacs 18-style byte-compiled function, there |
| 602 may be a frame for Fbytecode at the top level. In any version of | 603 may be a frame for Fbytecode at the top level. In any version of |
| 603 Emacs there can be Fbytecode frames for subexpressions evaluated | 604 Emacs there can be Fbytecode frames for subexpressions evaluated |
| 784 tem = Fdefault_boundp (sym); | 785 tem = Fdefault_boundp (sym); |
| 785 if (!NILP (tail)) | 786 if (!NILP (tail)) |
| 786 { | 787 { |
| 787 if (NILP (tem)) | 788 if (NILP (tem)) |
| 788 Fset_default (sym, Feval (Fcar (tail))); | 789 Fset_default (sym, Feval (Fcar (tail))); |
| 790 else | |
| 791 { /* Check if there is really a global binding rather than just a let | |
| 792 binding that shadows the global unboundness of the var. */ | |
| 793 volatile struct specbinding *pdl = specpdl_ptr; | |
| 794 while (--pdl >= specpdl) | |
| 795 { | |
| 796 if (EQ (pdl->symbol, sym) && !pdl->func | |
| 797 && EQ (pdl->old_value, Qunbound)) | |
| 798 { | |
| 799 message_with_string ("Warning: defvar ignored because %s is let-bound", | |
| 800 SYMBOL_NAME (sym), 1); | |
| 801 break; | |
| 802 } | |
| 803 } | |
| 804 } | |
| 789 tail = Fcdr (tail); | 805 tail = Fcdr (tail); |
| 790 tem = Fcar (tail); | 806 tem = Fcar (tail); |
| 791 if (!NILP (tem)) | 807 if (!NILP (tem)) |
| 792 { | 808 { |
| 793 if (!NILP (Vpurify_flag)) | 809 if (!NILP (Vpurify_flag)) |
| 1156 register int last_time; | 1172 register int last_time; |
| 1157 | 1173 |
| 1158 /* Save the value in the tag. */ | 1174 /* Save the value in the tag. */ |
| 1159 catch->val = value; | 1175 catch->val = value; |
| 1160 | 1176 |
| 1161 /* Restore the polling-suppression count. */ | 1177 /* Restore certain special C variables. */ |
| 1162 set_poll_suppress_count (catch->poll_suppress_count); | 1178 set_poll_suppress_count (catch->poll_suppress_count); |
| 1163 interrupt_input_blocked = catch->interrupt_input_blocked; | 1179 interrupt_input_blocked = catch->interrupt_input_blocked; |
| 1180 handling_signal = 0; | |
| 1164 | 1181 |
| 1165 do | 1182 do |
| 1166 { | 1183 { |
| 1167 last_time = catchlist == catch; | 1184 last_time = catchlist == catch; |
| 1168 | 1185 |
