[clang-tools-extra] [clang-tidy] Add options to throw unannotated functions in `bugprone-exception-escape` (PR #168324)
Oliver Stöneberg via cfe-commits
cfe-commits at lists.llvm.org
Tue Dec 9 09:48:57 PST 2025
================
@@ -71,3 +71,15 @@ Options
Comma separated list containing type names which are not counted as thrown
exceptions in the check. Default value is an empty string.
+
+.. option:: KnownUnannotatedAsThrowing
+
+ When `true`, treat calls to functions with visible definitions that are not
+ explicitly declared as non-throwing (i.e. lack ``noexcept`` or ``throw()``)
+ as potentially throwing, even if their bodies are visible and no explicit
+ throw is found. Default value is `false`.
+
+.. option:: UnknownAsThrowing
+
+ When `true`, treat calls to functions without visible definitions as
+ potentially throwing. Default value is `false`.
----------------
firewave wrote:
It might make sense to have the behavior added by `All` (handling non-annotates visible functions without throws as throwing) available on its own as that would allow to find functions which lack `noexcept`. Not sure if that fits in the enum. Or it makes even sense (I am thinking in the terms of addressing the found issues incrementally).
But maybe that should be a separate check.
https://github.com/llvm/llvm-project/pull/168324
More information about the cfe-commits
mailing list