== Why is this an issue? Because force casting (``++as!++``) does not perform any type safety validations, it is capable of performing dangerous conversions between unrelated types. When the types are truly unrelated, the cast will cause a system crash. === Noncompliant code example [source,swift] ---- foo as! MyClass // Noncompliant ---- === Compliant solution [source,swift] ---- foo as? MyClass ---- include::../see.adoc[] ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) === Message Replace this force cast with a safer cast. === Highlighting ``++as!++`` ''' == Comments And Links (visible only on this page) === on 8 Jul 2016, 20:30:55 Ann Campbell wrote: http://stackoverflow.com/questions/25708649/downcasting-optionals-in-swift-as-type-or-as-type include::../comments-and-links.adoc[] endif::env-github,rspecator-view[]