== Why is this an issue? The output of an ``++as++`` cast will be null if the input to the cast cannot safely be cast to the desired type. So it makes sense that after such a cast you would null-check the output. But it doesn't make sense to check the input. === Noncompliant code example [source,csharp] ---- void DoTheThing(Toy toy) { Ball ball = toy as Ball; if (toy != null) // Noncompliant { //... } } ---- === Compliant solution [source,csharp] ---- void DoTheThing(Toy toy) { Ball ball = toy as Ball; if (ball != null) { //... } } ---- ifdef::env-github,rspecator-view[] ''' == Comments And Links (visible only on this page) === on 18 Jan 2016, 11:33:22 Ann Campbell wrote: http://www.viva64.com/en/b/0363/#ID0EVHBI === on 8 Feb 2016, 13:40:13 Ann Campbell wrote: subsumed by RSPEC-2583 endif::env-github,rspecator-view[]