summaryrefslogtreecommitdiff
path: root/mark_rts.c
diff options
context:
space:
mode:
Diffstat (limited to 'mark_rts.c')
-rw-r--r--mark_rts.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/mark_rts.c b/mark_rts.c
index 0cd76966..8ae0fc1a 100644
--- a/mark_rts.c
+++ b/mark_rts.c
@@ -484,7 +484,8 @@ STATIC void GC_remove_tmp_roots(void)
GC_INNER ptr_t GC_approx_sp(void)
{
volatile word sp;
-# if defined(CPPCHECK) || (__GNUC__ >= 4) /* GC_GNUC_PREREQ(4, 0) */
+# if defined(CPPCHECK) || (__GNUC__ >= 4 /* GC_GNUC_PREREQ(4, 0) */ \
+ && !defined(STACK_NOT_SCANNED))
/* TODO: Use GC_GNUC_PREREQ after fixing a bug in cppcheck. */
sp = (word)__builtin_frame_address(0);
# else