如果没有编译代码,我希望GCC或Clang报告警告。
是否可以仅运行编译器进行静态分析?
我找不到一种方法来传递编译器警告标志并告诉它不要编译。
编辑:刚发现clang有一个 静态分析仪
如果没有编译代码,我希望GCC或Clang报告警告。
是否可以仅运行编译器进行静态分析?
我找不到一种方法来传递编译器警告标志并告诉它不要编译。
编辑:刚发现clang有一个 静态分析仪
GCC和Clang都有选择权 -fsyntax-only
这使得编译器只执行语法检查而不进行任何实际编译。
除了其他回复, gcc
在编译期间进行一些分析(甚至在一些优化过程中)。所以你可以丢弃生成的代码,但仍然可以获得所有警告。 gcc -Wall -O -c code.c -o /dev/null
请注意,您可以使用额外的通行证扩展GCC,执行一些额外的,特定于应用程序的检查和警告,例如:同 熔化 (扩展GCC的高级域特定语言)。
如果您想要强静态分析并且愿意为此目的提供额外的注释,请考虑 弗拉玛C.。