Hi,

It looks like in slime-buffer-package is not being set after connection and (swank:create-repl nil) is called / returned. This causes things that call (slime-current-package), like slime-c-p-c, to be a little sad when the REPL's default package isn't "COMMON-LISP-USER".

From what I can tell, a good place to apply it is at the end of the slime-repl-connected-hook-function:

diff a/contrib/slime-repl.el b/contrib/slime-repl.el
--- a/contrib/slime-repl.el
+++ b/contrib/slime-repl.el
@@ -1519,9 +1519,11 @@ expansion will be added to the REPL's history.)"
       (let ((slime-current-thread t))
     (slime-eval '(swank:create-repl nil)))
     (setf (slime-lisp-package) package)
-    (setf (slime-lisp-package-prompt-string) prompt))
-  (slime-hide-inferior-lisp-buffer)
-  (slime-init-output-buffer (slime-connection)))
+    (setf (slime-lisp-package-prompt-string) prompt)
+    (slime-hide-inferior-lisp-buffer)
+    (slime-init-output-buffer (slime-connection))
+    (with-current-buffer (slime-output-buffer)
+      (setf slime-buffer-package package))))


Please let me know if you need any additional information,

- Jeff