I was getting a crash with cocos2d-iphone v3.0RC1 (the problem is still in the code in RC2) on a 64-bit iPhone when using CCButtons from SpriteBuilder. The crash did not happen in Simulator or 32-bit. The problem was in CCReader, where it would send null blocks into the CCButton class's setBlock.
The issue was in this line near the end of readPropertyForNode:
objc_msgSend(node, setSelector, block);
It should read something like this:
id (response)(id, SEL, void (^block)(id sender)) = (id ()(id, SEL, void (^block)(id sender))) objc_msgSend;
response(node, setSelector, block);
The problem is that objc_msgSend is untyped and the 64-bit dispatcher doesn't know how to handle the arguments so the block argument doesn't come through. So when the property "copy" is executed it's a "bad access". See this for more information: http://stackoverflow.com/questions/19507456/sudzc-arc-version-objc-msgsend-call-causes-exc-bad-access-using-64-bit-archite
I don't know if there are other examples of this objc_msgSend problem elsewhere in Cocos, but it's something to be careful for with objc_msgSend and 64-bit ARM ABI.