summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libguile/coop.c4
-rw-r--r--libguile/eval.c7
-rw-r--r--libguile/eval.h2
3 files changed, 9 insertions, 4 deletions
diff --git a/libguile/coop.c b/libguile/coop.c
index fff3f6811..2dacf2206 100644
--- a/libguile/coop.c
+++ b/libguile/coop.c
@@ -40,7 +40,7 @@
* If you do not wish that, delete this exception notice. */
-/* $Id: coop.c,v 1.7 1998-03-30 21:02:31 mdj Exp $ */
+/* $Id: coop.c,v 1.8 1998-04-12 23:34:40 mdj Exp $ */
/* Cooperative thread library, based on QuickThreads */
@@ -48,7 +48,7 @@
#include "eval.h"
/* #define COOP_STKSIZE (0x10000) */
-#define COOP_STKSIZE (SCM_EVAL_STACK)
+#define COOP_STKSIZE (scm_eval_stack)
/* `alignment' must be a power of 2. */
#define COOP_STKALIGN(sp, alignment) \
diff --git a/libguile/eval.c b/libguile/eval.c
index 0bdc33c41..d1848a528 100644
--- a/libguile/eval.c
+++ b/libguile/eval.c
@@ -1422,8 +1422,10 @@ int scm_debug_eframe_size;
int scm_debug_mode, scm_check_entry_p, scm_check_apply_p, scm_check_exit_p;
+int scm_eval_stack;
+
scm_option scm_eval_opts[] = {
- { SCM_OPTION_INTEGER, "stack", 0x10000, "Size of thread stacks." }
+ { SCM_OPTION_INTEGER, "stack", 22000, "Size of thread stacks (in machine words)." }
};
scm_option scm_debug_opts[] = {
@@ -1443,7 +1445,7 @@ scm_option scm_debug_opts[] = {
{ SCM_OPTION_INTEGER, "depth", 20, "Maximal length of printed backtrace." },
{ SCM_OPTION_BOOLEAN, "backtrace", 0, "Show backtrace on error." },
{ SCM_OPTION_BOOLEAN, "debug", 0, "Use the debugging evaluator." },
- { SCM_OPTION_INTEGER, "stack", 20000, "Stack size limit (0 = no check)." }
+ { SCM_OPTION_INTEGER, "stack", 20000, "Stack size limit (measured in words; 0 = no check)." }
};
scm_option scm_evaluator_trap_table[] = {
@@ -1464,6 +1466,7 @@ scm_eval_options_interface (setting)
scm_eval_opts,
SCM_N_EVAL_OPTIONS,
s_eval_options_interface);
+ scm_eval_stack = SCM_EVAL_STACK * sizeof (void *);
SCM_ALLOW_INTS;
return ans;
}
diff --git a/libguile/eval.h b/libguile/eval.h
index 737a7477b..2f13946e4 100644
--- a/libguile/eval.h
+++ b/libguile/eval.h
@@ -56,6 +56,8 @@ extern scm_option scm_eval_opts[];
#define SCM_EVAL_STACK scm_eval_opts[0].val
#define SCM_N_EVAL_OPTIONS 1
+extern scm_eval_stack;
+
extern scm_option scm_evaluator_trap_table[];
#define SCM_ENTER_FRAME_P scm_evaluator_trap_table[0].val