[Bese-devel] compilation error for ucw 0.2.3 with cmucl18e

Kristian Elof Sørensen elof at image.dk
Thu Aug 5 07:44:56 UTC 2004


Marco Baringer wrote:

>Kristian Elof Sørensen <elof at image.dk> writes:
>
>  
>
>>However compilation fails. This is on CMUCL 18e on Linun on a PC.
>>    
>>
>
>there is, in fairly recent versions of cmucl and sbcl, a PCL bug which
>UCW triggers. try adding the snippet at
>http://paste.lisp.org/display/1748#3 to your .cmucl-init.lisp file,
>delete all the x86f files (a full recompilation is the safest thing to
>do at this point) and retry. if that still fails try with a latest
>snapshot of ucw (available from
>ftp://ftp.common-lisp.net/pub/project/ucw/snapshots/), if that still
>fails shoot me :).
>
>  
>
Well I guess it is shooting season then ;-)

First off, the code "snippet" that you linked to fails with a "no class 
named CONDITION-CLASS in both cmucl 18e and in the recently released 
cmucl 19a. The full dumps are included at the end.

Secondly I tried loading the 2004-07-30 snapshowt of ucw, without 
loading the "code snippet". I did delete all x86f files in between the 
loads so as to not get version mismatch problems. I would anticipate 
that the bug the "code snippet" presumeably fixes must nefixed in the 
released 19a ??? However both 18e and 19a halts the compilation at the 
same source code form:


>for what it's worth two weeks or so ago i had ucw running on linux x86
>with very recent cmucl (19a) and sbcl (cvs) with the apache and
>portableaserve backends. thanks to drew crampsie and jan rychter for
>the hardware.
>
>  
>
Which snapshot of ucw was this?



  compiling ucw-2004-07-30 on cmucl 19a:

; 
/home/elof/prog/tests/lisp/Foreign_Code/ucw/src/rerl/standard-session.x86f 
written.
; Compilation finished in 0:00:00.
; Loading 
#p"/home/elof/prog/tests/lisp/Foreign_Code/ucw/src/rerl/standard-action.x86f".
; Loading 
#p"/home/elof/prog/tests/lisp/Foreign_Code/ucw/src/rerl/standard-application.x86f".
; Loading 
#p"/home/elof/prog/tests/lisp/Foreign_Code/ucw/src/rerl/standard-component.x86f".

Execution of a form compiled with errors:
 (DEFMETHOD RENDER-ON
            :AROUND
            ((RESPONSE RESPONSE) (COMPONENT STANDARD-COMPONENT))
            (RESTART-CASE
             (WITH-YACLML-STREAM (CONTENT-STREAM RESPONSE)
                                 (PROG1 (CALL-NEXT-METHOD)
                                   (WHEN *INSPECT-COMPONENTS*
                                     (IT.BESE.YACLML.TAGS:A :HREF
                                                            (ACTION-HREF
                                                             (LAMBDA ()
                                                               (UCW-INSPECT
                                                                COMPONENT
                                                                COMPONENT)))
                                                            
(IT.BESE.YACLML.TAGS:SPAN
                                                             :STYLE
                                                             "font-size: 
8pt;"                                                             
"Inspect this "
                                                             
(IT.BESE.YACLML.TAGS:TT
                                                              
(IT.BESE.YACLML.TAGS:AS-HTML
                                                               (TYPE-OF
                                                                
COMPONENT))))))))
             (RETRY NIL :REPORT "Retry rendering the component."
              (RETURN-FROM RENDER-ON (RENDER-ON RESPONSE COMPONENT)))))
   [Condition of type KERNEL:SIMPLE-PROGRAM-ERROR]

Restarts:
  0: [CONTINUE] Return NIL from load of 
#p"/home/elof/prog/tests/lisp/Foreign_Code/ucw/src/rerl/standard-component.x86f".
  1: [RETRY   ] Retry performing #<ASDF:LOAD-OP NIL {58EBA945}> on
                #<ASDF:CL-SOURCE-FILE "standard-component" {58EBA8D5}>.
  2: [ACCEPT  ] Continue, treating #<ASDF:LOAD-OP NIL {58EBA945}> on
                #<ASDF:CL-SOURCE-FILE "standard-component" {58EBA8D5}> as
                having been successful.
  3: [ABORT   ] Return to Top-Level.

Debug  (type H for help)

(C::DO-CALL #<Code Object "Top-Level Form" {58ABB99F}> 22 23 53 ...)
Source: Error finding source:
Error in function DEBUG::GET-FILE-TOP-LEVEL-FORM:  Source file no longer 
exists:
  target:code/byte-interp.lisp.
0]







   compiling ucw-2004-07-30 on cmucl 18e:


; 
/home/elof/prog/tests/lisp/Foreign_Code/ucw/src/rerl/standard-session.x86f 
written.
; Compilation finished in 0:00:00.
; Loading 
#p"/home/elof/prog/tests/lisp/Foreign_Code/ucw/src/rerl/standard-action.x86f".
; Loading 
#p"/home/elof/prog/tests/lisp/Foreign_Code/ucw/src/rerl/standard-application.x86f".
; Loading 
#p"/home/elof/prog/tests/lisp/Foreign_Code/ucw/src/rerl/standard-component.x86f".


