1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-02 18:21:19 -08:00
emacs/lisp/progmodes
Alan Mackenzie de3336051e Fix low-level handling of (big) C macros.
In particular, ensure that a comment detected by its syntax is not a CPP
construct marked with generic comment delimiter syntax-table text
properties.

* lisp/progmodes/cc-engine.el (c-beginning-of-macro, c-end-of-macro): Set
c-macro-cache-syntactic to nil when the cached macro changes.
(c-syntactic-end-of-macro, c-no-comment-end-of-macro)
(c-state-semi-pp-to-literal, c-state-full-pp-to-literal)
(c-state-pp-to-literal, c-parse-ps-state-to-cache)
(c-state-cache-non-literal-place, c-literal-limits, c-literal-start)
(c-determine-limit): When checking a parse syntax for a comment, check that
we're not in a CPP construct marked by syntax-table generic comment delimiter
text property.
(c-state-pp-to-literal): Change from a defsubst to a defun.

* lisp/progmodes/cc-mode.el (c-neutralize-syntax-in-and-mark-CPP): Check a
parse syntax as described above under cc-engine.el.
2017-01-21 15:16:49 +00:00
..
ada-mode.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ada-prj.el Avoid add-to-list on local variables 2017-01-04 00:40:45 -05:00
ada-stmt.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ada-xref.el Avoid add-to-list on local variables 2017-01-04 00:40:45 -05:00
antlr-mode.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
asm-mode.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
autoconf.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
bat-mode.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
bug-reference.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
cc-align.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
cc-awk.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
cc-bytecomp.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
cc-cmds.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
cc-defs.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
cc-engine.el Fix low-level handling of (big) C macros. 2017-01-21 15:16:49 +00:00
cc-fonts.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
cc-guess.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
cc-langs.el Handle syntactic WS cache properties more accurately at buffer changes. 2017-01-11 18:25:39 +00:00
cc-menus.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
cc-mode.el Fix low-level handling of (big) C macros. 2017-01-21 15:16:49 +00:00
cc-styles.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
cc-vars.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
cfengine.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
cmacexp.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
compile.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
cperl-mode.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
cpp.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
cwarn.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
dcl-mode.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ebnf-abn.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ebnf-bnf.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ebnf-dtd.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ebnf-ebx.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ebnf-iso.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ebnf-otz.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ebnf-yac.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
ebnf2ps.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
ebrowse.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
elisp-mode.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
etags.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
executable.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
f90.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
flymake.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
fortran.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
gdb-mi.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
glasses.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
grep.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
gud.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
hideif.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
hideshow.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
icon.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
idlw-complete-structtag.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
idlw-help.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
idlw-shell.el Avoid add-to-list on local variables 2017-01-04 00:40:45 -05:00
idlw-toolbar.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
idlwave.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
inf-lisp.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
js.el Fix JS regexp literal syntax propertization in expressions 2017-01-17 15:33:20 -07:00
ld-script.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
m4-mode.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
make-mode.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
mantemp.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
meta-mode.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
mixal-mode.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
modula2.el
octave.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
opascal.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
pascal.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
perl-mode.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
prog-mode.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
project.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
prolog.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
ps-mode.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
python.el Fix extracting async def type and name in python mode imenu 2017-01-12 20:40:19 -05:00
ruby-mode.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
scheme.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
sh-script.el Remove sh-mode's skeleton-end-hook 2017-01-01 16:36:22 -05:00
simula.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
sql.el Fix selecting SQLite database files with sql-mode (Bug#23566) 2017-01-07 11:20:17 -05:00
subword.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
tcl.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
vera-mode.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
verilog-mode.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
vhdl-mode.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
which-func.el Merge from origin/emacs-25 2017-01-01 01:10:47 -08:00
xref.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00
xscheme.el Update copyright year to 2017 2016-12-31 19:42:26 -08:00