Sum*_*uma 8 c++ pointers static-analysis visual-studio
我想将我的应用程序切换到LARGEADDRESSAWARE.需要注意的一个问题是指针算法,因为指针差异不能再表示为带符号32b.
有没有办法如何在大型C++项目中自动查找指针减法的所有实例?
如果没有,是否有一些"尽力而为"的手动或半自动方法如何实现这一目标?
由于我们的代码已经使用 GCC 进行编译,我认为最快的方法可能是:
以下是 GCC 为此需要进行的更改概要:
将您的警告添加到:
pointer_diff
函数)pointer_diff
函数)。除了直接检测指针减法之外,要做的另一件事是检测首先将指针转换为整型然后减去它们的情况。这可能会更困难,具体取决于代码的结构,在正则表达式搜索 (.intptr_t ) 的情况下。-.*-(.*intptr_t) 效果很好。
归档时间: |
|
查看次数: |
2030 次 |
最近记录: |