XCode: & # 8220; Analyzer пропустил этот файл из-за ошибок синтаксического анализа & # 8221;
-
05-07-2019 - |
Вопрос
мой проект включает в себя простой C-файл с заголовком. Вот так:
#ifndef __IMAGE_ARRAY_3D
#define __IMAGE_ARRAY_3D
typedef struct ImageArray3D {
double *data; // The image data
LargeElement *largestElements; // c * nLargestElements
int c, w, h, nLargestElements;
} tImageArray3D; // Error points to here
...
#endif
Когда я запускаю статический анализатор XCode, я получаю следующую ошибку:
Анализатор пропустил этот файл из-за ошибок анализа
переопределение 'ImageArray3D' как символа другого типа
В чем причина этого?
Решение
Вот решение этой проблемы: Решение!
Рекомендуемое решение - добавить после других флагов C в вашем Настройки сборки проекта: -D__IPHONE_OS_VERSION_MIN_REQUIRED = 040100, где вы заменяете 040100 своим целевая версия развертывания (030000 для 3.0, например).
Другие советы
Похоже, ваш проект или библиотеки OS X уже определяют и используют ImageArray3D. Просто переименуйте его, и это, вероятно, сработает.
Я нашел причину этого: Если вы выберете Показывать только проблемы в XCode, вы не увидите ошибок анализатора в файле! Только если вы выберете опцию Показать все , вы увидите, что у анализатора возникли проблемы с проверкой вашего проекта.