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

    <tr>
        <th>Summary</th>
        <td>
            Assertion `getSignificantBits() <= 64 && "Too many bits for int64_t"' failed
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

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

<pre>
    Compiler Explorer: https://godbolt.org/z/b3Ph9bK38
- generated by fuzzer
- tested with flag -std=c2x
```console
clang: /root/llvm-project/llvm/include/llvm/ADT/APInt.h:1545: int64_t llvm::APInt::getSExtValue() const: Assertion `getSignificantBits() <= 64 && "Too many bits for int64_t"' failed.
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: /opt/compiler-explorer/clang-assertions-trunk/bin/clang -gdwarf-4 -g -o /app/output.s -fno-verbose-asm -c --gcc-toolchain=/opt/compiler-explorer/gcc-snapshot -fcolor-diagnostics -fno-crash-diagnostics -std=c2x <source>
1.      <source>:4:55: current parser token ')'
2.      <source>:2:46: parsing function body 'check_isfpclass_finite_strict'
3.      <source>:2:46: in compound statement ('{}')
 #0 0x0000000003e6dcc8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x3e6dcc8)
 #1 0x0000000003e6b984 llvm::sys::CleanupOnSignal(unsigned long) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x3e6b984)
 #2 0x0000000003db8298 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
 #3 0x00007848f8042520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520)
 #4 0x00007848f80969fc pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x969fc)
 #5 0x00007848f8042476 gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x42476)
 #6 0x00007848f80287f3 abort (/lib/x86_64-linux-gnu/libc.so.6+0x287f3)
 #7 0x00007848f802871b (/lib/x86_64-linux-gnu/libc.so.6+0x2871b)
 #8 0x00007848f8039e96 (/lib/x86_64-linux-gnu/libc.so.6+0x39e96)
 #9 0x0000000000ddba8e (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0xddba8e)
#10 0x0000000006698e48 clang::Sema::BuiltinConstantArgRange(clang::CallExpr*, int, int, int, bool) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x6698e48)
#11 0x0000000006699669 clang::Sema::BuiltinFPClassification(clang::CallExpr*, unsigned int, unsigned int) (.part.0) SemaChecking.cpp:0:0
#12 0x00000000066aef8b clang::Sema::CheckBuiltinFunctionCall(clang::FunctionDecl*, unsigned int, clang::CallExpr*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x66aef8b)
#13 0x0000000006970d23 clang::Sema::BuildResolvedCallExpr(clang::Expr*, clang::NamedDecl*, clang::SourceLocation, llvm::ArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*, bool, clang::CallExpr::ADLCallKind) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x6970d23)
#14 0x0000000006971c25 clang::Sema::BuildCallExpr(clang::Scope*, clang::Expr*, clang::SourceLocation, llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*, bool, bool) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x6971c25)
#15 0x00000000069734cc clang::Sema::ActOnCallExpr(clang::Scope*, clang::Expr*, clang::SourceLocation, llvm::MutableArrayRef<clang::Expr*>, clang::SourceLocation, clang::Expr*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x69734cc)
#16 0x00000000064b1f22 clang::Parser::ParsePostfixExpressionSuffix(clang::ActionResult<clang::Expr*, true>) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x64b1f22)
#17 0x00000000064aa831 clang::Parser::ParseCastExpression(clang::Parser::CastParseKind, bool, bool&, clang::Parser::TypeCastState, bool, bool*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x64aa831)
#18 0x00000000064ac997 clang::Parser::ParseCastExpression(clang::Parser::CastParseKind, bool, clang::Parser::TypeCastState, bool, bool*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x64ac997)
#19 0x00000000064aca29 clang::Parser::ParseAssignmentExpression(clang::Parser::TypeCastState) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x64aca29)
#20 0x00000000064b1469 clang::Parser::ParseExpression(clang::Parser::TypeCastState) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x64b1469)
#21 0x0000000006527b42 clang::Parser::ParseReturnStatement() (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x6527b42)
#22 0x000000000652ad45 clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*, clang::ParsedAttributes&, clang::ParsedAttributes&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x652ad45)
#23 0x000000000652c470 clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*, 32u>&, clang::Parser::ParsedStmtContext, clang::SourceLocation*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x652c470)
#24 0x000000000652d361 clang::Parser::ParseCompoundStatementBody(bool) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x652d361)
#25 0x000000000652eb4a clang::Parser::ParseFunctionStatementBody(clang::Decl*, clang::Parser::ParseScope&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x652eb4a)
#26 0x00000000064403e3 clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&, clang::Parser::ParsedTemplateInfo const&, clang::Parser::LateParsedAttrList*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x64403e3)
#27 0x0000000006474ffd clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, clang::DeclaratorContext, clang::ParsedAttributes&, clang::Parser::ParsedTemplateInfo&, clang::SourceLocation*, clang::Parser::ForRangeInit*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x6474ffd)
#28 0x000000000643411e clang::Parser::ParseDeclOrFunctionDefInternal(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec&, clang::AccessSpecifier) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x643411e)
#29 0x00000000064348d9 clang::Parser::ParseDeclarationOrFunctionDefinition(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*, clang::AccessSpecifier) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x64348d9)
#30 0x000000000643c0b3 clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x643c0b3)
#31 0x000000000643cf8d clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, clang::Sema::ModuleImportState&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x643cf8d)
#32 0x000000000643d430 clang::Parser::ParseFirstTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, clang::Sema::ModuleImportState&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x643d430)
#33 0x000000000642f3e3 clang::ParseAST(clang::Sema&, bool, bool) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x642f3e3)
#34 0x0000000004830ea8 clang::CodeGenAction::ExecuteAction() (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x4830ea8)
#35 0x0000000004af9d95 clang::FrontendAction::Execute() (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x4af9d95)
#36 0x0000000004a7d56e clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x4a7d56e)
#37 0x0000000004be7f2e clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x4be7f2e)
#38 0x0000000000d535a7 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0xd535a7)
#39 0x0000000000d4a36a ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#40 0x0000000004879539 void llvm::function_ref<void ()>::callback_fn<clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const::'lambda'()>(long) Job.cpp:0:0
#41 0x0000000003db8744 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x3db8744)
#42 0x0000000004879b2f clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (.part.0) Job.cpp:0:0
#43 0x000000000483c07d clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x483c07d)
#44 0x000000000483d0fe clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x483d0fe)
#45 0x0000000004845015 clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0x4845015)
#46 0x0000000000d4f843 clang_main(int, char**, llvm::ToolContext const&) (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0xd4f843)
#47 0x0000000000c17374 main (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0xc17374)
#48 0x00007848f8029d90 (/lib/x86_64-linux-gnu/libc.so.6+0x29d90)
#49 0x00007848f8029e40 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x29e40)
#50 0x0000000000d49e15 _start (/opt/compiler-explorer/clang-assertions-trunk/bin/clang+0xd49e15)
clang: error: clang frontend command failed with exit code 134 (use -v to see invocation)
Compiler returned: 134
```
Code:
```c
_Bool check_isfpclass_finite_strict(float x) {
#pragma STDC FENV_ACCESS ON
 return __builtin_isfpclass(x, 66666666666666666666wb);
}
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJzkW19z66YS_zTKC2OPBPr7kAfFiXvTpj2ZONNXD0LI5kYGXUA5zvn0d0By9CeKz0mr9LZzM2lqI1h--9tlWdAerBTbcUovneDKCa4vcK33Ql5mLCQXmchfLlfiULGSSnBzrEohqXRQCvZaV8pBqQPXDlzvRJ6JUi-F3Dlw_c2B6wzd75PsFxQ7broAO8qpxJrmIHsBRf3tG5W2XVNlGr8yvQdFiXdgoXTuoGsCj46bOqHb_BLBlSip46akxHxn5nfgWgqhHbguy-fDopLi35ScvjpwzTgp65x2Den1o_l7f8v1cu-g1Av8wAhiXIf-VgPbDaUOSm2f5uOO6s3NUf-Oy5o6MHZgAgwW8xSkSlGpmeDACV3Tke04KxjBXF8xrdruDlo56BqEPnBg6MAQOBA-CgEOmL-AjGkFCiFPIBwIHRiBArOS5kvHTe_vbtLNDVB1dmAaYJDVOyBpJaQGWoxtwPS-zpZEHDqlR9wwpWqqHLgGmOegpQjoPQVEYrUHGSZPWmJCHbgClaSVFIQqRXOgRC2bZjMSKyUIs_aUNQeKSFZpg3ejMXkCeX2oDCw3dZeOm9xLsZP4ALDc1QfKtWrtJyqDibTetaAn74Jra-UFPhGsFlrW_Ml4FeOnx2Cxy79iWSx8sNiBhTAScVUZubWuar1UYFFwsXimMhOKLrA6gAUBi8WOkIUWoiR7zLiDrs8iMZ0Vx5XaCw0WBRGlkIuc4R0XSjPSzmHZGza_-rHxgJY9dOO4qWcoGbSh1HdQGlhvJLWUlGtQYamoBFo8UQ4cGDkwMX_dFE4Mh0ZEaIabYYzvQFFzYl3TLGAznuwpedoyVVSkxEptC8aZplulJTOeYSSjs5IZB4YfUfMcKI01NZYE1skjJ7pyousWpWtsi1zgHt3TD6JhTkjcW2LqRTUf7iXj2nrNY-N3cddJ4q9bobSk-GDXzsosE7umzKx_0n0ceOUeW2AdbG8EO0tifwr2qqSY19UXbhY9Lh0Y19xG0RyUwgifF6SB0YGEA5B5FsMkBivjgg-UiGcqXxpU_8I8L81cccvboM9KcE2Pekkqs1Zd-18jH7Xyo9iPi9j1YQDdVp2SZQ5cH-NwG_qLkvH6uNjxunlAlkosQwvZDukA-0OBSZgUBFR6LynOt0-sLD8m3Y7vpAdjuH4Ugp2yFHwUth-FneBwKBjGUYEAzkzw_ZBYO7ATG70R62UfFuhlncB4KBAlNAk_JtAO6QQmfQdz8zzDMZ3Pnxt5zWxmyQ1CRRgmMfVjcNrnHZRu6AE3n65qVmrGV2YHxlyncveA-c4EjV73FS7Lm2MlHZi-hozx_zIhylnXaAu7U8obKZWEYXJWqfX9ygRmm0CYuc4q9RpsWn2G361eywpLvTSLEJi5Vib-M74bLXcDFQ6hYlrE2TRUK-SEt91hDLIh1tOTa0rKd_C-p9msFrGKdBZBAzWTyM0het8i-QNVonymeYevr2PPFr3W3_CB5j21-9LtpnonTsZd9fNNKfHLAy0ctJqYAt18V9Q0sMbJp8lu5r2-Mw2_MJ7PS31Dbke9P6LeIzA4Q_005RsiKvqW2GlLnKP711rjrKSfzPr8IabhrWM1GLGKfEKmWU2J_sL_wazOy6LhqWMxHLDoZ14BYR_EvU3Ee5_vhdIFOxpwVCkm-KYuCnYc0praCPhAVV3qaSrgCmhZ2zR7Vv0aDTr9oqF-GMfIO6vfCivdKTdUq9_Z9LPfm_gx9vxwZMz-0MeXyk6zMeeIt0Nntnijc8dIPGKEJEn0uYz8TWgwinY0JGMaMEzO0pDaeyJz7PsRMkbKzawJNsfhVhPojpewH57X5H-N3yLs8A9zxQBGmX8-BD1QXUu-OZ3CTzdNswFsIHQA4Qggzv3gLMBXaF-kSYewtOE9LTSVqdaSZbWmanDW3xxwWf5OiRZyGC83-qDbeIlgbcPludBiP-dmUHu-_c6GM97imvF9kJOzjXvMy77ht2MfjdgnfuT-Afb_LnTPS5Uho6PKH1GVo_A7m117pfVK2ZXIXxwYz5-9NWA6qMEIKs18fBbq6Vg1htobM330eOsfTc43u9saFToFR4mV7yKKfkjBa2ovJyejM-O7k0sL-SOu-UgPVYk1veWFaK_uz466w5p2K_yOKT3_Rmyp6IgaZWiRXxT5WaUMAz9JUVfv8rOpKHmrZ8fc9GL9wdj3Lr9v-_9QtG3lrYW0tzm3nH0C55bVjvNRDoh8z6Pf5fyL7LnoLddUNle_f377eNPjrB1TQqhS5hkrmCFiVqYsFx1TyZipOD-fXPW2nAFh767p2fkae9ln8xXnXTKHRskoIm52PuzdHBtHGm7VfwFH87Jg9OxY8MYsFPH5mPYoqjv6TMtmC-ur_6XC_6npvR4lKq9B0F42TKQp3fXHryKvS3p7qIQ8pfMz732Ngp36cKR-7qPzKduaSaX_6RwYLTsOhmmrD4up_T_dPI7uowziRo_Pu0lrwHRQB2mjHyOX4sEbiJXI6U-UN5c6p2scSmpN26aZD2AthA7gIFn0cZHkyeAAtpZmQ-f5BMLZsTWzd9jCIbYoD0I6JK-Z7da-tCF0mr_3lZnZT1uEHf5B-uVnNCogHd5CWqSdGs9i8g3NWM2ZQ2yLrMMdD1_SBSjAESDE2x4wGx72-neyeyxPafDrdeygDa7As2D53PAbfB360StGH6MQgxPVK-_RrvnpA-vtoSonVQmHN9JGRpvo9jL_BOSSPVP59kWY7w7DQJQEKLFk9ISeCiu20vJpnzZLrCmYcFBKcFlmmDxtCz4M183ErbusvJU4HDDPx6t10m62msS0icrMjg0BPXK0ZHzXbgKNUV8HbLfkePS85kuGFSO26MNgshQOOpuGrZaYaXV6PBKHy9K4f3Nt0D43XdLRveWpSsr8wqjEhyzHtkDkRBWMT4USP4tswhjeuMgh8vuVGFOlDM2Th5pvcEHLlwGX5-02a7lGg_XV1X04dqsMFuD_2S1Gr6en7Y9GezJxo_xd1qy98Ju970TlIFCPBpoO710MnOmaDpKUnmKzZQBG4c6JxilK7hb0o3T8LDL1Phc_i-yOKT3g4lz8fbV9hZkx-9tX-2fpax3kk0k0NHUkDtOo2A9cL3gP8HXv8yAFmNj73yP_LyRx1uzTEtPRFo726iL220z-lGucYNvAkbbL_vs78XzZhcXUIR7kdC7xIhT5wGCdb8pGaDflqAgLJnnywaI5O6QTmIwFUt8F260Zs1UaS73tKfTDU1C_myJwR4ZNqBeARvictjFim0lPfg2olMKWkdsWULQpPyCthzcV0E1dOD0y4zY5BR7yDa5aUbB4BloARSlgvYTczPFarS7tWzJqFpgZ2a8nt91yexTpV5k7brq9EqIE36mWjYtSYA2O1oejq4bNSuLdAYPN4_UKrG9--32brlY3mw348pvjpi0YsN1mTflUJ9yB8dEsl3Di56utX0J2hui6j_Uiv0R5ghJ8QS-9yPciGKAgudhfEg8mblgkqKAZDqgfEOTmSYhInIQwwfSCXUIXBi7yPOiiIEiWKIeBl-A494sMe0no-C49YFYuzQJeCrm7sGXjlx5yYxhdlDijpbL_WABCTr8C-9SB0AmuL-SlrTjP6p1yfLdkSqtOjGa6pJefXTZ_Ucvy8o9XxrdaPl_C_wYAAP__Xrws6g">