diff -r 92a4592886a1 cc-engine.el --- a/cc-engine.el Sun Apr 25 17:26:38 2021 +0000 +++ b/cc-engine.el Sat Aug 21 17:38:30 2021 +0000 @@ -11882,12 +11882,15 @@ pos2 in-paren parens-before-brace paren-state paren-pos) - (setq res (c-backward-token-2 1 t lim)) + (setq res + (or (progn (c-backward-syntactic-ws) + (c-back-over-compound-identifier)) + (c-backward-token-2 1 t lim))) ;; Checks to do only on the first sexp before the brace. ;; Have we a C++ initialization, without an "="? (if (and (c-major-mode-is 'c++-mode) (cond - ((and (or (not (eq res 0)) + ((and (or (not (memq res '(t 0))) (eq (char-after) ?,)) (setq paren-state (c-parse-state)) (setq paren-pos (c-pull-open-brace paren-state)) @@ -11911,7 +11914,7 @@ (t nil)) (save-excursion (cond - ((or (not (eq res 0)) + ((or (not (memq res '(t 0))) (eq (char-after) ?,)) (and (setq paren-state (c-parse-state)) (setq paren-pos (c-pull-open-brace paren-state))