diff --git a/tests.lisp b/tests.lisp
index babe0f4814ec18be84089aad032f1fcce40c7eab..bd2725ffac0b8528efc13e28db5ed23a42be184c 100644
--- a/tests.lisp
+++ b/tests.lisp
@@ -1584,18 +1584,18 @@
   :inherited)
 
 (deftest format-symbol.1
-    (let ((s (format-symbol nil "X-~D" 13)))
+    (let ((s (format-symbol nil '#:x-~d 13)))
       (list (symbol-package s)
-            (symbol-name s)))
-  (nil "X-13"))
+            (string= (string '#:x-13) (symbol-name s))))
+  (nil t))
 
 (deftest format-symbol.2
-    (format-symbol :keyword "SYM-~A" :bolic)
+    (format-symbol :keyword '#:sym-~a (string :bolic))
   :sym-bolic)
 
 (deftest format-symbol.3
     (let ((*package* (find-package :cl)))
-      (format-symbol t "FIND-~A" 'package))
+      (format-symbol t '#:find-~a (string 'package)))
   find-package)
 
 (deftest make-keyword.1
@@ -1657,12 +1657,12 @@
 
 (macrolet
     ((test (type numbers)
-       `(deftest ,(format-symbol t "CDR5.~A" type)
+       `(deftest ,(format-symbol t '#:cdr5.~a (string type))
 	    (let ((numbers ,numbers))
-	      (values (mapcar (of-type ',(format-symbol t "NEGATIVE-~A" type)) numbers)
-		      (mapcar (of-type ',(format-symbol t "NON-POSITIVE-~A" type)) numbers)
-		      (mapcar (of-type ',(format-symbol t "NON-NEGATIVE-~A" type)) numbers)
-		      (mapcar (of-type ',(format-symbol t "POSITIVE-~A" type)) numbers)))
+	      (values (mapcar (of-type ',(format-symbol t '#:negative-~a (string type))) numbers)
+		      (mapcar (of-type ',(format-symbol t '#:non-positive-~a (string type))) numbers)
+		      (mapcar (of-type ',(format-symbol t '#:non-negative-~a (string type))) numbers)
+		      (mapcar (of-type ',(format-symbol t '#:positive-~a (string type))) numbers)))
 	  (t t t nil nil nil nil)
 	  (t t t t nil nil nil)
 	  (nil nil nil t t t t)
diff --git a/types.lisp b/types.lisp
index b806c0d6599a3a481ed1f7194071a789bf29a142..6aa722f379f1b97c9ebce8147e29f62687b3d0d4 100644
--- a/types.lisp
+++ b/types.lisp
@@ -34,10 +34,10 @@ ARRAY-DIMENSION-LIMIT."
 			    type
 			    (if (equal range-beg ''*) inf (ensure-car range-beg))
 			    (if (equal range-end ''*) inf (ensure-car range-end))))))
-           (let* ((negative-name     (make-subtype-name '#:negative-~A))
-                  (non-positive-name (make-subtype-name '#:non-positive-~A))
-                  (non-negative-name (make-subtype-name '#:non-negative-~A))
-                  (positive-name     (make-subtype-name '#:positive-~A))
+           (let* ((negative-name     (make-subtype-name '#:negative-~a))
+                  (non-positive-name (make-subtype-name '#:non-positive-~a))
+                  (non-negative-name (make-subtype-name '#:non-negative-~a))
+                  (positive-name     (make-subtype-name '#:positive-~a))
                   (negative-p-name     (make-predicate-name negative-name))
                   (non-positive-p-name (make-predicate-name non-positive-name))
                   (non-negative-p-name (make-predicate-name non-negative-name))