If I save an image containg latest SWANK and try to start SLIME with it,
I get an error. OTOH, if I start SLIME with an image that doesn't
contain SWANK(loading it on the spot), all works well.
I've traced back the origin of this problem to the commit of Sun Aug 3
18:23:10 entitled "Add some flow-control."
with CLISP:
[1]> ;; Loading
file /usr/share/emacs/site-lisp/slime/swank-loader.lisp ...
0 errors, 0 warnings
;; Loaded file /usr/share/emacs/site-lisp/slime/swank-loader.lisp
*** - WRITE-CHAR on #<CLOSED IO TERMINAL-STREAM> is illegal
The following restarts are available:
ABORT :R1 Abort main loop
Break 1 [2]> :bt
<1/181> #<SYSTEM-FUNCTION SHOW-STACK> 3
<2/174> #<COMPILED-FUNCTION SYSTEM::PRINT-BACKTRACE>
<3/168> #<COMPILED-FUNCTION SYSTEM::DEBUG-BACKTRACE>
<4/160> #<SYSTEM-FUNCTION SYSTEM::READ-EVAL-PRINT> 2
<5/157> #<COMPILED-FUNCTION SYSTEM::BREAK-LOOP-2-3>
<6/153> #<SYSTEM-FUNCTION SYSTEM::SAME-ENV-AS> 2
<7/139> #<COMPILED-FUNCTION SYSTEM::BREAK-LOOP-2>
<8/137> #<SYSTEM-FUNCTION SYSTEM::DRIVER>
<9/97> #<COMPILED-FUNCTION SYSTEM::BREAK-LOOP>
<10/94> #<SYSTEM-FUNCTION INVOKE-DEBUGGER> 1
<11/84> #<SYSTEM-FUNCTION WRITE-STRING>
<12/79> #<COMPILED-FUNCTION SWANK::SIMPLE-ANNOUNCE-FUNCTION-1>
<13/71> #<COMPILED-FUNCTION SYSTEM::FORMAT-APPLY>
<14/66> #<COMPILED-FUNCTION FORMAT>
<15/62> #<COMPILED-FUNCTION SWANK::SIMPLE-ANNOUNCE-FUNCTION>
<16/60> #<COMPILED-FUNCTION SWANK::ANNOUNCE-SERVER-PORT>
<17/57> #<COMPILED-FUNCTION SWANK::START-SERVER-1>
<18/51> #<COMPILED-FUNCTION SWANK::SETUP-SERVER>
<19/44> #<COMPILED-FUNCTION SWANK:START-SERVER>
<20/43> #<SYSTEM-FUNCTION FUNCALL> 4
[39] EVAL frame for form (FUNCALL (READ-FROM-STRING
"swank:start-server")
"/tmp/.private/hechee/slime.3239193" :CODING-SYSTEM "utf-8-unix")
and with SBCL:
S/HU[1]>
; loading #P"/usr/share/emacs/site-lisp/slime/swank-loader.lisp"
debugger invoked on a SB-SYS:MEMORY-FAULT-ERROR in thread #<THREAD
"initial thread" RUNNING {B6209F9}>: Unhandled memory fault at
#x-58A13000.
Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [ABORT] Exit debugger, returning to top level.
(SB-SYS:MEMORY-FAULT-ERROR)
0] backtrace
0: (SB-SYS:MEMORY-FAULT-ERROR)
1: (SB-SYS:MEMORY-FAULT-ERROR)[:EXTERNAL]
2: ("foreign function: #x8063A1C")
3: ("foreign function: #x8063C70")
4: (SB-IMPL::OUTPUT-BYTES/UTF-8 #<SB-SYS:FD-STREAM for "standard
error" {9143371}> ";; Swank started at port: " NIL 0 26)
5: (SB-IMPL::FD-SOUT #<SB-SYS:FD-STREAM for "standard error" {9143371}>
";; Swank started at port: " 0 26)
6: (SB-IMPL::%WRITE-STRING ";; Swank started at port: "
#<SB-SYS:FD-STREAM for "standard error" {9143371}> 0 26)
7: (WRITE-STRING ";; Swank started at port: " #<SB-SYS:FD-STREAM for
"standard error" {9143371}> :START 0 :END NIL)
8: (SB-FORMAT::INTERPRET-DIRECTIVE-LIST #<SB-SYS:FD-STREAM for "standard
error" {9143371}> (";; Swank started at port: " #<~D> "." #<~%>) (39770)
(39770))
9: (SB-FORMAT::%FORMAT #<SB-SYS:FD-STREAM for "standard
error" {9143371}> "~&;; Swank started at port: ~D.~%" (39770) (39770))
10: (FORMAT #<SB-SYS:FD-STREAM for "standard error" {9143371}> "~&;;
Swank started at port: ~D.~%")[:EXTERNAL]
11: (SWANK::SIMPLE-ANNOUNCE-FUNCTION 39770)
12: (SWANK::ANNOUNCE-SERVER-PORT "/tmp/.private/hechee/slime.3239193"
39770)
13: ((LAMBDA (SWANK::PORT)) 39770)
14: (SWANK::SETUP-SERVER 0 #<CLOSURE (LAMBDA (SWANK::PORT))
{B6F6B75}> :SPAWN NIL :UTF-8)
15: (SWANK:START-SERVER "/tmp/.private/hechee/slime.3239193")[:EXTERNAL]
16: (SB-INT:SIMPLE-EVAL-IN-LEXENV (FUNCALL (READ-FROM-STRING
"swank:start-server")
"/tmp/.private/hechee/slime.3239193" :CODING-SYSTEM "utf-8-unix")
#<NULL-LEXENV>)
--
Stelian Ionescu a.k.a. fe[nl]ix
Quidquid latine dictum sit, altum videtur.