diff --git a/ansi-tests/concatenate.lsp b/ansi-tests/concatenate.lsp
index fd40f3a0c679f52231ac3b783a05659d6741bbb9..2f0284b03e186abe3df8e60f3c9b766d640db83d 100644
--- a/ansi-tests/concatenate.lsp
+++ b/ansi-tests/concatenate.lsp
@@ -185,10 +185,12 @@
   nil)
 
 (deftest concatenate.31
+  :notes (:nil-vectors-are-strings)
   (concatenate 'string "abc" (make-array '(0) :element-type nil) "def")
   "abcdef")
 
 (deftest concatenate.32
+  :notes (:nil-vectors-are-strings)
   (concatenate '(array nil (*)))
   "")
 
diff --git a/ansi-tests/copy-seq.lsp b/ansi-tests/copy-seq.lsp
index 4cba413d250bff7807cceb10ffb61c9e612d7af5..888945453209e4288aee02ebe5249e5afe1dee53 100644
--- a/ansi-tests/copy-seq.lsp
+++ b/ansi-tests/copy-seq.lsp
@@ -155,6 +155,7 @@
   t)
 
 (deftest copy-seq.19
+  :notes (:nil-vectors-are-strings)
   (copy-seq (make-array '(0) :element-type nil))
   "")
 
diff --git a/ansi-tests/equal.lsp b/ansi-tests/equal.lsp
index e2ab6d789285df376c8f57be6ed7a61a5725609e..1e0e7595ab968c94bcbe89273a417bea9ed6fecc 100644
--- a/ansi-tests/equal.lsp
+++ b/ansi-tests/equal.lsp
@@ -62,12 +62,14 @@
   nil)
 
 (deftest equal.13
+  :notes (:nil-vectors-are-strings)
   (let ((x (make-array '(0) :element-type nil))
 	(y (make-array '(0) :element-type nil)))
     (equalt x y))
   t)
 
 (deftest equal.14
+  :notes (:nil-vectors-are-strings)
   (and
    (equalt (make-array '(0) :element-type nil) "")
    (equalt "" (make-array '(0) :element-type nil)))
diff --git a/ansi-tests/equalp.lsp b/ansi-tests/equalp.lsp
index 81468ca2a42e6bcc7e1457447ef41261d07f8674..9fce34fbcfeb95bca9b2d0af4c4a236f78d13374 100644
--- a/ansi-tests/equalp.lsp
+++ b/ansi-tests/equalp.lsp
@@ -28,10 +28,12 @@
   nil)
 
 (deftest equalp.5
+  :notes (:allow-nil-arrays)
   (equalpt (make-array '(0) :element-type nil) #())
   t)
 
 (deftest equalp.6
+  :notes (:allow-nil-arrays)
   (equalpt (make-array '(0) :element-type nil) "")
   t)
 
diff --git a/ansi-tests/gclload1.lsp b/ansi-tests/gclload1.lsp
index 69c2cd65fe1f78c52a8acaf7ba1246701e58d8b3..5dd955a3699807d6b88117aa98a126e59ad4bcb5 100644
--- a/ansi-tests/gclload1.lsp
+++ b/ansi-tests/gclload1.lsp
@@ -14,3 +14,5 @@
 ;;; (load "ansi-aux.o")
 
 (load "cl-symbol-names.lsp")
+(load "notes.lsp")
+
diff --git a/ansi-tests/make-string.lsp b/ansi-tests/make-string.lsp
index e049444ce592d29c9a5ce3615828d1088851accf..f76436f7f81612eaee47245747bcc80e1a2d7e53 100644
--- a/ansi-tests/make-string.lsp
+++ b/ansi-tests/make-string.lsp
@@ -77,6 +77,7 @@
   t)
 
 (deftest make-string.10
+  :notes (:nil-vectors-are-strings)
   (let ((s (make-string 0 :element-type nil)))
     (values
      (notnot (stringp s))
diff --git a/ansi-tests/make-symbol.lsp b/ansi-tests/make-symbol.lsp
index 522e198f42f022aa7761c91524bc5348a6f2e384..dd6a645746ecfc23fe69b588f1b0662ced92e0e8 100644
--- a/ansi-tests/make-symbol.lsp
+++ b/ansi-tests/make-symbol.lsp
@@ -47,6 +47,7 @@
   "")
 
 (deftest make-symbol.11
+  :notes (:nil-vectors-are-strings)
   (symbol-name (make-symbol (make-array '(0) :element-type nil)))
   "")
 
diff --git a/ansi-tests/notes.lsp b/ansi-tests/notes.lsp
index 376c6a6a56fa60af9a8d7c412d525b4cc7fbad3b..f366343af5648356f76c1624d7dbd52c9fcf148e 100644
--- a/ansi-tests/notes.lsp
+++ b/ansi-tests/notes.lsp
@@ -8,5 +8,10 @@
 (defnote :allow-nil-arrays
   "Allow specialized arrays of type (array nil).")
 
-(defnote :allow-nonzero-nil-arrays
-  "Allow specialized arrays of type (array nil <dims>) of nonzero size.")
+(defnote :allow-nonzero-nil-vectors
+  "Allow specialized vectors of type (vector nil) of nonzero size.")
+
+(defnote :nil-vectors-are-strings
+  "Assume that (VECTOR NIL) objects are strings.")
+
+
diff --git a/ansi-tests/nstring-capitalize.lsp b/ansi-tests/nstring-capitalize.lsp
index 98a454bba212066d263c28b2e3cd7e8ad06f16f4..5a11f73f776e8305cebc2374aa7a65f8f58e7546 100644
--- a/ansi-tests/nstring-capitalize.lsp
+++ b/ansi-tests/nstring-capitalize.lsp
@@ -65,6 +65,7 @@
   "")
 
 (deftest nstring-capitalize.12
+  :notes (:nil-vectors-are-strings)
   (nstring-capitalize (make-array '(0) :element-type nil))
   "")
 
diff --git a/ansi-tests/nstring-downcase.lsp b/ansi-tests/nstring-downcase.lsp
index e3b7ef27afc89dc128fbc9428c4b410e9f760cfa..1f20be256889647791e61e023a4864cdba9e89d1 100644
--- a/ansi-tests/nstring-downcase.lsp
+++ b/ansi-tests/nstring-downcase.lsp
@@ -68,6 +68,7 @@
    ("abcde" "abcdE")))
 
 (deftest nstring-downcase.11
+  :notes (:nil-vectors-are-strings)
   (nstring-downcase (make-array '(0) :element-type nil))
   "")
 
diff --git a/ansi-tests/nstring-upcase.lsp b/ansi-tests/nstring-upcase.lsp
index e9c80f488bfa7eed277c9135ce0db123ac37aca3..2f2d9cfa6a653ca738948fd5f6f89c4e05b2f4b8 100644
--- a/ansi-tests/nstring-upcase.lsp
+++ b/ansi-tests/nstring-upcase.lsp
@@ -67,6 +67,7 @@
    ("abcde" "abcdE")))
 
 (deftest nstring-upcase.11
+  :notes (:nil-vectors-are-strings)
   (nstring-upcase (make-array '(0) :element-type nil))
   "")
 
diff --git a/ansi-tests/packages-04.lsp b/ansi-tests/packages-04.lsp
index 826c4714b4831592d6decfc053551a23e7a755cd..5f5e6b520f50a598151d1eb3a3744a1ebd0f0daa 100644
--- a/ansi-tests/packages-04.lsp
+++ b/ansi-tests/packages-04.lsp
@@ -49,6 +49,7 @@
   t)
 
 (deftest intern.3
+  :notes (:nil-vectors-are-strings)
   (let ((cl-user-package (find-package "CL-USER")))
     (eqt (intern "" cl-user-package)
 	 (intern (make-array 0 :element-type nil) cl-user-package)))
diff --git a/ansi-tests/rt.lsp b/ansi-tests/rt.lsp
index ed1256d3b99607ccb172774024a4074ae239ecaa..6f69eb1ea0065cda89efccfc903e9225321275cf 100644
--- a/ansi-tests/rt.lsp
+++ b/ansi-tests/rt.lsp
@@ -357,7 +357,7 @@
      (let ((note (make-note :name ',name
 			    :contents ',contents
 			    :disabled ',disabled)))
-       (setf (gethash *notes* (note-name note)) note)
+       (setf (gethash (note-name note) *notes*) note)
        note)))
 
 (defun disable-note (n)
diff --git a/ansi-tests/string-capitalize.lsp b/ansi-tests/string-capitalize.lsp
index 6c8509e59bf0708a08ce960955539e40ce1cea8e..0b799d58d93c338f3062039754fe86f371be5450 100644
--- a/ansi-tests/string-capitalize.lsp
+++ b/ansi-tests/string-capitalize.lsp
@@ -85,6 +85,7 @@
   "ABCDEF")
 
 (deftest string-capitalize.11
+  :notes (:nil-vectors-are-strings)
   (string-capitalize (make-array '(0) :element-type nil))
   "")
 
diff --git a/ansi-tests/string-comparisons.lsp b/ansi-tests/string-comparisons.lsp
index 66c5e901ae51c72d5e48321ef3a8115bee78d2de..e7df8f1f65e245ec90718bcd4c124370febb6f98 100644
--- a/ansi-tests/string-comparisons.lsp
+++ b/ansi-tests/string-comparisons.lsp
@@ -506,6 +506,7 @@
 ;;; Tests on nil arrays
 
 (deftest string=.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (notnot (string= s1 s1))
@@ -518,6 +519,7 @@
   t t t t t nil nil)
 
 (deftest string/=.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (string/= s1 s1)
@@ -530,6 +532,7 @@
    nil nil nil nil nil 0 0)
 
 (deftest string<.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (string< s1 s1)
@@ -542,6 +545,7 @@
   nil nil nil nil nil 0 nil)
 
 (deftest string<=.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (string<= s1 s1)
@@ -554,6 +558,7 @@
   0 0 0 0 0 0 nil)
 
 (deftest string>.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (string> s1 s1)
@@ -566,6 +571,7 @@
   nil nil nil nil nil nil 0)
 
 (deftest string>=.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (string>= s1 s1)
@@ -578,6 +584,7 @@
   0 0 0 0 0 nil 0)
 
 (deftest string-equal.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (notnot (string-equal s1 s1))
@@ -590,6 +597,7 @@
   t t t t t nil nil)
 
 (deftest string-not-equal.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (string-not-equal s1 s1)
@@ -602,6 +610,7 @@
    nil nil nil nil nil 0 0)
 
 (deftest string-lessp.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (string-lessp s1 s1)
@@ -614,6 +623,7 @@
   nil nil nil nil nil 0 nil)
 
 (deftest string-not-greaterp.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (string-not-greaterp s1 s1)
@@ -626,6 +636,7 @@
   0 0 0 0 0 0 nil)
 
 (deftest string-greaterp.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (string-greaterp s1 s1)
@@ -638,6 +649,7 @@
   nil nil nil nil nil nil 0)
 
 (deftest string-not-lessp.nil-array.1
+  :notes (:nil-vectors-are-strings)
   (let ((s1 (make-array '(0) :element-type nil)))
     (values
      (string-not-lessp s1 s1)
@@ -648,15 +660,3 @@
      (string-not-lessp s1 "a")
      (string-not-lessp "a" s1)))
   0 0 0 0 0 nil 0)
-
-
-
-
-
-
-
-
-  
-
-
-
diff --git a/ansi-tests/string-downcase.lsp b/ansi-tests/string-downcase.lsp
index 7377c71306b4a3389d137417f4c2e56ce241e5f2..9b3eb410f2f3d569a2bb601ce5c62f8660ded03b 100644
--- a/ansi-tests/string-downcase.lsp
+++ b/ansi-tests/string-downcase.lsp
@@ -81,10 +81,10 @@
   "ABCDE")
 
 (deftest string-downcase.11
+  :notes (:nil-vectors-are-strings)
   (string-downcase (make-array '(0) :element-type nil))
   "")
 
-
 (deftest string-downcase.order.1
   (let ((i 0) a b c (s (copy-seq "ABCDEF")))
     (values
diff --git a/ansi-tests/string-left-trim.lsp b/ansi-tests/string-left-trim.lsp
index 19fb44e9b7263164be135fcd0a9bffeab9e0fb88..491228dceb1f2bb8cf0b378061db4f64e5358a20 100644
--- a/ansi-tests/string-left-trim.lsp
+++ b/ansi-tests/string-left-trim.lsp
@@ -142,10 +142,12 @@
   "")
 
 (deftest string-left-trim.20
+  :notes (:nil-vectors-are-strings)
   (string-left-trim "abcd" (make-array '(0) :element-type nil))
   "")
 
 (deftest string-left-trim.21
+  :notes (:nil-vectors-are-strings)
   (string-left-trim (make-array '(0) :element-type nil) "abcd")
   "abcd")
 
diff --git a/ansi-tests/string-right-trim.lsp b/ansi-tests/string-right-trim.lsp
index 33b562d17128007d5ba24c1c696b5a9694e26035..59af7b1bcfaa0070d13589f5abf2532e6483f821 100644
--- a/ansi-tests/string-right-trim.lsp
+++ b/ansi-tests/string-right-trim.lsp
@@ -142,10 +142,12 @@
   "")
 
 (deftest string-right-trim.20
+  :notes (:nil-vectors-are-strings)
   (string-right-trim "abcd" (make-array '(0) :element-type nil))
   "")
 
 (deftest string-right-trim.21
+  :notes (:nil-vectors-are-strings)
   (string-right-trim (make-array '(0) :element-type nil) "abcd")
   "abcd")
 
diff --git a/ansi-tests/string-trim.lsp b/ansi-tests/string-trim.lsp
index ec432f51e925ac80e4400d100b927fa0482e10f7..281d6981d194625377fc9e5e57fadfeb7d8054af 100644
--- a/ansi-tests/string-trim.lsp
+++ b/ansi-tests/string-trim.lsp
@@ -142,10 +142,12 @@
   "")
 
 (deftest string-trim.20
+  :notes (:nil-vectors-are-strings)
   (string-trim "abcd" (make-array '(0) :element-type nil))
   "")
 
 (deftest string-trim.21
+  :notes (:nil-vectors-are-strings)
   (string-trim (make-array '(0) :element-type nil) "abcd")
   "abcd")
 
diff --git a/ansi-tests/string-upcase.lsp b/ansi-tests/string-upcase.lsp
index 8777beee34d30f90aec7236c1a835ed318b2001f..e2d9781be3efb5507443e30541f9decff698b77e 100644
--- a/ansi-tests/string-upcase.lsp
+++ b/ansi-tests/string-upcase.lsp
@@ -81,6 +81,7 @@
   "abcde")
 
 (deftest string-upcase.11
+  :notes (:nil-vectors-are-strings)
   (string-upcase (make-array '(0) :element-type nil))
   "")