== Why is this an issue?

Because messages sent to ``++nil++`` (or a pointer with a ``++nil++`` value) will return zero, it is often not necessary to explicitly ``++nil++``-check a pointer, and doing so  simply adds unnecessary code.


=== Noncompliant code example

[source,cpp]
----
if (foo != nil) { // Noncomliant; explicit nil check
  [foo aMethod];
}

if (foo) {  // Noncompliant; implicit nil check
  [foo aMethod];
}
----


=== Compliant solution

[source,cpp]
----
[foo aMethod];
----

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

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

=== Message

Remove this redundant "nil" check on XXX


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