我的项目包含一个带标题的简单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'重新定义为不同类型的符号

这是什么原因?

有帮助吗?

解决方案

以下是该问题的解决方案:解决方案!

  

推荐的解决方案是添加   跟随你的其他C旗   项目的构建设置:   -D__IPHONE_OS_VERSION_MIN_REQUIRED = 040100你用你的040100替换040100   部署目标版本(030000 for   例如,3.0)。

其他提示

听起来像您的项目或OS X库已经定义并使用ImageArray3D。只需重命名它就可以了。

我找到了它的原因: 如果您选择XCode的仅显示问题,那么您将无法在文件中看到分析器的错误!只有选择全部显示选项,您才会看到分析仪在检查项目时遇到问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top