Helix QAC 2023.4 新版支持C++20语言,带来更多性能提升!

Helix QAC 2023.4 新增功能

Helix QAC 2023.4全面支持MISRA C++:2023®规则,涵盖100%的指南。此版本还加强了对C++20语言的支持,改进了数据流分析性能,并在整个产品中增加了多项用户体验改进。

增强的C++20支持

此版本新增了对以下语言特性的支持:

  • 模板参数列表和函数声明的requires-clause约束
  • 非类型约束的缩写函数模板声明

改进的带有缓存的数据流性能

  • 通过求解器缓存,减少了增量分析的数据流分析时间。
  • 在被选定测试项目中,第二次分析运行的分析时间减少超过50%。
  • 数据流还能在函数超时期间完成更多分析,得益于缓存。

增强的GNU和ISO C算术类型支持

  • 针对代码中用到的不常用语言特性,如复杂类型、供应商扩展类型和使用不寻常运算符的复杂表达式,改进了QAC对字面量和算术类型的处理,显著提高了支持度。

编码标准覆盖(MISRA C++:2023®, HKMC, CERT)

MISRA C++:2023

Helix QAC发布了MISRA C++:2023规则的100%执行覆盖,配备了适用于2023.3和2023.4版本的新MCPP合规模块。

更新的合规模块

  • HKMC映射更新
  • CERT类别增加了严重性、优先级和级别
  • 针对MISRA C:2023合规模块的日文翻译进行了改进
  • 提高了对下列标准的执行:
    • MISRA C:2023规则9.3、10.3、10.5
    • AUTOSAR规则A3-8-1、AV-1-2
    • MISRA C++规则6-2-2

框架

  • 改进了宏扩展和模板实例化历史的跟踪,以帮助诊断问题。
  • 通过增强的基于注释的抑制引擎,允许每行多个偏离原因。

用户体验的改进

支持自动CCT生成的其他编译器

  • Synopsys Metaware
  • Cadence Tensilica
  • TI C6000
  • Qualcomm Hexagon
  • Clang 15
  • Embarcadero BCC64

Visual Studio Code IDE插件

  • 改进VS Code插件以支持远程分析器执行

Visual Studio和Eclipse IDE插件

  • 总体稳定性改进

Validate

  • 支持通过CLI和GUI创建Validate项目

CLI

  • 新增qacli view选项以输出规则违规详细信息
  • 增强的%K类别说明符,以更轻松地映射到规则
  • 当没有HOME环境变量时,优雅地处理失败

GUI

  • 项目列表中新增上下文菜单项以打开项目位置
  • 树视图面板中的文件名搜索
  • 新的上下文菜单项以打开所选文件的预处理文件
  • 从源代码跳转到预处理源文件

Helix QAC 2023.4的重要变更

合规模块目录更改:

从Helix QAC 2023.4开始,工具将不再从旧的"PRQA"目录读取合规模块。合规模块仅将从"Perforce"文件目录等效位置读取。

以下是现在过时的文件目录:

  • %LOCALAPPDATA%\PRQA\installed_components.ini
  • %PROGRAMDATA%\PRQA\installed_components.ini
  • ${HOME}/.config/PRQA/installed_components.ini
  • /etc/prqa.d/installed_components.ini

想要了解更多有关HelixQAC 的技术信息及商务服务,请访问http://www.softtest.cn/留下您的详细需求或按以下方式联系**旋极信息** :

相关推荐
charlie11451419116 小时前
C++ STL CookBook
开发语言·c++·stl·c++20
zhangzhangkeji5 天前
<mutex>注释 11:重新思考与猜测、补充锁的睡眠与唤醒机制,结合 linux0.11 操作系统代码的辅助(上)
c++20·stl 库
charlie11451419110 天前
C++ STL Cookbook STL算法
c++·算法·stl·c++20
barbyQAQ14 天前
C++20协程——最简单的协程
c++20
CHANG_THE_WORLD15 天前
现代C++20 variant
java·前端·c++20
baiyu3322 天前
C++20: 像Python一样split字符串
c++·python·c++20
baiyu3323 天前
C++20: 像Python一样逐行读取文本文件并支持切片操作
python·c++20·切片
程序猿阿伟1 个月前
《C++20 图形界面程序:速度与渲染效率的双重优化秘籍》
c++20
羊小猪~~1 个月前
C/C++语言基础--initializer_list表达式、tuple元组、pair对组简介
c语言·开发语言·c++·vscode·list·c++20·visual studio
lexusv8ls600h1 个月前
探索 C++20:C++ 的新纪元
c++·c++20