对基于 MinGW 编译创建的工程进行故障排除
问题
您基于 MinGW 编译创建了一个工程,但在对该工程运行分析时遇到错误。错误消息具有以下关键字之一:__declspec、__cdecl、__fastcall、__thiscall 或 __stdcall。
原因
当您基于 MinGW 编译创建工程时,该工程使用的是 GNU® 编译器。而 Polyspace® 无法识别 GNU 编译器的这些关键字。
解决方案
为了便于分析,请将这些关键字替换为等效关键字。
在分析之前,请为预处理器定义 (-D) 选项输入:
__declspec(x)=__attribute__((x))__cdecl=__attribute__((__cdecl__))__fastcall=__attribute__((__fastcall__))__thiscall=__attribute__((__thiscall__))__stdcall=__attribute__((__stdcall__))
如果您在 UNIX® shell 的命令行中运行 Polyspace,请用双引号将 -D 选项括起来。例如,请使用:
"-D __cdecl=__attribute__((__cdecl__))"