Re: murk up

"Walter C. Pelissero" <[email protected]> Thu, 27 Mar 2008 17:36:15 +0100
Newsgroups gmane.lisp.clg.devel
Message-ID <[email protected]>
Espen S Johnsen writes:
 > "Walter C. Pelissero" <[email protected]> writes:
 > 
 > > Since recently I've been observing sporadic errors like this
 > > 
 > >   Type-error in KERNEL::OBJECT-NOT-FUNCTION-ERROR-HANDLER:
 > >      GTK::%ICON-VIEW-MARKUP-COLUMN-BOUNDP is not of type FUNCTION
 > >      [Condition of type TYPE-ERROR]
 > > 
 > > somewhere in the initialisation of an icon view
 > 
 > Unfortunately, I have not been able to reproduce or locate the problem
 > from the stack trace. It would be nice if you could create some example
 > code that can be used to trigger the error.

Contrary to my first impressions the error can be reproduced reliably.
Here is how.  Compile the following and execute the RUN function.

(defpackage :bugger
  (:use :common-lisp :gtk :pcl)
  (:export #:run))

(in-package :bugger)

(defclass fancy-metaclass (standard-class)
  ())

(defclass fancy-object ()
  ())

(defclass fancy-effective-slot-definition (standard-effective-slot-definition)
  ())

(defmethod slot-boundp-using-class ((class fancy-metaclass) (instance fancy-object) (slot fancy-effective-slot-definition))
  t)

(trace slot-boundp-using-class)

(defun run ()
  (clg-init)
  (make-instance 'icon-view))

----------------------------------------------------------------------

Commenting out the definition of slot-boundp-using-class the error
disappears.

Considering that SBCL doesn't seem to be adversely affected by this
code and, even on CMUCL, just loading my code, doesn't trigger any
error, I believe I tripped on a CMUCL bug.

-- 
walter pelissero
http://www.pelissero.de

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace