<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/58793>58793</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Failed to build Boost Outcome
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          huhaichuan0704
      </td>
    </tr>
</table>

<pre>
    The version of Clang is:
```
clang version 16.0.0 (/startdir/llvm-project f33173acd6875fa86448bb6d91bdac8f1296510a)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/sbin
```

The error message is:
```
free(): invalid pointer
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: /usr/sbin/clang++ -isystem /root/test/build/vcpkg_installed/x64-linux/include -std=gnu++20 -MD -MT CMakeFiles/clang-test.dir/main.cpp.o -MF CMakeFiles/clang-test.dir/main.cpp.o.d -o CMakeFiles/clang-test.dir/main.cpp.o -c /root/test/main.cpp
1.      /root/test/build/vcpkg_installed/x64-linux/include/boost/system/detail/system_category_impl.hpp:51:1: current parser token 'inline'
2.      /root/test/build/vcpkg_installed/x64-linux/include/boost/system/detail/system_category_impl.hpp:44:85: LLVM IR generation of declaration 'boost::system::detail::system_error_category::default_error_condition'
3.      /root/test/build/vcpkg_installed/x64-linux/include/boost/system/detail/system_category_impl.hpp:44:85: Generating code for declaration 'boost::system::detail::system_error_category::default_error_condition'
 #0 0x00007f44b6e124f9 (/usr/bin/../lib/libLLVM-16.so+0xcb24f9)
 #1 0x00007f44b6dc761f llvm::sys::RunSignalHandlers() (/usr/bin/../lib/libLLVM-16.so+0xc6761f)
 #2 0x00007f44b6d544c8 (/usr/bin/../lib/libLLVM-16.so+0xbf44c8)
 #3 0x00007f44b5d7aa00 (/usr/bin/../lib/libc.so.6+0x38a00)
 #4 0x00007f44b5dca64c (/usr/bin/../lib/libc.so.6+0x8864c)
 #5 0x00007f44b5d7a958 raise (/usr/bin/../lib/libc.so.6+0x38958)
 #6 0x00007f44b5d6453d abort (/usr/bin/../lib/libc.so.6+0x2253d)
 #7 0x00007f44b5dbe7ee (/usr/bin/../lib/libc.so.6+0x7c7ee)
 #8 0x00007f44b5dd43dc (/usr/bin/../lib/libc.so.6+0x923dc)
 #9 0x00007f44b5dd622c (/usr/bin/../lib/libc.so.6+0x9422c)
#10 0x00007f44b5dd8ba3 cfree (/usr/bin/../lib/libc.so.6+0x96ba3)
#11 0x00007f44b6f4fa95 llvm::LandingPadInst::addClause(llvm::Constant*) (/usr/bin/../lib/libLLVM-16.so+0xdefa95)
#12 0x00007f44bec244e0 (/usr/bin/../lib/libclang-cpp.so.16+0x181c4e0)
#13 0x00007f44bec2f768 clang::CodeGen::CodeGenFunction::getInvokeDestImpl() (/usr/bin/../lib/libclang-cpp.so.16+0x1827768)
#14 0x00007f44bebd3ad7 clang::CodeGen::CodeGenFunction::EmitCall(clang::CodeGen::CGFunctionInfo const&, clang::CodeGen::CGCallee const&, clang::CodeGen::ReturnValueSlot, clang::CodeGen::CallArgList const&, llvm::CallBase**, bool, clang::SourceLocation) (/usr/bin/../lib/libclang-cpp.so.16+0x17cbad7)
#15 0x00007f44bebd92f6 clang::CodeGen::CodeGenFunction::EmitCXXConstructorCall(clang::CXXConstructorDecl const*, clang::CXXCtorType, bool, bool, clang::CodeGen::Address, clang::CodeGen::CallArgList&, clang::CodeGen::AggValueSlot::Overlap_t, clang::SourceLocation, bool) (/usr/bin/../lib/libclang-cpp.so.16+0x17d12f6)
#16 0x00007f44bebd9b49 clang::CodeGen::CodeGenFunction::EmitCXXConstructorCall(clang::CXXConstructorDecl const*, clang::CXXCtorType, bool, bool, clang::CodeGen::AggValueSlot, clang::CXXConstructExpr const*) (/usr/bin/../lib/libclang-cpp.so.16+0x17d1b49)
#17 0x00007f44bec66b5f (/usr/bin/../lib/libclang-cpp.so.16+0x185eb5f)
#18 0x00007f44bec4fdfe (/usr/bin/../lib/libclang-cpp.so.16+0x1847dfe)
#19 0x00007f44bec50632 clang::CodeGen::CodeGenFunction::EmitAggExpr(clang::Expr const*, clang::CodeGen::AggValueSlot) (/usr/bin/../lib/libclang-cpp.so.16+0x1848632)
#20 0x00007f44bec50738 clang::CodeGen::CodeGenFunction::EmitAnyExpr(clang::Expr const*, clang::CodeGen::AggValueSlot, bool) (/usr/bin/../lib/libclang-cpp.so.16+0x1848738)
#21 0x00007f44bec509b8 clang::CodeGen::CodeGenFunction::EmitAnyExprToTemp(clang::Expr const*) (/usr/bin/../lib/libclang-cpp.so.16+0x18489b8)
#22 0x00007f44bebbfb37 clang::CodeGen::CodeGenFunction::EmitCallArg(clang::CodeGen::CallArgList&, clang::Expr const*, clang::QualType) (/usr/bin/../lib/libclang-cpp.so.16+0x17b7b37)
#23 0x00007f44bebc0a7e clang::CodeGen::CodeGenFunction::EmitCallArgs(clang::CodeGen::CallArgList&, clang::CodeGen::CodeGenFunction::PrototypeWrapper, llvm::iterator_range<clang::Stmt::CastIterator<clang::Expr, clang::Expr const* const, clang::Stmt const* const>>, clang::CodeGen::CodeGenFunction::AbstractCallee, unsigned int, clang::CodeGen::CodeGenFunction::EvaluationOrder) (/usr/bin/../lib/libclang-cpp.so.16+0x17b8a7e)
#24 0x00007f44bebd9b04 clang::CodeGen::CodeGenFunction::EmitCXXConstructorCall(clang::CXXConstructorDecl const*, clang::CXXCtorType, bool, bool, clang::CodeGen::AggValueSlot, clang::CXXConstructExpr const*) (/usr/bin/../lib/libclang-cpp.so.16+0x17d1b04)
#25 0x00007f44bec66b5f (/usr/bin/../lib/libclang-cpp.so.16+0x185eb5f)
#26 0x00007f44bec4fdfe (/usr/bin/../lib/libclang-cpp.so.16+0x1847dfe)
#27 0x00007f44bec50632 clang::CodeGen::CodeGenFunction::EmitAggExpr(clang::Expr const*, clang::CodeGen::AggValueSlot) (/usr/bin/../lib/libclang-cpp.so.16+0x1848632)
#28 0x00007f44bed6c57b clang::CodeGen::CodeGenFunction::EmitReturnStmt(clang::ReturnStmt const&) (/usr/bin/../lib/libclang-cpp.so.16+0x196457b)
#29 0x00007f44bed84f69 clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) (/usr/bin/../lib/libclang-cpp.so.16+0x197cf69)
#30 0x00007f44bedd8c17 clang::CodeGen::CodeGenFunction::EmitFunctionBody(clang::Stmt const*) (/usr/bin/../lib/libclang-cpp.so.16+0x19d0c17)
#31 0x00007f44bede6d4e clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl, llvm::Function*, clang::CodeGen::CGFunctionInfo const&) (/usr/bin/../lib/libclang-cpp.so.16+0x19ded4e)
#32 0x00007f44bee1637f clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(clang::GlobalDecl, llvm::GlobalValue*) (/usr/bin/../lib/libclang-cpp.so.16+0x1a0e37f)
#33 0x00007f44bee140b4 clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl, llvm::GlobalValue*) (/usr/bin/../lib/libclang-cpp.so.16+0x1a0c0b4)
#34 0x00007f44bee1ba6f (/usr/bin/../lib/libclang-cpp.so.16+0x1a13a6f)
#35 0x00007f44bee80879 (/usr/bin/../lib/libclang-cpp.so.16+0x1a78879)
#36 0x00007f44bed934e8 (/usr/bin/../lib/libclang-cpp.so.16+0x198b4e8)
#37 0x00007f44bdcc0393 clang::ParseAST(clang::Sema&, bool, bool) (/usr/bin/../lib/libclang-cpp.so.16+0x8b8393)
#38 0x00007f44bf4842f9 clang::FrontendAction::Execute() (/usr/bin/../lib/libclang-cpp.so.16+0x207c2f9)
#39 0x00007f44bf424fcf clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/bin/../lib/libclang-cpp.so.16+0x201cfcf)
#40 0x00007f44bf4ec672 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/usr/bin/../lib/libclang-cpp.so.16+0x20e4672)
#41 0x0000565344f973b0 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/sbin/clang+++0x103b0)
#42 0x0000565344f9b5b3 (/usr/sbin/clang+++0x145b3)
#43 0x00007f44bf17c699 (/usr/bin/../lib/libclang-cpp.so.16+0x1d74699)
#44 0x00007f44b6d26db9 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/usr/bin/../lib/libLLVM-16.so+0xbc6db9)
#45 0x00007f44bf183c2f (/usr/bin/../lib/libclang-cpp.so.16+0x1d7bc2f)
#46 0x00007f44bf16fa0e clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/usr/bin/../lib/libclang-cpp.so.16+0x1d67a0e)
#47 0x00007f44bf16fdcd clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/usr/bin/../lib/libclang-cpp.so.16+0x1d67dcd)
#48 0x00007f44bf175f9c clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/usr/bin/../lib/libclang-cpp.so.16+0x1d6df9c)
#49 0x0000565344f9e7ed clang_main(int, char**) (/usr/sbin/clang+++0x177ed)
#50 0x00007f44b5d65290 (/usr/bin/../lib/libc.so.6+0x23290)
#51 0x00007f44b5d6534a __libc_start_main (/usr/bin/../lib/libc.so.6+0x2334a)
#52 0x0000565344f93cf5 _start (/usr/sbin/clang+++0xccf5)
clang-16: error: clang frontend command failed with exit code 134 (use -v to see invocation)
clang version 16.0.0 (/startdir/llvm-project f33173acd6875fa86448bb6d91bdac8f1296510a)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/sbin
clang-16: note: diagnostic msg: 
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang-16: note: diagnostic msg: /tmp/main-a7ab79.cpp
clang-16: note: diagnostic msg: /tmp/main-a7ab79.sh
clang-16: note: diagnostic msg: 

********************
make[2]: *** [CMakeFiles/clang-test.dir/build.make:76: CMakeFiles/clang-test.dir/main.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/clang-test.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
```

