Subject: bug#36650: 27.0.50; CC Mode: Support C++ attributes

From: Óscar Fuentes <[email-masked]>
Date: Sun, 14 Jul 2019 16:49:01 +0200

CC Mode does not recognize C++ attributes. Just as an example, the
presence of an attribute causes wrong indentation on this example:

struct C {
  C([[maybe_unused]] int x, int y)
  : a(y)
  {}
  int a;
};

The line that begins with the colon should get another indentation
level.

Attributes are described here:

https://en.cppreference.com/w/cpp/language/attributes

In general, considering them part of the following token for indentation
purposes and fontifying with some existing or new face should be enough.

In GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit)
 of 2019-06-29 built on sky
Repository revision: 0b2841f9fb0ffd8514b0fb99c5673adad6b07abb
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12004000
System Description: Debian GNU/Linux 10 (buster)