[armedbear-cvs] r11910 - trunk/abcl/src/org/armedbear/lisp

Erik Huelsmann ehuelsmann at common-lisp.net
Wed May 20 22:48:32 UTC 2009


Author: ehuelsmann
Date: Wed May 20 18:48:31 2009
New Revision: 11910

Log:
In JVM-COMPILE, don't setf the DEFINITION which
breaks its use further down.

Modified:
   trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp

Modified: trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp	(original)
+++ trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp	Wed May 20 18:48:31 2009
@@ -8383,11 +8383,12 @@
         (sys::*fasl-anonymous-package* (sys::%make-package))
         environment)
     (unless (and (consp definition) (eq (car definition) 'LAMBDA))
-      (when (typep definition 'standard-generic-function)
-        (setf definition (mop::funcallable-instance-function definition)))
-      (multiple-value-setq
-          (expression environment)
-        (function-lambda-expression definition)))
+      (let ((function definition))
+        (when (typep definition 'standard-generic-function)
+          (setf function (mop::funcallable-instance-function function)))
+        (multiple-value-setq
+            (expression environment)
+          (function-lambda-expression function))))
     (unless expression
       (error "Can't find a definition for ~S." definition))
     (handler-bind
@@ -8408,7 +8409,7 @@
               (setf warnings-p t
                     failure-p t)
               nil)))
-      (values (%jvm-compile name definition expression environment)
+      (values (%jvm-compile name org-definition expression environment)
               warnings-p failure-p))))
 
 (defvar *file-compilation* nil)




More information about the armedbear-cvs mailing list