Re: sbcl 0.9.15.13 compile issues

Yves Vandriessche <[email protected]> Wed, 09 Aug 2006 14:07:46 +0200
Newsgroups gmane.lisp.clg.devel
Message-ID <[email protected]>
Works!

Although now I get a brand new error:

No applicable type method for READER-FUNCTION when call width type 
specifier OBJECT
  [Condition of type SIMPLE-ERROR]

Backtrace:
 0: (GFFI::FIND-APPLICABLE-TYPE-METHOD SB-PCL::READER-FUNCTION 
ATK::OBJECT T)
 1: (SB-PCL::READER-FUNCTION ATK::OBJECT :REF :GET)
 2: ((SB-PCL::FAST-METHOD GFFI:COMPUTE-SLOT-READER-FUNCTION 
(GLIB:EFFECTIVE-PROPERTY-SLOT-DEFINITION)) #<unavailable argument> 
#S(SB-PCL::FAST-METHOD-CALL :FUNCTION #<FUNCTION (SB-PCL::FAST-METHOD 
GFFI:COMPUTE-SLOT-READER-FUNCTION #)> :PV-CELL (#(NIL 17) . #()) 
:NEXT-METHOD-CALL NIL :ARG-INFO (1)) 
#<GLIB:EFFECTIVE-PROPERTY-SLOT-DEFINITION 
ATK::ACCESSIBLE-TABLE-CAPTION-OBJECT>)
 3: ((SB-PCL::FAST-METHOD SB-PCL::INITIALIZE-INTERNAL-SLOT-FUNCTIONS 
(GFFI:EFFECTIVE-VIRTUAL-SLOT-DEFINITION)) (#(NIL 21 11 9 10) . #()) 
#<unavailable argument> #<GLIB:EFFECTIVE-PROPERTY-SLOT-DEFINITION 
ATK::ACCESSIBLE-TABLE-CAPTION-OBJECT>)
 ...

Somewhere in the trace it also calls:
8: (SB-PCL::FINALIZE-SPECIALIZERS #<STANDARD-GENERIC-FUNCTION 
ATK::OBJECT-ACCESSIBLE-HYPERTEXT-NLINKS (1)>)
     Locals:
       SB-DEBUG::ARG-0 = #<STANDARD-GENERIC-FUNCTION 
ATK::OBJECT-ACCESSIBLE-HYPERTEXT-NLINKS (1)>

The last compiler output is (during atk/atk.lisp):
...
STYLE-WARNING: redefining |atk_util_get_type| in DEFUN
STYLE-WARNING: redefining |atk_value_get_type| in DEFUN


Espen S Johnsen wrote:
> Yves Vandriessche <[email protected]> writes:
>
>  
>> Updating my sbcl caused this compile-error:
>>
>> ; file: /home/yvdriess/dev/clg/glib/gtype.lisp
>> ; in: DEFBINDING %TYPE-REGISTER-STATIC
>> ;     (GFFI:DEFBINDING GLIB::%TYPE-REGISTER-STATIC NIL GLIB:TYPE-NUMBER
>> ;                    (GLIB::PARENT-TYPE GLIB:TYPE-NUMBER) (GLIB::NAME 
>> STRING)
>> ;                    (GLIB::INFO GLIB::TYPE-INFO) (0 GFFI:UNSIGNED-INT))
>> ;
>> ; caught ERROR:
>> ;   (during macroexpansion of (DEFBINDING %TYPE-REGISTER-STATIC ...))
>> ;   The slot SB-PCL::%CLASS-PRECEDENCE-LIST is unbound in the object 
>> #<STRUCT-CLASS TYPE-INFO>.
>>
>>
>> It seems to be an MoP error, quoting Xof:
>> <Xof> Beef_: at a guess, your trusty lib uses the MOP introspection, 
>> and doesn't call finalize-inheritance
>>
>> Earlier sbcl version compiled clg without problems, so I am a bit at 
>> a loss.
>>     
>
> Hi
>
> This entry from the SBCL 0.9.15 news explains why it fails:
>
> o minor incompatible change: SB-MOP:FINALIZE-INHERITANCE is now called
>   later in a class's lifetime, possibly as late as when the first 
> instance
>   of the class is created. Previously, SB-MOP:FINALIZE-INHERITANCE was
>   called by the system as soon as a class became finalizeable.
>
> As this is the same behavior as CLisp has, I believe the following patch
> should fix the problem (but I haven't had time to test it):
>
> --- gffi/interface.lisp.~1.2.~  2006-04-26 21:19:14.000000000 +0200
> +++ gffi/interface.lisp 2006-08-07 22:28:34.000000000 +0200
> @@ -423,7 +423,7 @@
>              (lookup-method (type-spec)
>                (if (and (symbolp type-spec) (find-class type-spec nil))
>                    (let ((class (find-class type-spec)))
> -                    #+clisp
> +                    #?(or (sbcl>= 0 9 15) (featurep :clisp))
>                      (unless (class-finalized-p class)
>                        (finalize-inheritance class))
>                      (search-method-in-cpl-order
>
>
>   



-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642