moredip/UISpec — Issue #13: iOS 5 Compatibility - GSEventCreateWithPList()
Author: dented42
Created: 2011-11-06 22:11:18+00:00
State: open

I've attempted to build your UISpec for use in iOS 5 projects, and I have run into some problems.

The first problem is that UISpec doesn't work under ARC. The project will compile, but attempting to use it will fail as ARC requires that all method signatures that you use be declared at compile time. UISpec makes heavy use of method swizzling and other similar trickery to synthesize methods at runtime, so the only solution I can see is to disable ARC for ones test bundle/target.

The second and more important problem is a missing symbol at link time. It appears that under iOS 5, GSEventCreateWithPList() (in +(id)ApplicationEventWithTouch:(UITouch*)touch; in UIEvent+Synthesize.m), is no longer present. I have very little to no experience in this sort of thing, so I don't have a patch to submit :( .

The solution as I see it is to either eliminate +(id)ApplicationEventWithTouch:(UITouch*)touch; altogether, or to rewrite it so that it doesn't call GSEventCreateWithPList().