[slime-devel] Slime and :sb-futex on recent CVS SBCLs

Andreas Fuchs asf at boinkor.net
Mon Apr 18 22:33:57 UTC 2005


Hi,

current SLIME CVS's swank-sbcl.lisp, function
preferred-communication-style contains an assumption that is no longer
true about recent SBCLs. Since 0.8.21, usefully threaded SBCL builds
don't include :sb-futex in their feature list any more. Still, Swank
checks for the presence of :sb-futex on the *features* list before
adding the :spawn communication-style.

I'm not entirely sure which of SBCL or SLIME needs to be fixed. Either
SBCL should start including :sb-futex on its *feature* list again (or
some other feature saying that threads are non-broken on this lisp
build), or SLIME should stop checking for :sb-futex (which will break
on SBCLs older than 0.8.21).

Here's the (proof of concept) patch to make slime choose the right
communication-style for 0.8.21 or later (but not earlier. I know no
practical way to find out if we're running in SBCL version >=X):

--- swank-sbcl.lisp     9 Apr 2005 07:07:00 -0000       1.129
+++ swank-sbcl.lisp     18 Apr 2005 22:27:45 -0000
@@ -42,8 +42,7 @@
 ;;; TCP Server
 
 (defimplementation preferred-communication-style ()
-  (if (and (sb-int:featurep :sb-thread)
-           (sb-int:featurep :sb-futex))
+  (if (and (sb-int:featurep :sb-thread))
       :spawn
       :fd-handler))

Cheers,
-- 
Andreas Fuchs, <asf at boinkor.net>, asf at jabber.at, antifuchs




More information about the slime-devel mailing list