diff options
author | Mikael Djurfeldt <djurfeldt@nada.kth.se> | 2003-05-22 09:16:33 +0000 |
---|---|---|
committer | Mikael Djurfeldt <djurfeldt@nada.kth.se> | 2003-05-22 09:16:33 +0000 |
commit | 79f55b7c6bffcda9d315d27ecfbf60316b79135a (patch) | |
tree | 5dd5f3b6ce1b06c7cd18e0ce9bb8e4e88180f3df /libguile/stackchk.h | |
parent | d97f609a4a485ccc8359a93ad3254b38a9c29c08 (diff) | |
download | guile-79f55b7c6bffcda9d315d27ecfbf60316b79135a.tar.gz |
* __scm.h (SCM_STACK_PTR): New macro. (Cast argument through
(void *) in order to avoid an aliasing warning; thanks to Bruce
Korb.)
* stackchk.h (SCM_STACK_OVERFLOW_P): Use SCM_STACK_PTR.
* threads.c (suspend, launch_thread, scm_threads_mark_stacks): Use
SCM_STACK_PTR.
* threads.c (scm_threads_mark_stacks): Bugfix: Changed
thread->base --> t->base.
* eval.c (SCM_CEVAL): Don't cast argument of SCM_STACK_OVERFLOW_P.
Diffstat (limited to 'libguile/stackchk.h')
-rw-r--r-- | libguile/stackchk.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libguile/stackchk.h b/libguile/stackchk.h index 44f5c7ce2..938794114 100644 --- a/libguile/stackchk.h +++ b/libguile/stackchk.h @@ -3,7 +3,7 @@ #ifndef SCM_STACKCHK_H #define SCM_STACKCHK_H -/* Copyright (C) 1995,1996,1998,2000 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000, 2003 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -36,10 +36,12 @@ #ifdef STACK_CHECKING # if SCM_STACK_GROWS_UP # define SCM_STACK_OVERFLOW_P(s)\ - (s > ((SCM_STACKITEM *) SCM_BASE (scm_rootcont) + SCM_STACK_LIMIT)) + (SCM_STACK_PTR (s) \ + > ((SCM_STACKITEM *) SCM_BASE (scm_rootcont) + SCM_STACK_LIMIT)) # else # define SCM_STACK_OVERFLOW_P(s)\ - (s < ((SCM_STACKITEM *) SCM_BASE (scm_rootcont) - SCM_STACK_LIMIT)) + (SCM_STACK_PTR (s) \ + < ((SCM_STACKITEM *) SCM_BASE (scm_rootcont) - SCM_STACK_LIMIT)) # endif # define SCM_CHECK_STACK\ {\ |