Sorry if you get this twice, the first wasn't from my list-subscribed email.
When SLIME starts up, it says:
; SLIME 2004-09-08
I was visiting a lisp (.cl) buffer and looking at this function:
(defun first-function (tokens) (let ((pos (position "[" tokens :test #'string=))) (if (> pos 0) (nth (1- pos) tokens) (error "invalid function call: empty function"))))
I put the Emacs cursor after the last right-paren, issued C-c C-c, and the SLIME debugger popped up; it said (I've expanded the top stack frame):
**********************
invalid number of arguments: 3 [Condition of type SB-INT:SIMPLE-PROGRAM-ERROR]
Restarts: 0: [ABORT] Abort handling SLIME request. 1: [ABORT] Reduce debugger level (leaving debugger, returning to toplevel). 2: [TOPLEVEL] Restart at toplevel READ/EVAL/PRINT loop.
Backtrace: 0: ("XEP for SWANK::COMPILE-STRING-FOR-EMACS" 3 "(defun first-function (tokens) (let ((pos (position "[" tokens :test #'string=))) (if (> pos 0) (nth (1- pos) tokens) (error "invalid function call: empty function")))) " "function-parser.cl" 1266 1)[:EXTERNAL] Locals: SB-DEBUG::ARG-0 = 3 SB-DEBUG::ARG-1 = "(defun first-function (tokens) (let ((pos (position "[" tokens :test #'string=))) (if (> pos 0) (nth (1- pos) tokens) (error "invalid function call: empty function")))) " SB-DEBUG::ARG-2 = "function-parser.cl" SB-DEBUG::ARG-3 = 1266 SB-DEBUG::ARG-4 = 1 [No catch-tags]
***********************
Apparently COMPILE-STRING-FOR-EMACS is being called incorrectly ... but I looked in swank.lisp, swank-backend.lisp, slime.el, and swank-sbcl.lisp, and all calls to COMPILE-STRING-FOR-EMACS has four arguments. So I'm befuddled.
I use SBCL. Am I doing something improperly?
-- Denis Bueno PGP: http://pgp.mit.edu:11371/pks/lookup?search=0xA1B51B4B&op=index My other car is a cdr.
Sorry, should have clarified before.
I'm using CVS SBCL 0.8.14 (I don't know the most minor number), and I'm running SLIME with CVS Carbon Emacs ("GNU Emacs 21.3.50.1 (powerpc-apple-darwin7.3.0) of 2004-04-17 on Taggart.local").
uname -a => Darwin taggart.local 7.5.0 Darwin Kernel Version 7.5.0: Thu Aug 5 19:26:16 PDT 2004; root:xnu/xnu-517.7.21.obj~3/RELEASE_PPC Power Macintosh powerpc
On 10 Sep 2004, at 21.43, Denis Bueno wrote:
Sorry if you get this twice, the first wasn't from my list-subscribed email.
When SLIME starts up, it says:
; SLIME 2004-09-08
I was visiting a lisp (.cl) buffer and looking at this function:
(defun first-function (tokens) (let ((pos (position "[" tokens :test #'string=))) (if (> pos 0) (nth (1- pos) tokens) (error "invalid function call: empty function"))))
I put the Emacs cursor after the last right-paren, issued C-c C-c, and the SLIME debugger popped up; it said (I've expanded the top stack frame):
invalid number of arguments: 3 [Condition of type SB-INT:SIMPLE-PROGRAM-ERROR]
Restarts: 0: [ABORT] Abort handling SLIME request. 1: [ABORT] Reduce debugger level (leaving debugger, returning to toplevel). 2: [TOPLEVEL] Restart at toplevel READ/EVAL/PRINT loop.
Backtrace: 0: ("XEP for SWANK::COMPILE-STRING-FOR-EMACS" 3 "(defun first-function (tokens) (let ((pos (position "[" tokens :test #'string=))) (if (> pos 0) (nth (1- pos) tokens) (error "invalid function call: empty function")))) " "function-parser.cl" 1266 1)[:EXTERNAL] Locals: SB-DEBUG::ARG-0 = 3 SB-DEBUG::ARG-1 = "(defun first-function (tokens) (let ((pos (position "[" tokens :test #'string=))) (if (> pos 0) (nth (1- pos) tokens) (error "invalid function call: empty function")))) " SB-DEBUG::ARG-2 = "function-parser.cl" SB-DEBUG::ARG-3 = 1266 SB-DEBUG::ARG-4 = 1 [No catch-tags]
Apparently COMPILE-STRING-FOR-EMACS is being called incorrectly ... but I looked in swank.lisp, swank-backend.lisp, slime.el, and swank-sbcl.lisp, and all calls to COMPILE-STRING-FOR-EMACS has four arguments. So I'm befuddled.
I use SBCL. Am I doing something improperly?
-- Denis Bueno PGP: http://pgp.mit.edu:11371/pks/lookup?search=0xA1B51B4B&op=index My other car is a cdr.
slime-devel site list slime-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/slime-devel
-- Denis Bueno PGP: http://pgp.mit.edu:11371/pks/lookup?search=0xA1B51B4B&op=index "Bigot: One who is obstinately and zealously attached to an opinion that you do not entertain." - Ambrose Bierce, The Devil's Dictionary
I put the Emacs cursor after the last right-paren, issued C-c C-c, and the SLIME debugger popped up; it said (I've expanded the top stack frame):
I experienced the same with the slime-1.0 tarball. But for AllegroCL. It says it got 4 args, expecting 3. (Cannot post the backtrace, since I installed it on a different machine.)
It has probably something to do with the attempt to eliminate the redefinition warnings when C-c C-c'ing. Maybe an incomplete commit? (Sorry, I haven't checked the latest Slime from CVS, since my current Slime works quite well and I currently don't have the time to work on it.)
ts
Denis Bueno dbueno@cc.gatech.edu writes:
Apparently COMPILE-STRING-FOR-EMACS is being called incorrectly ... but I looked in swank.lisp, swank-backend.lisp, slime.el, and swank-sbcl.lisp, and all calls to COMPILE-STRING-FOR-EMACS has four arguments. So I'm befuddled.
I can't reproduce your problem. It looks like your version of slime.el is older than the version of swank.lisp. Perhaps you have multiple versions in Emacs' load path?
Helmut.