anchor.diff:    ;; HASH-TABLE behavior before we fall through to the generic STRUCTURE-OBJECT
     ;; comparison behavior.
     (typecase key
  -    (simple-string (sxhash key))
  -    (array (array-swxhash key depthoid))
  +    (cons (list-swxhash key depthoid))
  +    (array (typecase key
  +             (simple-string (sxhash key))
  +             (t (array-swxhash key depthoid))))
       (hash-table (hash-table-swxhash key))
       (structure-object (structure-object-swxhash key depthoid))
  -    (cons (list-swxhash key depthoid))
       (number (number-swxhash key))
       (character (char-code key))
       (t (sxhash key))))
  
positive.code:   #+sbcl(declare (optimize speed))
    (declare (type structure-object key))
    (declare (type (integer 0 #.+max-hash-depthoid+) depthoid))
    #-sbcl (the fixnum 481929)
    #+sbcl
    (let* ((layout (%instance-layout key)) ; i.e. slot #0
           (length (layout-length layout))
  
negative.code:   #+sbcl(declare (optimize speed))
    (or (eq t1 t2)
        (typecase t1
          (array (typecase t1
                   (string    (string= t1 t2))
                   (vector    (cond ((and   
                             ;; (quotient? t1) 
                             ;; (quotient? t2)
                             (eq (svref t1 0) quotient-tag)
  