From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 57434385AC3F; Tue, 5 Oct 2021 18:34:52 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 57434385AC3F From: "gscfq@t-online.de" To: gcc-bugs@gcc.gnu.org Subject: [Bug fortran/102620] New: [12 Regression] ICE in gfc_get_array_span, at fortran/trans-array.c:865 Date: Tue, 05 Oct 2021 18:34:52 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: fortran X-Bugzilla-Version: 12.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: gscfq@t-online.de X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Oct 2021 18:34:52 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D102620 Bug ID: 102620 Summary: [12 Regression] ICE in gfc_get_array_span, at fortran/trans-array.c:865 Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: gscfq@t-online.de Target Milestone: --- The result of len(c) or c%len is always a scalar. It can't be an argument of size(x) where x must be an array. Issue started between 20210530 and 20210606 : $ cat z1.f90 program p character(3), allocatable :: y(:) y =3D ['abc', 'xyz'] call s(y) contains subroutine s(x) character(*) :: x(:) integer :: i print *, [(len_trim(x(i)), i=3D1,size(x%len))] end end $ cat z1b.f90 program p character(:), allocatable :: y(:) y =3D ['abc', 'xyz'] call s(y) contains subroutine s(x) character(*) :: x(:) integer :: i print *, [(len_trim(x(i)), i=3D1,size(x%len))] end end $ gfortran-12-20210530 -c z1.f90 $ $ gfortran-12-20211003 -c z1.f90 z1.f90:9:50: 9 | print *, [(len_trim(x(i)), i=3D1,size(x%len))] | 1 internal compiler error: in gfc_get_array_span, at fortran/trans-array.c:865 0x84d8aa gfc_get_array_span(tree_node*, gfc_expr*) ../../gcc/fortran/trans-array.c:865 0x8597c0 gfc_conv_expr_descriptor(gfc_se*, gfc_expr*) ../../gcc/fortran/trans-array.c:7739 0x88ce8f gfc_conv_intrinsic_size ../../gcc/fortran/trans-intrinsic.c:8064 0x8a488a gfc_conv_intrinsic_function(gfc_se*, gfc_expr*) ../../gcc/fortran/trans-intrinsic.c:10718 0x87956a gfc_conv_expr(gfc_se*, gfc_expr*) ../../gcc/fortran/trans-expr.c:9066 0x87c443 gfc_conv_expr_val(gfc_se*, gfc_expr*) ../../gcc/fortran/trans-expr.c:9119 0x857580 gfc_trans_array_constructor_value ../../gcc/fortran/trans-array.c:1942 0x85892a trans_array_constructor ../../gcc/fortran/trans-array.c:2769 0x85892a gfc_add_loop_ss_code ../../gcc/fortran/trans-array.c:3049 0x858ff5 gfc_conv_loop_setup(gfc_loopinfo*, locus*) ../../gcc/fortran/trans-array.c:5293 0x8aa9e5 gfc_trans_transfer(gfc_code*) ../../gcc/fortran/trans-io.c:2646 0x84aee7 trans_code ../../gcc/fortran/trans.c:2138 0x8a836e build_dt ../../gcc/fortran/trans-io.c:2026 0x84aec7 trans_code ../../gcc/fortran/trans.c:2110 0x871974 gfc_generate_function_code(gfc_namespace*) ../../gcc/fortran/trans-decl.c:6905 0x871774 gfc_generate_contained_functions ../../gcc/fortran/trans-decl.c:5899 0x871774 gfc_generate_function_code(gfc_namespace*) ../../gcc/fortran/trans-decl.c:6837 0x7f77b6 translate_all_program_units ../../gcc/fortran/parse.c:6572 0x7f77b6 gfc_parse_file() ../../gcc/fortran/parse.c:6841 0x843f3f gfc_be_parse_file ../../gcc/fortran/f95-lang.c:216=