1.0.44.17: ir1: Declare UNWIND-PROTECT cleanup functions to be dynamic-extent.
[sbcl.git] / src / compiler / ir1-translators.lisp
index 1556377..347c907 100644 (file)
@@ -1083,6 +1083,7 @@ due to normal completion or a non-local exit such as THROW)."
         ;; ,CLEANUP-FUN should probably be declared DYNAMIC-EXTENT,
         ;; and something can be done to make %ESCAPE-FUN have
         ;; dynamic extent too.
+        (declare (dynamic-extent #',cleanup-fun))
         (block ,drop-thru-tag
           (multiple-value-bind (,next ,start ,count)
               (block ,exit-tag