c-forward-<>-arglist no longer directly applies face properties in Java Mode.
This allows the calling of c-restore-<>-properties from c-common-init without the test suite giving spurious errors. * lisp/progmodes/cc-engine.el (c-forward-<>-arglist): Remove the form that sets face properties. (c-forward-<>-arglist-recur): Reformulate the bit that handles types inside template brackets using c-inside-<>-type-key. Don't bind c-record-type-identifiers or c-record-found-types around the recursive call, allowing positions of found types to flow back to the caller. * lisp/progmodes/cc-langs.el (c-inside-<>-type-kwds, c-inside-<>-type-key): new lang consts/var. * lisp/progmodes/cc-mode.el (c-common-init): Don't remove c-restore-<>-properties from the list of functions called at mode initialization.
This commit is contained in:
parent
ff9de7b38a
commit
db2ee1cd63
3 changed files with 33 additions and 25 deletions
|
@ -2310,6 +2310,15 @@ assumed to be set if this isn't nil."
|
|||
t (c-make-keywords-re t (c-lang-const c-<>-sexp-kwds)))
|
||||
(c-lang-defvar c-opt-<>-sexp-key (c-lang-const c-opt-<>-sexp-key))
|
||||
|
||||
(c-lang-defconst c-inside-<>-type-kwds
|
||||
"Keywords which, used inside a C++ style template arglist, introduce a type."
|
||||
t nil
|
||||
java '("extends" "super"))
|
||||
|
||||
(c-lang-defconst c-inside-<>-type-key
|
||||
t (c-make-keywords-re t (c-lang-const c-inside-<>-type-kwds)))
|
||||
(c-lang-defvar c-inside-<>-type-key (c-lang-const c-inside-<>-type-key))
|
||||
|
||||
(c-lang-defconst c-brace-id-list-kwds
|
||||
"Keywords that may be followed by a brace block containing a comma
|
||||
separated list of identifier definitions, i.e. like the list of
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue