Proxy the description method in the same style as the others.
A failing spec for spying on weak properties referring to UIKit classes
Refactor to extract a CDRSpyInfo class to replace usages of objc_setAssociatedObject
An example spec demonstrating iOS 5 and 6 runtime differences when spying on a weakly retained UIView or UIVIewController instance.
UIResponder subclasses use different CDRSpy base class

This is an ugly solution which passes all current test cases, debug and release.
Simplify spec as current implementation is iOS 5-safe
CDRSpyInfo teardown restores original class

This seems to address a number of strange UIKit-specific issues when code under test is compiled with ARC.
iOS specific ugliness can be deleted when iOS 5 runtime is no longer supported.