[clang-tools-extra] [clang-tidy] Add options to throw unannotated functions in `bugprone-exception-escape` (PR #168324)
via cfe-commits
cfe-commits at lists.llvm.org
Tue Dec 9 11:50:09 PST 2025
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results
* 2992 tests passed
* 30 tests skipped
* 1 test failed
## Failed Tests
(click on a test name to see its output)
### Clang Tools
<details>
<summary>Clang Tools.clang-tidy/checkers/bugprone/exception-escape.cpp</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
C:/Python39/python.exe C:/_work/llvm-project/llvm-project/clang-tools-extra/test/../test\clang-tidy\check_clang_tidy.py -std=c++11,c++14 C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\checkers\bugprone\exception-escape.cpp bugprone-exception-escape C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp -- -config="{CheckOptions: { bugprone-exception-escape.IgnoredExceptions: 'ignored1,ignored2', bugprone-exception-escape.FunctionsThatShouldNotThrow: 'enabled1,enabled2,enabled3' }}" -- -fexceptions
# executed command: C:/Python39/python.exe 'C:/_work/llvm-project/llvm-project/clang-tools-extra/test/../test\clang-tidy\check_clang_tidy.py' -std=c++11,c++14 'C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\checkers\bugprone\exception-escape.cpp' bugprone-exception-escape 'C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp' -- '-config={CheckOptions: { bugprone-exception-escape.IgnoredExceptions: '"'"'ignored1,ignored2'"'"', bugprone-exception-escape.FunctionsThatShouldNotThrow: '"'"'enabled1,enabled2,enabled3'"'"' }}' -- -fexceptions
# .---command stdout------------
# | Running ['clang-tidy', '--experimental-custom-checks', 'C:\\_work\\llvm-project\\llvm-project\\build\\tools\\clang\\tools\\extra\\test\\clang-tidy\\checkers\\bugprone\\Output\\exception-escape.cpp.tmp.cpp', '-fix', '--checks=-*,bugprone-exception-escape', "-config={CheckOptions: { bugprone-exception-escape.IgnoredExceptions: 'ignored1,ignored2', bugprone-exception-escape.FunctionsThatShouldNotThrow: 'enabled1,enabled2,enabled3' }}", '--', '-fexceptions', '-std=c++11', '-nostdinc++']...
# | ------------------------ clang-tidy output -----------------------
# | 120 warnings generated.
# |
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:24:3: warning: an exception may be thrown in function '~throwing_destructor' which should not throw exceptions [bugprone-exception-escape]
# | 24 | ~throwing_destructor() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:26:5: note: frame #0: unhandled exception of type 'int' may be thrown in function '~throwing_destructor' here
# | 26 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:32:3: warning: an exception may be thrown in function 'throwing_move_constructor' which should not throw exceptions [bugprone-exception-escape]
# | 32 | throwing_move_constructor(throwing_move_constructor&&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:34:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throwing_move_constructor' here
# | 34 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:40:29: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | 40 | throwing_move_assignment& operator=(throwing_move_assignment&&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:42:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator=' here
# | 42 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:47:6: warning: an exception may be thrown in function 'throwing_noexcept' which should not throw exceptions [bugprone-exception-escape]
# | 47 | void throwing_noexcept() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:49:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throwing_noexcept' here
# | 49 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:61:6: warning: an exception may be thrown in function 'throw_and_catch_some' which should not throw exceptions [bugprone-exception-escape]
# | 61 | void throw_and_catch_some(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:65:5: note: frame #0: unhandled exception of type 'double' may be thrown in function 'throw_and_catch_some' here
# | 65 | throw 1.1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:90:6: warning: an exception may be thrown in function 'throw_and_rethrow' which should not throw exceptions [bugprone-exception-escape]
# | 90 | void throw_and_rethrow() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:93:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_and_rethrow' here
# | 93 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:100:6: warning: an exception may be thrown in function 'throw_catch_throw' which should not throw exceptions [bugprone-exception-escape]
# | 100 | void throw_catch_throw() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:105:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_catch_throw' here
# | 105 | throw 2;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:110:6: warning: an exception may be thrown in function 'throw_catch_rethrow_the_rest' which should not throw exceptions [bugprone-exception-escape]
# | 110 | void throw_catch_rethrow_the_rest(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:114:5: note: frame #0: unhandled exception of type 'double' may be thrown in function 'throw_catch_rethrow_the_rest' here
# | 114 | throw 1.1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:143:6: warning: an exception may be thrown in function 'throw_catch_multi_ptr_1' which should not throw exceptions [bugprone-exception-escape]
# | 143 | void throw_catch_multi_ptr_1() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:147:5: note: frame #0: unhandled exception of type 'char **' may be thrown in function 'throw_catch_multi_ptr_1' here
# | 147 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:189:6: warning: an exception may be thrown in function 'throw_c_catch_pointer' which should not throw exceptions [bugprone-exception-escape]
# | 189 | void throw_c_catch_pointer() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:194:5: note: frame #0: unhandled exception of type 'const int *' may be thrown in function 'throw_c_catch_pointer' here
# | 194 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:199:6: warning: an exception may be thrown in function 'throw_c_catch_pointer_v' which should not throw exceptions [bugprone-exception-escape]
# | 199 | void throw_c_catch_pointer_v() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:204:5: note: frame #0: unhandled exception of type 'const int *' may be thrown in function 'throw_c_catch_pointer_v' here
# | 204 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:209:6: warning: an exception may be thrown in function 'throw_v_catch_pointer' which should not throw exceptions [bugprone-exception-escape]
# | 209 | void throw_v_catch_pointer() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:214:5: note: frame #0: unhandled exception of type 'volatile int *' may be thrown in function 'throw_v_catch_pointer' here
# | 214 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:219:6: warning: an exception may be thrown in function 'throw_v_catch_pointer_c' which should not throw exceptions [bugprone-exception-escape]
# | 219 | void throw_v_catch_pointer_c() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:224:5: note: frame #0: unhandled exception of type 'volatile int *' may be thrown in function 'throw_v_catch_pointer_c' here
# | 224 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:229:6: warning: an exception may be thrown in function 'throw_cv_catch_pointer_c' which should not throw exceptions [bugprone-exception-escape]
# | 229 | void throw_cv_catch_pointer_c() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:234:5: note: frame #0: unhandled exception of type 'const volatile int *' may be thrown in function 'throw_cv_catch_pointer_c' here
# | 234 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:239:6: warning: an exception may be thrown in function 'throw_cv_catch_pointer_v' which should not throw exceptions [bugprone-exception-escape]
# | 239 | void throw_cv_catch_pointer_v() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:244:5: note: frame #0: unhandled exception of type 'const volatile int *' may be thrown in function 'throw_cv_catch_pointer_v' here
# | 244 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:286:6: warning: an exception may be thrown in function 'throw_derived_catch_base_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 286 | void throw_derived_catch_base_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:291:5: note: frame #0: unhandled exception of type 'const derived *' may be thrown in function 'throw_derived_catch_base_ptr' here
# | 291 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:311:6: warning: an exception may be thrown in function 'throw_derived_catch_base_private' which should not throw exceptions [bugprone-exception-escape]
# | 311 | void throw_derived_catch_base_private() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:315:5: note: frame #0: unhandled exception of type 'B' may be thrown in function 'throw_derived_catch_base_private' here
# | 315 | throw b;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:321:6: warning: an exception may be thrown in function 'throw_derived_catch_base_private_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 321 | void throw_derived_catch_base_private_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:325:5: note: frame #0: unhandled exception of type 'B *' may be thrown in function 'throw_derived_catch_base_private_ptr' here
# | 325 | throw &b;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:331:6: warning: an exception may be thrown in function 'throw_derived_catch_base_protected' which should not throw exceptions [bugprone-exception-escape]
# | 331 | void throw_derived_catch_base_protected() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:335:5: note: frame #0: unhandled exception of type 'C' may be thrown in function 'throw_derived_catch_base_protected' here
# | 335 | throw c;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:341:6: warning: an exception may be thrown in function 'throw_derived_catch_base_protected_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 341 | void throw_derived_catch_base_protected_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:345:5: note: frame #0: unhandled exception of type 'C *' may be thrown in function 'throw_derived_catch_base_protected_ptr' here
# | 345 | throw &c;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:351:6: warning: an exception may be thrown in function 'throw_derived_catch_base_ambiguous' which should not throw exceptions [bugprone-exception-escape]
# | 351 | void throw_derived_catch_base_ambiguous() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:355:5: note: frame #0: unhandled exception of type 'E' may be thrown in function 'throw_derived_catch_base_ambiguous' here
# | 355 | throw e;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:361:6: warning: an exception may be thrown in function 'throw_derived_catch_base_ambiguous_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 361 | void throw_derived_catch_base_ambiguous_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:365:5: note: frame #0: unhandled exception of type 'E' may be thrown in function 'throw_derived_catch_base_ambiguous_ptr' here
# | 365 | throw e;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:381:6: warning: an exception may be thrown in function 'throw_alias_catch_original_warn' which should not throw exceptions [bugprone-exception-escape]
# | 381 | void throw_alias_catch_original_warn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:387:5: note: frame #0: unhandled exception of type 'float' may be thrown in function 'throw_alias_catch_original_warn' here
# | 387 | throw a;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:403:6: warning: an exception may be thrown in function 'throw_original_catch_alias_warn' which should not throw exceptions [bugprone-exception-escape]
# | 403 | void throw_original_catch_alias_warn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:409:5: note: frame #0: unhandled exception of type 'char **' may be thrown in function 'throw_original_catch_alias_warn' here
# | 409 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:467:6: warning: an exception may be thrown in function 'throw_basefn_catch_derivedfn' which should not throw exceptions [bugprone-exception-escape]
# | 467 | void throw_basefn_catch_derivedfn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:470:5: note: frame #0: unhandled exception of type 'void (baseMember::*)()' may be thrown in function 'throw_basefn_catch_derivedfn' here
# | 470 | throw &baseMember::foo;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:483:6: warning: an exception may be thrown in function 'throw_basem_catch_basem_throw' which should not throw exceptions [bugprone-exception-escape]
# | 483 | void throw_basem_catch_basem_throw() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:487:5: note: frame #0: unhandled exception of type 'int *baseMember::**' may be thrown in function 'throw_basem_catch_basem_throw' here
# | 487 | throw &ptr;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:501:6: warning: an exception may be thrown in function 'throw_basem_catch_derivedm' which should not throw exceptions [bugprone-exception-escape]
# | 501 | void throw_basem_catch_derivedm() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:505:5: note: frame #0: unhandled exception of type 'int *baseMember::**' may be thrown in function 'throw_basem_catch_derivedm' here
# | 505 | throw &ptr;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:511:6: warning: an exception may be thrown in function 'throw_derivedm_catch_basem' which should not throw exceptions [bugprone-exception-escape]
# | 511 | void throw_derivedm_catch_basem() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:515:5: note: frame #0: unhandled exception of type 'int *derivedMember::**' may be thrown in function 'throw_derivedm_catch_basem' here
# | 515 | throw &ptr;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:521:6: warning: an exception may be thrown in function 'throw_original_catch_alias_2_warn' which should not throw exceptions [bugprone-exception-escape]
# | 521 | void throw_original_catch_alias_2_warn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:527:5: note: frame #0: unhandled exception of type 'char **' may be thrown in function 'throw_original_catch_alias_2_warn' here
# | 527 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:545:6: warning: an exception may be thrown in function 'bad_try_nested_try' which should not throw exceptions [bugprone-exception-escape]
# | 545 | void bad_try_nested_try(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:548:12: note: frame #0: unhandled exception of type 'int' may be thrown in function 'bad_try_nested_try' here
# | 548 | if (n) throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:582:6: warning: an exception may be thrown in function 'bad_catch_nested_try' which should not throw exceptions [bugprone-exception-escape]
# | 582 | void bad_catch_nested_try() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:588:7: note: frame #0: unhandled exception of type 'double' may be thrown in function 'bad_catch_nested_try' here
# | 588 | throw 1.1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:604:6: warning: an exception may be thrown in function 'indirect_implicit' which should not throw exceptions [bugprone-exception-escape]
# | 604 | void indirect_implicit() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:597:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'implicit_int_thrower' here
# | 597 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:606:3: note: frame #1: function 'indirect_implicit' calls function 'implicit_int_thrower' here
# | 606 | implicit_int_thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:611:6: warning: an exception may be thrown in function 'indirect_explicit' which should not throw exceptions [bugprone-exception-escape]
# | 611 | void indirect_explicit() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:601:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'explicit_int_thrower' here
# | 601 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:613:3: note: frame #1: function 'indirect_explicit' calls function 'explicit_int_thrower' here
# | 613 | explicit_int_thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:633:6: warning: an exception may be thrown in function 'swap' which should not throw exceptions [bugprone-exception-escape]
# | 633 | void swap(int&, int&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:635:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'swap' here
# | 635 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:639:6: warning: an exception may be thrown in function 'iter_swap' which should not throw exceptions [bugprone-exception-escape]
# | 639 | void iter_swap(int&, int&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:641:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'iter_swap' here
# | 641 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:645:6: warning: an exception may be thrown in function 'iter_move' which should not throw exceptions [bugprone-exception-escape]
# | 645 | void iter_move(int&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:647:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'iter_move' here
# | 647 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:666:6: warning: an exception may be thrown in function 'enabled1' which should not throw exceptions [bugprone-exception-escape]
# | 666 | void enabled1() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:668:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'enabled1' here
# | 668 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:672:6: warning: an exception may be thrown in function 'enabled2' which should not throw exceptions [bugprone-exception-escape]
# | 672 | void enabled2() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:668:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'enabled1' here
# | 668 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:674:3: note: frame #1: function 'enabled2' calls function 'enabled1' here
# | 674 | enabled1();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:699:6: warning: an exception may be thrown in function 'deep_stack_test' which should not throw exceptions [bugprone-exception-escape]
# | 699 | void deep_stack_test() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:688:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'deep_level3_thrower' here
# | 688 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:692:3: note: frame #1: function 'deep_level2_caller' calls function 'deep_level3_thrower' here
# | 692 | deep_level3_thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:696:3: note: frame #2: function 'deep_level1_caller' calls function 'deep_level2_caller' here
# | 696 | deep_level2_caller();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:701:3: note: frame #3: function 'deep_stack_test' calls function 'deep_level1_caller' here
# | 701 | deep_level1_caller();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:719:6: warning: an exception may be thrown in function 'template_stack_test' which should not throw exceptions [bugprone-exception-escape]
# | 719 | void template_stack_test() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:711:3: note: frame #0: unhandled exception of type 'char' may be thrown in function 'template_thrower<char>' here
# | 711 | throw T{};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:716:3: note: frame #1: function 'template_caller<char>' calls function 'template_thrower<char>' here
# | 716 | template_thrower<T>(t);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:721:3: note: frame #2: function 'template_stack_test' calls function 'template_caller<char>' here
# | 721 | template_caller<char>('a');
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:733:6: warning: an exception may be thrown in function 'multiple_exception_types' which should not throw exceptions [bugprone-exception-escape]
# | 733 | void multiple_exception_types(int choice) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:738:5: note: frame #0: unhandled exception of type 'double' may be thrown in function 'multiple_exception_types' here
# | 738 | throw 3.14;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:762:6: warning: an exception may be thrown in function 'this_counts' which should not throw exceptions [bugprone-exception-escape]
# | 762 | void this_counts(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:764:10: note: frame #0: unhandled exception of type 'int' may be thrown in function 'this_counts' here
# | 764 | if (n) throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:773:5: warning: an exception may be thrown in function 'directly_recursive' which should not throw exceptions [bugprone-exception-escape]
# | 773 | int directly_recursive(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:770:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 770 | throw n;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:776:5: note: frame #1: function 'directly_recursive' calls function 'thrower' here
# | 776 | thrower(n);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:789:5: warning: an exception may be thrown in function 'indirectly_recursive' which should not throw exceptions [bugprone-exception-escape]
# | 789 | int indirectly_recursive(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:770:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 770 | throw n;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:792:5: note: frame #1: function 'indirectly_recursive' calls function 'thrower' here
# | 792 | thrower(n);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:803:3: warning: an exception may be thrown in function 'sub_throws' which should not throw exceptions [bugprone-exception-escape]
# | 803 | sub_throws() noexcept : super_throws() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:799:36: note: frame #0: unhandled exception of type 'int' may be thrown in function 'super_throws' here
# | 799 | super_throws() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:803:27: note: frame #1: function 'sub_throws' calls function 'super_throws' here
# | 803 | sub_throws() noexcept : super_throws() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:812:3: warning: an exception may be thrown in function 'init_member_throws' which should not throw exceptions [bugprone-exception-escape]
# | 812 | init_member_throws() noexcept : s() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:799:36: note: frame #0: unhandled exception of type 'int' may be thrown in function 'super_throws' here
# | 799 | super_throws() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:812:35: note: frame #1: function 'init_member_throws' calls function 'super_throws' here
# | 812 | init_member_throws() noexcept : s() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:821:3: warning: an exception may be thrown in function 'implicit_init_member_throws' which should not throw exceptions [bugprone-exception-escape]
# | 821 | implicit_init_member_throws() noexcept {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:799:36: note: frame #0: unhandled exception of type 'int' may be thrown in function 'super_throws' here
# | 799 | super_throws() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:821:3: note: frame #1: function 'implicit_init_member_throws' calls function 'super_throws' here
# | 821 | implicit_init_member_throws() noexcept {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:834:3: warning: an exception may be thrown in function 'in_class_init_throws' which should not throw exceptions [bugprone-exception-escape]
# | 834 | in_class_init_throws() noexcept {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:828:45: note: frame #0: unhandled exception of type 'int' may be thrown in function 'init' here
# | 828 | explicit init(int, int) noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:832:9: note: frame #1: function 'in_class_init_throws' calls function 'init' here
# | 832 | init i{1, 2};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:840:5: warning: an exception may be thrown in function 'main' which should not throw exceptions [bugprone-exception-escape]
# | 840 | int main() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:842:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'main' here
# | 842 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:850:6: warning: an exception may be thrown in function 'test_basic_no_throw' which should not throw exceptions [bugprone-exception-escape]
# | 850 | void test_basic_no_throw() noexcept { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:850:39: note: frame #0: unhandled exception of type 'int' may be thrown in function 'test_basic_no_throw' here
# | 850 | void test_basic_no_throw() noexcept { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:860:6: warning: an exception may be thrown in function 'calls_non_and_throwing' which should not throw exceptions [bugprone-exception-escape]
# | 860 | void calls_non_and_throwing() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:854:43: note: frame #0: unhandled exception of type 'int' may be thrown in function 'test_basic_throw' here
# | 854 | void test_basic_throw() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:863:3: note: frame #1: function 'calls_non_and_throwing' calls function 'test_basic_throw' here
# | 863 | test_basic_throw();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:882:5: warning: an exception may be thrown in function 'test_implicit_throw' which should not throw exceptions [bugprone-exception-escape]
# | 882 | test_implicit_throw(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:882:50: note: frame #0: unhandled exception of type 'int' may be thrown in function 'test_implicit_throw' here
# | 882 | test_implicit_throw(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:886:26: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | 886 | test_implicit_throw& operator=(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:886:61: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator=' here
# | 886 | test_implicit_throw& operator=(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:889:5: warning: an exception may be thrown in function '~test_implicit_throw' which should not throw exceptions [bugprone-exception-escape]
# | 889 | ~test_implicit_throw() { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:889:30: note: frame #0: unhandled exception of type 'int' may be thrown in function '~test_implicit_throw' here
# | 889 | ~test_implicit_throw() { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:918:6: warning: an exception may be thrown in function 'throw_in_lambda' which should not throw exceptions [bugprone-exception-escape]
# | 918 | void throw_in_lambda() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:920:8: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 920 | [] { throw 42; }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:920:19: note: frame #1: function 'throw_in_lambda' calls function 'operator()' here
# | 920 | [] { throw 42; }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:929:6: warning: an exception may be thrown in function 'throw_in_lambda_default_by_value_capture' which should not throw exceptions [bugprone-exception-escape]
# | 929 | void throw_in_lambda_default_by_value_capture(const copy_constructor_throws& a) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:926:61: note: frame #0: unhandled exception of type 'int' may be thrown in function 'copy_constructor_throws' here
# | 926 | copy_constructor_throws(const copy_constructor_throws&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:931:4: note: frame #1: function 'throw_in_lambda_default_by_value_capture' calls function 'copy_constructor_throws' here
# | 931 | [=] { a; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:936:6: warning: an exception may be thrown in function 'throw_in_lambda_explicit_by_value_capture' which should not throw exceptions [bugprone-exception-escape]
# | 936 | void throw_in_lambda_explicit_by_value_capture(const copy_constructor_throws& a) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:926:61: note: frame #0: unhandled exception of type 'int' may be thrown in function 'copy_constructor_throws' here
# | 926 | copy_constructor_throws(const copy_constructor_throws&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:938:4: note: frame #1: function 'throw_in_lambda_explicit_by_value_capture' calls function 'copy_constructor_throws' here
# | 938 | [a] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:948:6: warning: an exception may be thrown in function 'throw_in_lambda_init_capture' which should not throw exceptions [bugprone-exception-escape]
# | 948 | void throw_in_lambda_init_capture() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:950:13: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 950 | [a = [] { throw 42; return 0; }()] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:950:34: note: frame #1: function 'throw_in_lambda_init_capture' calls function 'operator()' here
# | 950 | [a = [] { throw 42; return 0; }()] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:955:6: warning: an exception may be thrown in function 'throw_from_nested_lambda' which should not throw exceptions [bugprone-exception-escape]
# | 955 | void throw_from_nested_lambda() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:13: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:24: note: frame #1: function 'operator()' calls function 'operator()' here
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:29: note: frame #2: function 'throw_from_nested_lambda' calls function 'operator()' here
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:963:39: warning: an exception may be thrown in function 'operator()' which should not throw exceptions [bugprone-exception-escape]
# | 963 | const auto throw_in_noexcept_lambda = [] () noexcept { throw 42; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:963:56: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 963 | const auto throw_in_noexcept_lambda = [] () noexcept { throw 42; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:971:48: warning: an exception may be thrown in function 'operator()' which should not throw exceptions [bugprone-exception-escape]
# | 971 | const auto indirect_throw_in_noexcept_lambda = [] () noexcept { thrower(); };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:968:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 968 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:971:65: note: frame #1: function 'operator()' calls function 'thrower' here
# | 971 | const auto indirect_throw_in_noexcept_lambda = [] () noexcept { thrower(); };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:977:6: warning: an exception may be thrown in function 'throw_in_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 977 | void throw_in_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:979:17: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_in_function_arg' here
# | 979 | f(false ? 0 : throw 1);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:984:6: warning: an exception may be thrown in function 'throw_in_last_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 984 | void throw_in_last_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:986:25: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_in_last_function_arg' here
# | 986 | g(42, 67, false ? 0 : throw 1);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:990:6: warning: an exception may be thrown in function 'indirect_throw_in_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 990 | void indirect_throw_in_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:968:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 968 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:992:5: note: frame #1: function 'indirect_throw_in_function_arg' calls function 'thrower' here
# | 992 | f(thrower());
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:997:6: warning: an exception may be thrown in function 'indirect_throw_from_lambda_in_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 997 | void indirect_throw_from_lambda_in_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:999:10: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 999 | f([] { throw 1; return 0; }());
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:999:30: note: frame #1: function 'indirect_throw_from_lambda_in_function_arg' calls function 'operator()' here
# | 999 | f([] { throw 1; return 0; }());
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1008:6: warning: an exception may be thrown in function 'throw_in_constructor_arg' which should not throw exceptions [bugprone-exception-escape]
# | 1008 | void throw_in_constructor_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1010:19: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_in_constructor_arg' here
# | 1010 | S s(false ? 0 : throw 1);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1014:6: warning: an exception may be thrown in function 'indirect_throw_in_constructor_arg' which should not throw exceptions [bugprone-exception-escape]
# | 1014 | void indirect_throw_in_constructor_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:968:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 968 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1016:9: note: frame #1: function 'indirect_throw_in_constructor_arg' calls function 'thrower' here
# | 1016 | S s = thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1021:6: warning: an exception may be thrown in function 'weird_throw_in_call_subexpression' which should not throw exceptions [bugprone-exception-escape]
# | 1021 | void weird_throw_in_call_subexpression() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1023:19: note: frame #0: unhandled exception of type 'int' may be thrown in function 'weird_throw_in_call_subexpression' here
# | 1023 | (false ? []{} : throw 1)();
# | | ^
# | Suppressed 52 warnings (52 with check filters).
# |
# |
# | ------------------------------------------------------------------
# | ------------------------------ Fixes -----------------------------
# |
# | ------------------------------------------------------------------
# | Running ['clang-tidy', '--experimental-custom-checks', 'C:\\_work\\llvm-project\\llvm-project\\build\\tools\\clang\\tools\\extra\\test\\clang-tidy\\checkers\\bugprone\\Output\\exception-escape.cpp.tmp.cpp', '-fix', '--checks=-*,bugprone-exception-escape', "-config={CheckOptions: { bugprone-exception-escape.IgnoredExceptions: 'ignored1,ignored2', bugprone-exception-escape.FunctionsThatShouldNotThrow: 'enabled1,enabled2,enabled3' }}", '--', '-fexceptions', '-std=c++14', '-nostdinc++']...
# | ------------------------ clang-tidy output -----------------------
# | 119 warnings generated.
# |
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:24:3: warning: an exception may be thrown in function '~throwing_destructor' which should not throw exceptions [bugprone-exception-escape]
# | 24 | ~throwing_destructor() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:26:5: note: frame #0: unhandled exception of type 'int' may be thrown in function '~throwing_destructor' here
# | 26 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:32:3: warning: an exception may be thrown in function 'throwing_move_constructor' which should not throw exceptions [bugprone-exception-escape]
# | 32 | throwing_move_constructor(throwing_move_constructor&&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:34:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throwing_move_constructor' here
# | 34 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:40:29: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | 40 | throwing_move_assignment& operator=(throwing_move_assignment&&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:42:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator=' here
# | 42 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:47:6: warning: an exception may be thrown in function 'throwing_noexcept' which should not throw exceptions [bugprone-exception-escape]
# | 47 | void throwing_noexcept() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:49:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throwing_noexcept' here
# | 49 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:61:6: warning: an exception may be thrown in function 'throw_and_catch_some' which should not throw exceptions [bugprone-exception-escape]
# | 61 | void throw_and_catch_some(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:65:5: note: frame #0: unhandled exception of type 'double' may be thrown in function 'throw_and_catch_some' here
# | 65 | throw 1.1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:90:6: warning: an exception may be thrown in function 'throw_and_rethrow' which should not throw exceptions [bugprone-exception-escape]
# | 90 | void throw_and_rethrow() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:93:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_and_rethrow' here
# | 93 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:100:6: warning: an exception may be thrown in function 'throw_catch_throw' which should not throw exceptions [bugprone-exception-escape]
# | 100 | void throw_catch_throw() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:105:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_catch_throw' here
# | 105 | throw 2;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:110:6: warning: an exception may be thrown in function 'throw_catch_rethrow_the_rest' which should not throw exceptions [bugprone-exception-escape]
# | 110 | void throw_catch_rethrow_the_rest(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:114:5: note: frame #0: unhandled exception of type 'double' may be thrown in function 'throw_catch_rethrow_the_rest' here
# | 114 | throw 1.1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:143:6: warning: an exception may be thrown in function 'throw_catch_multi_ptr_1' which should not throw exceptions [bugprone-exception-escape]
# | 143 | void throw_catch_multi_ptr_1() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:147:5: note: frame #0: unhandled exception of type 'char **' may be thrown in function 'throw_catch_multi_ptr_1' here
# | 147 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:189:6: warning: an exception may be thrown in function 'throw_c_catch_pointer' which should not throw exceptions [bugprone-exception-escape]
# | 189 | void throw_c_catch_pointer() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:194:5: note: frame #0: unhandled exception of type 'const int *' may be thrown in function 'throw_c_catch_pointer' here
# | 194 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:199:6: warning: an exception may be thrown in function 'throw_c_catch_pointer_v' which should not throw exceptions [bugprone-exception-escape]
# | 199 | void throw_c_catch_pointer_v() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:204:5: note: frame #0: unhandled exception of type 'const int *' may be thrown in function 'throw_c_catch_pointer_v' here
# | 204 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:209:6: warning: an exception may be thrown in function 'throw_v_catch_pointer' which should not throw exceptions [bugprone-exception-escape]
# | 209 | void throw_v_catch_pointer() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:214:5: note: frame #0: unhandled exception of type 'volatile int *' may be thrown in function 'throw_v_catch_pointer' here
# | 214 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:219:6: warning: an exception may be thrown in function 'throw_v_catch_pointer_c' which should not throw exceptions [bugprone-exception-escape]
# | 219 | void throw_v_catch_pointer_c() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:224:5: note: frame #0: unhandled exception of type 'volatile int *' may be thrown in function 'throw_v_catch_pointer_c' here
# | 224 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:229:6: warning: an exception may be thrown in function 'throw_cv_catch_pointer_c' which should not throw exceptions [bugprone-exception-escape]
# | 229 | void throw_cv_catch_pointer_c() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:234:5: note: frame #0: unhandled exception of type 'const volatile int *' may be thrown in function 'throw_cv_catch_pointer_c' here
# | 234 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:239:6: warning: an exception may be thrown in function 'throw_cv_catch_pointer_v' which should not throw exceptions [bugprone-exception-escape]
# | 239 | void throw_cv_catch_pointer_v() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:244:5: note: frame #0: unhandled exception of type 'const volatile int *' may be thrown in function 'throw_cv_catch_pointer_v' here
# | 244 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:286:6: warning: an exception may be thrown in function 'throw_derived_catch_base_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 286 | void throw_derived_catch_base_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:291:5: note: frame #0: unhandled exception of type 'const derived *' may be thrown in function 'throw_derived_catch_base_ptr' here
# | 291 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:311:6: warning: an exception may be thrown in function 'throw_derived_catch_base_private' which should not throw exceptions [bugprone-exception-escape]
# | 311 | void throw_derived_catch_base_private() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:315:5: note: frame #0: unhandled exception of type 'B' may be thrown in function 'throw_derived_catch_base_private' here
# | 315 | throw b;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:321:6: warning: an exception may be thrown in function 'throw_derived_catch_base_private_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 321 | void throw_derived_catch_base_private_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:325:5: note: frame #0: unhandled exception of type 'B *' may be thrown in function 'throw_derived_catch_base_private_ptr' here
# | 325 | throw &b;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:331:6: warning: an exception may be thrown in function 'throw_derived_catch_base_protected' which should not throw exceptions [bugprone-exception-escape]
# | 331 | void throw_derived_catch_base_protected() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:335:5: note: frame #0: unhandled exception of type 'C' may be thrown in function 'throw_derived_catch_base_protected' here
# | 335 | throw c;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:341:6: warning: an exception may be thrown in function 'throw_derived_catch_base_protected_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 341 | void throw_derived_catch_base_protected_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:345:5: note: frame #0: unhandled exception of type 'C *' may be thrown in function 'throw_derived_catch_base_protected_ptr' here
# | 345 | throw &c;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:351:6: warning: an exception may be thrown in function 'throw_derived_catch_base_ambiguous' which should not throw exceptions [bugprone-exception-escape]
# | 351 | void throw_derived_catch_base_ambiguous() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:355:5: note: frame #0: unhandled exception of type 'E' may be thrown in function 'throw_derived_catch_base_ambiguous' here
# | 355 | throw e;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:361:6: warning: an exception may be thrown in function 'throw_derived_catch_base_ambiguous_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 361 | void throw_derived_catch_base_ambiguous_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:365:5: note: frame #0: unhandled exception of type 'E' may be thrown in function 'throw_derived_catch_base_ambiguous_ptr' here
# | 365 | throw e;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:381:6: warning: an exception may be thrown in function 'throw_alias_catch_original_warn' which should not throw exceptions [bugprone-exception-escape]
# | 381 | void throw_alias_catch_original_warn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:387:5: note: frame #0: unhandled exception of type 'float' may be thrown in function 'throw_alias_catch_original_warn' here
# | 387 | throw a;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:403:6: warning: an exception may be thrown in function 'throw_original_catch_alias_warn' which should not throw exceptions [bugprone-exception-escape]
# | 403 | void throw_original_catch_alias_warn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:409:5: note: frame #0: unhandled exception of type 'char **' may be thrown in function 'throw_original_catch_alias_warn' here
# | 409 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:467:6: warning: an exception may be thrown in function 'throw_basefn_catch_derivedfn' which should not throw exceptions [bugprone-exception-escape]
# | 467 | void throw_basefn_catch_derivedfn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:470:5: note: frame #0: unhandled exception of type 'void (baseMember::*)()' may be thrown in function 'throw_basefn_catch_derivedfn' here
# | 470 | throw &baseMember::foo;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:483:6: warning: an exception may be thrown in function 'throw_basem_catch_basem_throw' which should not throw exceptions [bugprone-exception-escape]
# | 483 | void throw_basem_catch_basem_throw() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:487:5: note: frame #0: unhandled exception of type 'int *baseMember::**' may be thrown in function 'throw_basem_catch_basem_throw' here
# | 487 | throw &ptr;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:501:6: warning: an exception may be thrown in function 'throw_basem_catch_derivedm' which should not throw exceptions [bugprone-exception-escape]
# | 501 | void throw_basem_catch_derivedm() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:505:5: note: frame #0: unhandled exception of type 'int *baseMember::**' may be thrown in function 'throw_basem_catch_derivedm' here
# | 505 | throw &ptr;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:511:6: warning: an exception may be thrown in function 'throw_derivedm_catch_basem' which should not throw exceptions [bugprone-exception-escape]
# | 511 | void throw_derivedm_catch_basem() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:515:5: note: frame #0: unhandled exception of type 'int *derivedMember::**' may be thrown in function 'throw_derivedm_catch_basem' here
# | 515 | throw &ptr;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:521:6: warning: an exception may be thrown in function 'throw_original_catch_alias_2_warn' which should not throw exceptions [bugprone-exception-escape]
# | 521 | void throw_original_catch_alias_2_warn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:527:5: note: frame #0: unhandled exception of type 'char **' may be thrown in function 'throw_original_catch_alias_2_warn' here
# | 527 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:545:6: warning: an exception may be thrown in function 'bad_try_nested_try' which should not throw exceptions [bugprone-exception-escape]
# | 545 | void bad_try_nested_try(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:548:12: note: frame #0: unhandled exception of type 'int' may be thrown in function 'bad_try_nested_try' here
# | 548 | if (n) throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:582:6: warning: an exception may be thrown in function 'bad_catch_nested_try' which should not throw exceptions [bugprone-exception-escape]
# | 582 | void bad_catch_nested_try() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:588:7: note: frame #0: unhandled exception of type 'double' may be thrown in function 'bad_catch_nested_try' here
# | 588 | throw 1.1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:604:6: warning: an exception may be thrown in function 'indirect_implicit' which should not throw exceptions [bugprone-exception-escape]
# | 604 | void indirect_implicit() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:597:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'implicit_int_thrower' here
# | 597 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:606:3: note: frame #1: function 'indirect_implicit' calls function 'implicit_int_thrower' here
# | 606 | implicit_int_thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:611:6: warning: an exception may be thrown in function 'indirect_explicit' which should not throw exceptions [bugprone-exception-escape]
# | 611 | void indirect_explicit() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:601:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'explicit_int_thrower' here
# | 601 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:613:3: note: frame #1: function 'indirect_explicit' calls function 'explicit_int_thrower' here
# | 613 | explicit_int_thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:633:6: warning: an exception may be thrown in function 'swap' which should not throw exceptions [bugprone-exception-escape]
# | 633 | void swap(int&, int&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:635:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'swap' here
# | 635 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:639:6: warning: an exception may be thrown in function 'iter_swap' which should not throw exceptions [bugprone-exception-escape]
# | 639 | void iter_swap(int&, int&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:641:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'iter_swap' here
# | 641 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:645:6: warning: an exception may be thrown in function 'iter_move' which should not throw exceptions [bugprone-exception-escape]
# | 645 | void iter_move(int&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:647:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'iter_move' here
# | 647 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:666:6: warning: an exception may be thrown in function 'enabled1' which should not throw exceptions [bugprone-exception-escape]
# | 666 | void enabled1() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:668:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'enabled1' here
# | 668 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:672:6: warning: an exception may be thrown in function 'enabled2' which should not throw exceptions [bugprone-exception-escape]
# | 672 | void enabled2() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:668:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'enabled1' here
# | 668 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:674:3: note: frame #1: function 'enabled2' calls function 'enabled1' here
# | 674 | enabled1();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:699:6: warning: an exception may be thrown in function 'deep_stack_test' which should not throw exceptions [bugprone-exception-escape]
# | 699 | void deep_stack_test() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:688:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'deep_level3_thrower' here
# | 688 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:692:3: note: frame #1: function 'deep_level2_caller' calls function 'deep_level3_thrower' here
# | 692 | deep_level3_thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:696:3: note: frame #2: function 'deep_level1_caller' calls function 'deep_level2_caller' here
# | 696 | deep_level2_caller();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:701:3: note: frame #3: function 'deep_stack_test' calls function 'deep_level1_caller' here
# | 701 | deep_level1_caller();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:719:6: warning: an exception may be thrown in function 'template_stack_test' which should not throw exceptions [bugprone-exception-escape]
# | 719 | void template_stack_test() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:711:3: note: frame #0: unhandled exception of type 'char' may be thrown in function 'template_thrower<char>' here
# | 711 | throw T{};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:716:3: note: frame #1: function 'template_caller<char>' calls function 'template_thrower<char>' here
# | 716 | template_thrower<T>(t);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:721:3: note: frame #2: function 'template_stack_test' calls function 'template_caller<char>' here
# | 721 | template_caller<char>('a');
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:733:6: warning: an exception may be thrown in function 'multiple_exception_types' which should not throw exceptions [bugprone-exception-escape]
# | 733 | void multiple_exception_types(int choice) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:738:5: note: frame #0: unhandled exception of type 'double' may be thrown in function 'multiple_exception_types' here
# | 738 | throw 3.14;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:762:6: warning: an exception may be thrown in function 'this_counts' which should not throw exceptions [bugprone-exception-escape]
# | 762 | void this_counts(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:764:10: note: frame #0: unhandled exception of type 'int' may be thrown in function 'this_counts' here
# | 764 | if (n) throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:773:5: warning: an exception may be thrown in function 'directly_recursive' which should not throw exceptions [bugprone-exception-escape]
# | 773 | int directly_recursive(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:770:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 770 | throw n;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:776:5: note: frame #1: function 'directly_recursive' calls function 'thrower' here
# | 776 | thrower(n);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:789:5: warning: an exception may be thrown in function 'indirectly_recursive' which should not throw exceptions [bugprone-exception-escape]
# | 789 | int indirectly_recursive(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:770:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 770 | throw n;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:792:5: note: frame #1: function 'indirectly_recursive' calls function 'thrower' here
# | 792 | thrower(n);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:803:3: warning: an exception may be thrown in function 'sub_throws' which should not throw exceptions [bugprone-exception-escape]
# | 803 | sub_throws() noexcept : super_throws() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:799:36: note: frame #0: unhandled exception of type 'int' may be thrown in function 'super_throws' here
# | 799 | super_throws() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:803:27: note: frame #1: function 'sub_throws' calls function 'super_throws' here
# | 803 | sub_throws() noexcept : super_throws() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:812:3: warning: an exception may be thrown in function 'init_member_throws' which should not throw exceptions [bugprone-exception-escape]
# | 812 | init_member_throws() noexcept : s() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:799:36: note: frame #0: unhandled exception of type 'int' may be thrown in function 'super_throws' here
# | 799 | super_throws() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:812:35: note: frame #1: function 'init_member_throws' calls function 'super_throws' here
# | 812 | init_member_throws() noexcept : s() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:821:3: warning: an exception may be thrown in function 'implicit_init_member_throws' which should not throw exceptions [bugprone-exception-escape]
# | 821 | implicit_init_member_throws() noexcept {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:799:36: note: frame #0: unhandled exception of type 'int' may be thrown in function 'super_throws' here
# | 799 | super_throws() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:821:3: note: frame #1: function 'implicit_init_member_throws' calls function 'super_throws' here
# | 821 | implicit_init_member_throws() noexcept {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:834:3: warning: an exception may be thrown in function 'in_class_init_throws' which should not throw exceptions [bugprone-exception-escape]
# | 834 | in_class_init_throws() noexcept {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:828:45: note: frame #0: unhandled exception of type 'int' may be thrown in function 'init' here
# | 828 | explicit init(int, int) noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:832:9: note: frame #1: function 'in_class_init_throws' calls function 'init' here
# | 832 | init i{1, 2};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:840:5: warning: an exception may be thrown in function 'main' which should not throw exceptions [bugprone-exception-escape]
# | 840 | int main() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:842:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'main' here
# | 842 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:850:6: warning: an exception may be thrown in function 'test_basic_no_throw' which should not throw exceptions [bugprone-exception-escape]
# | 850 | void test_basic_no_throw() noexcept { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:850:39: note: frame #0: unhandled exception of type 'int' may be thrown in function 'test_basic_no_throw' here
# | 850 | void test_basic_no_throw() noexcept { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:860:6: warning: an exception may be thrown in function 'calls_non_and_throwing' which should not throw exceptions [bugprone-exception-escape]
# | 860 | void calls_non_and_throwing() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:854:43: note: frame #0: unhandled exception of type 'int' may be thrown in function 'test_basic_throw' here
# | 854 | void test_basic_throw() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:863:3: note: frame #1: function 'calls_non_and_throwing' calls function 'test_basic_throw' here
# | 863 | test_basic_throw();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:882:5: warning: an exception may be thrown in function 'test_implicit_throw' which should not throw exceptions [bugprone-exception-escape]
# | 882 | test_implicit_throw(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:882:50: note: frame #0: unhandled exception of type 'int' may be thrown in function 'test_implicit_throw' here
# | 882 | test_implicit_throw(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:886:26: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | 886 | test_implicit_throw& operator=(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:886:61: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator=' here
# | 886 | test_implicit_throw& operator=(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:889:5: warning: an exception may be thrown in function '~test_implicit_throw' which should not throw exceptions [bugprone-exception-escape]
# | 889 | ~test_implicit_throw() { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:889:30: note: frame #0: unhandled exception of type 'int' may be thrown in function '~test_implicit_throw' here
# | 889 | ~test_implicit_throw() { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:918:6: warning: an exception may be thrown in function 'throw_in_lambda' which should not throw exceptions [bugprone-exception-escape]
# | 918 | void throw_in_lambda() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:920:8: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 920 | [] { throw 42; }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:920:19: note: frame #1: function 'throw_in_lambda' calls function 'operator()' here
# | 920 | [] { throw 42; }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:929:6: warning: an exception may be thrown in function 'throw_in_lambda_default_by_value_capture' which should not throw exceptions [bugprone-exception-escape]
# | 929 | void throw_in_lambda_default_by_value_capture(const copy_constructor_throws& a) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:926:61: note: frame #0: unhandled exception of type 'int' may be thrown in function 'copy_constructor_throws' here
# | 926 | copy_constructor_throws(const copy_constructor_throws&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:931:4: note: frame #1: function 'throw_in_lambda_default_by_value_capture' calls function 'copy_constructor_throws' here
# | 931 | [=] { a; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:936:6: warning: an exception may be thrown in function 'throw_in_lambda_explicit_by_value_capture' which should not throw exceptions [bugprone-exception-escape]
# | 936 | void throw_in_lambda_explicit_by_value_capture(const copy_constructor_throws& a) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:926:61: note: frame #0: unhandled exception of type 'int' may be thrown in function 'copy_constructor_throws' here
# | 926 | copy_constructor_throws(const copy_constructor_throws&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:938:4: note: frame #1: function 'throw_in_lambda_explicit_by_value_capture' calls function 'copy_constructor_throws' here
# | 938 | [a] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:948:6: warning: an exception may be thrown in function 'throw_in_lambda_init_capture' which should not throw exceptions [bugprone-exception-escape]
# | 948 | void throw_in_lambda_init_capture() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:950:13: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 950 | [a = [] { throw 42; return 0; }()] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:950:34: note: frame #1: function 'throw_in_lambda_init_capture' calls function 'operator()' here
# | 950 | [a = [] { throw 42; return 0; }()] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:955:6: warning: an exception may be thrown in function 'throw_from_nested_lambda' which should not throw exceptions [bugprone-exception-escape]
# | 955 | void throw_from_nested_lambda() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:13: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:24: note: frame #1: function 'operator()' calls function 'operator()' here
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:29: note: frame #2: function 'throw_from_nested_lambda' calls function 'operator()' here
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:963:39: warning: an exception may be thrown in function 'operator()' which should not throw exceptions [bugprone-exception-escape]
# | 963 | const auto throw_in_noexcept_lambda = [] () noexcept { throw 42; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:963:56: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 963 | const auto throw_in_noexcept_lambda = [] () noexcept { throw 42; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:971:48: warning: an exception may be thrown in function 'operator()' which should not throw exceptions [bugprone-exception-escape]
# | 971 | const auto indirect_throw_in_noexcept_lambda = [] () noexcept { thrower(); };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:968:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 968 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:971:65: note: frame #1: function 'operator()' calls function 'thrower' here
# | 971 | const auto indirect_throw_in_noexcept_lambda = [] () noexcept { thrower(); };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:977:6: warning: an exception may be thrown in function 'throw_in_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 977 | void throw_in_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:979:17: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_in_function_arg' here
# | 979 | f(false ? 0 : throw 1);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:984:6: warning: an exception may be thrown in function 'throw_in_last_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 984 | void throw_in_last_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:986:25: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_in_last_function_arg' here
# | 986 | g(42, 67, false ? 0 : throw 1);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:990:6: warning: an exception may be thrown in function 'indirect_throw_in_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 990 | void indirect_throw_in_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:968:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 968 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:992:5: note: frame #1: function 'indirect_throw_in_function_arg' calls function 'thrower' here
# | 992 | f(thrower());
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:997:6: warning: an exception may be thrown in function 'indirect_throw_from_lambda_in_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 997 | void indirect_throw_from_lambda_in_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:999:10: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 999 | f([] { throw 1; return 0; }());
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:999:30: note: frame #1: function 'indirect_throw_from_lambda_in_function_arg' calls function 'operator()' here
# | 999 | f([] { throw 1; return 0; }());
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1008:6: warning: an exception may be thrown in function 'throw_in_constructor_arg' which should not throw exceptions [bugprone-exception-escape]
# | 1008 | void throw_in_constructor_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1010:19: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_in_constructor_arg' here
# | 1010 | S s(false ? 0 : throw 1);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1014:6: warning: an exception may be thrown in function 'indirect_throw_in_constructor_arg' which should not throw exceptions [bugprone-exception-escape]
# | 1014 | void indirect_throw_in_constructor_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:968:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 968 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1016:9: note: frame #1: function 'indirect_throw_in_constructor_arg' calls function 'thrower' here
# | 1016 | S s = thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1021:6: warning: an exception may be thrown in function 'weird_throw_in_call_subexpression' which should not throw exceptions [bugprone-exception-escape]
# | 1021 | void weird_throw_in_call_subexpression() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1023:19: note: frame #0: unhandled exception of type 'int' may be thrown in function 'weird_throw_in_call_subexpression' here
# | 1023 | (false ? []{} : throw 1)();
# | | ^
# | Suppressed 51 warnings (51 with check filters).
# |
# |
# | ------------------------------------------------------------------
# | ------------------------------ Fixes -----------------------------
# |
# | ------------------------------------------------------------------
# `-----------------------------
# RUN: at line 7
C:/Python39/python.exe C:/_work/llvm-project/llvm-project/clang-tools-extra/test/../test\clang-tidy\check_clang_tidy.py -check-suffix=UNDEFINED -std=c++11,c++14 C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\checkers\bugprone\exception-escape.cpp bugprone-exception-escape C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp -- -config="{CheckOptions: { bugprone-exception-escape.TreatFunctionsWithoutSpecificationAsThrowing: 'OnlyUndefined', bugprone-exception-escape.IgnoredExceptions: 'ignored1,ignored2', bugprone-exception-escape.FunctionsThatShouldNotThrow: 'enabled1,enabled2,enabled3' }}" -- -fexceptions
# executed command: C:/Python39/python.exe 'C:/_work/llvm-project/llvm-project/clang-tools-extra/test/../test\clang-tidy\check_clang_tidy.py' -check-suffix=UNDEFINED -std=c++11,c++14 'C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\checkers\bugprone\exception-escape.cpp' bugprone-exception-escape 'C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp' -- '-config={CheckOptions: { bugprone-exception-escape.TreatFunctionsWithoutSpecificationAsThrowing: '"'"'OnlyUndefined'"'"', bugprone-exception-escape.IgnoredExceptions: '"'"'ignored1,ignored2'"'"', bugprone-exception-escape.FunctionsThatShouldNotThrow: '"'"'enabled1,enabled2,enabled3'"'"' }}' -- -fexceptions
# .---command stdout------------
# | Running ['clang-tidy', '--experimental-custom-checks', 'C:\\_work\\llvm-project\\llvm-project\\build\\tools\\clang\\tools\\extra\\test\\clang-tidy\\checkers\\bugprone\\Output\\exception-escape.cpp.tmp.cpp', '-fix', '--checks=-*,bugprone-exception-escape', "-config={CheckOptions: { bugprone-exception-escape.TreatFunctionsWithoutSpecificationAsThrowing: 'OnlyUndefined', bugprone-exception-escape.IgnoredExceptions: 'ignored1,ignored2', bugprone-exception-escape.FunctionsThatShouldNotThrow: 'enabled1,enabled2,enabled3' }}", '--', '-fexceptions', '-std=c++11', '-nostdinc++']...
# | ------------------------ clang-tidy output -----------------------
# | 171 warnings generated.
# |
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:24:3: warning: an exception may be thrown in function '~throwing_destructor' which should not throw exceptions [bugprone-exception-escape]
# | 24 | ~throwing_destructor() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:26:5: note: frame #0: unhandled exception of type 'int' may be thrown in function '~throwing_destructor' here
# | 26 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:31:8: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | 31 | struct throwing_move_constructor {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:31:8: warning: an exception may be thrown in function 'throwing_move_constructor' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:32:3: warning: an exception may be thrown in function 'throwing_move_constructor' which should not throw exceptions [bugprone-exception-escape]
# | 32 | throwing_move_constructor(throwing_move_constructor&&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:34:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throwing_move_constructor' here
# | 34 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:39:8: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | 39 | struct throwing_move_assignment {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:39:8: warning: an exception may be thrown in function 'throwing_move_assignment' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:40:29: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | 40 | throwing_move_assignment& operator=(throwing_move_assignment&&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:42:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator=' here
# | 42 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:47:6: warning: an exception may be thrown in function 'throwing_noexcept' which should not throw exceptions [bugprone-exception-escape]
# | 47 | void throwing_noexcept() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:49:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throwing_noexcept' here
# | 49 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:61:6: warning: an exception may be thrown in function 'throw_and_catch_some' which should not throw exceptions [bugprone-exception-escape]
# | 61 | void throw_and_catch_some(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:65:5: note: frame #0: unhandled exception of type 'double' may be thrown in function 'throw_and_catch_some' here
# | 65 | throw 1.1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:90:6: warning: an exception may be thrown in function 'throw_and_rethrow' which should not throw exceptions [bugprone-exception-escape]
# | 90 | void throw_and_rethrow() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:93:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_and_rethrow' here
# | 93 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:100:6: warning: an exception may be thrown in function 'throw_catch_throw' which should not throw exceptions [bugprone-exception-escape]
# | 100 | void throw_catch_throw() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:105:5: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_catch_throw' here
# | 105 | throw 2;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:110:6: warning: an exception may be thrown in function 'throw_catch_rethrow_the_rest' which should not throw exceptions [bugprone-exception-escape]
# | 110 | void throw_catch_rethrow_the_rest(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:114:5: note: frame #0: unhandled exception of type 'double' may be thrown in function 'throw_catch_rethrow_the_rest' here
# | 114 | throw 1.1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:143:6: warning: an exception may be thrown in function 'throw_catch_multi_ptr_1' which should not throw exceptions [bugprone-exception-escape]
# | 143 | void throw_catch_multi_ptr_1() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:147:5: note: frame #0: unhandled exception of type 'char **' may be thrown in function 'throw_catch_multi_ptr_1' here
# | 147 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:189:6: warning: an exception may be thrown in function 'throw_c_catch_pointer' which should not throw exceptions [bugprone-exception-escape]
# | 189 | void throw_c_catch_pointer() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:194:5: note: frame #0: unhandled exception of type 'const int *' may be thrown in function 'throw_c_catch_pointer' here
# | 194 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:199:6: warning: an exception may be thrown in function 'throw_c_catch_pointer_v' which should not throw exceptions [bugprone-exception-escape]
# | 199 | void throw_c_catch_pointer_v() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:204:5: note: frame #0: unhandled exception of type 'const int *' may be thrown in function 'throw_c_catch_pointer_v' here
# | 204 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:209:6: warning: an exception may be thrown in function 'throw_v_catch_pointer' which should not throw exceptions [bugprone-exception-escape]
# | 209 | void throw_v_catch_pointer() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:214:5: note: frame #0: unhandled exception of type 'volatile int *' may be thrown in function 'throw_v_catch_pointer' here
# | 214 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:219:6: warning: an exception may be thrown in function 'throw_v_catch_pointer_c' which should not throw exceptions [bugprone-exception-escape]
# | 219 | void throw_v_catch_pointer_c() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:224:5: note: frame #0: unhandled exception of type 'volatile int *' may be thrown in function 'throw_v_catch_pointer_c' here
# | 224 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:229:6: warning: an exception may be thrown in function 'throw_cv_catch_pointer_c' which should not throw exceptions [bugprone-exception-escape]
# | 229 | void throw_cv_catch_pointer_c() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:234:5: note: frame #0: unhandled exception of type 'const volatile int *' may be thrown in function 'throw_cv_catch_pointer_c' here
# | 234 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:239:6: warning: an exception may be thrown in function 'throw_cv_catch_pointer_v' which should not throw exceptions [bugprone-exception-escape]
# | 239 | void throw_cv_catch_pointer_v() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:244:5: note: frame #0: unhandled exception of type 'const volatile int *' may be thrown in function 'throw_cv_catch_pointer_v' here
# | 244 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:249:7: warning: an exception may be thrown in function '~base' which should not throw exceptions [bugprone-exception-escape]
# | 249 | class base {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:250:7: warning: an exception may be thrown in function '~derived' which should not throw exceptions [bugprone-exception-escape]
# | 250 | class derived: public base {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:286:6: warning: an exception may be thrown in function 'throw_derived_catch_base_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 286 | void throw_derived_catch_base_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:291:5: note: frame #0: unhandled exception of type 'const derived *' may be thrown in function 'throw_derived_catch_base_ptr' here
# | 291 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:297:7: warning: an exception may be thrown in function '~A' which should not throw exceptions [bugprone-exception-escape]
# | 297 | class A {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:305:7: warning: an exception may be thrown in function '~D' which should not throw exceptions [bugprone-exception-escape]
# | 305 | class D : public moreAliasedA {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:311:6: warning: an exception may be thrown in function 'throw_derived_catch_base_private' which should not throw exceptions [bugprone-exception-escape]
# | 311 | void throw_derived_catch_base_private() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:315:5: note: frame #0: unhandled exception of type 'B' may be thrown in function 'throw_derived_catch_base_private' here
# | 315 | throw b;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:321:6: warning: an exception may be thrown in function 'throw_derived_catch_base_private_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 321 | void throw_derived_catch_base_private_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:325:5: note: frame #0: unhandled exception of type 'B *' may be thrown in function 'throw_derived_catch_base_private_ptr' here
# | 325 | throw &b;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:331:6: warning: an exception may be thrown in function 'throw_derived_catch_base_protected' which should not throw exceptions [bugprone-exception-escape]
# | 331 | void throw_derived_catch_base_protected() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:335:5: note: frame #0: unhandled exception of type 'C' may be thrown in function 'throw_derived_catch_base_protected' here
# | 335 | throw c;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:341:6: warning: an exception may be thrown in function 'throw_derived_catch_base_protected_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 341 | void throw_derived_catch_base_protected_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:345:5: note: frame #0: unhandled exception of type 'C *' may be thrown in function 'throw_derived_catch_base_protected_ptr' here
# | 345 | throw &c;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:351:6: warning: an exception may be thrown in function 'throw_derived_catch_base_ambiguous' which should not throw exceptions [bugprone-exception-escape]
# | 351 | void throw_derived_catch_base_ambiguous() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:355:5: note: frame #0: unhandled exception of type 'E' may be thrown in function 'throw_derived_catch_base_ambiguous' here
# | 355 | throw e;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:361:6: warning: an exception may be thrown in function 'throw_derived_catch_base_ambiguous_ptr' which should not throw exceptions [bugprone-exception-escape]
# | 361 | void throw_derived_catch_base_ambiguous_ptr() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:365:5: note: frame #0: unhandled exception of type 'E' may be thrown in function 'throw_derived_catch_base_ambiguous_ptr' here
# | 365 | throw e;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:381:6: warning: an exception may be thrown in function 'throw_alias_catch_original_warn' which should not throw exceptions [bugprone-exception-escape]
# | 381 | void throw_alias_catch_original_warn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:387:5: note: frame #0: unhandled exception of type 'float' may be thrown in function 'throw_alias_catch_original_warn' here
# | 387 | throw a;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:403:6: warning: an exception may be thrown in function 'throw_original_catch_alias_warn' which should not throw exceptions [bugprone-exception-escape]
# | 403 | void throw_original_catch_alias_warn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:409:5: note: frame #0: unhandled exception of type 'char **' may be thrown in function 'throw_original_catch_alias_warn' here
# | 409 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:458:8: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | 458 | struct baseMember {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:458:8: warning: an exception may be thrown in function '~baseMember' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:463:8: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | 463 | struct derivedMember : baseMember {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:463:8: warning: an exception may be thrown in function '~derivedMember' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:467:6: warning: an exception may be thrown in function 'throw_basefn_catch_derivedfn' which should not throw exceptions [bugprone-exception-escape]
# | 467 | void throw_basefn_catch_derivedfn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:470:5: note: frame #0: unhandled exception of type 'void (baseMember::*)()' may be thrown in function 'throw_basefn_catch_derivedfn' here
# | 470 | throw &baseMember::foo;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:483:6: warning: an exception may be thrown in function 'throw_basem_catch_basem_throw' which should not throw exceptions [bugprone-exception-escape]
# | 483 | void throw_basem_catch_basem_throw() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:487:5: note: frame #0: unhandled exception of type 'int *baseMember::**' may be thrown in function 'throw_basem_catch_basem_throw' here
# | 487 | throw &ptr;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:501:6: warning: an exception may be thrown in function 'throw_basem_catch_derivedm' which should not throw exceptions [bugprone-exception-escape]
# | 501 | void throw_basem_catch_derivedm() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:505:5: note: frame #0: unhandled exception of type 'int *baseMember::**' may be thrown in function 'throw_basem_catch_derivedm' here
# | 505 | throw &ptr;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:511:6: warning: an exception may be thrown in function 'throw_derivedm_catch_basem' which should not throw exceptions [bugprone-exception-escape]
# | 511 | void throw_derivedm_catch_basem() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:515:5: note: frame #0: unhandled exception of type 'int *derivedMember::**' may be thrown in function 'throw_derivedm_catch_basem' here
# | 515 | throw &ptr;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:521:6: warning: an exception may be thrown in function 'throw_original_catch_alias_2_warn' which should not throw exceptions [bugprone-exception-escape]
# | 521 | void throw_original_catch_alias_2_warn() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:527:5: note: frame #0: unhandled exception of type 'char **' may be thrown in function 'throw_original_catch_alias_2_warn' here
# | 527 | throw p;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:545:6: warning: an exception may be thrown in function 'bad_try_nested_try' which should not throw exceptions [bugprone-exception-escape]
# | 545 | void bad_try_nested_try(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:548:12: note: frame #0: unhandled exception of type 'int' may be thrown in function 'bad_try_nested_try' here
# | 548 | if (n) throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:582:6: warning: an exception may be thrown in function 'bad_catch_nested_try' which should not throw exceptions [bugprone-exception-escape]
# | 582 | void bad_catch_nested_try() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:588:7: note: frame #0: unhandled exception of type 'double' may be thrown in function 'bad_catch_nested_try' here
# | 588 | throw 1.1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:604:6: warning: an exception may be thrown in function 'indirect_implicit' which should not throw exceptions [bugprone-exception-escape]
# | 604 | void indirect_implicit() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:597:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'implicit_int_thrower' here
# | 597 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:606:3: note: frame #1: function 'indirect_implicit' calls function 'implicit_int_thrower' here
# | 606 | implicit_int_thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:611:6: warning: an exception may be thrown in function 'indirect_explicit' which should not throw exceptions [bugprone-exception-escape]
# | 611 | void indirect_explicit() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:601:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'explicit_int_thrower' here
# | 601 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:613:3: note: frame #1: function 'indirect_explicit' calls function 'explicit_int_thrower' here
# | 613 | explicit_int_thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:633:6: warning: an exception may be thrown in function 'swap' which should not throw exceptions [bugprone-exception-escape]
# | 633 | void swap(int&, int&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:635:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'swap' here
# | 635 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:639:6: warning: an exception may be thrown in function 'iter_swap' which should not throw exceptions [bugprone-exception-escape]
# | 639 | void iter_swap(int&, int&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:641:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'iter_swap' here
# | 641 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:645:6: warning: an exception may be thrown in function 'iter_move' which should not throw exceptions [bugprone-exception-escape]
# | 645 | void iter_move(int&) {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:647:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'iter_move' here
# | 647 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:652:7: warning: an exception may be thrown in function 'bad_alloc' which should not throw exceptions [bugprone-exception-escape]
# | 652 | class bad_alloc {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:652:7: warning: an exception may be thrown in function '~bad_alloc' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:666:6: warning: an exception may be thrown in function 'enabled1' which should not throw exceptions [bugprone-exception-escape]
# | 666 | void enabled1() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:668:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'enabled1' here
# | 668 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:672:6: warning: an exception may be thrown in function 'enabled2' which should not throw exceptions [bugprone-exception-escape]
# | 672 | void enabled2() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:668:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'enabled1' here
# | 668 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:674:3: note: frame #1: function 'enabled2' calls function 'enabled1' here
# | 674 | enabled1();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:699:6: warning: an exception may be thrown in function 'deep_stack_test' which should not throw exceptions [bugprone-exception-escape]
# | 699 | void deep_stack_test() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:688:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'deep_level3_thrower' here
# | 688 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:692:3: note: frame #1: function 'deep_level2_caller' calls function 'deep_level3_thrower' here
# | 692 | deep_level3_thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:696:3: note: frame #2: function 'deep_level1_caller' calls function 'deep_level2_caller' here
# | 696 | deep_level2_caller();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:701:3: note: frame #3: function 'deep_stack_test' calls function 'deep_level1_caller' here
# | 701 | deep_level1_caller();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:719:6: warning: an exception may be thrown in function 'template_stack_test' which should not throw exceptions [bugprone-exception-escape]
# | 719 | void template_stack_test() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:711:3: note: frame #0: unhandled exception of type 'char' may be thrown in function 'template_thrower<char>' here
# | 711 | throw T{};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:716:3: note: frame #1: function 'template_caller<char>' calls function 'template_thrower<char>' here
# | 716 | template_thrower<T>(t);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:721:3: note: frame #2: function 'template_stack_test' calls function 'template_caller<char>' here
# | 721 | template_caller<char>('a');
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:729:6: warning: an exception may be thrown in function 'template_function_stack_test' which should not throw exceptions [bugprone-exception-escape]
# | 729 | void template_function_stack_test(T t) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:733:6: warning: an exception may be thrown in function 'multiple_exception_types' which should not throw exceptions [bugprone-exception-escape]
# | 733 | void multiple_exception_types(int choice) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:738:5: note: frame #0: unhandled exception of type 'double' may be thrown in function 'multiple_exception_types' here
# | 738 | throw 3.14;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:745:7: warning: an exception may be thrown in function 'ignored1' which should not throw exceptions [bugprone-exception-escape]
# | 745 | class ignored1 {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:745:7: warning: an exception may be thrown in function '~ignored1' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:746:7: warning: an exception may be thrown in function 'ignored2' which should not throw exceptions [bugprone-exception-escape]
# | 746 | class ignored2 {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:746:7: warning: an exception may be thrown in function '~ignored2' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:762:6: warning: an exception may be thrown in function 'this_counts' which should not throw exceptions [bugprone-exception-escape]
# | 762 | void this_counts(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:764:10: note: frame #0: unhandled exception of type 'int' may be thrown in function 'this_counts' here
# | 764 | if (n) throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:773:5: warning: an exception may be thrown in function 'directly_recursive' which should not throw exceptions [bugprone-exception-escape]
# | 773 | int directly_recursive(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:770:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 770 | throw n;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:776:5: note: frame #1: function 'directly_recursive' calls function 'thrower' here
# | 776 | thrower(n);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:789:5: warning: an exception may be thrown in function 'indirectly_recursive' which should not throw exceptions [bugprone-exception-escape]
# | 789 | int indirectly_recursive(int n) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:770:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 770 | throw n;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:792:5: note: frame #1: function 'indirectly_recursive' calls function 'thrower' here
# | 792 | thrower(n);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:798:8: warning: an exception may be thrown in function 'super_throws' which should not throw exceptions [bugprone-exception-escape]
# | 798 | struct super_throws {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:803:3: warning: an exception may be thrown in function 'sub_throws' which should not throw exceptions [bugprone-exception-escape]
# | 803 | sub_throws() noexcept : super_throws() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:799:36: note: frame #0: unhandled exception of type 'int' may be thrown in function 'super_throws' here
# | 799 | super_throws() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:803:27: note: frame #1: function 'sub_throws' calls function 'super_throws' here
# | 803 | sub_throws() noexcept : super_throws() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:812:3: warning: an exception may be thrown in function 'init_member_throws' which should not throw exceptions [bugprone-exception-escape]
# | 812 | init_member_throws() noexcept : s() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:799:36: note: frame #0: unhandled exception of type 'int' may be thrown in function 'super_throws' here
# | 799 | super_throws() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:812:35: note: frame #1: function 'init_member_throws' calls function 'super_throws' here
# | 812 | init_member_throws() noexcept : s() {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:821:3: warning: an exception may be thrown in function 'implicit_init_member_throws' which should not throw exceptions [bugprone-exception-escape]
# | 821 | implicit_init_member_throws() noexcept {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:799:36: note: frame #0: unhandled exception of type 'int' may be thrown in function 'super_throws' here
# | 799 | super_throws() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:821:3: note: frame #1: function 'implicit_init_member_throws' calls function 'super_throws' here
# | 821 | implicit_init_member_throws() noexcept {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:827:8: warning: an exception may be thrown in function 'init' which should not throw exceptions [bugprone-exception-escape]
# | 827 | struct init {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:834:3: warning: an exception may be thrown in function 'in_class_init_throws' which should not throw exceptions [bugprone-exception-escape]
# | 834 | in_class_init_throws() noexcept {}
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:828:45: note: frame #0: unhandled exception of type 'int' may be thrown in function 'init' here
# | 828 | explicit init(int, int) noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:832:9: note: frame #1: function 'in_class_init_throws' calls function 'init' here
# | 832 | init i{1, 2};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:840:5: warning: an exception may be thrown in function 'main' which should not throw exceptions [bugprone-exception-escape]
# | 840 | int main() {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:842:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'main' here
# | 842 | throw 1;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:850:6: warning: an exception may be thrown in function 'test_basic_no_throw' which should not throw exceptions [bugprone-exception-escape]
# | 850 | void test_basic_no_throw() noexcept { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:850:39: note: frame #0: unhandled exception of type 'int' may be thrown in function 'test_basic_no_throw' here
# | 850 | void test_basic_no_throw() noexcept { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:860:6: warning: an exception may be thrown in function 'calls_non_and_throwing' which should not throw exceptions [bugprone-exception-escape]
# | 860 | void calls_non_and_throwing() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:854:43: note: frame #0: unhandled exception of type 'int' may be thrown in function 'test_basic_throw' here
# | 854 | void test_basic_throw() noexcept(false) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:863:3: note: frame #1: function 'calls_non_and_throwing' calls function 'test_basic_throw' here
# | 863 | test_basic_throw();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:882:5: warning: an exception may be thrown in function 'test_implicit_throw' which should not throw exceptions [bugprone-exception-escape]
# | 882 | test_implicit_throw(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:882:50: note: frame #0: unhandled exception of type 'int' may be thrown in function 'test_implicit_throw' here
# | 882 | test_implicit_throw(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:886:26: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | 886 | test_implicit_throw& operator=(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:886:61: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator=' here
# | 886 | test_implicit_throw& operator=(test_implicit_throw&&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:889:5: warning: an exception may be thrown in function '~test_implicit_throw' which should not throw exceptions [bugprone-exception-escape]
# | 889 | ~test_implicit_throw() { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:889:30: note: frame #0: unhandled exception of type 'int' may be thrown in function '~test_implicit_throw' here
# | 889 | ~test_implicit_throw() { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:915:3: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:915:3)' which should not throw exceptions [bugprone-exception-escape]
# | 915 | [] { throw 42; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:918:6: warning: an exception may be thrown in function 'throw_in_lambda' which should not throw exceptions [bugprone-exception-escape]
# | 918 | void throw_in_lambda() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:920:8: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 920 | [] { throw 42; }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:920:19: note: frame #1: function 'throw_in_lambda' calls function 'operator()' here
# | 920 | [] { throw 42; }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:920:3: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:920:3)' which should not throw exceptions [bugprone-exception-escape]
# | 920 | [] { throw 42; }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:925:8: warning: an exception may be thrown in function '~copy_constructor_throws' which should not throw exceptions [bugprone-exception-escape]
# | 925 | struct copy_constructor_throws {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:929:6: warning: an exception may be thrown in function 'throw_in_lambda_default_by_value_capture' which should not throw exceptions [bugprone-exception-escape]
# | 929 | void throw_in_lambda_default_by_value_capture(const copy_constructor_throws& a) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:926:61: note: frame #0: unhandled exception of type 'int' may be thrown in function 'copy_constructor_throws' here
# | 926 | copy_constructor_throws(const copy_constructor_throws&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:931:4: note: frame #1: function 'throw_in_lambda_default_by_value_capture' calls function 'copy_constructor_throws' here
# | 931 | [=] { a; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:931:3: warning: an exception may be thrown in function '(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:931:3)' which should not throw exceptions [bugprone-exception-escape]
# | 931 | [=] { a; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:931:3: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:931:3: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:931:3)' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:936:6: warning: an exception may be thrown in function 'throw_in_lambda_explicit_by_value_capture' which should not throw exceptions [bugprone-exception-escape]
# | 936 | void throw_in_lambda_explicit_by_value_capture(const copy_constructor_throws& a) noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:926:61: note: frame #0: unhandled exception of type 'int' may be thrown in function 'copy_constructor_throws' here
# | 926 | copy_constructor_throws(const copy_constructor_throws&) { throw 42; }
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:938:4: note: frame #1: function 'throw_in_lambda_explicit_by_value_capture' calls function 'copy_constructor_throws' here
# | 938 | [a] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:938:3: warning: an exception may be thrown in function '(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:938:3)' which should not throw exceptions [bugprone-exception-escape]
# | 938 | [a] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:938:3: warning: an exception may be thrown in function 'operator=' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:938:3: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:938:3)' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:944:3: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:944:3)' which should not throw exceptions [bugprone-exception-escape]
# | 944 | [&] { a; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:945:3: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:945:3)' which should not throw exceptions [bugprone-exception-escape]
# | 945 | [&a] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:948:6: warning: an exception may be thrown in function 'throw_in_lambda_init_capture' which should not throw exceptions [bugprone-exception-escape]
# | 948 | void throw_in_lambda_init_capture() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:950:13: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 950 | [a = [] { throw 42; return 0; }()] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:950:34: note: frame #1: function 'throw_in_lambda_init_capture' calls function 'operator()' here
# | 950 | [a = [] { throw 42; return 0; }()] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:950:3: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:950:3)' which should not throw exceptions [bugprone-exception-escape]
# | 950 | [a = [] { throw 42; return 0; }()] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:950:8: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:950:8)' which should not throw exceptions [bugprone-exception-escape]
# | 950 | [a = [] { throw 42; return 0; }()] {};
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:955:6: warning: an exception may be thrown in function 'throw_from_nested_lambda' which should not throw exceptions [bugprone-exception-escape]
# | 955 | void throw_from_nested_lambda() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:13: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:24: note: frame #1: function 'operator()' calls function 'operator()' here
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:29: note: frame #2: function 'throw_from_nested_lambda' calls function 'operator()' here
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:3: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:3)' which should not throw exceptions [bugprone-exception-escape]
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:8: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:957:8)' which should not throw exceptions [bugprone-exception-escape]
# | 957 | [] { [] { throw 42; }(); }();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:963:39: warning: an exception may be thrown in function '(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:963:39)' which should not throw exceptions [bugprone-exception-escape]
# | 963 | const auto throw_in_noexcept_lambda = [] () noexcept { throw 42; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:963:39: warning: an exception may be thrown in function 'operator()' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:963:56: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 963 | const auto throw_in_noexcept_lambda = [] () noexcept { throw 42; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:963:39: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:963:39)' which should not throw exceptions [bugprone-exception-escape]
# | 963 | const auto throw_in_noexcept_lambda = [] () noexcept { throw 42; };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:971:48: warning: an exception may be thrown in function '(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:971:48)' which should not throw exceptions [bugprone-exception-escape]
# | 971 | const auto indirect_throw_in_noexcept_lambda = [] () noexcept { thrower(); };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:971:48: warning: an exception may be thrown in function 'operator()' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:968:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 968 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:971:65: note: frame #1: function 'operator()' calls function 'thrower' here
# | 971 | const auto indirect_throw_in_noexcept_lambda = [] () noexcept { thrower(); };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:971:48: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:971:48)' which should not throw exceptions [bugprone-exception-escape]
# | 971 | const auto indirect_throw_in_noexcept_lambda = [] () noexcept { thrower(); };
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:977:6: warning: an exception may be thrown in function 'throw_in_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 977 | void throw_in_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:979:17: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_in_function_arg' here
# | 979 | f(false ? 0 : throw 1);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:984:6: warning: an exception may be thrown in function 'throw_in_last_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 984 | void throw_in_last_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:986:25: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_in_last_function_arg' here
# | 986 | g(42, 67, false ? 0 : throw 1);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:990:6: warning: an exception may be thrown in function 'indirect_throw_in_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 990 | void indirect_throw_in_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:968:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 968 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:992:5: note: frame #1: function 'indirect_throw_in_function_arg' calls function 'thrower' here
# | 992 | f(thrower());
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:997:6: warning: an exception may be thrown in function 'indirect_throw_from_lambda_in_function_arg' which should not throw exceptions [bugprone-exception-escape]
# | 997 | void indirect_throw_from_lambda_in_function_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:999:10: note: frame #0: unhandled exception of type 'int' may be thrown in function 'operator()' here
# | 999 | f([] { throw 1; return 0; }());
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:999:30: note: frame #1: function 'indirect_throw_from_lambda_in_function_arg' calls function 'operator()' here
# | 999 | f([] { throw 1; return 0; }());
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:999:5: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:999:5)' which should not throw exceptions [bugprone-exception-escape]
# | 999 | f([] { throw 1; return 0; }());
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1004:8: warning: an exception may be thrown in function 'S' which should not throw exceptions [bugprone-exception-escape]
# | 1004 | struct S {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1004:8: warning: an exception may be thrown in function '~S' which should not throw exceptions [bugprone-exception-escape]
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1008:6: warning: an exception may be thrown in function 'throw_in_constructor_arg' which should not throw exceptions [bugprone-exception-escape]
# | 1008 | void throw_in_constructor_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1010:19: note: frame #0: unhandled exception of type 'int' may be thrown in function 'throw_in_constructor_arg' here
# | 1010 | S s(false ? 0 : throw 1);
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1014:6: warning: an exception may be thrown in function 'indirect_throw_in_constructor_arg' which should not throw exceptions [bugprone-exception-escape]
# | 1014 | void indirect_throw_in_constructor_arg() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:968:3: note: frame #0: unhandled exception of type 'int' may be thrown in function 'thrower' here
# | 968 | throw 42;
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1016:9: note: frame #1: function 'indirect_throw_in_constructor_arg' calls function 'thrower' here
# | 1016 | S s = thrower();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1021:6: warning: an exception may be thrown in function 'weird_throw_in_call_subexpression' which should not throw exceptions [bugprone-exception-escape]
# | 1021 | void weird_throw_in_call_subexpression() noexcept {
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1023:19: note: frame #0: unhandled exception of type 'int' may be thrown in function 'weird_throw_in_call_subexpression' here
# | 1023 | (false ? []{} : throw 1)();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1023:12: warning: an exception may be thrown in function '~(lambda at C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1023:12)' which should not throw exceptions [bugprone-exception-escape]
# | 1023 | (false ? []{} : throw 1)();
# | | ^
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:1029:6: warning: an exception may be thrown in function 'test_undefined_function' which should not throw exceptions [bugprone-exception-escape]
# | 1029 | void test_undefined_function() noexcept {
# | | ^
# | Suppressed 52 warnings (52 with check filters).
# |
# |
# | ------------------------------------------------------------------
# | ------------------------------ Fixes -----------------------------
# |
# | ------------------------------------------------------------------
# | FileCheck -input-file=C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp.msg C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\checkers\bugprone\exception-escape.cpp -check-prefixes=CHECK-MESSAGES-UNDEFINED -implicit-check-not={{warning|error}}: failed:
# | command line:1:22: error: IMPLICIT-CHECK-NOT: excluded string found in input
# |
# | -implicit-check-not='{{warning|error}}:'
# |
# | ^
# |
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp.msg:2:142: note: found here
# |
# | C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:24:3: warning: an exception may be thrown in function '~throwing_destructor' which should not throw exceptions [bugprone-exception-escape]
# |
# | ^~~~~~~~
# |
# |
# |
# | Input file: C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp.msg
# |
# | Check file: C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\checkers\bugprone\exception-escape.cpp
# |
# |
# |
# | -dump-input=help explains the following input dump.
# |
# |
# |
# | Input was:
# |
# | <<<<<<
# |
# | 1: 171 warnings generated.
# |
# |
# | 2: C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:24:3: warning: an exception may be thrown in function '~throwing_destructor' which should not throw exceptions [bugprone-exception-escape]
# |
# | not:imp1 !~~~~~~~ error: no match expected
# |
# | 3: 24 | ~throwing_destructor() {
# |
# | 4: | ^
# |
# | 5: C:\_work\llvm-project\llvm-project\build\tools\clang\tools\extra\test\clang-tidy\checkers\bugprone\Output\exception-escape.cpp.tmp.cpp:26:5: note: frame #0: unhandled exception of type 'int' may be thrown in function '~throwing_destructor' here
# |
# | 6: 26 | throw 1;
# |
# | 7: | ^
# |
# | .
# |
# | .
# |
# | .
# |
# | >>>>>>
# |
# |
# `-----------------------------
# .---command stderr------------
# | Traceback (most recent call last):
# | File "C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\check_clang_tidy.py", line 413, in <module>
# | main()
# | File "C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\check_clang_tidy.py", line 409, in main
# | CheckRunner(args, extra_args).run()
# | File "C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\check_clang_tidy.py", line 312, in run
# | self.check_messages(clang_tidy_output)
# | File "C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\check_clang_tidy.py", line 273, in check_messages
# | try_run(
# | File "C:\_work\llvm-project\llvm-project\clang-tools-extra\test\clang-tidy\check_clang_tidy.py", line 63, in try_run
# | process_output = subprocess.check_output(args, stderr=subprocess.STDOUT).decode(
# | File "c:\python39\lib\subprocess.py", line 424, in check_output
# | return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
# | File "c:\python39\lib\subprocess.py", line 528, in run
# | raise CalledProcessError(retcode, process.args,
# | subprocess.CalledProcessError: Command '['FileCheck', '-input-file=C:\\_work\\llvm-project\\llvm-project\\build\\tools\\clang\\tools\\extra\\test\\clang-tidy\\checkers\\bugprone\\Output\\exception-escape.cpp.tmp.cpp.msg', 'C:\\_work\\llvm-project\\llvm-project\\clang-tools-extra\\test\\clang-tidy\\checkers\\bugprone\\exception-escape.cpp', '-check-prefixes=CHECK-MESSAGES-UNDEFINED', '-implicit-check-not={{warning|error}}:']' returned non-zero exit status 1.
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.
https://github.com/llvm/llvm-project/pull/168324
More information about the cfe-commits
mailing list