I played with this error a bit more, because it is becoming an issue as it affects all compilation errors. I reverted step-wise to my old setup. Going back to sbcl.1.0.14, I would still get the slime error. Reverting slime to an early august version cleared it.
Also, the sbcl error is not sbcl's but mine. I had used the :dont-close keyword, and then tried to open the server at the same port.
Mirko
---------- Forwarded message ---------- From: Mirko Vukovic mirko.vukovic@gmail.com Date: Fri, Oct 3, 2008 at 10:55 AM Subject: (swank:create-server) leads to sbcl & slime error To: slime-devel@common-lisp.net
This is a follow-up on my previous message: I have moved from sbcl-1.0.14 to 1.0.21 and also updated slime. Again, this is mostly an FYI (swank error, slime error), since I am not *that* desperate yet.
I am following the instructions in the manual for connection to a remote lisp. When I execute (swank:create-server) in an sbcl session that was opened in a terminal, I get the following error message:
* (swank:create-server)
debugger invoked on a SB-BSD-SOCKETS:ADDRESS-IN-USE-ERROR: Socket error in "bind": EADDRINUSE (Address already in use)
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-BSD-SOCKETS:SOCKET-ERROR "bind") 0]
I tried to do the same from slime to get the debugger trace (that is one of the pursposes, right :-) and got an emacs error. Here is the debug output of that one:
Debugger entered--Lisp error: (wrong-number-of-arguments nil 3) signal(wrong-number-of-arguments (nil 3)) (if (= (length --cl-rest--) 2) (pop --cl-rest--) (signal (quote wrong-number-of-arguments) (list nil ...))) (let* ((--cl-rest-- frame) (number ...) (string ...)) (let (...) (slime-propertize-region props ... ...))) (progn (let* (... ... ...) (let ... ...))) (destructuring-bind (number string) frame (let (...) (slime-propertize-region props ... ...))) sldb-insert-frame((0 "(SB-BSD-SOCKETS:SOCKET-ERROR "bind")" (:restartable nil))) mapc(sldb-insert-frame ((0 "(SB-BSD-SOCKETS:SOCKET-ERROR "bind")" (:restartable nil)) (1 "(SB-BSD-SOCKETS:SOCKET-ERROR "bind")[:EXTERNAL]" (:restartable nil)) (2 "((SB-PCL::FAST-METHOD SB-BSD-SOCKETS:SOCKET-BIND (SB-BSD-SOCKETS:SOCKET)) #<unavailable argument> #<.." (:restartable nil)))) sldb-insert-frames(((0 "(SB-BSD-SOCKETS:SOCKET-ERROR "bind")" (:restartable nil)) (1 "(SB-BSD-SOCKETS:SOCKET-ERROR "bind")[:EXTERNAL]" (:restartable nil)) (2 "((SB-PCL::FAST-METHOD SB-BSD-SOCKETS:SOCKET-BIND (SB-BSD-SOCKETS:SOCKET)) #<unavailable argument> #<.." (:restartable nil))) t) (save-excursion (sldb-insert-frames (sldb-prune-initial-frames frames) t)) (if (equal sldb-level level) nil (setq buffer-read-only nil) (sldb-mode) (unless sldb-saved-window-configuration (setq sldb-saved-window-configuration ...)) (setq slime-current-thread thread) (setq sldb-level level) (setq mode-name (format "sldb[%d]" sldb-level)) (setq sldb-condition condition) (setq sldb-restarts restarts) (setq sldb-continuations conts) (sldb-insert-condition condition) (insert "\n\n" (in-sldb-face section #("Restarts:" 0 9 ...)) "\n") (sldb-insert-restarts restarts) (insert "\n" (in-sldb-face section #("Backtrace:" 0 10 ...)) "\n") (setq sldb-backtrace-start-marker (point-marker)) (save-excursion (sldb-insert-frames ... t)) (run-hooks (quote sldb-hook))) (unless (equal sldb-level level) (setq buffer-read-only nil) (sldb-mode) (unless sldb-saved-window-configuration (setq sldb-saved-window-configuration ...)) (setq slime-current-thread thread) (setq sldb-level level) (setq mode-name (format "sldb[%d]" sldb-level)) (setq sldb-condition condition) (setq sldb-restarts restarts) (setq sldb-continuations conts) (sldb-insert-condition condition) (insert "\n\n" (in-sldb-face section #("Restarts:" 0 9 ...)) "\n") (sldb-insert-restarts restarts) (insert "\n" (in-sldb-face section #("Backtrace:" 0 10 ...)) "\n") (setq sldb-backtrace-start-marker (point-marker)) (save-excursion (sldb-insert-frames ... t)) (run-hooks (quote sldb-hook))) (save-current-buffer (set-buffer (sldb-get-buffer thread)) (unless (equal sldb-level level) (setq buffer-read-only nil) (sldb-mode) (unless sldb-saved-window-configuration ...) (setq slime-current-thread thread) (setq sldb-level level) (setq mode-name ...) (setq sldb-condition condition) (setq sldb-restarts restarts) (setq sldb-continuations conts) (sldb-insert-condition condition) (insert "\n\n" ... "\n") (sldb-insert-restarts restarts) (insert "\n" ... "\n") (setq sldb-backtrace-start-marker ...) (save-excursion ...) (run-hooks ...)) (pop-to-buffer (current-buffer)) (sldb-recenter-region (point-min) (point)) (setq buffer-read-only t) (when (and slime-stack-eval-tags) (message "Entering recursive edit..") (recursive-edit))) (with-current-buffer (sldb-get-buffer thread) (unless (equal sldb-level level) (setq buffer-read-only nil) (sldb-mode) (unless sldb-saved-window-configuration ...) (setq slime-current-thread thread) (setq sldb-level level) (setq mode-name ...) (setq sldb-condition condition) (setq sldb-restarts restarts) (setq sldb-continuations conts) (sldb-insert-condition condition) (insert "\n\n" ... "\n") (sldb-insert-restarts restarts) (insert "\n" ... "\n") (setq sldb-backtrace-start-marker ...) (save-excursion ...) (run-hooks ...)) (pop-to-buffer (current-buffer)) (sldb-recenter-region (point-min) (point)) (setq buffer-read-only t) (when (and slime-stack-eval-tags) (message "Entering recursive edit..") (recursive-edit))) sldb-setup(0 2 (#("Socket error in "bind": EADDRINUSE (Address already in use)" 0 59 (face sldb-topline-face)) #(" [Condition of type SB-BSD-SOCKETS:ADDRESS-IN-USE-ERROR]" 0 58 (face sldb-condition-face)) nil) ((#("RETRY" 0 5 ...) #("Retry SLIME REPL evaluation request." 0 36 ...)) (#("ABORT" 0 5 ...) #("Return to sldb level 1." 0 23 ...)) (#("RETRY" 0 5 ...) #("Retry SLIME REPL evaluation request." 0 36 ...)) (#("ABORT" 0 5 ...) #("Return to SLIME's top level." 0 28 ...)) (#("ABORT" 0 5 ...) #("Exit debugger, returning to top level." 0 38 ...))) ((0 "(SB-BSD-SOCKETS:SOCKET-ERROR "bind")" (:restartable nil)) (1 "(SB-BSD-SOCKETS:SOCKET-ERROR "bind")[:EXTERNAL]" (:restartable nil)) (2 "((SB-PCL::FAST-METHOD SB-BSD-SOCKETS:SOCKET-BIND (SB-BSD-SOCKETS:SOCKET)) #<unavailable argument> #<.." (:restartable nil)) (3 "((LAMBDA (SWANK-BACKEND::HOST SWANK-BACKEND::PORT)) "127.0.0.1" 4005)" (:restartable nil)) (4 "(SWANK::SETUP-SERVER 4005 #<FUNCTION SWANK::SIMPLE-ANNOUNCE-FUNCTION> :FD-HANDLER NIL :ISO-8859-1)" (:restartable nil)) (5 "(SB-INT:SIMPLE-EVAL-IN-LEXENV (SWANK:CREATE-SERVER) #<NULL-LEXENV>)" (:restartable nil)) (6 "(SWANK::EVAL-REGION "(swank:create-server) \n")" (:restartable nil)) (7 "((LAMBDA ()))" (:restartable nil)) (8 "(SWANK::TRACK-PACKAGE #<CLOSURE (LAMBDA #) {1003A8DBE9}>)" (:restartable nil)) (9 "(SWANK::CALL-WITH-RETRY-RESTART "Retry SLIME REPL evaluation request." #<CLOSURE (LAMBDA #) {1003A8D.." (:restartable nil)) (10 "(SWANK::CALL-WITH-BUFFER-SYNTAX NIL #<CLOSURE (LAMBDA #) {1003A8D9E9}>)" (:restartable nil)) (11 "(SWANK::REPL-EVAL "(swank:create-server) \n")" (:restartable nil)) (12 "(SB-INT:SIMPLE-EVAL-IN-LEXENV (SWANK:LISTENER-EVAL "(swank:create-server) \n") #<NULL-LEXENV>)" (:restartable nil)) (13 "(SWANK::EVAL-FOR-EMACS (SWANK:LISTENER-EVAL "(swank:create-server) \n") "COMMON-LISP-USER" 11)" (:restartable nil)) (14 "(SWANK::PROCESS-REQUESTS T)" (:restartable nil)) (15 "(SB-IMPL::SUB-SUB-SERVE-EVENT 0 200000)" (:restartable nil)) (16 "(SB-IMPL::SUB-SERVE-EVENT 0 200000 NIL)" (:restartable nil)) (17 "((LAMBDA (SWANK-BACKEND::STREAMS &OPTIONAL SWANK-BACKEND::TIMEOUT)) (#<SB-SYS:FD-STREAM for "a socke.." (:restartable nil)) (18 "(SWANK::WAIT-FOR-EVENT/EVENT-LOOP (OR (:EMACS-REX . SWANK::_) (:SLDB-RETURN 2)) NIL)" (:restartable nil)) (19 "(SWANK::WAIT-FOR-EVENT (OR (:EMACS-REX . SWANK::_) (:SLDB-RETURN 2)) NIL)" (:restartable nil))) (11 5)) slime-dispatch-event((:debug 0 2 (#("Socket error in "bind": EADDRINUSE (Address already in use)" 0 59 ...) #(" [Condition of type SB-BSD-SOCKETS:ADDRESS-IN-USE-ERROR]" 0 58 ...) nil) ((#("RETRY" 0 5 ...) #("Retry SLIME REPL evaluation request." 0 36 ...)) (#("ABORT" 0 5 ...) #("Return to sldb level 1." 0 23 ...)) (#("RETRY" 0 5 ...) #("Retry SLIME REPL evaluation request." 0 36 ...)) (#("ABORT" 0 5 ...) #("Return to SLIME's top level." 0 28 ...)) (#("ABORT" 0 5 ...) #("Exit debugger, returning to top level." 0 38 ...))) ((0 "(SB-BSD-SOCKETS:SOCKET-ERROR "bind")" ...) (1 "(SB-BSD-SOCKETS:SOCKET-ERROR "bind")[:EXTERNAL]" ...) (2 "((SB-PCL::FAST-METHOD SB-BSD-SOCKETS:SOCKET-BIND (SB-BSD-SOCKETS:SOCKET)) #<unavailable argument> #<.." ...) (3 "((LAMBDA (SWANK-BACKEND::HOST SWANK-BACKEND::PORT)) "127.0.0.1" 4005)" ...) (4 "(SWANK::SETUP-SERVER 4005 #<FUNCTION SWANK::SIMPLE-ANNOUNCE-FUNCTION> :FD-HANDLER NIL :ISO-8859-1)" ...) (5 "(SB-INT:SIMPLE-EVAL-IN-LEXENV (SWANK:CREATE-SERVER) #<NULL-LEXENV>)" ...) (6 "(SWANK::EVAL-REGION "(swank:create-server) \n")" ...) (7 "((LAMBDA ()))" ...) (8 "(SWANK::TRACK-PACKAGE #<CLOSURE (LAMBDA #) {1003A8DBE9}>)" ...) (9 "(SWANK::CALL-WITH-RETRY-RESTART "Retry SLIME REPL evaluation request." #<CLOSURE (LAMBDA #) {1003A8D.." ...) (10 "(SWANK::CALL-WITH-BUFFER-SYNTAX NIL #<CLOSURE (LAMBDA #) {1003A8D9E9}>)" ...) (11 "(SWANK::REPL-EVAL "(swank:create-server) \n")" ...) (12 "(SB-INT:SIMPLE-EVAL-IN-LEXENV (SWANK:LISTENER-EVAL "(swank:create-server) \n") #<NULL-LEXENV>)" ...) (13 "(SWANK::EVAL-FOR-EMACS (SWANK:LISTENER-EVAL "(swank:create-server) \n") "COMMON-LISP-USER" 11)" ...) (14 "(SWANK::PROCESS-REQUESTS T)" ...) (15 "(SB-IMPL::SUB-SUB-SERVE-EVENT 0 200000)" ...) (16 "(SB-IMPL::SUB-SERVE-EVENT 0 200000 NIL)" ...) (17 "((LAMBDA (SWANK-BACKEND::STREAMS &OPTIONAL SWANK-BACKEND::TIMEOUT)) (#<SB-SYS:FD-STREAM for "a socke.." ...) (18 "(SWANK::WAIT-FOR-EVENT/EVENT-LOOP (OR (:EMACS-REX . SWANK::_) (:SLDB-RETURN 2)) NIL)" ...) (19 "(SWANK::WAIT-FOR-EVENT (OR (:EMACS-REX . SWANK::_) (:SLDB-RETURN 2)) NIL)" ...)) (11 5)) #<process SLIME Lisp>) slime-process-available-input(#<process SLIME Lisp>) slime-net-filter(#<process SLIME Lisp> "0008BF(:debug 0 2 ("Socket error in \"bind\": EADDRINUSE (Address already in use)" " [Condition of type SB-BSD-SOCKETS:ADDRESS-IN-USE-ERROR]" nil) (("RETRY" "Retry SLIME REPL evaluation request.") ("ABORT" "Return to sldb level 1.") ("RETRY" "Retry SLIME REPL evaluation request.") ("ABORT" "Return to SLIME's top level.") ("ABORT" "Exit debugger, returning to top level.")) ((0 "(SB-BSD-SOCKETS:SOCKET-ERROR \"bind\")" (:restartable nil)) (1 "(SB-BSD-SOCKETS:SOCKET-ERROR \"bind\")[:EXTERNAL]" (:restartable nil)) (2 "((SB-PCL::FAST-METHOD SB-BSD-SOCKETS:SOCKET-BIND (SB-BSD-SOCKETS:SOCKET)) #<unavailable argument> #<.." (:restartable nil)) (3 "((LAMBDA (SWANK-BACKEND::HOST SWANK-BACKEND::PORT)) \"127.0.0.1\" 4005)" (:restartable nil)) (4 "(SWANK::SETUP-SERVER 4005 #<FUNCTION SWANK::SIMPLE-ANNOUNCE-FUNCTION> :FD-HANDLER NIL :ISO-8859-1)" (:restartable nil)) (5 "(SB-INT:SIMPLE-EVAL-IN-LEXENV (SWANK:CREATE-SERVER) #<NULL-LEXENV>)" (:restartable nil)) (6 "(SWANK::EVAL-REGION \"(swank:create-server) \\n\")" (:restartable nil)) (7 "((LAMBDA ()))" (:restartable nil)) (8 "(SWANK::TRACK-PACKAGE #<CLOSURE (LAMBDA #) {1003A8DBE9}>)" (:restartable nil)) (9 "(SWANK::CALL-WITH-RETRY-RESTART \"Retry SLIME REPL evaluation request.\" #<CLOSURE (LAMBDA #) {1003A8D.." (:restartable nil)) (10 "(SWANK::CALL-WITH-BUFFER-SYNTAX NIL #<CLOSURE (LAMBDA #) {1003A8D9E9}>)" (:restartable nil)) (11 "(SWANK::REPL-EVAL \"(swank:create-server) \\n\")" (:restartable nil)) (12 "(SB-INT:SIMPLE-EVAL-IN-LEXENV (SWANK:LISTENER-EVAL \"(swank:create-server) \\n\") #<NULL-LEXENV>)" (:restartable nil)) (13 "(SWANK::EVAL-FOR-EMACS (SWANK:LISTENER-EVAL \"(swank:create-server) \\n\") \"COMMON-LISP-USER\" 11)" (:restartable nil)) (14 "(SWANK::PROCESS-REQUESTS T)" (:restartable nil)) (15 "(SB-IMPL::SUB-SUB-SERVE-EVENT 0 200000)" (:restartable nil)) (16 "(SB-IMPL::SUB-SERVE-EVENT 0 200000 NIL)" (:restartable nil)) (17 "((LAMBDA (SWANK-BACKEND::STREAMS &OPTIONAL SWANK-BACKEND::TIMEOUT)) (#<SB-SYS:FD-STREAM for \"a socke.." (:restartable nil)) (18 "(SWANK::WAIT-FOR-EVENT/EVENT-LOOP (OR (:EMACS-REX . SWANK::_) (:SLDB-RETURN 2)) NIL)" (:restartable nil)) (19 "(SWANK::WAIT-FOR-EVENT (OR (:EMACS-REX . SWANK::_) (:SLDB-RETURN 2)) NIL)" (:restartable nil))) (11 5))")
Thanks,
Mirko