【发布时间】:2017-09-19 19:50:56
【问题描述】:
随着 Coverity 开始将 C++11 noexcept 识别为 throw(),
它在调用第三方库的代码中产生虚假的误报
像升压。
此外,一些代码故意在异常时崩溃
因为这种情况下的异常是不可恢复的、合同外的或错误的。
此案例的覆盖率报告示例如下:
CID 178772(1 个中的第 1 个):未捕获的异常 (UNCAUGHT_EXCEPT)exn_spec_violation:抛出了 boost::exception_detail::clone_impl > 类型的异常,但抛出列表 throw() 不允许它被抛出。这将导致对通常调用终止()的意外()的调用。
要提交给 Coverity 扫描以全局忽略 noexcept 的建模文件是什么?
【问题讨论】:
标签: c++ noexcept coverity false-positive