По умолчанию свойство считается атомарным - PullRequest
9 голосов
/ 28 ноября 2011

Я пытаюсь избавиться от надоедливого предупреждения, которое мне дает CLANG / LLVM 3.0.В моем объекте есть следующий набор символов ивара:

bool preloaded;

И следующее объявление свойства:

@property(readonly) bool preloaded;

И следующий синтезирующий вызов:

@synthesize preloaded;

AsСтоит, компилятор жалуется:

Свойство по умолчанию считается атомарным

Если я изменю объявление свойства, добавив «атомарный»:

@property(atomic,readonly) bool preloaded;

Он также жалуется на это:

ошибка: ожидается атрибут свойства до 'atomic'

Так что, похоже, я проклят, если сделаю, и проклят, еслиЯ не ... Что-то мне не хватает?

1 Ответ

9 голосов
/ 28 ноября 2011

Кажется, у вас есть Неявные свойства Atomic Objective-C Предупреждение компилятора LLVM включено в настройках вашего проекта.Отключение этого параметра приведет к удалению предупреждения.

Как отмечалось выше, atomic не является допустимым ключевым словом и подразумевается просто отсутствием nonatomic.Из документации об объявленных свойствах Apple :

Этот атрибут можно использовать, чтобы указать, что методы доступа не являются атомарными.(Нет ключевого слова для обозначения атомарного.)

...