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

ehuelsmann at common-lisp.net ehuelsmann at common-lisp.net
Tue Apr 2 19:57:56 UTC 2013


Author: ehuelsmann
Date: Tue Apr  2 12:57:51 2013
New Revision: 14455

Log:
Fix (DESCRIBE <FUNCALLABLE-STANDARD-OBJECT>) for funcallable standard objects
with unbound slots.

Note: this fix basically makes sure funcallable standard objects aren't
  dispatched to the DESCRIBE-OBJECT (T T) method.

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

Modified: trunk/abcl/src/org/armedbear/lisp/describe.lisp
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/describe.lisp	Tue Apr  2 07:59:54 2013	(r14454)
+++ trunk/abcl/src/org/armedbear/lisp/describe.lisp	Tue Apr  2 12:57:51 2013	(r14455)
@@ -110,7 +110,7 @@
   (format stream "  TYPE         ~S~%" (pathname-type object))
   (format stream "  VERSION      ~S~%" (pathname-version object)))
 
-(defmethod describe-object ((object standard-object) stream)
+(defun %describe-standard-object/funcallable (object stream)
   (let* ((class (class-of object))
          (slotds (mop:class-slots class))
          (max-slot-name-length 0)
@@ -145,8 +145,15 @@
         (dolist (slotd (nreverse class-slotds))
           (describe-slot
            (%slot-definition-name slotd)))
-        (format stream "~%"))))
-    (values))
+        (format stream "~%")))))
+
+(defmethod describe-object ((object standard-object) stream)
+  (%describe-standard-object/funcallable object stream)
+  (values))
+
+(defmethod describe-object ((object mop:funcallable-standard-object) stream)
+  (%describe-standard-object/funcallable object stream)
+  (values))
 
 (defmethod describe-object ((object java:java-object) stream)
   (java:describe-java-object object stream))




More information about the armedbear-cvs mailing list