Polyspace常见问题及解决方法
1. 修复标准库数学函数的Polyspace过近似问题
在验证结果中,标准库数学函数可能无法按预期运行。例如, assert(isinf(x)) 语句在后续语句中未能将 x 的值限制为正无穷或负无穷。
原因 :如果Polyspace找不到数学函数定义,验证将使用Polyspace对标准库数学函数的实现。在某些情况下,Polyspace的函数实现可能与函数规范不匹配,存在过近似函数行为的情况。
解决方案 :明确提供编译器的原生头文件路径,使验证使用编译器的函数实现。
- 若从命令行运行验证,使用 -I 选项。
- 若从用户界面运行验证,参考相关操作说明。
- 若使用交叉编译器并从构建系统创建Polyspace项目,项目将使用编译器提供的头文件。
2. 解决Polyspace报告生成时的内存不足错误
在从包含大量缺陷或编码规则违规的Polyspace结果生成报告时,可能会遇到内存不足的错误,错误信息通常包含类似 java.lang.OutOfMemoryError: Java heap space 的内容。
可能的解决方案 :
- 增加Java堆大小 :
1. 导航到 polyspaceroot\polyspace\bin\architecture </
超级会员免费看
订阅专栏 解锁全文
50

被折叠的 条评论
为什么被折叠?



