runtime.h не компилируется, входит в приложение для iPad - PullRequest
1 голос
/ 26 мая 2011

Класс в моем приложении для iPad использует #import <objc/runtime.h>, чтобы получить доступ к функциям времени выполнения.Однако после компиляции (Apple LLVM 2.1) этот файл не компилируется:

Parse issue: Illegal interface qualifier

Кажется, он находится в строке @class Protocol, в начале файла:

#ifdef __OBJC__
@class Protocol;
#else
typedef struct objc_object Protocol;
#endif

Кто-нибудь знает, что может быть причиной этой проблемы?

Ответы [ 2 ]

5 голосов
/ 31 декабря 2011

Я обнаружил, что это было вызвано тем, что в конце файла .h отсутствовала директива @end.

Я нашел его с помощью терминала, чтобы перейти в каталог, содержащий мои файлы .h, и запустив команду: "tail -n1 * .h" и отыскивая все файлы, которые не заканчивались на "@end", как они должны (по крайней мере, в моем случае).

1 голос
/ 26 мая 2011

Звучит как проблема, проистекающая из предыдущего #import.Проверьте файл заголовка, импортированный непосредственно перед вашим #import <objc/runtime.h>, и посмотрите, не завершился ли он должным образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...