<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/116560>116560</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
ICE
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
yyny
</td>
</tr>
</table>
<pre>
```
Stack dump:
0. Program arguments: /usr/bin/clang++ -O2 -g -std=c++23 -fPIC -Wall -Wextra -fno-exceptions -ffp-contract=off -Wcast-qual -Wformat=2 -Wimplicit-fallthrough -Wlogical-op -Wmissing-declarations -Wmissing-field-initializers -Wsuggest-override -Wno-invalid-offsetof -Wno-unknown-warning-option -Wno-unused-command-line-argument -Wpadded-bitfield -fconstexpr-steps=16777216 -Wmissing-prototypes -Wno-implicit-const-int-float-conversion -Wno-user-defined-literals -Wno-vla-cxx-extension -Wno-unqualified-std-cast-call -fno-semantic-interposition -fvisibility-inlines-hidden -fstack-protector-strong -fstrict-flex-arrays=2 -Wno-maybe-uninitialized -Wno-shorten-64-to-32 -fsigned-char -ggnu-pubnames -fPIC -O2 -g1 -Wno-overloaded-virtual -Wno-unused-private-field -fcolor-diagnostics -Werror -DAK_EXPORTS -DENABLE_COMPILETIME_FORMAT_CHECK -D_FILE_OFFSET_BITS=64 -I/home/jonne/src/ladybird.clang -I/home/jonne/src/ladybird.clang/Services -I/home/jonne/src/ladybird.clang/Libraries -I/home/jonne/src/ladybird.clang/Build/release/Lagom -I/home/jonne/src/ladybird.clang/Build/release/Lagom/Services -I/home/jonne/src/ladybird.clang/Build/release/Lagom/Libraries -I/home/jonne/src/ladybird.clang/Meta/Lagom/../.. -I/home/jonne/src/ladybird.clang/Meta/Lagom/../../Libraries -I/home/jonne/src/ladybird.clang/Meta/Lagom/../../Services -I/home/jonne/src/ladybird.clang/Build/release -isystem /home/jonne/src/ladybird.clang/Build/release/vcpkg_installed/x64-linux/include -DNDEBUG -c -MD -MT Lagom/AK/CMakeFiles/AK.dir/JsonParser.cpp.o -MF Lagom/AK/CMakeFiles/AK.dir/JsonParser.cpp.o.d -fcolor-diagnostics -o Lagom/AK/CMakeFiles/AK.dir/JsonParser.cpp.o /home/jonne/src/ladybird.clang/AK/JsonParser.cpp
1. <unknown> parser at unknown location
2. /home/jonne/src/ladybird.clang/AK/UnicodeCodePointView.h:19:1: parsing namespace 'AK'
3. /home/jonne/src/ladybird.clang/AK/UnicodeCodePointView.h:536:1: parsing struct/union/class body 'AK::UnicodeCodePointViewBase'
#0 0x00007fdd7dbbefde llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/bin/../lib/libLLVM.so.18.1+0xbbefde)
#1 0x00007fdd7dbbcd5c llvm::sys::CleanupOnSignal(unsigned long) (/usr/bin/../lib/libLLVM.so.18.1+0xbbcd5c)
#2 0x00007fdd7daade78 (/usr/bin/../lib/libLLVM.so.18.1+0xaade78)
#3 0x00007fdd7ca558c0 __restore_rt libc_sigaction.c:0:0
#4 0x00007fdd8633b308 clang::Lexer::LexTokenInternal(clang::Token&, bool) (/usr/bin/../lib/libclang-cpp.so.18.1+0xb3b308)
#5 0x00007fdd863be184 clang::Preprocessor::Lex(clang::Token&) (/usr/bin/../lib/libclang-cpp.so.18.1+0xbbe184)
#6 0x00007fdd863deaca (/usr/bin/../lib/libclang-cpp.so.18.1+0xbdeaca)
#7 0x00007fdd864d5c46 clang::Parser::ExpectAndConsume(clang::tok::TokenKind, unsigned int, llvm::StringRef) (/usr/bin/../lib/libclang-cpp.so.18.1+0xcd5c46)
#8 0x00007fdd8641c2f1 clang::Parser::ParseCXXClassMemberDeclaration(clang::AccessSpecifier, clang::ParsedAttributes&, clang::Parser::ParsedTemplateInfo const&, clang::ParsingDeclRAIIObject*) (/usr/bin/../lib/libclang-cpp.so.18.1+0xc1c2f1)
#9 0x00007fdd8641eba0 clang::Parser::ParseCXXClassMemberDeclarationWithPragmas(clang::AccessSpecifier&, clang::ParsedAttributes&, clang::TypeSpecifierType, clang::Decl*) (/usr/bin/../lib/libclang-cpp.so.18.1+0xc1eba0)
#10 0x00007fdd8641efbd clang::Parser::ParseCXXMemberSpecification(clang::SourceLocation, clang::SourceLocation, clang::ParsedAttributes&, unsigned int, clang::Decl*) (/usr/bin/../lib/libclang-cpp.so.18.1+0xc1efbd)
#11 0x00007fdd86421511 clang::Parser::ParseClassSpecifier(clang::tok::TokenKind, clang::SourceLocation, clang::DeclSpec&, clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier, bool, clang::Parser::DeclSpecContext, clang::ParsedAttributes&) (/usr/bin/../lib/libclang-cpp.so.18.1+0xc21511)
#12 0x00007fdd863eb7ef clang::Parser::ParseDeclarationSpecifiers(clang::DeclSpec&, clang::Parser::ParsedTemplateInfo const&, clang::AccessSpecifier, clang::Parser::DeclSpecContext, clang::Parser::LateParsedAttrList*, clang::ImplicitTypenameContext) (/usr/bin/../lib/libclang-cpp.so.18.1+0xbeb7ef)
#13 0x00007fdd864bdada clang::Parser::ParseSingleDeclarationAfterTemplate(clang::DeclaratorContext, clang::Parser::ParsedTemplateInfo const&, clang::ParsingDeclRAIIObject&, clang::SourceLocation&, clang::ParsedAttributes&, clang::AccessSpecifier) (/usr/bin/../lib/libclang-cpp.so.18.1+0xcbdada)
#14 0x00007fdd864c65a2 clang::Parser::ParseTemplateDeclarationOrSpecialization(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::AccessSpecifier) (/usr/bin/../lib/libclang-cpp.so.18.1+0xcc65a2)
#15 0x00007fdd864c67c7 clang::Parser::ParseDeclarationStartingWithTemplate(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::AccessSpecifier) (/usr/bin/../lib/libclang-cpp.so.18.1+0xcc67c7)
#16 0x00007fdd863fec06 clang::Parser::ParseDeclaration(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::ParsedAttributes&, clang::SourceLocation*) (/usr/bin/../lib/libclang-cpp.so.18.1+0xbfec06)
#17 0x00007fdd864da94c clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*) (/usr/bin/../lib/libclang-cpp.so.18.1+0xcda94c)
#18 0x00007fdd86415357 clang::Parser::ParseInnerNamespace(llvm::SmallVector<clang::Parser::InnerNamespaceInfo, 4u> const&, unsigned int, clang::SourceLocation&, clang::ParsedAttributes&, clang::BalancedDelimiterTracker&) (/usr/bin/../lib/libclang-cpp.so.18.1+0xc15357)
#19 0x00007fdd864189e0 clang::Parser::ParseNamespace(clang::DeclaratorContext, clang::SourceLocation&, clang::SourceLocation) (/usr/bin/../lib/libclang-cpp.so.18.1+0xc189e0)
#20 0x00007fdd863fedf8 clang::Parser::ParseDeclaration(clang::DeclaratorContext, clang::SourceLocation&, clang::ParsedAttributes&, clang::ParsedAttributes&, clang::SourceLocation*) (/usr/bin/../lib/libclang-cpp.so.18.1+0xbfedf8)
#21 0x00007fdd864da94c clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*) (/usr/bin/../lib/libclang-cpp.so.18.1+0xcda94c)
#22 0x00007fdd864dc2d5 clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, clang::Sema::ModuleImportState&) (/usr/bin/../lib/libclang-cpp.so.18.1+0xcdc2d5)
#23 0x00007fdd863cd72a clang::ParseAST(clang::Sema&, bool, bool) (/usr/bin/../lib/libclang-cpp.so.18.1+0xbcd72a)
#24 0x00007fdd886065f9 clang::FrontendAction::Execute() (/usr/bin/../lib/libclang-cpp.so.18.1+0x2e065f9)
#25 0x00007fdd88580dd9 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/bin/../lib/libclang-cpp.so.18.1+0x2d80dd9)
#26 0x00007fdd8869767b clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/usr/bin/../lib/libclang-cpp.so.18.1+0x2e9767b)
#27 0x00005618f99e0876 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/bin/clang+++0x15876)
#28 0x00005618f99d8dda (/usr/bin/clang+++0xddda)
#29 0x00007fdd881baba9 (/usr/bin/../lib/libclang-cpp.so.18.1+0x29baba9)
#30 0x00007fdd7daae293 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/usr/bin/../lib/libLLVM.so.18.1+0xaae293)
#31 0x00007fdd881bb261 (/usr/bin/../lib/libclang-cpp.so.18.1+0x29bb261)
#32 0x00007fdd881825c6 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/usr/bin/../lib/libclang-cpp.so.18.1+0x29825c6)
#33 0x00007fdd8818307d 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.18.1+0x298307d)
#34 0x00007fdd881960cc clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/usr/bin/../lib/libclang-cpp.so.18.1+0x29960cc)
#35 0x00005618f99ddf35 clang_main(int, char**, llvm::ToolContext const&) (/usr/bin/clang+++0x12f35)
#36 0x00005618f99d8166 main (/usr/bin/clang+++0xd166)
#37 0x00007fdd7ca3fc4c __libc_start_call_main ./csu/../sysdeps/nptl/libc_start_call_main.h:74:3
#38 0x00007fdd7ca3fd05 call_init ./csu/../csu/libc-start.c:128:20
#39 0x00007fdd7ca3fd05 __libc_start_main@GLIBC_2.2.5 ./csu/../csu/libc-start.c:347:5
#40 0x00005618f99d81c1 _start (/usr/bin/clang+++0xd1c1)
clang++: error: clang frontend command failed with exit code 135 (use -v to see invocation)
clang version 18.1.8
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
```
[JsonParser-70a9b1.cpp.txt](https://github.com/user-attachments/files/17792786/JsonParser-70a9b1.cpp.txt)
[JsonParser-70a9b1.sh.txt](https://github.com/user-attachments/files/17792787/JsonParser-70a9b1.sh.txt)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsWl9z4ya0_zTKC4NHQrYkP-TB8Z9ed5Mms0mbvnkQIJsuBhWQ1-mnvwOyY6M42ayT6XTm3pldr1bA4Xd-h_MHBDaGLyVjl9HgKhpMLnBjV0pfPj3Jp4tS0afLKIt3f-JJFI_uLSbfAG3WdZSO2ldxL4qHd1otNV4DrJfNmklronQEIjRrjI7QrOQyQjMisFxG6CpCVwDeIgCXABpLo3RC2rcoBbC6m48BfMRCAPjItlZjACupINsSVluupAGwqmpIlLQaExulE1VVAD4SbCz8u8FuXKX0GrsmBOAjX9eCE25hhYWwK62a5QrAR6GWnGABVQ3g45obw-USUkYE1ng3z_PrijNBIZfcciz4P0y7RtMsl8xYqDZMa04ZgI9SQS43WHAKVVUZZlXVvm3kN6m-S_gda-kEKq_Kvq0xjEKi1mssKRRcMrinEcDHGlPKKCy59SgArIiSxrJtraGxrDZROkmyPM9Rkh1BrrWyyj7VzOxw7VnwoyGXFlZCYf__DdPmAMcwDSmruGQOjGUai52MjcCQbLeQbS2TRyOko51XnFFnT-gtQbwFneUMW2NpOXFzMl0rw1vdqw03vOSC2yfIpVPbwBWnlLk249aZV4IRq5ymWsmlb9CcOOxsC7HW-MnszCwVXOOnksFGHgxF2wazUtoyCbM-tAqmyMlxy55CssIawOVSNrBuSonXjq92DfoVmrQCnI2Fws4QG65tu8oOtqs132DL4MFCQmlIOV5KZSwnjj-mtdIATkZfFtM_726_PtwDOJn-Nrq6ni7Gtzd38-vpw_xmupjdfr0ZPSzG_zMdfwFwspjNr6eL29nsfvqwuJo_3EfpJOsDOI_QbKXWLEKzv5SU7l-jSYRmAtOnkmva8-727o4Rmt0zveHEEfD-Mde81Fjznxt01XBBIzTTTDBsXMdrvFTrTxBxphavSztLvxtm8ZGMXs__fFzC5-L5HK4A5ObJWLYGH2B7Q-pvywWXxmIhmGvbZn0XCZtthGZcEtG4-Dr5bTK9-v0XAAmANxMAbx7AXqfRlwjNxjf4G5txwYx_06PcJZ9fjZJ3WBume6SuewrAm9k543qveLY6C8S72fJCw-Ft3k1c3o3S8S63ROkU1L4LwBbsXgKhiM9m7RDkh_zUzL9LThRlY0XZneLS_sHZ994qSkfJ0P24NO9m5XIJfPSsMWEgQrkbnLezpp846yDNutMaqxtiXa0hnaK-zjAGuOplByQdRenolMgrv_x2MEGE0hjE2ziO47yiNKdlySrKgBCbdSvDuGzjHu40l9bXQg8aExah4tBJ4-8LZaxmeB2hLEJjwKWN0BBEqOhURN4JBS_b3-vrP256RvWSopdE6CretvNHaHgAmHQAEjogpwCOBcOyqW_lPV9KLCJUNLJNeUAox_NZcNxsARwUwMGYsrz4ecHtuEBweiyY4MGgIDFYLDQzVmm20BYIXpKF4UtM3PrukSgdxf7vs4z-kYwiS9MyjQvQLjPP0TXbMv38-KC-MTl3JUrL11FH37SzZamUeA97fjh0vh5Q6EEEmg5ClCVLiv4xyjvNaq0IM0YdwL6G72xcftoAVxbiogwTfK50PziQngfS-3RA-lmgtY9k7fN0WzNiR5KOlTSNiyHHylv17YiFL1xSZ6bn1e59b3zkIvdWc7n8yqrz2SIebqBPEeqTEFQlr-njn8d__jl2ceqGrUumJ4d9R6jdiDjL39eMuPpaO1W6UunIWs3LxrqMk53qcTwvfWDrWmDL5rJSwG8GTo_iculQfR3N57flX8xF2NEHKPOMBJQNO5SxEsfnUfbI7epO4-Uamx-wd5KeNwl8eKrZswD3n067g_FBZpziz8y4GB93malK-iNmWlJ2SMmJlXSvGk3Y9b4eCLV4s_EVkrou9smkVCUNSElCUlAySH7gYW6tHNn-x0HjvYQ49Zzgz3K3E07epplXZe8RjJW0bNul_6TBzjaFZzowBQpTAytzVr3JwpGvPmvZcdV_gdPzudwnXmzZgdtrbtqYGPSf785ZXKhwBfGz1LNTs6c34D8NXaGkmOI3GbvncimOrTCqLNN7Gl8awvVS-seEfDijdLt13e7n4_ULu5-97j2tAe9hQdkn2QCjN6nZM3PE_G0bo7Hg_5wI0j8i_7_Ej1c_4GfQ5Scn-bvjgsXacrl0ufy8hfnf4iYnecBNp5yuGIlfLXi73PzbPPy4R3eOD6T60lMRcNXdHOBhn7zJ1XTbbtte5ewzdD4KYW2i-kh943UKlO7uIAbp4G3nmUvJ9G_7M5fgCOJ-jYX4w5-cR-n4FSHheBe8ncL9JkqnQRR_o877-FK7wgJLwuiECb7mLilpTL7tSvXzq0dHXsBud7NRDNnbm41jYj_R-brt56voNDhWEcXdCEOr4v8jTBthaFUEXCX_ByMMQh2lCaKDt8sXVV-zDRPtdu5Y29sa_92wO9sJL67jL1o19VdWRen0hFXZGrdPN4o2gs3XtdL23vpk_xGP98oE2oZFckpojl4WyaP7h84u2QE8Pun78ImfnzhAFpSRRRZng2p4jGymnddJOvInm_szMEYaXxGdDwUxP1WAJSjZikERUxpgGat1zQXTc2msC9QBmh3AgMAO-I8YFVEPJ8CbhdwN8ywvj_HukB1gb9Spw5AXan3E1RDzMAKc-xJmkCVFNRyyuMgzQEiyWGMn9yhXj7TGT95fxv5j9C71jrz_jEH4Do3BRnH6KtzdR5Sr9k-8TQZFHtRWqAiB0YLSU8e6XUGUhnshFCTUIilxic_mb-hHH4vvfIjBmKFhenSIO9bYrL4yojZMP-2TlG_52sh7XDHxFJBcNdKvx4X2RDsOW7BDT_MZH0NaSAHmpENJibLkfErc6EA8CsUXaECCHQTVfLMP3-36xi_ix7i9ZBI6Q2eg6_DaNv6NrqPOBxL_-mz1vXaB-mlH_TTO6c-q_6sqzeu6_6rKa25soPvJmnq-rkWUjv3dJddUY-4S4cv6-E260ukhRX4SaY6TgLQw1STDLCbkNYCTo-cgjJ6In6-R_S-Sdn608SwENA06QZFW6a4y2sfrPcwV1n6pj0I9H5QSuzB0tHzeFaFRlQaFy_OHt-cInWQZcDDeE6aTLPSaPPyOmlakT8Bi0X48tVjbBcFCeC2BI4-YZs-jeTKU1SZCM1lbsaO0O8h_lM_7UTpKD5MW3UlpPAB-CJfcdudpH51w6IX7T7kJKqJ0hOKD0OEpoYEm3lT9-Jfr-dV4gXqoN3jXVGk_j9LR4HmmfvzCACQB7RzvMgE5xO3jxnQE_B0w9-Dfg2pXK4Hd3T9QYS4YBd-5XQG25W4tUQaSdODmbQwDcAOsAoYxwI8qm-PJwP4yn1vwvaJtecB6yVyCBNsiW2T95_uI_ooNXMpm12-lGaZgrSgT_oqFMnzbNs33l3MmXL-429lSF94U3f0Org53V2Ae42GZ-BswdmujwSRCxcra2l9aQLMIzZbcrpqyR_x9Gn8VEVuLyaq9U4pm1e5iTZLnQ5QXWXA3piv_2RFOgTCrT8KQn8SwE7-HcEEvUzpMh_iCXSZ5mrhaOxlerC5pmuUk7_cZif3H_yqLSRUXOGY0rvI8vuCXKEb9JElyt6lJh714MGSsHBCWljgrhijqx2yNuei5cNRTennBjWnYZZJkgyy-ELhkwuzv9-pL1wuWzdJE_VhwY81hnOVWsMv5eHrRaHH5Bik-8LX_wFqr9ix_5qf1xLQzby7R_wYAAP__5deo8Q">