https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94246

anlauf at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |anlauf at gcc dot gnu.org

--- Comment #7 from anlauf at gcc dot gnu.org ---
I get an ICE even for the non-valgrind version on x86_64-pc-linux-gnu:

gcc/testsuite/gfortran.dg/bessel_5.f90:64:50:

   64 | if (any (BESSEL_YN(0, 10, 0.0) /= [ (BESSEL_YN(i, 0.0), i = 0, 10) ]))
&
      |                                                  1
Error: Result of BESSEL_YN overflows its kind at (1)
gcc/testsuite/gfortran.dg/bessel_5.f90:64:26:

   64 | if (any (BESSEL_YN(0, 10, 0.0) /= [ (BESSEL_YN(i, 0.0), i = 0, 10) ]))
&
      |                          1
Error: Result of BESSEL_YN is -INF at (1)
f951: internal compiler error: Segmentation fault
0xd4aedf crash_signal
        ../../gcc-trunk/gcc/toplev.c:328
0x65ae4f reduce_binary_ac
        ../../gcc-trunk/gcc/fortran/arith.c:1325
0x65aee2 reduce_binary_ac
        ../../gcc-trunk/gcc/fortran/arith.c:1312
0x65b034 reduce_binary
        ../../gcc-trunk/gcc/fortran/arith.c:1438
0x65b35b eval_intrinsic
        ../../gcc-trunk/gcc/fortran/arith.c:1613
0x6965f8 simplify_intrinsic_op
        ../../gcc-trunk/gcc/fortran/expr.c:1219
0x6965f8 gfc_simplify_expr(gfc_expr*, int)
        ../../gcc-trunk/gcc/fortran/expr.c:2233
0x708c89 resolve_operator
        ../../gcc-trunk/gcc/fortran/resolve.c:4377
0x706177 gfc_resolve_expr(gfc_expr*)
        ../../gcc-trunk/gcc/fortran/resolve.c:7022
0x70993f gfc_resolve_expr(gfc_expr*)
        ../../gcc-trunk/gcc/fortran/resolve.c:2162
0x70993f resolve_actual_arglist
        ../../gcc-trunk/gcc/fortran/resolve.c:2081
0x70654e resolve_function
        ../../gcc-trunk/gcc/fortran/resolve.c:3183
0x70654e gfc_resolve_expr(gfc_expr*)
        ../../gcc-trunk/gcc/fortran/resolve.c:7029
0x70e7d1 gfc_resolve_expr(gfc_expr*)
        ../../gcc-trunk/gcc/fortran/resolve.c:6996
0x70e7d1 gfc_resolve_blocks(gfc_code*, gfc_namespace*)
        ../../gcc-trunk/gcc/fortran/resolve.c:10618
0x6fe518 gfc_resolve_code(gfc_code*, gfc_namespace*)
        ../../gcc-trunk/gcc/fortran/resolve.c:11706
0x700d9d resolve_codes
        ../../gcc-trunk/gcc/fortran/resolve.c:17233
0x700e6e gfc_resolve(gfc_namespace*)
        ../../gcc-trunk/gcc/fortran/resolve.c:17268
0x6ef01d resolve_all_program_units
        ../../gcc-trunk/gcc/fortran/parse.c:6245
0x6ef01d gfc_parse_file()
        ../../gcc-trunk/gcc/fortran/parse.c:6492

I agree with Richard that this should not happen.

Reply via email to