[lift-devel] LIFT Bug with SBCL: SYSTEM-RELATIVE-PATHNAME

Robert Uhl eadmund42 at gmail.com
Sun Jun 24 19:51:59 UTC 2007


Installing using ASDF-INSTALL.

; loading system definition from /usr/lib/sbcl/site-systems/lift-test.asd
; into #<package "ASDF0">
; registering #<system lift-test {B13DB89}> as lift-test
; loading system definition from /usr/lib/sbcl/site-systems/lift.asd into
; #<package "ASDF0">
; registering #<system lift {B3613A9}> as lift
; compiling file "/usr/lib/sbcl/site/lift/dev/packages.lisp" (written 23 JUN 2007 01:06:14 PM):
; compiling (in-package #:common-lisp-user)
; compiling (unless (find-package #) ...)

; /usr/lib/sbcl/site/lift/dev/packages.fasl written
; compilation finished in 0:00:00
; compiling file "/usr/lib/sbcl/site/lift/dev/measuring.lisp" (written 23 JUN 2007 01:06:14 PM):
; compiling (in-package #:lift)
; compiling (declaim (optimize # ...))
; compiling (defmacro with-measuring ...)
; compiling (defmacro measure-time ...)
; compiling (defmacro measure-conses ...)
; compiling (defun measure-fn ...)

; file: /usr/lib/sbcl/site/lift/dev/measuring.lisp
; in: defun measure-fn
;     (APPLY LIFT::FN LIFT::ARGS)
; --> MULTIPLE-VALUE-CALL 
; ==>
;   (SB-KERNEL:%COERCE-CALLABLE-TO-FUN LIFT::FN)
; 
; note: unable to
;   optimize away possible call to FDEFINITION at runtime
; due to type uncertainty:
;   The first argument is a (or function symbol), not a function.

;     (LIFT::MEASURE-CONSES (LIFT::BYTES)
;                         (SETF LIFT::RESULT (APPLY LIFT::FN LIFT::ARGS)))
; --> LIFT::WITH-MEASURING LET SETF SETQ THE 
; ==>
;   (- (LIFT::TOTAL-BYTES-ALLOCATED) #:G38)
; 
; note: unable to
;   optimize
; due to type uncertainty:
;   The first argument is a number, not a rational.
;   The second argument is a number, not a float.
; 
; note: unable to
;   optimize
; due to type uncertainty:
;   The first argument is a number, not a float.
;   The second argument is a number, not a rational.
; 
; note: unable to
;   optimize
; due to type uncertainty:
;   The first argument is a number, not a single-float.
;   The second argument is a number, not a double-float.
; 
; note: unable to
;   optimize
; due to type uncertainty:
;   The first argument is a number, not a double-float.
;   The second argument is a number, not a single-float.
; 
; note: unable to
;   optimize
; due to type uncertainty:
;   The first argument is a number, not a (complex single-float).
;   The second argument is a number, not a (complex single-float).
; 
; note: unable to
;   optimize
; due to type uncertainty:
;   The first argument is a number, not a (complex single-float).
;   The second argument is a number, not a real.
; 
; note: unable to
;   optimize
; due to type uncertainty:
;   The first argument is a number, not a real.
;   The second argument is a number, not a (complex single-float).
; 
; note: unable to
;   optimize
; due to type uncertainty:
;   The first argument is a number, not a (complex double-float).
;   The second argument is a number, not a (complex double-float).
; 
; note: unable to
;   optimize
; due to type uncertainty:
;   The first argument is a number, not a (complex double-float).
;   The second argument is a number, not a real.
; 
; note: unable to
;   optimize
; due to type uncertainty:
;   The first argument is a number, not a real.
;   The second argument is a number, not a (complex double-float).
; 
; note: forced to do generic-- (cost 10)
;       unable to do inline float arithmetic (cost 2) because:
;       The first argument is a t, not a double-float.
;       The second argument is a t, not a double-float.
;       The result is a (values number &optional), not a (values double-float
;                                                                &rest t).
;       unable to do inline float arithmetic (cost 2) because:
;       The first argument is a t, not a single-float.
;       The second argument is a t, not a single-float.
;       The result is a (values number &optional), not a (values single-float
;                                                                &rest t).
;       etc.

;     (LIFT::MEASURE-TIME (LIFT::SECONDS)
;                       (LIFT::MEASURE-CONSES (LIFT::BYTES)
;                                             (SETF LIFT::RESULT
;                                                     (APPLY LIFT::FN
;                                                            LIFT::ARGS))))
; --> PROG1 LET LIFT::WITH-MEASURING LET SETF SETQ THE 
; ==>
;   (- (GET-INTERNAL-REAL-TIME) #:G37)
; 
; note: forced to do generic-- (cost 10)
;       unable to do inline fixnum arithmetic (cost 2) because:
;       The first argument is a unsigned-byte, not a fixnum.
;       The second argument is a unsigned-byte, not a fixnum.
;       The result is a (values integer &optional), not a (values fixnum &rest t).
;       unable to do inline (signed-byte 32) arithmetic (cost 5) because:
;       The first argument is a unsigned-byte, not a (signed-byte 32).
;       The second argument is a unsigned-byte, not a (signed-byte 32).
;       The result is a (values integer &optional), not a (values
;                                                          (signed-byte 32) &rest
;                                                          t).
;       etc.

; --> PROG1 LET SETF SETQ THE COERCE THE 
; ==>
;   (SB-KERNEL:%DOUBLE-FLOAT SB-C::X)
; 
; note: forced to do full call
;       unable to do inline float coercion (cost 5) because:
;       The first argument is a rational, not a (signed-byte 32).
;       unable to do inline float coercion (cost 6) because:
;       The first argument is a rational, not a (unsigned-byte 32).

; compiling (defmacro measure ...)compilation aborted because of fatal error:
                                    read failure in compile-file:
                                      READER-ERROR at 1069 (line 39, column 32) on #<sb-sys:fd-stream for "file /usr/lib/sbcl/site/lift/dev/measuring.lisp" {B546D51}>:
Symbol "SYSTEM-RELATIVE-PATHNAME" not found in the ASDF package.

; /usr/lib/sbcl/site/lift/dev/measuring.fasl written
; compilation finished in 0:00:01
warning:
   COMPILE-FILE warned while performing #<compile-op nil {B442DE9}> on
   #<cl-source-file "measuring" {B3902A1}>.
; 
; compilation unit aborted
;   caught 2 fatal ERROR conditions
;   printed 14 notes
; Evaluation aborted
cl-user> 

-- 
Robert Uhl <http://public.xdi.org/=ruhl>
No wonder Unix makes you feel boxed in.  It ties you to an inflexible
system.  It requires you to pay for expensive experts.  It makes you
struggle daily with a server environment that's more complex than ever.
                          --Microsoft ad proving that irony isn't dead



More information about the lift-devel mailing list