allending/Kiwi — pull request #370 by modocache (2013-09-16 16:25:54+00:00)
Title: [x86_64] Fix test failures on 64-bit.

This commit does not actually change the Kiwi.xcodeproj settings to support 64-bit architectures, it merely fixes test failures that occur when building the tests for that architecture. This should not affect 32-bit builds. This does not affect end users, either; they are able to build and run tests on 64-bit by following the instructions here: https://github.com/allending/Kiwi/issues/369#issuecomment-24522756

#### Commit Summary

- Fix STAssertEquals failures for mismatched types.
- On 32-bit architectures, `@encode(BOOL)` is equal to "c"; on
64-bit architectures it is equal to "B". As a result,
`KWObjCTypeIsNumeric` is no longer true for `BOOL` types. This commit
adds a `KWObjCTypeIsBool` utility method and allows BOOL values to be
queried for their `-numberValue` as on 32-bit by modifying
`KWValue.m`. This fixes failures in the
`KWBeTrueMatcherTests`, which use `+[KWValue valueWithBOOL:]`.
- Add tests for KWObjCUtilities.

#### Future Considerations for Supporting 64-bit

In Apple's [64-bit Transition Guide for Cocoa Touch](https://developer.apple.com/library/prerelease/ios/documentation/General/Conceptual/CocoaTouch64BitGuide/ConvertingYourAppto64-Bit/ConvertingYourAppto64-Bit.html), they recommend changing the Architectures build setting to “Standard Architectures (including 64-bit).” Doing so for Kiwi.xcodeproj, however, causes the following warning:

![screen shot 2013-09-16 at 12 21 48 pm](https://f.cloud.github.com/assets/552921/1150523/234325b6-1eec-11e3-9703-1f46b7097926.png)

It seems there's been some tension on this issue before, however--see https://github.com/allending/Kiwi/issues/229. I think we'll need to increase the iOS Deployment Target sometime soon, which means another significant version increase. Any thoughts from the core team on the timing for making this change?