The ``++Obsolete++`` attribute can be applied with or without arguments, but marking something ``++Obsolete++`` without including advice as to why it's obsolete 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 ---- public class Car { [Obsolete] // Noncompliant public void CrankEngine(int turnsOfCrank) { ... } } ---- == Compliant Solution ---- public class Car { [Obsolete("Replaced by the automatic starter")] public void CrankEngine(int turnsOfCrank) { ... } } ---- ifdef::env-github,rspecator-view[] ''' == Comments And Links (visible only on this page) include::comments-and-links.adoc[] endif::env-github,rspecator-view[]