0.9.15.22: check for error, do not aver, do not collect $200
[sbcl.git] / contrib / sb-posix / macros.lisp
index 2399c98..02855f8 100644 (file)
@@ -1,4 +1,4 @@
-(in-package :sb-posix-internal)
+(in-package :sb-posix)
 
 (define-designator filename c-string
   (pathname
@@ -18,7 +18,8 @@
   ((alien (* t)) alien-pointer-to-anything-or-nil))
 
 (defun lisp-for-c-symbol (s)
-  (intern (substitute #\- #\_ (string-upcase s)) :sb-posix))
+  (let ((root (if (eql #\_ (char s 0)) (subseq s 1) s)))
+    (intern (substitute #\- #\_ (string-upcase root)) :sb-posix)))
 
 (defmacro define-call-internally (lisp-name c-name return-type error-predicate
                                   &rest arguments)