emacs/etc
Alan Mackenzie 9dcf599893 Amend parse-partial-sexp correctly to handle two character comment delimiters
Do this by adding a new field to the parser state: the syntax of the last
character scanned, should that be the first char of a (potential) two char
construct, nil otherwise.
This should make the parser state complete.
Also document element 9 of the parser state.  Also refactor the code a bit.

* src/syntax.c (struct lisp_parse_state): Add a new field.
(SYNTAX_FLAGS_COMSTARTEND_FIRST): New function.
(internalize_parse_state): New function, extracted from scan_sexps_forward.
(back_comment): Call internalize_parse_state.
(forw_comment): Return the syntax of the last character scanned to the caller
when that character might be the first of a two character construct.
(Fforward_comment, scan_lists): New dummy variables, passed to forw_comment.
(scan_sexps_forward): Remove a redundant state parameter.  Access all `state'
information via the address parameter `state'.  Remove the code which converts
from external to internal form of `state'.  Access buffer contents only from
`from' onwards.  Reformulate code at the top of the main loop correctly to
recognize comment openers when starting in the middle of one.  Call
forw_comment with extra argument (for return of syntax value of possible first
char of a two char construct).
(Fparse_partial_sexp): Document elements 9, 10 of the parser state in the
doc string.  Clarify the doc string in general.  Call
internalize_parse_state.  Take account of the new elements when consing up the
output parser state.

* doc/lispref/syntax.texi: (Parser State): Document element 9 and the new
element 10.  Minor wording corrections (remove reference to "trivial
cases").
(Low Level Parsing): Minor corrections.

* etc/NEWS: Note new element 10, and documentation of element 9 of parser
state.
2016-03-20 13:19:48 +00:00
..
charsets
e
forms
gnus
images
nxml
org
refcards
schema
srecode
themes
tutorials
AUTHORS
CALC-NEWS
CENSORSHIP
ChangeLog.1
compilation.txt
COPYING
DEBUG
DEVEL.HUMOR
DISTRIB
edt-user.el
emacs-buffer.gdb
emacs.appdata.xml
emacs.desktop
emacs.icon
enriched.txt
ERC-NEWS
ETAGS.EBNF
ETAGS.README
FTP
future-bug
GNU
GNUS-NEWS
gnus-tut.txt
grep.txt
HELLO
HISTORY
JOKES
LINUX-GNU
MACHINES
MH-E-NEWS
MORE.STUFF
NEWS
NEWS.1-17
NEWS.18
NEWS.19
NEWS.20
NEWS.21
NEWS.22
NEWS.23
NEWS.24
NEXTSTEP
NXML-NEWS
ORDERS
ORG-NEWS
package-keyring.gpg
PROBLEMS
ps-prin0.ps
ps-prin1.ps
publicsuffix.txt
README
rgb.txt
ses-example.ses
spook.lines
TERMS
THE-GNU-PROJECT
TODO
WHY-FREE
yow.lines

This directory contains the architecture-independent files used by or
with Emacs.  This includes some text files of documentation for GNU
Emacs or of interest to Emacs users, and the file of dumped docstrings
for Emacs functions and variables.

COPYRIGHT AND LICENSE INFORMATION FOR IMAGE FILES

File: emacs.icon
  Author: Sun Microsystems, Inc
  Copyright (C) 1999, 2001-2016 Free Software Foundation, Inc.
  License: GNU General Public License version 3 or later (see COPYING)