https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117754
Bug ID: 117754 Summary: ICE: in build_real, at tree.cc:2417 Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: xieym3 at zohomail dot com Target Milestone: --- $ cat 20241123025220_18.c int main ( ) { _Decimal32 d = ( _Decimal32 int ) __builtin_inff ( ) ; if ( ! __builtin_isinf ( ( d double ) d ) ) __builtin_abort ( ) ; return 0 ; ( } $ gcc-trunk -v Using built-in specs. COLLECT_GCC=/data/xieym/exp/gcc/test_data/gcc-latest-install/bin/gcc COLLECT_LTO_WRAPPER=/data/xieym/exp/gcc/test_data/gcc-latest-install/libexec/gcc/x86_64-pc-linux-gnu/15.0.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: /data/xieym/exp/gcc/test_data/gcc-latest-src/configure --enable-coverage --enable-checking --disable-multilib --disable-shared --disable-bootstrap --enable-languages=c,c++ --prefix=/data/xieym/exp/gcc/test_data/gcc-latest-install Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 15.0.0 20241123 (experimental) (GCC) $ gcc-trunk -x c -std=c2x -c 20241123025220_18.c -o /dev/null 20241123025220_18.c: In function ‘main’: 20241123025220_18.c:4:29: error: two or more data types in declaration specifiers 4 | _Decimal32 d = ( _Decimal32 int ) __builtin_inff ( ) ; | ^~~ 20241123025220_18.c:5:29: error: expected ‘)’ before ‘double’ 5 | if ( ! __builtin_isinf ( ( d double ) d ) ) | ~ ^~~~~~~ | ) 20241123025220_18.c:5:38: error: expected ‘)’ before ‘d’ 5 | if ( ! __builtin_isinf ( ( d double ) d ) ) | ~ ^~ | ) 20241123025220_18.c:5:1: internal compiler error: in build_real, at tree.cc:2417 5 | if ( ! __builtin_isinf ( ( d double ) d ) ) | ^~ 0x567214e internal_error(char const*, ...) /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/diagnostic-global-context.cc:517 0x56126d8 fancy_abort(char const*, int, char const*) /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/diagnostic.cc:1696 0x278e633 build_real(tree_node*, real_value) /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/tree.cc:2417 0x12065a1 fold_builtin_interclass_mathfn /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/builtins.cc:9584 0x120e343 fold_builtin_1 /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/builtins.cc:10587 0x120f327 fold_builtin_n /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/builtins.cc:10808 0x1210189 fold_builtin_call_array(unsigned int, tree_node*, tree_node*, int, tree_node**) /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/builtins.cc:10947 0x164ec4e fold_build_call_array_loc(unsigned int, tree_node*, tree_node*, int, tree_node**) /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/fold-const.cc:14477 0xea7818 build_function_call_vec(unsigned int, vec<unsigned int, va_heap, vl_ptr>, tree_node*, vec<tree_node*, va_gc, vl_embed>*, vec<tree_node*, va_gc, vl_embed>*, tree_node*) /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-typeck.cc:3865 0xea8267 c_build_function_call_vec(unsigned int, vec<unsigned int, va_heap, vl_ptr> const&, tree_node*, vec<tree_node*, va_gc, vl_embed>*, vec<tree_node*, va_gc, vl_embed>*) /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-typeck.cc:3920 0xf6c135 c_parser_postfix_expression_after_primary /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-parser.cc:13405 0xf6912d c_parser_postfix_expression /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-parser.cc:12956 0xf5940c c_parser_unary_expression /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-parser.cc:10370 0xf57e93 c_parser_cast_expression /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-parser.cc:10208 0xf58b74 c_parser_unary_expression /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-parser.cc:10315 0xf57e93 c_parser_cast_expression /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-parser.cc:10208 0xf54d23 c_parser_binary_expression /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-parser.cc:9976 0xf53d46 c_parser_conditional_expression /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-parser.cc:9671 0xf53757 c_parser_expr_no_commas /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-parser.cc:9584 0xf6ce1a c_parser_expression /data/xieym/exp/gcc/test_data/gcc-latest-src/gcc/c/c-parser.cc:13545 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.