static-analysis

    1热度

    1回答

    我不知道我想要什么是可能的,但我反正给它一个问题。 我有一些Boost库代码,我想暗示要通过静态分析发出警告,通过静态分析可以发现由于错误逻辑而导致的未定义行为的明确实例。 https://akrzemi1.wordpress.com/2016/12/12/concealing-bugs/表明__builtin_unreachable()可能会铛,整洁跳闸这样的,但我没能做到这一点(虽然它跳闸UB

    4热度

    2回答

    在我正在处理的产品中发现了几个令人讨厌的错误,所有这些错误都与switch语句中的无意中“跌倒”有关。 现在,我想更进一步 - 我希望检测大量C代码中的switch语句。 我只能使用Linux和gcc 5.6进行编译(所以没有叮当声或更新的gcc;这是因为我们项目的目标架构不存在新的gcc)。 这是一个代码,而告吹: switch(m_loadAnimSubCt){ case 0:

    1热度

    1回答

    我正在开发静态Groovy脚本分析。我找到的工具是CodeNarc,但是如何编辑规则集,而无需编辑CodeNarc.jar? 我从命令行调用CodeNarc: java -classpath "binary-tools/CodeNarc/groovy-all-2.4.6-jenkins-1.jar:binary-tools/CodeNarc/CodeNarc-1.0.jar:binary-tool

    1热度

    1回答

    我使用Xcode9存储,我试图分析project.Then我得到了下面的问题,像 可变类型的特性“的NSMutableDictionary”有“复制”属性; 不可变对象将被保存,而不是 请通过图片显示了分析问题 如何解决这个问题?

    0热度

    2回答

    临时死引用的与-O3与-O2编译也许当以下最低十岁上下的程序段错误,但-O0执行罚款(与铿锵4.0): #include <iostream> class A { public: virtual void me() const { std::cerr << "hi!\n"; } }; class B { public: B(const A& a_) : a(a_)

    -1热度

    1回答

    嗨重新诠释一个可能最终有一个有效的浮点数位的32位字符串时: UINT:1101004800,浮动:20.000000 现在说我是一个静态分析工具的工作它定义了值的范围而不是单个值的操作。 我正在考虑的一个这样的操作是将无符号值的32位位串值重新解释为浮点数。 当转换为float [float(a1)float(a2)]时,两个无符号整数[uint(a1)uint(a2)]的范围仍然是一个连续范围

    0热度

    1回答

    有没有办法使用LLVM IR API在C代码中获取由llvm::Function对象指向的函数的静态地址?

    2热度

    1回答

    Splint遇到系统头文件的解析错误,该文件使用窗口编译器似乎使用的尺寸指定后缀。因此,夹板无法解析包含像0xffui8这样的表达式的文件(其中ui8表示无符号的8位整数)。我如何配置藤条来解决这个问题? 更广阔的背景下:我试图让夹板与WinDDK 7600.16385.1一起工作。例如文件是intsafe.h。

    1热度

    1回答

    我需要一个静态分析器,它可以找到模板类类型的未初始化变量members/variables ...。 任何分析仪都可以做到这一点吗?我尝试了clang/cppcheck和几个没有运气的人。 这里是我的测试代码: enum class ViewMode { One = 1, Two = 2, Three = 3, Four = 4 }; class TestClass { pu

    0热度

    1回答

    我想为不可执行二进制文件生成控制流图。目标是对Linux内核生成的二进制文件进行静态分析。有没有可以做到这一点的工具?我通过搜索找到的工具仅适用于可执行文件。 我使用obj-dump将二进制反汇编为程序集。目前,我对汇编基本块进行分析,但在这种方法中,我无法保证是否覆盖了所有的执行路径。