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

rschlatte at common-lisp.net rschlatte at common-lisp.net
Wed Sep 19 18:58:22 UTC 2012


Author: rschlatte
Date: Wed Sep 19 11:58:21 2012
New Revision: 14154

Log:
Fix slot-boundp-using-class.

- Reported by Pascal Costanza

Modified:
   trunk/abcl/src/org/armedbear/lisp/clos.lisp

Modified: trunk/abcl/src/org/armedbear/lisp/clos.lisp
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/clos.lisp	Wed Sep 19 07:34:44 2012	(r14153)
+++ trunk/abcl/src/org/armedbear/lisp/clos.lisp	Wed Sep 19 11:58:21 2012	(r14154)
@@ -3474,8 +3474,8 @@
                                     (slot standard-effective-slot-definition))
   (let ((location (slot-definition-location slot)))
     (if (consp location)
-        (eq (cdr location) +slot-unbound+) ; :allocation :class
-        (eq (standard-instance-access instance location) +slot-unbound+))))
+        (not (eq (cdr location) +slot-unbound+)) ; :allocation :class
+        (not (eq (standard-instance-access instance location) +slot-unbound+)))))
 
 (defmethod slot-boundp-using-class ((class funcallable-standard-class) instance
                                     (slot symbol))
@@ -3484,9 +3484,9 @@
                                     (slot standard-effective-slot-definition))
   (let ((location (slot-definition-location slot)))
     (if (consp location)
-        (eq (cdr location) +slot-unbound+) ; :allocation :class
-        (eq (funcallable-standard-instance-access instance location)
-            +slot-unbound+))))
+        (not (eq (cdr location) +slot-unbound+)) ; :allocation :class
+        (not (eq (funcallable-standard-instance-access instance location)
+                 +slot-unbound+)))))
 
 (defmethod slot-boundp-using-class ((class structure-class) instance slot)
   "Structure slots can't be unbound, so this method always returns T."




More information about the armedbear-cvs mailing list