The ``++deprecated++`` attribute can be applied with or without explanations, but marking something ``++deprecated++`` without including advice as to why it's deprecated or on what to use instead will lead maintainers to waste time trying to figure those things out - every single time the warning is encountered.

== Noncompliant Code Example

----
[[deprecated]] // Noncompliant
void foo1();

__attribute__((deprecated)) // Noncompliant
void foo2();

__declspec(deprecated) // Noncompliant
void foo3();
----

== Compliant Solution

----
[[deprecated("use 'bar' instead")]]
void foo1();

__attribute__((deprecated("use 'bar' instead")))
void foo2();

__declspec(deprecated("use 'bar' instead"))
void foo3();
----

ifdef::env-github,rspecator-view[]
'''
== Comments And Links
(visible only on this page)

include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]
