== Why is this an issue?

Redundant declaration specifiers should be removed or corrected. Typically, they represent bugs. A specifier modifies the type or pointer to its left. Only when it is at the far left does it apply to the right.


=== Noncompliant code example

[source,cpp]
----
const int const * v1a; // Noncompliant; both const specifiers apply to int
const int const * v1b; // Noncompliant
static static int v2;  // Noncompliant
----


=== Compliant solution

[source,cpp]
----
const int *       v1a;  // pointer to a const int. same meaning as before but less confusing
int const * const v1b;  // const pointer to a const int
static int         v2;
----


ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

=== Message

Remove this redundant specifier.


=== Highlighting

the second redundant specifier


endif::env-github,rspecator-view[]
