[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