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.

Reply via email to