[main-a7ab79.cpp.txt](https://github.com/llvm/llvm-project/files/9932026/main-a7ab79.cpp.txt)
[main-a7ab79.sh.txt](https://github.com/llvm/llvm-project/files/9932034/main-a7ab79.sh.txt)

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztWltzozoS_jXOi8ouLkLAQx6c20y2Mpts4p05bykhCZsdDJSAbPLvtwXYoYnj2GTOObunNuUkWKi__rpb6pZAUS5fThcrRZ6ULpM8I3lMzlOeLUlSTtz5xLqYWPMJs7pP81U09zcCNptZM4tMnGDiXJUV15VMNFym6dN6Wuj8X0pUJHZd23e5kCzwvZgHjNIgipgM7UhyEcS2EzLPtvjECVsdC66XqgIG5Dlgj4xOCzFNk6x-ni6zuuuy0opLss6lSk3HIi-T5_bWdQZE0lTJC6ACt4BOXRpSZZRkO23aQCqitM41Wauy5Eu1xwuxVqoxOjQakuyJp4kEEklWKd12ubu5nD9ckrKO1klFOInqJdGqyHVFqpysqqpo0J0r-CyTalVHM5GvO98NXAhfk7KsVQkXhGcSNIq0lopUwFloXq5IxMXPSnMBtM5JAYp0LsAMJUmZ17ptNpK8LHOR8Apu6DojpdBJUc1ayg8VgBBZr4ut3RbcCu90vtR8TSAs9VplVfnWrc5VMzAmzhl8yDQpX8pKrU0nneeGf6VK8y-qk1TC_ydR_Fw-JptQQcszxLkJsjG2M29aVnLiXpioN8CORabfLuB3Qc6_8Z_qKkkbnzS6p0bFrB1_a55kM1EUsxw6Xx3ceSbJND8CWrw1cHO7dZ9t3Pc5J5j-ed7ItU6FC6kqnqTblkcB8Vzm-uUxWRfpbFWY-Hk2_DG_RNRaQ9RIwXWpNIy-nyoD4n6SgSrA91uuzp_HlVL4E3iG7M3N92_k-p4sVaY0r7qsJBXEofsKhFslMEbdeaenue5U9dofmwm91bnpFvM6rTb38kwmBnjrCPe_whFfOgdAthWQ5UgMiekPdQNocC1iPVvw48eURkzZDo3DLtu3k7-d-7OZSVhJ1P41IZxCZShzmLLWs4iM1Da5G1gbwUrhMzsmTd7bkG4v7uvsIVlmPP0KqSuFmtPm3KMZMKMAMXAwA49SERwLG8VGCsG6fVhP-pxb1oewAgBnrIF0AxBAiBQjCs6oOAYxgHIrEKI35Bh6AdE8KdVxTEEM4TKMy6jnQrmJTME7AtdxQAzh-hg3Ur46iqkvfFOse4gBRpTUlUf5NHRAACGGA0TmOMchUhDYIpoZYg0Qg4i7RJh1x1G4DMQQLp56MY0h_L2pdwMTDVLOHZdmGdW2cSlhVViXZsXz2vM8NykwgxQ3HzElTfIJPcQMTUklHErVAXOnKc-mHIPNdmu0HdgCZBG4OwCPfRaQdsnSWSMVZFz05arORJMRm0ZYkV5nT1A7L6AeXEPKPjAX7Wbo-EAAMUQTXUXS5dI_juElLDTPoSgBo3flvmxErrM4h8Jiguwwszh8X8RgwrA7pPO9qmqdfedprR5SUz334ALqXC9vkrJC0L0RBj3OuBl28-ZzTqDgpQPMh2Z1e5ML3havkQHxRQT-RgHxBgEJnZiNCMhvvzUzRdeiyvWO8KD7F1DgN96YD70HPaHL4qVQfV_s8AliNpdSw0bgwFB8EN_5cvka3KblFraCKS8eh7EexmVDdGx8pA3uR_Fhw_hENPxfjE_fpW8RN7ovnwvd0zzejeAl5EYfZ0bGIi8emdQ8BbIIPMDgNJbxAfVrJzj1QRaBhxjcsxgs644eAOB_41sc9YG3D43e2GpAA6Det82xhrb57pH1qrEte_lltn1yAoONYAKy0R7aGEbjbVzkC7Uu9lo6njkQQ8zxUiWK4sgdWash7e4r1_sS8744_qPmaZuIxiaKyAebkNF4CRUJi_tqtNHlWKs_1nKn8yqvwPgfmheF0nhRkVRmVw0bXg2QauKe92tWta42FGCN1_XEfdr59H4gNhe4GALwsId7aT7HGjePSvOUr2rXZEa8zkrYIivzTHD_emtnRJ5ggjcV-lZL46rRwyWA0YCGy3A9G0YW_X95_rg8WxS50fsdy7PDfsfy7Ph_4fKM1zWSCc-Pjret3S01WQeZ99re2xmNJB8yCtwQebxukgGN2ZiFc74u8jqThuaPpFrldfUgcjO5cGJ_7YW2ecfNu7HG-wJs6xuPn2gqKQNhjyjdm5azXL5gg1GqH09cWsALEcerJamYpEeW3-6JsjI3MekvaR7x1GRPXCy38vtn2btPFUZbr8A4ZD1ecSmbuX78kfXfclmn6jVorZUbqhcqTrLuifchvmjbmzH5mchySwF1ZJs7sI1a0YeVcrdtf5pNAigjm-jApoizkWWL2y7IInBcE1VgBf5Y5n4Asggc10QZulR9_GZg9zAOIpBF4KgmSiEsN3T7ob4zr-jmD4tBTlFrPkibn9mLBVEAahEvVM9iGlAnRiXhSudZpTI57-fBZyXqSn3iMahj-cKJsftDzMShsRhM9HWRpEo3b_kzoRCXjh5y3oD6-LTkWLYAMn221MJsYX3mO3hr0PB6Jf20fSA2rJLIqPGT0bEUBRKI5aZ0eMxzKY1D340sIoT9aF5Wo4f6c635y72KzZ5nxXtrrG6rgtqg4SlP5A6yb48EtDPCAsWImTNgFnmRexAShY4ICSXR2PYFC0fmBOlTkEXgKJsx6TAZhf0H1eYExr0S-ZPSL-dmuD13-0jzApPHKn1BXo67EvSoG08bJ5LNaZLLES9TImEIIcYedkfgwkQb644IZBE4w-AshqLWH_VSJ-CJ_tDmb9IGtK95JvE8GAiaDu-9dtjTdY5yZdg2jzSe-WAbMt4fGi-FPNb4v-VR-b7lcHfPW5GHNWyCvyuz3W3eQrnnzSEZc6vg5sTT-dsHAXud1T2I-IUuA48glwWDuenFoXiP3kXvGmXPHWnzPVf_gS4bm2OYBB8gJ4WDVKh81Y2rTZrekIQkvHkldlja9X2FAuINXi4zzwmPOqZgNpEokXv2ENGlnDw-GrHH5lxgY8RxOgAC6RgWC1fEHmnRD3GDgO5bvDYqEA533h76Mxft2ca4WzBAuNuwxxxqsyT_hk0uUc9J1Z7HsWGNC1rrUpHpkznSVyplTgK-von8Cx2Y7Lsryyuz6iIy4cssL6tEkHW5bAS7UH3i0zuP2R2gnC8W8_OvZPH1klzd3tzc_rj--xdydX1z-UAWt03z2T-_kPvLu9v7hZmureyuA5BBaSbMu4cgtx20IqmJItzl1RbyQBc4V5V5DdGcA5xyn0d--Hoc8BMY5WpEJH5RPNb8p5p4Z87Eu2j5dXcJNO4_LNkcmps18u7cb0gferoSlJHL5jiujVjYH7Iw1zFcO9AtcD_WaR4qb5U5PWVDLRtguBE2Jyt3Se48WwzCgwExq2CNCJY4wdFHgePOkDB0HcsUoeFga7C3mROrLle_SrNL3wxRpPhEndqM-TQMQ-aeyFMX9tIhP6mSKlWnV21OhbTZDBFyZo4yktu6AvXqpNbp6fgT0h5s6d2T1SlzPLPJtl3XjVnoMOqHUAN4yLm0Qh4GJymPVFqegofAHyfJKXjTsWGTYgcOs5yZ51AGFY05AVVUSTWhFmzEk3RmFM9yvTzRpw2HqF6WcDOFRVv5ehOSjHkxozb4vK5WuT5d1SueiFXNM8u36EnD-rSh_B_3cxY_">