我想使用clang-tidy来找出所有未被直接或间接调用者捕获的异常,直到main,但此演示没有任何效果。一般来说,我想要清楚地报告cc函数抛出了一个异常,没有被main捕获,但它什么也没有报告,我想知道为什么&我该如何实现我的目标?非常感谢
main.cpp
#include <iostream>
int m = 0;
extern int cc() throw();
int ff() {
if (m > 0) {
throw "H";
}
return 1;
}
int gg() {
if (m > 0) {
return ff();
} else {
return 1;
}
}
int main() {
return cc();
}cc.cpp
extern int m;
int cc() {
if (m > 0) {
return 1;
}
throw "D";
}.clang-tidy
Checks: '-*,bugprone-exception-escape'
CheckOptions:
- key: FunctionsThatShouldNotThrow
value: main
HeaderFilterRegex: '.*' command
clang-tidy main.cpp cc.cpp发布于 2021-11-19 08:14:49
CheckOptions中的key应该是bugprone-exception-escape.FunctionsThatShouldNotThrow而不是FunctionsThatShouldNotThrowhttps://stackoverflow.com/questions/70013401
复制相似问题