From: Alastair Bridgewater Date: Tue, 9 Nov 2010 19:45:50 +0000 (+0000) Subject: 1.0.44.17: ir1: Declare UNWIND-PROTECT cleanup functions to be dynamic-extent. X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=97f956abb60d853e20fc7018f6675a6348927103;p=sbcl.git 1.0.44.17: ir1: Declare UNWIND-PROTECT cleanup functions to be dynamic-extent. * Since we now have the analysis to do the right thing for these functions, why not take advantage of it? --- diff --git a/src/compiler/ir1-translators.lisp b/src/compiler/ir1-translators.lisp index 1556377..347c907 100644 --- a/src/compiler/ir1-translators.lisp +++ b/src/compiler/ir1-translators.lisp @@ -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 diff --git a/version.lisp-expr b/version.lisp-expr index 2d86753..20784af 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"1.0.44.16" +"1.0.44.17"