X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fsparc%2Fvm.lisp;h=a315d905b0792c0c4c1a3bb62e20de6dfcf3d4bf;hb=cb296ae5a022a5b0f1fd573584301b0d2a9493f9;hp=53f89cf6d3ee4c15e7d0821c510295d1a230e706;hpb=208e7b3072e383a2b2555ee259c9691e45cac3d6;p=sbcl.git diff --git a/src/compiler/sparc/vm.lisp b/src/compiler/sparc/vm.lisp index 53f89cf..a315d90 100644 --- a/src/compiler/sparc/vm.lisp +++ b/src/compiler/sparc/vm.lisp @@ -372,5 +372,10 @@ ;;; occure in the symbol table (for example, prepending an ;;; underscore). On the SPARC, we don't prepend an underscore. (defun extern-alien-name (name) - (declare (type simple-base-string name)) - (concatenate 'string #+nil "_" name)) + (declare (type string name)) + ;; ELF ports currently don't need any prefix + (typecase name + (simple-base-string name) + (base-string (coerce name 'simple-base-string)) + (t (handler-case (coerce name 'simple-base-string) + (type-error () (error "invalid external alien name: ~S" name))))))