我的项目包含一个带标题的简单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的静态分析器时,我收到以下错误:
由于解析错误,Analyzer跳过此文件
将'ImageArray3D'重新定义为不同类型的符号
这是什么原因?
答案 0 :(得分:7)
以下是问题的解决方案:Solution!
推荐的解决方案是添加 跟随你的其他C旗 项目的构建设置: -D__IPHONE_OS_VERSION_MIN_REQUIRED = 040100你用你的040100替换040100 部署目标版本(030000 for 例如,3.0)。
答案 1 :(得分:1)
听起来像您的项目或OS X库已经定义并使用ImageArray3D。只需重命名它就可以了。
答案 2 :(得分:-9)
我找到了它的原因: 如果您选择XCode的仅显示问题,那么您将无法在文件中看到分析器的错误!只有选择全部显示选项,您才会看到分析仪在检查项目时遇到问题。