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

            Bug ID: 98023
           Summary: ICE: free_expr0(): Bad expr type
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---

gfortran-11.0.0-alpha20201122 snapshot
(g:e23f47ec4065e9eec53c4ad9db91bc36a4f90793) ICEs when compiling the following
testcase reduced from test/Semantics/resolve92.f90 from the flang 11.0.0 test
suite:

module x1
  type :: ww(fz)
     integer, kind :: fz
  end type ww
  type :: ky(ww)
     integer, kind :: ww
     type(ww(fz)) :: ke = ww(fz)
  end type ky
end module x1

% powerpc-e300c3-linux-gnu-gfortran-11.0.0 -c txoboesk.f90
f951: internal compiler error: free_expr0(): Bad expr type
0x7fdb7a gfc_report_diagnostic
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/error.c:782
0x7fdb7a gfc_internal_error(char const*, ...)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/error.c:1402
0x7fe7ce free_expr0
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/expr.c:509
0x7fe7dd gfc_free_expr(gfc_expr*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/expr.c:530
0x7fe7dd gfc_free_expr(gfc_expr*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/expr.c:526
0x7fe824 gfc_free_actual_arglist(gfc_actual_arglist*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/expr.c:546
0x7eeb9c gfc_match_data_decl()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/decl.c:6246
0x85d0d9 match_word
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/parse.c:65
0x85d0d9 decode_statement
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/parse.c:376
0x862524 next_free
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/parse.c:1315
0x862524 next_statement
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/parse.c:1547
0x864934 parse_derived
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/parse.c:3383
0x864934 parse_spec
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/parse.c:3924
0x867b56 parse_module
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/parse.c:6156
0x868122 gfc_parse_file()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/parse.c:6469
0x8bddbe gfc_be_parse_file
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/fortran/f95-lang.c:212

(While my target here is powerpc, the ICE is not target-dependent.)

Reply via email to