静态分析¶
静态分析是在不实际执行代码的情况下对源代码进行分析。在 Mozilla 中,静态分析通常指的是我们使用 clang-tidy 进行的操作。它使用检查器来防止代码中存在的各种编程错误。我们使用的检查器分为 3 类
Firefox 特定检查器。它们检测可能导致错误或安全问题的错误 Gecko 编程模式。
Clang-tidy 检查器。它们旨在建议更好的编程实践,并提高内存效率和性能。
Clang-analyzer 检查器。这些检查更加高级,例如其中一些可以检测死代码或内存泄漏,但作为典型副作用,它们也会产生误报。因此,我们目前已禁用它们,但将在不久的将来启用其中一些。
为了简化静态分析的过程,我们专注于将此过程与 Phabricator 和 mach 集成。可以在 此处找到自动化扫描期间使用的一些检查器的列表。
本文档分为两部分