aaron.ballman added inline comments.
================
Comment at:
clang-tools-extra/test/clang-tidy/checkers/bugprone-exception-escape.cpp:291-293
+struct super_throws {
+ super_throws() noexcept(false) { throw 42; }
+};
----------------
I think this needs additional test coverage.
Dynamic exception specifications:
```
struct super_throws_again {
super_throws_again() throw(int);
};
struct sub_throws_again : super_throws_again {
sub_throws_again() noexcept : super_throws_again() {}
};
```
Non-base class explicit inits:
```
struct init_member_throws {
super_throws s;
init_member_throws() noexcept : s() {}
};
```
Non-base class implicit inits:
```
struct init_member_throws {
super_throws s;
init_member_throws() noexcept {}
};
```
In-class initializers (IIRC those are modeled as a ctor init):
```
struct init {
explicit init(int, int) noexcept(false);
};
struct in_class_init_throws {
init i{1, 2};
};
```
I *think* all of these will wind up being covered by the code changes, but we
should test them to be sure.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D113507/new/
https://reviews.llvm.org/D113507
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits