summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sb-eval2.lisp6
1 files changed, 5 insertions, 1 deletions
diff --git a/sb-eval2.lisp b/sb-eval2.lisp
index f2ff15b..62bd3a7 100644
--- a/sb-eval2.lisp
+++ b/sb-eval2.lisp
@@ -40,7 +40,11 @@
(,data% (make-array (list ,size%)))
(,var (%make-environment :parent ,parent :data ,data%)))
(declare (type (mod #.(1+ +stack-max+)) ,size%)
- (dynamic-extent ,var)
+ ;; we must not allocate environment objects on the
+ ;; stack unless we can be sure that all child
+ ;; environments will also be allocated on the stack,
+ ;; but we can't really know that.
+ ;(dynamic-extent ,var)
(dynamic-extent ,data%))
,@body)))