summaryrefslogtreecommitdiff
path: root/src/eval.c
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2004-05-28 20:54:39 +0000
committerStefan Monnier <monnier@iro.umontreal.ca>2004-05-28 20:54:39 +0000
commit4ce0541e4409ccc8b50303c19d28d61193aa107d (patch)
treeb4cc3da48eb605aa81231c9f3efa1f7ef46b9805 /src/eval.c
parent7292839d01eae3ff6d675e1bc13b2c5f589600af (diff)
downloademacs-4ce0541e4409ccc8b50303c19d28d61193aa107d.tar.gz
(mark_backtrace): New function.
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/eval.c b/src/eval.c
index 0326a828a81..921a7533a60 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -3243,6 +3243,25 @@ If NFRAMES is more than the number of frames, the value is nil. */)
void
+mark_backtrace ()
+{
+ register struct backtrace *backlist;
+ register int i;
+
+ for (backlist = backtrace_list; backlist; backlist = backlist->next)
+ {
+ mark_object (*backlist->function);
+
+ if (backlist->nargs == UNEVALLED || backlist->nargs == MANY)
+ i = 0;
+ else
+ i = backlist->nargs - 1;
+ for (; i >= 0; i--)
+ mark_object (backlist->args[i]);
+ }
+}
+
+void
syms_of_eval ()
{
DEFVAR_INT ("max-specpdl-size", &max_specpdl_size,