1.3.5版本对PC-lint Plus进行了许多改进。包括:更新了AUTOSAR,MISRA C和MISRA C++,新消息和标志选项,对Visual Studio配置生成器GUI的改进等。
BUG修复
- PCLP-3358 当处理C模块时,解决了三元运算符条件的一个遗漏的潜在布尔推理
一个通常表现为在三元运算符的真或假操作数中的误 的问题,应该被它的条件所排除。这个问题只发生在C模块中。
- PCLP-3364 解决涉及区间关系或相等比较的误
一个涉及与评估应用于可表现为误 774的区间的不合格和大于等于运算符相关的不确定性的问题已经解决。
- PCLP-3376 在诊断由包含内置的宏展开所产生的表达式分配的返回值之间的冲突后修复可能的崩溃行宏和返回值语义
Diag Info Code-37的崩溃可能在消息2426的发布被解决后立即发生。
- PCLP-3378 在有lint注释的情况下,用受-rw选项约束的标识者命名声明时,修复缺失的声明问题
- PCLP-2010 在模块中存在lint注释将不再导致在模块的其余部分忘记使用受-rw选项约束的标识符命名的声明。保留单词选项的效果现在只应用一次,在此之前,一系列保留单词选项的效果可能表现为序列被多次按顺序应用。
- PCLP-3380 消息725不正确发出警告
消息725(意外地缺少缩进)是一种信息消息,但被错误地作为警告发布。这一问题已得到纠正。
- PCLP-3388 对隐含的这个参数(‘t’)在函数内的正确处理选项。
使用‘t’指定隐含的这个参数在函数选项现在被正确处理。
- PCLP-3392 在KeilμVision ARMCC中禁用线路中断,以解决IDE导航问题与长线
KeilμVision IDE不能识别包含换行符的消息中的位置信息来包长行。选项宽度(0)现在将包括在生成KeilμVision ARMCC编译器配置时。
- PCLP-3434 修正当模板将parame-ter包大小操作符应用于非类型模板参数包引用时可能发生的内部错误。一个内部错误与内部错误代码E98DAB0F触发的特定用途的size of.(P),其中P是引用类型的非类型模板参数的可变模板参数包,已经解决。
- PCLP-3442 当将负值分配给bitftelds时,误 542
将负值分配给位字段通常会导致误 542(位字段的大小过大),即使位字段可以表示被分配的值。这一问题已得到纠正。
- PCLP-3465 +冻结/++冻结错误地防止参数化消息启用选项针对冻结消息
+冻结和++冻结选项被记录为防止受影响的消息受到以后消息抑制选项的影响,而不是启用受影响消息的选项。以前,被冻结的消息不允许成为参数化消息启用选项的目标,例如+esym或+estring。此问题已被纠正,并允许参数化消息启用选项针对冻结消息。
- PCLP-3466 忽略涉及部分冻结消息集的重复参数化抑制选项
PC-lint Plus通常忽略参数化的抑制选项(例如。-esym/-estring/+etype/等) 这与已经生效的选项相同。如果两个相同的参数化抑制选项的消息集包含一个冻结的消息,则不会忽略重复选项,从而导致这些重复选项对该消息投出或反对该消息的意外投票。例如,如果选项-esym(71foo)被多次遇到,在处理选项时,消息714被冻结,每个-esym选项将投票反对在涉及符 foo的范围内发布其他消息。此问题已得到纠正,涉及冻结消息的重复选项将以与涉及非冻结消息的重复选项相同的方式被忽略。
- PCLP-3469 使用无效参数索引处理用户变形函数语义时的崩溃
当a-sem选项与参数索引为零时(即,当处理与调用相应函数相关的语义时,PC-lintPlus可能崩溃。这样的使用现在将使用警告消息425代替。
- PCLP-3470 无符 枚举类型的位符的误 542
分配给无符 枚举类型的位域有时会导致误 542(位域的大小过大)消息。这一问题已得到纠正。
- PCLP-3472 当在位于Windows 络驱动器上的ftle中使用ENCLOSING_DIRECTORY时,修复无效的UNC路径扩展。
在位于Windows 络驱动器上的文件中使用动态内置环境变量ENCLOSING_DIRECTORY以前可以扩展到以UN C开头的无效路径。这样的路径现在包括所需的\前缀。
- PCLP-3507 在speciftc行走期间修复误 438
对于callee的局部变量,当fcw处于活动状态时可能出现(可能多次)的消息438的误 实例已经解决。
- PCLP-3543 更正了au-autosar.lnt中的错误
对au-autosar.lnt中出现的消息1107(不同种类的宽字符串文字的无效级联)的描述进行了修正,对准则“A3-1-4”附件案文中提及的“A3-1-3”作了更正。对“M7-1-1”和“M15-4-1”的提及已作了更新,分别在附件案文中提及“A7-1-1”和“A15-4-1”。
- PCLP-3547 类模板中朋友声明的处理不正确
由PC-lintPlus继承的clangbug(https://bugs.llvm.org/show_bug.cgid=33222)有时会导致不正确地处理类模板的朋友函数模板声明和依赖的朋友函数声明。这种错误行为在使用与GCC最近版本一起分发的变体标头时导致错误的正错误消息。这一问题已得到纠正。
- PCLP-3561 删除了MISRA C++ Rule 6-6-3的不适当支持消息
消息9254(遇到的继续语句)被错误地用于支持MISRAC++规则6-6-3,该规则将继续语句的使用限制为循环的“格式良好”。消息9254已被删除作为此规则的支持机制。
- PCLP-3570 当消息3402被抑制时, 格3702没有发出
消息3702(lambda捕获默认捕获‘this’按值计算)以前被抑制时,消息3402被抑制。这一点已得到纠正。
更多更新详情请查看后续更新内容详解。
标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!