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

            Bug ID: 84219
           Summary: [8 Regression] ICE: Invalid expression in
                    gfc_target_interpret_expr
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gs...@t-online.de
  Target Milestone: ---

Changed between 20171217 and 20180107.
Needs option -fcoarray=single or -fcoarray=lib.


$ cat z1.f90
program p
   type t
      integer, allocatable :: t
   end type
   type(t) :: x
   print *, transfer(1, x)
end


$ gfortran-8-20171217 -c z1.f90 -fcoarray=single
z1.f90:6:26:

    print *, transfer(1, x)
                          1
Error: Data transfer element at (1) cannot have ALLOCATABLE components unless
it is processed by a defined input/output procedure


$ gfortran-8-20180204 -c z1.f90 -fcoarray=single
f951: internal compiler error: Invalid expression in gfc_target_interpret_expr.
0x6a631f gfc_internal_error(char const*, ...)
        ../../gcc/fortran/error.c:1358
0x73b86b gfc_target_interpret_expr(unsigned char*, unsigned long, gfc_expr*,
bool)
        ../../gcc/fortran/target-memory.c:606
0x73bad6 gfc_interpret_derived(unsigned char*, unsigned long, gfc_expr*)
        ../../gcc/fortran/target-memory.c:550
0x73b768 gfc_target_interpret_expr(unsigned char*, unsigned long, gfc_expr*,
bool)
        ../../gcc/fortran/target-memory.c:601
0x7305e8 gfc_simplify_transfer(gfc_expr*, gfc_expr*, gfc_expr*)
        ../../gcc/fortran/simplify.c:7423
0x6b8e91 do_simplify
        ../../gcc/fortran/intrinsic.c:4426
0x6c33dc gfc_intrinsic_func_interface(gfc_expr*, int)
        ../../gcc/fortran/intrinsic.c:4796
0x70d065 resolve_unknown_f
        ../../gcc/fortran/resolve.c:2867
0x70d065 resolve_function
        ../../gcc/fortran/resolve.c:3176
0x70d18a gfc_resolve_expr(gfc_expr*)
        ../../gcc/fortran/resolve.c:6706
0x713992 gfc_resolve_code(gfc_code*, gfc_namespace*)
        ../../gcc/fortran/resolve.c:11065
0x713667 gfc_resolve_blocks(gfc_code*, gfc_namespace*)
        ../../gcc/fortran/resolve.c:10112
0x713a9b gfc_resolve_code(gfc_code*, gfc_namespace*)
        ../../gcc/fortran/resolve.c:11055
0x71644a resolve_codes
        ../../gcc/fortran/resolve.c:16493
0x71654e gfc_resolve(gfc_namespace*)
        ../../gcc/fortran/resolve.c:16528
0x6ffe6a resolve_all_program_units
        ../../gcc/fortran/parse.c:6060
0x6ffe6a gfc_parse_file()
        ../../gcc/fortran/parse.c:6310
0x74686f gfc_be_parse_file
        ../../gcc/fortran/f95-lang.c:204

Reply via email to