(c-backward-syntactic-ws))
(c-back-over-list-of-member-inits)
(and (eq (char-before) ?:)
+ (save-excursion
+ (c-backward-token-2)
+ (not (looking-at c-:$-multichar-token-regexp)))
(c-just-after-func-arglist-p))))
(while (and (not (and level-plausible
(c-backward-syntactic-ws)
(c-back-over-list-of-member-inits)
(and (eq (char-before) ?:)
+ (save-excursion
+ (c-backward-token-2)
+ (not (looking-at c-:$-multichar-token-regexp)))
(c-just-after-func-arglist-p)))))
(and at-top-level level-plausible)))
(c-lang-defvar c-assignment-op-regexp
(c-lang-const c-assignment-op-regexp))
+(c-lang-defconst c-:$-multichar-token-regexp
+ ;; Regexp matching all tokens ending in ":" which are longer than one char.
+ ;; Currently (2016-01-07) only used in C++ Mode.
+ t (c-make-keywords-re nil
+ (c-filter-ops (c-lang-const c-operators) t ".+:$")))
+(c-lang-defvar c-:$-multichar-token-regexp
+ (c-lang-const c-:$-multichar-token-regexp))
+
(c-lang-defconst c-<>-multichar-token-regexp
;; Regexp matching all tokens containing "<" or ">" which are longer
;; than one char.