Subject: parse-partial-sexp doesn't output the full state needed for its continuance.

From: Alan Mackenzie <[email-masked]>
Date: Tue, 15 Mar 2016 09:13:55 +0000

Hello, Emacs.

When parse-partial-sexp finishes a parse, it fails to record whether or
not its end point is just after the first character of a two character
comment starter or ender.  When the resulting state is used as an
argument to resume the parse, p-p-s will be unaware that the comment has
started or ended and produce false results.

Proposed solution: Add an extra element to the parser state, recording the
syntax of the last character passed over before the end of the parse.
This would be used by parse-partial-sexp to initialise its parse.

Also: the existing element 9 (the list of currently open parens) and the
new element should be explicitly documented in the Elisp manual, together
with a statement that there may be further elements in the parse state
used internally by parse-partial-sexp (for future expansion).

-- 
Alan Mackenzie (Nuremberg, Germany).