Я никогда не писал рабочий код на Objective-C, и его трудно поддерживать, но насколько я знаю, NSInteger и его друзья находятся в 10.4, просто Какао не 64-битный в 10.4, тогда как в 10.5 большая его часть (так что больше нет необходимости в отдельном 64-битном рабочем процессе под 32-битным интерфейсом).
Я не знаю, каков ваш продукт или кто ваши клиенты, но по моему опыту пользователи Mac являются первыми пользователями (условно говоря). Я никогда не использовал версию OS X дольше, чем за две недели до следующего обновления был вне, и в моем кругу я поздний усыновитель. Конечно, я не просто пользователь Mac для бизнеса, и это может иметь большое значение.
Что делает 64-битное требование в вашем коде? Нет особой причины не компилировать универсальный двоичный файл, содержащий столько архитектур, сколько вы хотели бы, чтобы у вас не было проблем с одним двоичным прогоном на G4, G5, IA32 и IA64, и он должен быть встроенным для всех них. Если вы просто делаете 64 бита, потому что вы можете, нет никакой причины (которую я могу себе представить) не продолжать поддерживать 32 бита, но если вам нужны такие вещи, как CoreAnimation, у вас нет большого выбора.
Я не думаю, что неправильно требовать 10,5 для новой разработки, но не имеет большого смысла с коммерческой точки зрения навязывать покупателям совершенно новую ОС только для того, чтобы продолжать использовать существующий продукт. Так что, если вы можете, оставайтесь совместимыми, возможно, сделайте бэкап своих новых функций / патчей на некоторое время. Для контроля версий есть веская причина, и это может быть так.
Edit-
С тех пор как я опубликовал это, я узнал, что был неправ, и NSInteger не существовал до 10.5. Я думаю, что слишком много предполагал, что раньше использовал подобные типы (например, NSDecimal).