When you define a class with a macro between the ``class'' specifier and

the name of the class you will observe that the access labels ``public:''

and ``private:'' are interpreted as a labels by the autoformatter

and an incorrect space is added to its tabbing. Attempts to correct this

with ``C - c C - o'' failed.


Here is an example:


\\\


class TEST_MACRO Test_class

{

public:

Test_class();

virtual ~Test_class();

void method1();

int member1();

};


\\\


Thanks,

Dylan


Emacs : GNU Emacs 26.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.5)

of 2019-04-13

Package: CC Mode 5.33.2 (C++//l)

Buffer Style: gnu

c-emacs-features: (pps-extended-state col-0-paren posix-char-classes gen-string-delim gen-comment-delim syntax-properties 1-bit)


current state:

==============

(setq

c-basic-offset 2

c-comment-only-line-offset '(0 . 0)

c-indent-comment-alist '((anchored-comment column . 0) (end-block space . 1)

(cpp-end-block space . 2))

c-indent-comments-syntactically-p nil

c-block-comment-prefix ""

c-comment-prefix-regexp '((pike-mode . "//+!?\\|\\**") (awk-mode . "