anchor.diff:                   (when (and start1
                               (= start start1)
                               (syntax-matched-word line syntax start end1))
  -                   (return-from syntax-scan-word-test (1- end1)))))))
  +                   (return-from syntax-scan-token-test (values line (1- end1))))))))
          ((stringp (syntax-match-test syntax))
           (let ((end (+ start (length (syntax-match-test syntax)))))
             (when (syntax-match-word-p syntax)
  
positive.code:                        :start start)
        (length str)))
  
  (defgeneric syntax-scan-word-test (syntax line start))
  
  (defmethod syntax-scan-word-test ((syntax syntax-region) line start)
    )
  
  (defmethod syntax-scan-word-test ((syntax syntax-match) line start)
    (when (or (not (syntax-match-test-symbol syntax))
              (find (syntax-match-test-symbol syntax)
                    *syntax-symbol-tov-list*
  
negative.code:                                    (min (+ i 2) (line-length line))
                                     (%syntax-prev-attr line i))
                 (incf i))
                ((multiple-value-bind (line2 pos)
                     (syntax-scan-token line i)
                   (when (and line2 pos)
                     (setq i pos))))
                (t
                 (let ((end (syntax-position-word-end (line-str line) i)))
  