[armedbear-cvs] r12537 - in branches/0.19.x/abcl: . src/org/armedbear/lisp

Erik Huelsmann ehuelsmann at common-lisp.net
Sun Mar 14 19:40:17 UTC 2010


Author: ehuelsmann
Date: Sun Mar 14 15:40:13 2010
New Revision: 12537

Log:
Backport PROGV fix (r12526) and its CHANGES description.

Modified:
   branches/0.19.x/abcl/CHANGES
   branches/0.19.x/abcl/src/org/armedbear/lisp/compiler-pass1.lisp

Modified: branches/0.19.x/abcl/CHANGES
==============================================================================
--- branches/0.19.x/abcl/CHANGES	(original)
+++ branches/0.19.x/abcl/CHANGES	Sun Mar 14 15:40:13 2010
@@ -1,7 +1,7 @@
 Version 0.19
 ============
 svn://common-lisp.net/project/armedbear/svn/trunk/abcl
-(Unreleased)
+(14 Mar, 2010)
 
 Features
 --------
@@ -37,10 +37,10 @@
 
   SYS:PATHNAME-JAR-P predicate signals whether a pathname references a
   jar.
-       
+
   NB: jar pathnames do *not* currently work as an argument to OPEN.
 
-  SYS:UNZIP implemented to unpack ZIP files.  
+  SYS:UNZIP implemented to unpack ZIP files.
 
   SYS:ZIP now has a three argument version for creating zip files with
   hierarchical entries.
@@ -58,6 +58,9 @@
 Fixes/Optimizations
 -------------------
 
+* [svn r12526] Unbinding of PROGV bound variables on local transfer
+  of control (within-java-function jump targets)
+
 * [svn r12510] The new ansi-test WITH-STANDARD-IO-SYNTAX.23 passes.
   Our with-standard-io-syntax implementation now correctly resets all necessary
   pprint variables. Patch by Douglas R. Miles, thanks for the contribution!

Modified: branches/0.19.x/abcl/src/org/armedbear/lisp/compiler-pass1.lisp
==============================================================================
--- branches/0.19.x/abcl/src/org/armedbear/lisp/compiler-pass1.lisp	(original)
+++ branches/0.19.x/abcl/src/org/armedbear/lisp/compiler-pass1.lisp	Sun Mar 14 15:40:13 2010
@@ -1078,9 +1078,9 @@
 ;;      (dolist (name (second symbols-form))
 ;;        (let ((variable (make-variable :name name :special-p t)))
 ;;          (push 
-    (setf (progv-form block)
-          `(progv ,symbols-form ,values-form ,@(p1-body body))
-          (progv-environment-register block) t)
+    (setf (progv-environment-register block) t
+          (progv-form block)
+          `(progv ,symbols-form ,values-form ,@(p1-body body)))
     block))
 
 (defknown rewrite-progv (t) t)




More information about the armedbear-cvs mailing list