The last update to the master branch allows to compile Sparrow without warnings for 64 bit iPhones. So you can compile and link Sparrow to 64 bit games, as well.
However, this will probably require further changes in the future. Actually, I haven't made a decision yet. Anybody interested, please bear with me and read the explanation below -- I'd be interested in your comments!
Here's the problem:
When you look at Sparrow's APIs, you'll see that it uses the "int" data type for most whole numbers. E.g.
- (int)numChildren;
Typical classes of the iOS standard library will use "NSInteger" and "NSUInteger" instead. Like this:
- (NSInteger)count;
On 32 bit systems, that's exactly the same -- NSInteger is just a typedef on "int" (32 bits).
On 64 bit systems, however, "NSInteger" will be a "long" with 64 bits.
Thus, Sparrow now behaves differently than the other "NS" or "UI" classes. You will frequently have to cast one type into the other when you're compiling for 64 bit.
Which means that Sparrow should probably be changed to use those data types, too. What do you think?