Correctly analyze C++ list initialization in member init areas.
commita9118afcd7d601190c5474820b58289b5ab5cd7e
authorAlan Mackenzie <acm@muc.de>
Tue, 30 Aug 2016 15:36:15 +0000 (30 15:36 +0000)
committerAlan Mackenzie <acm@muc.de>
Tue, 30 Aug 2016 15:36:15 +0000 (30 15:36 +0000)
tree7252c0845b7a318e471242d302892fec68422ae1
parent62b6c5d2805a07515cbc4368a32376e4d82cf2c3
Correctly analyze C++ list initialization in member init areas.

* lisp/progmodes/cc-engine.el (c-back-over-list-of-member-inits): Remove a
superfluous call to c-backward-syntactic-ws.
(c-looking-at-or-maybe-in-bracelist): Change calling convention, so that it
reports encountering the Java "new" keyword.  Add, as an alternative, a check
that we can move back over member initializations, and handle this as finding
a brace block.
(c-looking-at-special-brace-list, c-guess-continued-construct): Adapt to the
new calling convention of c-looking-at-or-maybe-in-bracelist.
(c-guess-basic-syntax, CASE 5A.3): Replace lots of inline ad-hoc code with
calls to c-backward-over-enum-header and c-looking-at-or-maybe-in-bracelist,
using the extra info from the value of that function to generate a
topmost-into-cont element where needed (in Java).

* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Adapt to the new
calling convention of c-looking-at-or-maybe-in-bracelist.

* lisp/progmodes/cc-mode.el (c-fl-decl-start): Adapt to the new calling
convention of c-looking-at-or-maybe-in-bracelist.
lisp/progmodes/cc-engine.el
lisp/progmodes/cc-fonts.el
lisp/progmodes/cc-mode.el