[Bug fortran/95068] [10/11 Regression] ICE in gfc_get_class_from_expr, at fortran/trans-expr.c:484

gscfq@t-online.de gcc-bugzilla@gcc.gnu.org
Mon May 11 18:56:58 GMT 2020


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

G. Steinmetz <gscfq@t-online.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-invalid-code

--- Comment #1 from G. Steinmetz <gscfq@t-online.de> ---

Further reduced (ICEs down to r7, r6 rejects it) :


$ cat z2.f90
function f() result(x)
   associate (y => (f))
   end associate
end


$ gfortran-11-20200510 -c z2.f90
z2.f90:2:20:

    2 |    associate (y => (f))
      |                    1
Warning: Non-RECURSIVE procedure 'f' at (1) is possibly calling itself
recursively.  Declare it RECURSIVE or use '-frecursive'
during RTL pass: expand
z2.f90:2:0:

    2 |    associate (y => (f))
      |
internal compiler error: in convert_mode_scalar, at expr.c:313
0x8c13cc convert_mode_scalar
        ../../gcc/expr.c:313
0x8c13cc convert_move(rtx_def*, rtx_def*, int)
        ../../gcc/expr.c:297
0x8cd3f2 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode,
expand_modifier)
        ../../gcc/expr.c:8670
0x7c3175 expand_gimple_stmt_1
        ../../gcc/cfgexpand.c:3786
0x7c3175 expand_gimple_stmt
        ../../gcc/cfgexpand.c:3847
0x7c7d57 expand_gimple_basic_block
        ../../gcc/cfgexpand.c:5887
0x7ca3ce execute
        ../../gcc/cfgexpand.c:6571



$ gfortran-11-20200510-chk -c z2.f90
z2.f90:2:20:

    2 |    associate (y => (f))
      |                    1
Warning: Non-RECURSIVE procedure 'f' at (1) is possibly calling itself
recursively.  Declare it RECURSIVE or use '-frecursive'
z2.f90:1:0:

    1 | function f() result(x)
      |
Error: non-trivial conversion in unary operation
real(kind=4)
real(kind=4) <T5c7> (void)
y = ((f.0_1));
z2.f90:1:0: internal compiler error: 'verify_gimple' failed
0xd9158d verify_gimple_in_seq(gimple*)
        ../../gcc/tree-cfg.c:5113
0xa4ded1 gimplify_body(tree_node*, bool)
        ../../gcc/gimplify.c:14917
0xa4e187 gimplify_function_tree(tree_node*)
        ../../gcc/gimplify.c:14988
0x889347 cgraph_node::analyze()
        ../../gcc/cgraphunit.c:670
0x88c771 analyze_functions
        ../../gcc/cgraphunit.c:1227
0x88d982 symbol_table::finalize_compilation_unit()
        ../../gcc/cgraphunit.c:2971


More information about the Gcc-bugs mailing list