[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

print errors in print-object



If a print-object method signals an error because an unbound slot is accessed, CLISP goes into a  
infinite error printing loop.  Shouldn't it stop trying to print the object after it signals the first error?

---------
> (use-package :clos)
T
> (defclass a () ((b)))
#<STANDARD-CLASS A>
> (defmethod print-object ((a a) s) (print (slot-value a 'b) s))

WARNING:
The generic function #<GENERIC-FUNCTION PRINT-OBJECT> is being modified, but has already  
been called.
#<STANDARD-METHOD (#<STANDARD-CLASS A> #<BUILT-IN-CLASS T>)>
> (make-instance 'a)

*** - SLOT-VALUE: The slot B of 

*** - SLOT-VALUE: The slot B of 

*** - SLOT-VALUE: The slot B of 

*** - SLOT-VALUE: The slot B of 

*** - SLOT-VALUE: The slot B of 

*** - SLOT-VALUE: The slot B of 

*** - SLOT-VALUE: The slot B of 

*** - SLOT-VALUE: The slot B of