Subject: The read function does not support a lambda argument

From: Kaushal Modi <[email-masked]>
Date: Wed, 9 Mar 2016 15:31:07 -0500

I just re-built using this commit (
http://git.savannah.gnu.org/cgit/emacs.git/commit/?h=emacs-25&id=711ca362e7f8ca7c4f664dc2fe60bc5fa4e4f4fe
).

Now the earlier error went away, but I get

  Symbol’s value as variable is void: prev

I guess the read call should be inside the let:

(let ((str "TEST")
      (pos 0)
      (prev nil))
  (read (lambda (&optional ch)
          (cond
           (ch (push ch prev))
           (prev (pop prev))
           ((< pos (length str))
            (prog1 (aref str pos)
              (setq pos (1+ pos))))))))

Above returns "TEST".