Cppcheck allows you to create your own rules files, but I don't know how much of cppcheck's functionality is exposed.

Is anyone working on a set that would enforce JSF or MISRA rules?

解决方案

You won't be able to implement all MISRA/JSF rules and directives as cppcheck rules, mostly only the straightforward ones restricting certain C language features and constructions or that are style-related (some that come to mind: spaces before/after ./->, # of arguments on a single line, use of unions to provide different methods of accessing memory, presence of unsigned/signed before char, etc).

User Ira Baxter pretty much nailed it in a comment on another question touching cppcheck: not everything can be represented/simplified as a pattern. Relying on patterns for custom rules makes it difficult to handle and detect higher level issues, related for example to types (e.g. sizeof() on types; you would have to parse and collect tokens (typedefs, enums) used as a type representation), inheritance (e.g. classes, incl. derived ones, used both as virtual and non-virtual), and scope. Those need to be hard-coded into cppcheck (you could always fork cppcheck...)

In any case, have you touched MISRA (or JSF) rules? Is this a requirement for a project? If not, you could grab a copy of the MISRA guidelines (you already have the JSF ones) and check the ones you can implement using PCRE patterns. If it is a requirement, I suggest you "invest" in a commercial product that does check for MISRA/JSF guidelines and use both tools.

A final note: you don't need all the MISRA/JSF rules, and many tools leave a small percentage of those out.

cppcheck 自定义规则,cppcheck的规则集相关推荐

  1. cppcheck 自定义规则_cppcheck代码静态检查工具及相关工具插件用法介绍

    摘要:介绍代码缺陷静态检查工具(static code analyzer)cppcheck,以及其vs.qtcreator.git.jenkins插件及用法. Cppcheck着重于检测未定义的行为和 ...

  2. cppcheck 自定义规则_cppcheck检查规则

    规则 中文描述 R-1-2-3 禁止在头文件前有可执行代码. R-1-2-4 引起二义性理解的逻辑表达式,必须使用括号显式说明优先级顺序. R-1-2-5 逻辑判别表达式中的运算项必须要使用括号. R ...

  3. cppcheck 自定义规则_cppcheck扫描规则

    规则 描述 arrayIndexOutOfBounds 数组下标越界 arrayIndexThenCheck 数组越界访问 bufferAccessOutOfBounds 缓冲区访问越界 CastIn ...

  4. PMD 自定义规则实践入门样例

    原文:https://testerhome.com/topics/4918 准备工作 首先在PMD官网下载最新版本的文件,目前最新版本是5.4.1.  下载pmd-bin-5.4.1.zip和pmd- ...

  5. pmd java规则_静态代码扫描 (一)——PMD 自定义规则入门

    阅读该文章前,最好已经对 PMD 有了初步的认识和了解,可参考静态分析工具 PMD 使用说明 准备工作 首先在PMD 官网下载最新版本的文件,目前最新版本是 5.4.1. 下载 pmd-bin-5.4 ...

  6. java自定义findbugs规则_静态代码扫描 (三)——FindBugs 自定义规则入门

    准备工作 由于 FindBugs 是分析编译后的 class 文件,也就是字节码文件.我们需要了解 FindBugs 底层的处理机制.根据FindBugs 官网文档描述,FindBugs 使用了BCE ...

  7. sqlserver如何定义一个静态变量_[Bazel]自定义规则实现将多个静态库合并为一个动态库或静态库...

    1 前言 2 自定义规则实现 2.1 规则功能 2.2 实现规则的理论基础 2.3 规则代码实现 3 总结 4 参考资料 1 前言 为了实现如标题所述的将多个静态库合并为一个动态库,内置的 Bazel ...

  8. layui表单验证 内置自定义规则 - 使用说明

    关于 layui表单的验证规则.调用.自定义规则的使用经验总结: 除了 layui 本身配套的一个验证体系,还支持开发者自定义验证规则(如上表中的[自定义密码验证(代码参考下文)]),并直接嵌入到页面 ...

  9. drools动态配置规则_微服务实战系列(八)-网关springcloud gateway自定义规则

    1. 场景描述 先说明下项目中使用的网关是:springcloud gateway, 因需要给各个网关服务系统提供自定义配置路由规则,实时生效,不用重启网关(重启风险大),目前已实现:动态加载自定义路 ...

最新文章

  1. codeforces round 421 div2 补题 CF 820 A-E
  2. 在VMware15中创建虚拟机安装ubuntu系统(超详细教程)
  3. 软件工程 之 动物世界
  4. ASP.NET Core Web API 最小化项目
  5. java map 不存在的key_java – HashMap表示即使它确实存在,Key也不存在
  6. python如何输入多行数据合并_python 实现将txt文件多行合并为一行并将中间的空格去掉方法...
  7. java.util.zip.zipexception_android-如何解决java.util.zip.ZipException?
  8. oracle 循环继续,oracle – 是否可以继续从异常循环?
  9. 判断相等_为什么不建议你用a.equals(b)判断对象相等
  10. Docker-Compose 基础与实战,看这一篇就够了 | 原力计划
  11. 125条常见的java面试笔试题大汇总1
  12. MySQL学习日志(二)
  13. 【原】创建 WPF 不规则窗口
  14. w7为什么计算机没有摄像头.,W7笔记本摄像头怎么打开
  15. VUE 3文件上传 Change事件无效 和 unsupported media type 415
  16. 计算机专业可以当警校吗,警校开设的计算机类专业,毕业生就业方向偏向于信息安全,请注意...
  17. 倪光南建议禁用Win10政府版 微软合作方回应
  18. JS根据屏幕分辨率自动调整字体大小
  19. java jsoup解析开彩网api接口json数据实例
  20. RabbitMQ 开发时指定消息消费者的方式

热门文章

  1. 新手提问 请给为大哥指点迷津
  2. 抢占式内核与非抢占式内核
  3. 实达集团并购中科融通 涉足物联网领域
  4. 功能测试和兼容性测试
  5. element表格二级表头分两行显示
  6. java校院导游程序课程设计_校园导游系统 数据结构课程设计(有源程序)
  7. 单片机第六次实验课——计数器实验
  8. 一个算法工程师在技术方面的反思!
  9. EasyExcel 使用和背景颜色样式(3.0以上的版本)
  10. dns服务器未响应 没网,dns服务器未响应解决方法