anchor.diff:                           (search-backward-endp-function limit-point))
           (if reg-starts
               (apply #'values
  -                   t
  +                   point
                      (map 'list (lambda (reg-start reg-end)
                                   (when reg-start
                                     (subseq string reg-start reg-end)))
  
positive.code:                          (search-forward-endp-function limit-point))
          (if reg-starts
              (apply #'values
                     t
                     (map 'list (lambda (reg-start reg-end)
                                  (when reg-start
                                    (subseq string reg-start reg-end)))
  
negative.code:                                   (funcall move-matched point res)
                                    (return t)))))))))
        (if (and result (not (funcall endp point)))
            (when result point)
            (progn
              (move-point point start-point)
              nil)))))
  