(c-lang-defvar c-prefix-spec-kwds-re (c-lang-const c-prefix-spec-kwds-re))
(c-lang-defconst c-specifier-key
- ;; Adorned regexp of the keywords in `c-prefix-spec-kwds' that
- ;; aren't ambiguous with types or type prefixes.
+ ;; Adorned regexp of the keywords in `c-prefix-spec-kwds' that aren't
+ ;; ambiguous with types or type prefixes. These are the keywords (like
+ ;; extern, namespace, but NOT template) that can modify a declaration.
t (c-make-keywords-re t
(set-difference (c-lang-const c-prefix-spec-kwds)
- (c-lang-const c-type-start-kwds)
+ (append (c-lang-const c-type-start-kwds)
+ (c-lang-const c-<>-arglist-kwds))
:test 'string-equal)))
(c-lang-defvar c-specifier-key (c-lang-const c-specifier-key))