这两个工具似乎有一些共同的目标,而clang-tidy 的文档 http://clang.llvm.org/extra/clang-tidy/对其功能非常明确,铿锵检查的 https://clang.llvm.org/docs/ClangCheck.html有点稀疏。
如果我可以只运行这些工具之一,同时进行相同的检查,那就太好了。显然,clang-tidy 有一些 clang-check 所没有的功能,所以问题是:
是否有包含所有功能的 clang-tidy 检查组合clang-check -analyze
?
查看这两个工具的来源后,clang-check -analyze
实例化一个AnalysisASTConsumer
来自 StaticAnalyzer 库通过这里 https://github.com/llvm-mirror/clang/blob/2e23251d3e91db37d19bf876f91b85059ead2491/include/clang/StaticAnalyzer/Frontend/AnalysisConsumer.h#L38.
clang-tidy 也可以 https://github.com/llvm-mirror/clang-tools-extra/blob/0ae5fe435fe0cc658ef0bca8769b022d963b4498/clang-tidy/ClangTidy.cpp#L389如果提供分析仪选项。
所以,一切似乎都表明clang-tidy -check='clang-analyzer-*'
相当于clang-check -analyze
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)