【发布时间】:2021-06-30 21:06:36
【问题描述】:
我在 IAR Embedded Workbench 项目中使用 Coverity Analysis。
当我使用 IAR Embedded Workbench IDE 进行构建时,出现了零错误和零警告。 当我使用批处理文件(Windows 命令窗口)时,出现零错误和零警告:
"C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.4\common\bin\IarBuild.exe" .\EWARM\Voyant3.ewp -build Voyant3
When I have Coverity use IAR EW command line, I'm getting the error:
"c:\program files (x86)\iar systems\embedded workbench 8.4\arm\inc\c\yvals.h",
line 321: error #20: identifier "va_list" is undefined
typedef _VA_LIST __Va_list;
^
Emit for file 'C:/sandboxes/git/voyant-3/Voyant3/Middlewares/ST/STM32_USB_Host_Library/Class/MSC/Src/usbh_msc_scsi.c' complete.
[ERROR] 1 error detected in the compilation of "Middlewares/ST/STM32_USB_Host_Library/Class/MSC/Src/usbh_msc_scsi.c".
WARNING: cov-emit returned with code 1
这是我的问题:
-
va_list在哪里定义? - 如何让 Coverity 定义它?
- 我还有什么遗漏的吗?
我正在使用:
IAR 电子战:8.42
覆盖范围:2019
编辑 1:Coverity 配置命令
下面是我使用 IAR 配置 Coverity 的命令:
"C:\Program Files\Coverity\Coverity Static Analysis\bin" ^
-co "C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.4\arm\bin\iccarm.exe" ^
--xml-option=add_arg:"--unsigned_chars" ^
--xml-option=add_arg:"--enable_user_sections" ^
--xml-option=add_arg:"--ppp_translator" ^
--xml-option=add_arg:"replace/\bchar\b/unsigned char" ^
--xml-option=add_arg:"--ppp_translator" ^
--xml-option=add_arg:"replace/signed\s+unsigned\s+char/signed char" ^
-- -e --endian=little --cpu="ST STM32H743ZI" ^
--dlib_config "c:\Program Files (x86)\IAR Systems\Embedded Workbench 8.4\arm\inc\c\DLib_Config_Full.h"
【问题讨论】: