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/留下您的详细需求或按以下方式联系**旋极信息** :

相关推荐
Hical_W4 小时前
Hical 踩坑实录五部曲(二):MSVC / GCC / Clang 三平台 C++20 编译差异
linux·windows·经验分享·嵌入式硬件·macos·开源·c++20
Shan12052 天前
C++20中带有约束条件的new
c++20
Hical_W4 天前
用 Hical + MySQL 5 分钟搭建 CRUD API(C++20 协程版)
数据库·mysql·c++20
Hical_W5 天前
从 io_context 出发,掌握 C++20 协程式异步 I/O,学会 TCP 服务器、定时器和多线程模型,结合 Hical 框架实战解读
服务器·tcp/ip·开源·c++20
c++之路9 天前
C++20概述
java·开发语言·c++20
故事还在继续吗10 天前
C++20关键特性
开发语言·c++·c++20
熊文豪12 天前
FinceptTerminal 深度解析:用 C++20 + Qt6 + Python 打造的开源 Bloomberg 终端
python·开源·c++20·bloomberg·finceptterminal
前进吧-程序员22 天前
现代 C++ 异步编程:从零实现一个高性能 ThreadPool (C++20 深度实践)
开发语言·c++·c++20
君鼎24 天前
C++20 新特性全面总结
算法·c++20
十五年专注C++开发1 个月前
UDRefl: 一个基于C++20的高性能动态反射库
c++20·反射·udrefl