loading already compiled clg -> debugger

Chisheng Huang <[email protected]> Wed, 09 May 2007 12:17:10 -0700
Newsgroups gmane.lisp.clg.devel
Message-ID <[email protected]>
Hi Espen,

Could you please look into this?

Thanks a lot.

-cph


SUMMARY: 
  Doing (asdf:oos 'asdf:load-op :gtk) the first time is O.K.
  Doing (asdf:oos 'asdf:load-op :gtk) the second time will send CMUCL 
  into the debugger.


ENVIRONMENT INFO:
  (lisp-implementation-type)
  -> "CMU Common Lisp"

  (lisp-implementation-version)
  -> "Snapshot 2007-05 (19D)"

  (machine-type)
  -> "X86"

  (software-version)
  -> "Linux version 2.6.17-gentoo-r8 (root@abalone) (gcc version 4.1.1 (Gentoo 4.1.1-r3)) #5 PREEMPT Wed Apr 11 09:19:59 PDT 2007"

  (gtk-version)
  -> "Gtk+ v2.10.12"

  CLG version is CVS HEAD as of 9 May 2007.

  CMUCL 19C and CMUCL 19D have the same behaviour as CMUCL Snapshot 2007-05.



HOW TO REPRODUCE IT:
  1. Go into the clg toplevel directory
  2. Do 
       find . -name "*.x86f" -exec rm {} \;
  3. Fire up CMUCL, do (asdf:oos 'asdf:load-op :gtk), and quit CMUCL.
  4. Fire up CMUCL, do (asdf:oos 'asdf:load-op :gtk), and get the following:

Error in function GFFI::FIND-APPLICABLE-TYPE-METHOD:
   No applicable type method for READER-FUNCTION when call width type specifier ATTACH-OPTIONS
   [Condition of type SIMPLE-ERROR]

Restarts:
  0: [CONTINUE] Return NIL from load of #P"/home/cph/clg/gtk/gtktypes.x86f".
  1: [RETRY   ] Retry performing #<ASDF:LOAD-OP NIL {5810B96D}> on
                #<ASDF:CL-SOURCE-FILE "gtktypes" {58BA38DD}>.
  2: [ACCEPT  ] Continue, treating #<ASDF:LOAD-OP NIL {5810B96D}> on
                #<ASDF:CL-SOURCE-FILE "gtktypes" {58BA38DD}> as
                having been successful.
  3: [ABORT   ] Return to Top-Level.

Debug  (type H for help)

(GFFI::FIND-APPLICABLE-TYPE-METHOD READER-FUNCTION ATTACH-OPTIONS T)
Source: 
; File: /home/cph/clg/gffi/interface.lisp
(ERROR "No applicable type method for ~A when call width type specifier ~A"
       NAME
       TYPE-SPEC)
0] backtrace 60

0: (GFFI::FIND-APPLICABLE-TYPE-METHOD READER-FUNCTION ATTACH-OPTIONS T)
1: (READER-FUNCTION ATTACH-OPTIONS :REF :GET)
2: ((METHOD COMPUTE-SLOT-READER-FUNCTION NIL (EFFECTIVE-CHILD-SLOT-DEFINITION))
    (#(22 6) . #()) #<unused-arg>
    #<EFFECTIVE-CHILD-SLOT-DEFINITION Y-OPTIONS {5948E48D}> NIL)
3: ((METHOD COMPUTE-SLOT-READER-FUNCTION (:AROUND)
     (EFFECTIVE-VIRTUAL-SLOT-DEFINITION))
    (#(19 0 6)
     . #(#S(PCL::FAST-METHOD-CALL
              :FUNCTION #<Function # {58BCB061}>
              :PV-CELL (# . #)
              :NEXT-METHOD-CALL NIL
              :ARG-INFO (1))
         #S(PCL::FAST-METHOD-CALL
              :FUNCTION #<Function # {59A00511}>
              :PV-CELL NIL
              :NEXT-METHOD-CALL #S(PCL::FAST-METHOD-CALL
                                     :FUNCTION #
                                     :PV-CELL #
                                     :NEXT-METHOD-CALL #
                                     :ARG-INFO #)
              :ARG-INFO (1))))
    #S(PCL::FAST-METHOD-CALL
         :FUNCTION #<Function (METHOD COMPUTE-SLOT-READER-FUNCTION NIL
                               (EFFECTIVE-CHILD-SLOT-DEFINITION))
                     {59A005E9}>
         :PV-CELL (#(22 6) . #())
         :NEXT-METHOD-CALL #S(PCL::FAST-METHOD-CALL
                                :FUNCTION #<Function (METHOD
                                                      COMPUTE-SLOT-READER-FUNCTION
                                                      NIL #)
                                            {58BCAC59}>
                                :PV-CELL (#(17) . #())
                                :NEXT-METHOD-CALL NIL
                                :ARG-INFO (1 . T))
         :ARG-INFO (1 . T))
    #<EFFECTIVE-CHILD-SLOT-DEFINITION Y-OPTIONS {5948E48D}> NIL)
4: ((METHOD PCL::INITIALIZE-INTERNAL-SLOT-FUNCTIONS NIL
     (EFFECTIVE-VIRTUAL-SLOT-DEFINITION))
    (#(21 0)
     . #(#S(PCL::FAST-METHOD-CALL
              :FUNCTION #<Function # {58BCB061}>
              :PV-CELL (# . #)
              :NEXT-METHOD-CALL NIL
              :ARG-INFO (1))
         #S(PCL::FAST-METHOD-CALL
              :FUNCTION #<Function # {58BCC339}>
              :PV-CELL (# . #)
              :NEXT-METHOD-CALL NIL
              :ARG-INFO (1))
         #S(PCL::FAST-METHOD-CALL
              :FUNCTION #<Function # {58BC9C79}>
              :PV-CELL (# . #)
              :NEXT-METHOD-CALL #S(PCL::FAST-METHOD-CALL
                                     :FUNCTION #
                                     :PV-CELL #
                                     :NEXT-METHOD-CALL #
                                     :ARG-INFO #)
              :ARG-INFO (1 . T))
         #S(PCL::FAST-METHOD-CALL
              :FUNCTION #<Function # {58BCBB31}>
              :PV-CELL (# . #)
              :NEXT-METHOD-CALL #S(PCL::FAST-METHOD-CALL
                                     :FUNCTION #
                                     :PV-CELL #
                                     :NEXT-METHOD-CALL #
                                     :ARG-INFO #)
              :ARG-INFO (1))))
    #<unused-arg> #<EFFECTIVE-CHILD-SLOT-DEFINITION Y-OPTIONS {5948E48D}>)
5: ("DEFMETHOD COMPUTE-SLOTS AROUND (STANDARD-CLASS)" #<unused-arg>
    #S(PCL::FAST-METHOD-CALL
         :FUNCTION #<Function "DEFMETHOD COMPUTE-SLOTS (STANDARD-CLASS)"
                     {112BF661}>
         :PV-CELL NIL
         :NEXT-METHOD-CALL #S(PCL::FAST-METHOD-CALL
                                :FUNCTION #<Function "DEFMETHOD COMPUTE-SLOTS (STD-CLASS)"
                                            {112BFA29}>
                                :PV-CELL NIL
                                :NEXT-METHOD-CALL NIL
                                :ARG-INFO (1))
         :ARG-INFO (1))
    #<CONTAINER-CHILD-CLASS TABLE-CHILD {59486485}>)
6: (PCL::UPDATE-CLASS #<CONTAINER-CHILD-CLASS TABLE-CHILD {59486485}> T)
7: (PCL::UPDATE-CLASS 2 #<CONTAINER-CHILD-CLASS TABLE-CHILD {59486485}> T)[:EXTERNAL]
8: (PCL::FINALIZE-SPECIALIZERS
    #<STANDARD-GENERIC-FUNCTION (CLASS-PREDICATE TABLE-CHILD) (2) {5948A839}>)
9: (PCL::MAKE-INITIAL-DFUN
    #<STANDARD-GENERIC-FUNCTION (CLASS-PREDICATE TABLE-CHILD) (2) {5948A839}>)
10: (PCL::UPDATE-DFUN
     #<STANDARD-GENERIC-FUNCTION (CLASS-PREDICATE TABLE-CHILD) (2) {5948A839}>
     NIL
     NIL
     NIL)
11: (PCL::REAL-ADD-METHOD
     #<STANDARD-GENERIC-FUNCTION (CLASS-PREDICATE TABLE-CHILD) (2) {5948A839}>
     #<STANDARD-METHOD (CLASS-PREDICATE TABLE-CHILD) (TABLE-CHILD) {5948B5E5}>
     NIL)
12: (PCL::MAKE-CLASS-PREDICATE #<CONTAINER-CHILD-CLASS TABLE-CHILD {59486485}>
                               (CLASS-PREDICATE TABLE-CHILD))
13: ("DEFMETHOD SHARED-INITIALIZE AFTER (STD-CLASS T)" (#(15 5 8) . #())
     #<unused-arg> #<CONTAINER-CHILD-CLASS TABLE-CHILD {59486485}>
     #<unused-arg> ...)
14: ("LAMBDA (.KEYARGS-START. .VALID-KEYS. G2859 G2860 G2861)" #<unused-arg>
     #<unused-arg> #<CONTAINER-CHILD-CLASS TABLE-CHILD {59486485}> T ...)
15: ("DEFMETHOD MAKE-INSTANCE (CLASS)" #<unused-arg> #<unused-arg>
     #<STANDARD-CLASS CONTAINER-CHILD-CLASS {599CDF4D}>
     (:NAME TABLE-CHILD :DIRECT-SUPERCLASSES
      (#<STANDARD-CLASS CONTAINER-CHILD {5999228D}>) :DIRECT-SLOTS ...))
16: ("DEFMETHOD ENSURE-CLASS-USING-CLASS (NULL T)" #<unused-arg> #<unused-arg>
     NIL TABLE-CHILD ...)
17: (C::DO-CALL #<Code Object "Top-Level Form" {5948506F}> 203 204 57 ...)
18: (LISP::FOP-FUNCALL-FOR-EFFECT)
19: (LISP::LOAD-GROUP #<Stream for file "/home/cph/clg/gtk/gtktypes.x86f">)
20: (LISP::FASLOAD #<Stream for file "/home/cph/clg/gtk/gtktypes.x86f">)
21: (LISP::INTERNAL-LOAD #P"/home/cph/clg/gtk/gtktypes.x86f"
                         #P"/home/cph/clg/gtk/gtktypes.x86f"
                         :ERROR :BINARY)
22: (LISP::INTERNAL-LOAD #P"/home/cph/clg/gtk/gtktypes.x86f"
                         #P"/home/cph/clg/gtk/gtktypes.x86f"
                         :ERROR NIL)
23: (LOAD #P"/home/cph/clg/gtk/gtktypes.x86f" :VERBOSE NIL :PRINT ...)
24: ((FAST-METHOD ASDF:PERFORM (ASDF:LOAD-OP ASDF:CL-SOURCE-FILE))
     (#()
      . #(#S(PCL::FAST-METHOD-CALL
               :FUNCTION #<Function # {596FD3E1}>
               :PV-CELL (# . #)
               :NEXT-METHOD-CALL NIL
               :ARG-INFO (2))))
     #<unused-arg> #<ASDF:LOAD-OP NIL {5810B96D}>
     #<ASDF:CL-SOURCE-FILE "gtktypes" {58BA38DD}>)
25: ("LAMBDA (G1632 G1633 G1634)" #<unused-arg> #<unused-arg>
     #<ASDF:LOAD-OP NIL {5810B96D}>
     #<ASDF:CL-SOURCE-FILE "gtktypes" {58BA38DD}>)
26: ((FLET #:G0))
27: ((FLET #:G0))
28: ((FLET #:G0))
29: (ASDF:OPERATE ASDF:LOAD-OP :GTK)[:OPTIONAL]
30: (ASDF:OPERATE ASDF:LOAD-OP :GTK)[:OPTIONAL]
31: (INTERACTIVE-EVAL (ASDF:OOS 'ASDF:LOAD-OP :GTK))
32: (LISP::%TOP-LEVEL)
33: ((LABELS LISP::RESTART-LISP SAVE-LISP))

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/