#错误指令:“头不支持在C89语言模式”万博1manbetx
14日视图(30天)
显示旧的评论
我在我的代码使用#错误指令但不幸polyspace分析是抛出一个错误
错误:#错误指令:“头不支持在C89语言模式”万博1manbetx
| #错误”头不支持在C89语言模式”万博1manbetx
| ^
我试着
-no-language-extensions通过删除= iar编译器选项,但它仍然没有解决这个问题。有没有其他办法可以解决吗?
我用MATLAB R2017b
答案(1)
Anirban
2022年3月10日
当编译器遇到一个
#错误
指令,停止并打印相关的消息。Polyspace在这方面表现得就像一个编译器,做同样的事。
我猜,在这种情况下,您的代码和你的编译器编译与Polyspace但不是。这可能意味着你尚未完全模拟与Polyspace分析你的编译器选项。例如,您可能没有设置正确的值
编译器
也可能是在编译时使用特定的编译器选项(Polyspace不知道)。更多细节,请参阅
相关修复Polyspace编译错误#错误指令
。
更能帮助你与这个特定的错误消息,你必须给我们周围的代码
#错误
指令。正如您将看到的在上面的文档链接中,a
#错误
指令通常是某种形式的内部
# ifdef
警卫。这将是有趣的卫队和Polyspace如何能够通过,但是编译器没有。