0.8.0.78.vector-nil-string.1:
[sbcl.git] / src / code / primordial-extensions.lisp
index 9edc6d9..a68c54a 100644 (file)
@@ -57,7 +57,7 @@
 \f
 ;;;; DO-related stuff which needs to be visible on the cross-compilation host
 
-(eval-when (:compile-toplevel :load-toplevel :execute)
+(eval-when (#-sb-xc :compile-toplevel :load-toplevel :execute)
   (defun frob-do-body (varlist endlist decls-and-code bind step name block)
     (let* ((r-inits nil) ; accumulator for reversed list
           (r-steps nil) ; accumulator for reversed list
 
 ;;; Concatenate together the names of some strings and symbols,
 ;;; producing a symbol in the current package.
-(eval-when (:compile-toplevel :load-toplevel :execute)
+(eval-when (#-sb-xc :compile-toplevel :load-toplevel :execute)
   (defun symbolicate (&rest things)
     (let ((name (case (length things)
                  ;; why isn't this just the value in the T branch?
                  ;; check for bad lengths, the type system is needed
                  ;; for calls to CONCATENATE. So we need to make sure
                  ;; that the calls are transformed away:
-                 (1 (concatenate 'string (the simple-string (string (car things)))))
+                 (1 (concatenate 'string
+                                 (the simple-base-string (string (car things)))))
                  (2 (concatenate 'string 
-                                 (the simple-string (string (car things)))
-                                 (the simple-string (string (cadr things)))))
+                                 (the simple-base-string (string (car things)))
+                                 (the simple-base-string (string (cadr things)))))
                  (3 (concatenate 'string
-                                 (the simple-string (string (car things)))
-                                 (the simple-string (string (cadr things)))
-                                 (the simple-string (string (caddr things)))))
+                                 (the simple-base-string (string (car things)))
+                                 (the simple-base-string (string (cadr things)))
+                                 (the simple-base-string (string (caddr things)))))
                  (t (apply #'concatenate 'string (mapcar #'string things))))))
     (values (intern name)))))