Cppcheck允许你创建你自己的规则文件,但我不知道怎么的cppcheck的功能太多暴露。
正在一组,将执行任何JSF或MISRA规则?
Cppcheck允许你创建你自己的规则文件,但我不知道怎么的cppcheck的功能太多暴露。
正在一组,将执行任何JSF或MISRA规则?
您将无法实现所有MISRA / JSF规则和指令作为cppcheck规则,大多只有光明磊落限制某些C语言功能和结构或者是风格相关的(一些浮现在脑海中:前空格/后./ - >,在单个行参数#,使用联合的,以提供存取存储器,未签名存在/焦炭前签署,等等)的不同的方法。
用户艾拉巴克斯特在几乎钉它的评论上的另一个问题动人cppcheck:并非一切都可以表示/简化为一个模式。 依托模式的自定义规则,使得它难以处理和检测更高层面的问题,例如类型相关(如的sizeof(上种);你必须分析和收集用作类型的表示令牌(类型定义,枚举)), 继承 (例如类,含衍生的,既用作虚拟和非虚拟),和范围 。 那些需要被硬编码到cppcheck(你总是可以叉cppcheck ...)
在任何情况下,你感动MISRA(或JSF)的规则? 这是一个项目的要求? 如果没有,你可以抓住的MISRA准则的副本(你已经拥有了JSF的),并检查您可以实现使用PCRE模式的人。 如果它是一个要求,我建议你“投资”在商业产品,它检查MISRA / JSF准则和使用这两种工具。
最后要注意的:你并不需要所有的MISRA / JSF规则,许多工具留下的一小部分出来。
从我可以告诉,通过文件看,它看起来很暴露。 http://cppcheck.sourceforge.net/manual.pdf 。
Cppcheck有MISRA支持。 下面是有关支持的规则概述: 支持MISRA规则