diff --git a/src/mzscheme/src/eval.c b/src/mzscheme/src/eval.c index b48d0d04b1..5d9b7607a9 100644 --- a/src/mzscheme/src/eval.c +++ b/src/mzscheme/src/eval.c @@ -163,7 +163,7 @@ static THREAD_LOCAL Scheme_Object *quick_stx; /* FIXME needs to be atomically incremented */ int scheme_overflow_count; int get_overflow_count() { return scheme_overflow_count; } -int scheme_continuation_application_count; +int THREAD_LOCAL scheme_continuation_application_count; /* read-only globals */ Scheme_Object *scheme_eval_waiting; diff --git a/src/mzscheme/src/fun.c b/src/mzscheme/src/fun.c index 1352e7ca3d..c8cac95cc0 100644 --- a/src/mzscheme/src/fun.c +++ b/src/mzscheme/src/fun.c @@ -89,8 +89,8 @@ Scheme_Object *scheme_tail_call_waiting; Scheme_Object *scheme_inferred_name_symbol; Scheme_Object *scheme_default_prompt_tag; -int scheme_cont_capture_count; -int scheme_prompt_capture_count; +THREAD_LOCAL int scheme_cont_capture_count; +static THREAD_LOCAL int scheme_prompt_capture_count; /* locals */ diff --git a/src/mzscheme/src/schpriv.h b/src/mzscheme/src/schpriv.h index 9ce9355243..ab03c1b7e0 100644 --- a/src/mzscheme/src/schpriv.h +++ b/src/mzscheme/src/schpriv.h @@ -91,8 +91,8 @@ Scheme_Object *scheme_dump_gc_stats(int c, Scheme_Object *p[]); #define REGISTER_SO(x) MZ_REGISTER_STATIC(x) extern long scheme_total_gc_time; -extern int scheme_cont_capture_count; -extern int scheme_continuation_application_count; +extern THREAD_LOCAL int scheme_cont_capture_count; +extern THREAD_LOCAL int scheme_continuation_application_count; int scheme_num_types(void);