XCode:;由于分析错误,Analyzer跳过了此文件;

XCode:;由于分析错误,Analyzer跳过了此文件;,xcode,static-analysis,Xcode,Static Analysis,我的项目包括一个带有头的简单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, nLarges

我的项目包括一个带有头的简单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”重新定义为不同类型的符号


原因是什么?

听起来您的项目或OS X库已经定义并使用了ImageArray3D。只要重命名它,它可能会工作。

我找到了它的原因:
如果选择“仅显示XCode的问题”,则不会在文件中看到分析器的错误!仅当您选择“全部显示”选项时,您才会看到分析器在检查项目时遇到问题。

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

建议的解决方案是添加 下面是您的应用程序中的其他C标志 项目的生成设置: -D__IPHONE_OS_VERSION_MIN_REQUIRED=040100,将040100替换为 部署目标版本(030000用于 例如3.0)


谢谢,但是我的项目没有定义它。解决方法不是把警告隐藏起来。我没有把它们隐藏起来。XCode被配置为在我更改它之前不显示它们。更好的是,适当地设置您的项目iOS部署目标:IPHONEOS_deployment_target=3.2具体地说,是项目的“iOS部署目标”生成设置。