Execution of a form compiled with errors:
 (DEFMETHOD RENDER-ON
            :AROUND
            ((RESPONSE RESPONSE) (COMPONENT STANDARD-COMPONENT))
            (RESTART-CASE
             (WITH-YACLML-STREAM (CONTENT-STREAM RESPONSE)
                                 (PROG1 (CALL-NEXT-METHOD)
                                   (WHEN *INSPECT-COMPONENTS*
                                     (IT.BESE.YACLML.TAGS:A :HREF
                                                            (ACTION-HREF
                                                             (LAMBDA ()
                                                               (UCW-INSPECT
                                                                COMPONENT
                                                                COMPONENT)))
                                                            
(IT.BESE.YACLML.TAGS:SPAN
                                                             :STYLE
                                                             "font-size: 
8pt;"                                                             
"Inspect this "
                                                             
(IT.BESE.YACLML.TAGS:TT
                                                              
(IT.BESE.YACLML.TAGS:AS-HTML
                                                               (TYPE-OF
                                                                
COMPONENT))))))))
             (RETRY NIL :REPORT "Retry rendering the component."
              (RETURN-FROM RENDER-ON (RENDER-ON RESPONSE COMPONENT)))))

Restarts:
  0: [CONTINUE] Return NIL from load of 
#p"/home/elof/prog/tests/lisp/Foreign_Code/ucw/src/rerl/standard-component.x86f".
  1: [RETRY   ] Retry performing #<ASDF:LOAD-OP NIL {48CF1655}> on
                #<ASDF:CL-SOURCE-FILE "standard-component" {48CF15E5}>.
  2: [ACCEPT  ] Continue, treating #<ASDF:LOAD-OP NIL {48CF1655}> on
                #<ASDF:CL-SOURCE-FILE "standard-component" {48CF15E5}> as
                having been successful.
  3: [ABORT   ] Return to Top-Level.

Debug  (type H for help)

(C::DO-CALL #<Code Object "Top-Level Form" {483D123F}> 56 57 4 ...)
Source: Error finding source:
Error in function DEBUG::GET-FILE-TOP-LEVEL-FORM:  Source file no longer 
exists:
  target:code/byte-interp.lisp.
0]





    Starting lisp with the "code snippet" on  18e:

[elof at hugin systems]$ lisp
; Loading #p"/home/elof/.cmucl-init.lisp".
;; Loading #p"/home/elof/prog/tests/lisp/utils.lisp".


Error in function PCL::FIND-CLASS-FROM-CELL:  No class named: 
CONDITION-CLASS.
Restarts:
  0: [CONTINUE] Return NIL from load of "home:.cmucl-init".
  1: [ABORT   ] Skip remaining initializations.

Debug  (type H for help)

(PCL::FIND-CLASS-FROM-CELL CONDITION-CLASS NIL T)
Source: Error finding source:
Error in function DEBUG::GET-FILE-TOP-LEVEL-FORM:  Source file no longer 
exists:
  target:pcl/macros.lisp.
0]






   Starting lisp with the "code snippet" on 19a:

[elof at hugin systems]$ lisp-19a -core /usr/lib/cmucl/lib/lisp-19a.core
; Loading #p"/home/elof/.cmucl-init.lisp".
;; Loading #p"/home/elof/prog/tests/lisp/utils.lisp".
; Compiling LAMBDA (PCL::.PV-CELL. PCL::.NEXT-METHOD-CALL. CLASS):
; Compiling Top-Level Form:
;

; Warning: Undefined type CONDITION-CLASS
;

; In: LAMBDA (PCL::.PV-CELL. PCL::.NEXT-METHOD-CALL. CLASS)

;   (PCL::FAST-LEXICAL-METHOD-FUNCTIONS
;    (# PCL::.NEXT-METHOD-CALL. # NIL :METHOD-NAME-DECLARATION ...)
;    (DECLARE #)
;    (PCL::PV-BINDING # #))
; --> PCL::BIND-FAST-LEXICAL-METHOD-MACROS MACROLET
; --> PCL::BIND-LEXICAL-METHOD-FUNCTIONS PCL::CALL-NEXT-METHOD-BIND LET 
FLET
; --> PCL::WITH-REBOUND-ORIGINAL-ARGUMENTS LET PCL::BIND-ARGS
; ==>
;   (LET* (#)
;     (DECLARE #)
;     (DECLARE #)
;     (PCL::PV-BINDING # #))
; Warning: Undefined type CONDITION-CLASS
; ; ; [Last message occurs 2 times]


; Warning: 4 more uses of undefined type CONDITION-CLASS.
; ;

; Warning: This type is undefined:
;   CONDITION-CLASS
;

; Compilation unit finished.
;   5 warnings



Error in function PCL::FIND-CLASS-FROM-CELL:  No class named 
CONDITION-CLASS.
   [Condition of type SIMPLE-ERROR]

Restarts:
  0: [CONTINUE] Return NIL from load of "home:.cmucl-init".
  1: [ABORT   ] Skip remaining initializations.

Debug  (type H for help)

(PCL::FIND-CLASS-FROM-CELL CONDITION-CLASS NIL T)
Source: Error finding source:
Error in function DEBUG::GET-FILE-TOP-LEVEL-FORM:  Source file no longer 
exists:
  target:pcl/macros.lisp.







More information about the bese-devel mailing list