Я работал над процессором Cell, и я пытаюсь создать структуру, которая будет содержать spe_context_ptr_t
, которая будет использоваться в потоке для запуска контекста spe, а также будет содержать указатель на что-то еще, что будет передается в контекст spu из потока (в настоящее время я пытаюсь просто сделать его общим указателем, но на самом деле он будет указателем на другую структуру, которую я определил). Когда я пытаюсь скомпилировать, я получаю следующее сообщение об ошибке:Что означает эта ошибка: «error: expected specifier-qualifier-list before» type_name? »?
spu/../common.h:38: error: expected specifier-qualifier-list before 'spe_context_ptr_t'
// here is the offending line(s)
typedef struct _PTHREAD_BLOCK {
spe_context_ptr_t * context; // Error happens here
uintptr32_t args;
} PTHREAD_BLOCK;
В моем случае (для проекта iPhone) проблема заключалась в том, что я включал заголовки таким образом, что я подозреваю, что это вызывает круговую зависимость. Я решил это, объявив класс раньше времени в моем .h файле с параметром @class. Как только я это сделал, круговая зависимость была решена, и эта ошибка исчезла. Просто обратите внимание, если кто-либо видит это в XCode/Obj-C. –
спасибо, увидели это после ответа. Но можете ли вы объяснить, почему это работает и как? – ymutlu