summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Livshin <mlivshin@bigfoot.com>2001-03-31 21:19:50 +0000
committerMichael Livshin <mlivshin@bigfoot.com>2001-03-31 21:19:50 +0000
commit463b2219df03352a7e5c74e5755c6bd88988125c (patch)
tree040be041289d1a88925dfbf6b19ad867208ae633
parentb0839672afe3274ff4db7a65842a55122f177607 (diff)
downloadguile-463b2219df03352a7e5c74e5755c6bd88988125c.tar.gz
* backtrace.c (display_backtrace_body): since the `print_state'
variable is not used (instead its data field is used directly as `pstate'), protect it from the hungry compiler optimizations. thanks to Bill Schottstaedt for the report.
-rw-r--r--libguile/ChangeLog7
-rw-r--r--libguile/backtrace.c2
2 files changed, 9 insertions, 0 deletions
diff --git a/libguile/ChangeLog b/libguile/ChangeLog
index 2788964c5..9ad37a584 100644
--- a/libguile/ChangeLog
+++ b/libguile/ChangeLog
@@ -1,3 +1,10 @@
+2001-03-31 Michael Livshin <mlivshin@bigfoot.com>
+
+ * backtrace.c (display_backtrace_body): since the `print_state'
+ variable is not used (instead its data field is used directly as
+ `pstate'), protect it from the hungry compiler optimizations.
+ thanks to Bill Schottstaedt for the report.
+
2001-03-30 Dirk Herrmann <D.Herrmann@tu-bs.de>
* gc.[ch] (scm_tc16_allocated): New type tag for allocated cells.
diff --git a/libguile/backtrace.c b/libguile/backtrace.c
index d0f4820ba..4d2534ad3 100644
--- a/libguile/backtrace.c
+++ b/libguile/backtrace.c
@@ -604,6 +604,8 @@ display_backtrace_body(struct display_backtrace_args *a)
display_frame (frame, nfield, indentation, sport, a->port, pstate);
}
+ scm_remember_upto_here_1 (print_state);
+
return SCM_UNSPECIFIED;
}
#undef FUNC_NAME