Aaron modified cert-err58-cpp to include all exceptions thrown before main()
Update the check to match.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
Thank you for working on this! I have a few more test cases to try, but I think you're already handling them properly.
| test/clang-tidy/cert-static-object-exception.cpp | ||
|---|---|---|
| 29 ↗ | (On Diff #75645) | We should also have a test for implicitly-provided constructors, since those are noexcept if the data members all have noexcept constructors. Something like: struct Y {
S s;
};
Y y; // Diagnose
struct Z {
T t;
};
Z z; // Do not diagnose |
| 60 ↗ | (On Diff #75645) | Let's also make sure that we're properly catching conversion operators with a test like: struct UserConv_Bad {
operator int() noexcept(false);
};
struct UserConv_Good {
operator int() noexcept;
};
UserConv_Bad some_bad_func();
UserConv_Good some_good_func();
int l = some_bad_func(); // Diagnose
int m = some_good_func(); // Do not diagnose |