?

Log in

Xcode 5 и properties - Russian Mac OS X Developer Community [entries|archive|friends|userinfo]
Russian Mac OS X Developer Community

[ website | Apple Developer Connection ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Xcode 5 и properties [Jun. 2nd, 2014|12:29 pm]
Russian Mac OS X Developer Community

ru_macosxdev

[samond]
При попытке сборки старого проекта с помощью XCode 5 (и соответственно Apple LLVM Compiler 5.1) выдаются ошибки:
Method name referenced in property setter attribute must end with ':'

Причина ошибки понятна - изменился синтаксис объявления свойств классов в Objective-C.
Как эти ошибки править, если Deployment Target - 10.9 - тоже понятно.

Однако у меня стоит задача сборки framework, который может понадобиться и на старых версиях, таких как 10.4, 10.5 и 10.6.
В случае с Deployment Target = 10.4 более или менее все понятно - отсекать объявление свойств с помощью деректив условной компиляции и использования __MAC_OS_X_VERSION_MIN_REQUIRED, поскольку свойства появились только начиная с 10.5.

А вот как быть для Deployment Target = 10.5 или 10.6?
Положим, что я поставлю требуемые двоеточия, но у меня нет уверенности, что пользователи framework будут собирать его именно с помощью XCode 5.
Как поведут себя те же XCode 4 или вообще XCode Tools 3.2.5, "увидев" в заголовочных файлах эти двоеточия?
linkReply

Comments:
[User Picture]From: samond
2014-06-02 10:04 am (UTC)
Огромное спасибо - я про этот момент не знал совершенно.
Теперь одной большой проблемой меньше :)
(Reply) (Parent) (Thread)