在PC-lint Plus最新版本 v1.3中,更新了很多内容,今天小编给大家介绍一下MISRA C 2012改进的内容~
PC-lint Plus是一种静态分析工具,通过分析C和C ++源代码来发现软件中的缺陷。与编译器一样,PC-lint Plus会解析源代码文件,执行语义分析,并构建一个抽象语法树来表示程序。PC-lint Plus采用各种机制,包括数据流分析,数值跟踪,读写分析,强类型检查,功能语义验证和许多其他技术,来提供对单个文件和整个项目强大而全面的分析。
在PC-lint Plus最新版本 v1.3中,更新了很多内容,今天小编给大家介绍一下MISRA C 2012改进的内容~
PC-lint Plus免费版
MISRA C 2012改进:
-
PCLP-2060 支持MISRA C 2012 AMD-1规则21.18
在au-misra3-amd1.lnt文件中增加了对MISRA C 2012 AMD-1规则21.18的支持。
-
PCLP-2537 对于9046,将不同的无标签结构的成员视为出现在单独名称空间中
将不再发出消息9046来 告不同无标签结构的成员之间的歧义。
-
PCLP-2777 消息931从MISRA C 2012规则13.2中删除
消息931不再用于支持MISRA C 2012规则13.2。消息564仍提供较少误 的支持。
-
PCLP-2791 改进了对MISRA C 2012规则17.1、21.4、21.5和21.10的支持
au-misra3.lnt文件已更新为不支持使用va_list、jmp_buf、sig_atomic_t、clock_t、time_t和struct tm类型,使用这些类型之一时将导致发出消息586。
-
PCLP-2797 支持MISRA C 2012规则22.4和22.6
已通过新消息2477添加了对MISRA C 2012规则22.4的新支持(尝试对未打开以供写入的流执行写操作),并已通过新消息2470改进了对MISRA C 2012规则22.6的支持(如已关闭)。
-
PCLP-2807 消息774已添加到MISRA C 2012规则2.2中
消息774现在用于支持MISRA C 2012规则2.2。
-
PCLP-2914 改进了对MISRA C 2012规则11.1的支持
现在使用消息176(类型的操作数不能转换为函数指针类型)和消息178(类型的功能指针不能转换为类型指针)来检测消息9074未 告的违反MISRA C 2012 Rule 11.1的情况。
-
PCLP-2915 改进了对MISRA C 2012规则22.1的支持
现在采用消息698(就地重新分配可能导致内存泄漏)来增强对MISRA C 2012规则22.1的支持。
-
PCLP-2918 改进了对MISRA C 2012规则14.4的支持
消息9036(条件的基本类型应为布尔型)以前仅在if语句的控制表达式不是布尔型时才发出。现在,将为迭代语句以及在消息中作为字符串参数包括的语句类型发出该消息(这是if、for、do或while之一)。
-
PCLP-2919 改进了对MISRA C 2012规则15.7的支持
现在,仅当链的结尾处的else正文不包含注释或动作时,才发出消息9063(else中没有注释或动作)。以前,此消息是针对其他不包含评论或操作的消息发出的。该更改反映了MISRA最近对相应规则的澄清。消息的文本也已更改以反映新行为。
-
PCLP-2920 对于布尔基本类型分类,考虑超出布尔强类型本身的布尔强类型层次结构
以前,只有排他的布尔型强类型才能将单个typedef归类为本质上是布尔型。现在可以将多个typedef视为实质上使用布尔类型表示的布尔类型,如640以前所支持的那样。
-
PCLP-2926 改进了对False和True宏的布尔MISRA C 2012基本类型的处理
从本质上分别从一个名为false或true的宏扩展的值为0或1的整数常量现在固有地被认为具有布尔MISRA C 2012基本类型。这些以前用于部分支持类似行为的宏的非标准替代定义已从配置文件中删除。
想要购买PC-lint Plus正版授权,或了解更多产品信息请点击“咨询在线客服”

标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!