https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99138
Bug ID: 99138 Summary: ICE in gfc_match_rvalue, at fortran/primary.c:3738 Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: gs...@t-online.de Target Milestone: --- This invalid code affects versions down to r6 : (print statement in contains section) $ cat z1.f90 module m interface module function f(x) integer, intent(in) :: x class(*), allocatable :: f end end interface end submodule(m) m2 contains module function f(x) integer, intent(in) :: x class(*), allocatable :: f end print *, f(3) end $ gfortran-11-20210214 -c z1.f90 f951: internal compiler error: Segmentation fault 0xc09bcf crash_signal ../../gcc/toplev.c:327 0x6ec98e gfc_match_rvalue(gfc_expr**) ../../gcc/fortran/primary.c:3738 0x6c0eae match_primary ../../gcc/fortran/matchexp.c:157 0x6c0eae match_level_1 ../../gcc/fortran/matchexp.c:211 0x6c0eae match_mult_operand ../../gcc/fortran/matchexp.c:267 0x6c10f8 match_add_operand ../../gcc/fortran/matchexp.c:356 0x6c134c match_level_2 ../../gcc/fortran/matchexp.c:480 0x6c14a2 match_level_3 ../../gcc/fortran/matchexp.c:551 0x6c1594 match_level_4 ../../gcc/fortran/matchexp.c:599 0x6c1594 match_and_operand ../../gcc/fortran/matchexp.c:693 0x6c1782 match_or_operand ../../gcc/fortran/matchexp.c:722 0x6c1852 match_equiv_operand ../../gcc/fortran/matchexp.c:765 0x6c1924 match_level_5 ../../gcc/fortran/matchexp.c:811 0x6c0d01 gfc_match_expr(gfc_expr**) ../../gcc/fortran/matchexp.c:870 0x6a8c99 match_io_element ../../gcc/fortran/io.c:3661 0x6ab575 match_io_list ../../gcc/fortran/io.c:3709 0x6ab974 match_io ../../gcc/fortran/io.c:4387 0x6af3fa gfc_match_print() ../../gcc/fortran/io.c:4443 0x6dbc21 match_word ../../gcc/fortran/parse.c:65 0x6e07a3 decode_statement ../../gcc/fortran/parse.c:537