From: Nikodemus S. <tsi...@cc...> - 2003-09-15 10:35:46
|
This reproduces reliably on both sbcl-mt 0.8.2.11 from Debian and recent anoncvs, though Christophe's intuition was that it's already fixed in the CVS proper. Steps to reproduce: 1. Download slightly mangled phemlock from http://random-state.net/files/hemlock-bug.tar.gz [ apologies for not providing a smaller case ] 2. Load it using the .asd included in the tarball. 3. kabang! This only happens with the (declare (optimize (debug 3) (safety 3))) in update-window-image in src/winimage.lisp, though. The error and attendant backtrace: debugger invoked on condition of type SB-INT:BUG: failed AVER: "(EQ PHYSENV (LAMBDA-PHYSENV (LAMBDA-VAR-HOME THING)))" This is probably a bug in SBCL itself. (Alternatively, SBCL might have been corrupted by bad user code, e.g. by an undefined Lisp operation like (FMAKUNBOUND 'COMPILE), or by stray pointers from alien code or from unsafe Lisp code; or there might be a bug in the OS or hardware that SBCL is running on.) If it seems to be a bug in SBCL itself, the maintainers would like to know about it. Bug reports are welcome on the SBCL mailing lists, which you can find at <http://sbcl.sourceforge.net/>. restarts (invokable by number or by possibly-abbreviated name): 0: [RETRY ] Retry performing #<ASDF:COMPILE-OP NIL {9512AF1}> on #<ASDF:CL-SOURCE-FILE "winimage" {96E1A99}>. 1: [ACCEPT ] Continue, treating #<ASDF:COMPILE-OP NIL {9512AF1}> on #<ASDF:CL-SOURCE-FILE "winimage" {96E1A99}> as having been successful. 2: [ABORT ] Reduce debugger level (leaving debugger, returning to toplevel). 3: [TOPLEVEL] Restart at toplevel READ/EVAL/PRINT loop. (SB-INT:BUG 2 "~@<failed AVER: ~2I~_~S~:>")[:EXTERNAL] 0] back 0: (SB-INT:BUG 2 "~@<failed AVER: ~2I~_~S~:>")[:EXTERNAL] 1: (SB-IMPL::%FAILED-AVER 1 "(EQ PHYSENV (LAMBDA-PHYSENV (LAMBDA-VAR-HOME THING)))")[:EXTERNAL] 2: (SB-C::FIND-IN-PHYSENV 2 #<SB-C::LAMBDA-VAR :%SOURCE-NAME CHARS {B78A001}> #<SB-C::PHYSENV :LAMBDA #<SB-C::CLAMBDA :%SOURCE-NAME UPDATE-WINDOW-IMAGE :%DEBUG-NAME NIL :TYPE # :WHERE-FROM :DEFINED :VARS # {B71B5A9}> :NLX-INFO (# # #) {9185C01}>)[:EXTERNAL] 3: (SB-C::IR2-CONVERT-REF 2 #<SB-C::REF :LEAF #<SB-C::LAMBDA-VAR :%SOURCE-NAME CHARS {B78A001}> {B904E29}> #<SB-C::IR2-BLOCK :START-VOP #<SB-C::VOP :INFO SB-C:MOVE :ARGS # :RESULTS #> :LAST-VOP #<SB-C::VOP :INFO SB-C:MOVE :ARGS # :RESULTS #>>)[:EXTERNAL] 4: (SB-C::IR2-CONVERT-BLOCK 1 #<SB-C::CBLOCK 285 :START c1 {B8F9031}>)[:EXTERNAL] 5: (SB-C:IR2-CONVERT 1 #<SB-C:COMPONENT :NAME "DEFUN UPDATE-WINDOW-IMAGE" {A4EB3D1}>)[:EXTERNAL] 6: (SB-C::%COMPILE-COMPONENT 1 #<SB-C:COMPONENT :NAME "DEFUN UPDATE-WINDOW-IMAGE" {A4EB3D1}>)[:EXTERNAL] 7: (SB-C::COMPILE-COMPONENT 1 #<SB-C:COMPONENT :NAME "DEFUN UPDATE-WINDOW-IMAGE" {A4EB3D1}>)[:EXTERNAL] 8: (SB-C::COMPILE-TOPLEVEL 2 (#<SB-C::CLAMBDA :%SOURCE-NAME SB-C::.ANONYMOUS. :%DEBUG-NAME "top level form (SB-IMPL::%DEFUN (QUOTE HEMLOCK-INTERNALS::UPDATE-WINDOW-IMAGE) (SB-INT:NAMED-LAMBDA HEMLOCK-INTERNALS::UPDATE-WINDOW-IMAGE # ...) ...)" :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)> :WHERE-FROM :DEFINED :VARS NIL {A450CF1}>) NIL)[:EXTERNAL] 9: (SB-C::CONVERT-AND-MAYBE-COMPILE 2 (SB-IMPL::%DEFUN 'UPDATE-WINDOW-IMAGE (SB-INT:NAMED-LAMBDA UPDATE-WINDOW-IMAGE (WINDOW) (BLOCK UPDATE-WINDOW-IMAGE (LET* # # #))) NIL) ((SB-IMPL::%DEFUN 'UPDATE-WINDOW-IMAGE (SB-INT:NAMED-LAMBDA UPDATE-WINDOW-IMAGE (WINDOW) (BLOCK UPDATE-WINDOW-IMAGE #)) NIL) (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) (SB-C:%COMPILER-DEFUN 'UPDATE-WINDOW-IMAGE 'NIL)) (SB-IMPL::%DEFUN 'UPDATE-WINDOW-IMAGE (SB-INT:NAMED-LAMBDA UPDATE-WINDOW-IMAGE # #) NIL)) SB-C::ORIGINAL-SOURCE-START 0 11))[:EXTERNAL] 10: (SB-C::PROCESS-TOPLEVEL-FORM 3 (SB-IMPL::%DEFUN 'UPDATE-WINDOW-IMAGE (SB-INT:NAMED-LAMBDA UPDATE-WINDOW-IMAGE (WINDOW) (BLOCK UPDATE-WINDOW-IMAGE (LET* # # #))) NIL) ((PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) (SB-C:%COMPILER-DEFUN 'UPDATE-WINDOW-IMAGE 'NIL)) (SB-IMPL::%DEFUN 'UPDATE-WINDOW-IMAGE (SB-INT:NAMED-LAMBDA UPDATE-WINDOW-IMAGE # #) NIL)) SB-C::ORIGINAL-SOURCE-START 0 11) NIL)[:EXTERNAL] 11: (SB-C::PROCESS-TOPLEVEL-PROGN 3 ((EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) (SB-C:%COMPILER-DEFUN 'UPDATE-WINDOW-IMAGE 'NIL)) (SB-IMPL::%DEFUN 'UPDATE-WINDOW-IMAGE (SB-INT:NAMED-LAMBDA UPDATE-WINDOW-IMAGE (WINDOW) (BLOCK UPDATE-WINDOW-IMAGE #)) NIL)) ((PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) (SB-C:%COMPILER-DEFUN 'UPDATE-WINDOW-IMAGE 'NIL)) (SB-IMPL::%DEFUN 'UPDATE-WINDOW-IMAGE (SB-INT:NAMED-LAMBDA UPDATE-WINDOW-IMAGE # #) NIL)) SB-C::ORIGINAL-SOURCE-START 0 11) NIL)[:EXTERNAL] 12: (SB-C::PROCESS-TOPLEVEL-FORM 3 (PROGN (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) (SB-C:%COMPILER-DEFUN 'UPDATE-WINDOW-IMAGE 'NIL)) (SB-IMPL::%DEFUN 'UPDATE-WINDOW-IMAGE (SB-INT:NAMED-LAMBDA UPDATE-WINDOW-IMAGE (WINDOW) (BLOCK UPDATE-WINDOW-IMAGE #)) NIL)) (SB-C::ORIGINAL-SOURCE-START 0 11) NIL)[:EXTERNAL] 13: (SB-C::PROCESS-TOPLEVEL-FORM 3 (DEFUN UPDATE-WINDOW-IMAGE (WINDOW) (LET* ((TRAIL #) (CURRENT #) (DISPLAY-START #) (LINE #) (WIDTH #) CHANGED) (COND (#) (T #)) (LET (#) (MOVE-TO-POSITION # # #)))) (SB-C::ORIGINAL-SOURCE-START 0 11) NIL)[:EXTERNAL] 14: (SB-C::SUB-SUB-COMPILE-FILE 1 #<SB-C::SOURCE-INFO>)[:EXTERNAL] 15: ("#'(LAMBDA NIL (SB!C::CLEAR-STUFF) ...)") 16: (SB-C::%WITH-COMPILATION-UNIT 1 #<FUNCTION "CLOSURE" {930AB25}>)[:EXTERNAL] 17: (SB-C::SUB-COMPILE-FILE 1 #<SB-C::SOURCE-INFO>)[:EXTERNAL] 18: (COMPILE-FILE 3 #P"/home/demoss/src/cvs/hemlock/src/winimage.lisp")[:EXTERNAL] 19: ((ASDF:PERFORM (ASDF:COMPILE-OP ASDF:CL-SOURCE-FILE)) #<unavailable argument> #<unavailable argument> #<ASDF:COMPILE-OP NIL {A4E5DC1}> #<ASDF:CL-SOURCE-FILE "winimage" {96E1A99}>) 20: ("#'(LAMBDA (SB-PCL::.PV-CELL. SB-PCL::.NEXT-METHOD-CALL. SB-PCL::.ARG0. ...) (DECLARE #) ...)" #<unavailable argument> #<unavailable argument> #<ASDF:COMPILE-OP NIL {A4E5DC1}> #<ASDF:CL-SOURCE-FILE "winimage" {96E1A99}>) 21: ("#'(LAMBDA NIL (LOOP ASDF::FOR # ...))") 22: (SB-C::%WITH-COMPILATION-UNIT 1 #<FUNCTION "CLOSURE" {93007CD}>)[:EXTERNAL] 23: ("varargs entry for ASDF:OPERATE" ASDF:LOAD-OP :HEMLOCK) 24: (ASDF::MODULE-PROVIDE-ASDF :HEMLOCK) 25: ("#'(LAMBDA (#:G20) (LET # #))" ASDF::MODULE-PROVIDE-ASDF) 26: (SB-IMPL::%MAP-FOR-EFFECT-ARITY-1 2 #<FUNCTION "CLOSURE" {A4D724D}> (COMMON-LISP-CONTROLLER:CLC-REQUIRE ASDF::MODULE-PROVIDE-ASDF SB-IMPL::MODULE-PROVIDE-CONTRIB))[:EXTERNAL] 27: (SB-KERNEL:%MAP 3 NIL #<FUNCTION "CLOSURE" {A4D724D}> (COMMON-LISP-CONTROLLER:CLC-REQUIRE ASDF::MODULE-PROVIDE-ASDF SB-IMPL::MODULE-PROVIDE-CONTRIB))[:EXTERNAL] 28: ("hairy arg processor for top level local call REQUIRE" :HEMLOCK NIL) 29: (SB-INT:EVAL-IN-LEXENV 2 (REQUIRE :HEMLOCK) #S(SB-KERNEL:LEXENV :FUNS NIL :VARS NIL :BLOCKS NIL :TAGS NIL :TYPE-RESTRICTIONS NIL :WEAKEND-TYPE-RESTRICTIONS NIL :LAMBDA NIL ...))[:EXTERNAL] 30: (SB-EXT:INTERACTIVE-EVAL 1 (REQUIRE :HEMLOCK))[:EXTERNAL] 31: (SB-ACLREPL::REP-ONE) 32: ("varargs entry for SB-ACLREPL::REPL" :BREAK-LEVEL 0 :NOPRINT NIL :INSPECT NIL :CONTINUABLE NIL) 33: (SB-IMPL::TOPLEVEL-REPL 1 NIL)[:EXTERNAL] 34: (SB-IMPL::TOPLEVEL-INIT 0)[:EXTERNAL] 35: ("FLET SB!IMPL::RESTART-LISP") 36: ("foreign function call land") 37: ("foreign function call land") Cheers, -- Nikodemus |
From: Alexey D. <ade...@co...> - 2003-09-17 07:02:54
|
Nikodemus Siivola <tsi...@cc...> writes: > 1. Download slightly mangled phemlock from > > http://random-state.net/files/hemlock-bug.tar.gz > > [ apologies for not providing a smaller case ] > > 2. Load it using the .asd included in the tarball. [...] > The error and attendant backtrace: > > debugger invoked on condition of type SB-INT:BUG: > failed AVER: "(EQ PHYSENV (LAMBDA-PHYSENV (LAMBDA-VAR-HOME THING)))" Well, I didn't try to build it correctly (I don;t have CLX), but the following script (defpackage :hemlock-internals (:use :cl)) (load "/tmp/hemlock-bug/src/line.lisp") (compile-file "/tmp/hemlock-bug/src/winimage.lisp") fails in the way you described under 0.8.1 and 0.8.3.69+, and works under 0.8.3.73. So the bug has probably gone away. -- Regards, Alexey Dejneka "Alas, the spheres of truth are less transparent than those of illusion." -- L.E.J. Brouwer |