This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/77604] New: ICE in get_frame_type, at tree-nested.c:208


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

            Bug ID: 77604
           Summary: ICE in get_frame_type, at tree-nested.c:208
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gerhard.steinmetz.fortran@t-online.de
  Target Milestone: ---

This snippet fails with an "**" operation :


$ cat z1.f90
program p
   call s
contains
   elemental function f(x, y) result(z)
      character(*), intent(in) :: x, y
      character(len(x)**len(y)) :: z
      z = x // y
   end
   subroutine g(x)
      character(*), intent(in) :: x(:)
      print *, 'inside g :', len(x), size(x), x
   end
   subroutine s
      call g( f(['ab'], ['xyz']) )
   end
end


$ gfortran-7-20160911 -c z1.f90
z1.f90:1:0:

 program p

internal compiler error: Segmentation fault
0xc2154f crash_signal
        ../../gcc/toplev.c:336
0xcb88aa get_frame_type
        ../../gcc/tree-nested.c:208
0xcb88aa get_chain_field
        ../../gcc/tree-nested.c:359
0xcbadc2 get_chain_field
        ../../gcc/tree-nested.c:357
0xcbadc2 get_nonlocal_debug_decl
        ../../gcc/tree-nested.c:834
0xcbb4c8 convert_nonlocal_reference_op
        ../../gcc/tree-nested.c:909
0xed8162 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, default_hash_traits<tree_node*> >*, tree_node*
(*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*,
hash_set<tree_node*, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.c:11690
0x9a67f0 walk_gimple_op(gimple*, tree_node* (*)(tree_node**, int*, void*),
walk_stmt_info*)
        ../../gcc/gimple-walk.c:203
0x9a6d6c walk_gimple_stmt(gimple_stmt_iterator*, tree_node*
(*)(gimple_stmt_iterator*, bool*, walk_stmt_info*), tree_node* (*)(tree_node**,
int*, void*), walk_stmt_info*)
        ../../gcc/gimple-walk.c:586
0x9a6f58 walk_gimple_seq_mod(gimple**, tree_node* (*)(gimple_stmt_iterator*,
bool*, walk_stmt_info*), tree_node* (*)(tree_node**, int*, void*),
walk_stmt_info*)
        ../../gcc/gimple-walk.c:51
0x9a6e12 walk_gimple_stmt(gimple_stmt_iterator*, tree_node*
(*)(gimple_stmt_iterator*, bool*, walk_stmt_info*), tree_node* (*)(tree_node**,
int*, void*), walk_stmt_info*)
        ../../gcc/gimple-walk.c:596
0x9a6f58 walk_gimple_seq_mod(gimple**, tree_node* (*)(gimple_stmt_iterator*,
bool*, walk_stmt_info*), tree_node* (*)(tree_node**, int*, void*),
walk_stmt_info*)
        ../../gcc/gimple-walk.c:51
0x9a6e12 walk_gimple_stmt(gimple_stmt_iterator*, tree_node*
(*)(gimple_stmt_iterator*, bool*, walk_stmt_info*), tree_node* (*)(tree_node**,
int*, void*), walk_stmt_info*)
        ../../gcc/gimple-walk.c:596
0x9a6f58 walk_gimple_seq_mod(gimple**, tree_node* (*)(gimple_stmt_iterator*,
bool*, walk_stmt_info*), tree_node* (*)(tree_node**, int*, void*),
walk_stmt_info*)
        ../../gcc/gimple-walk.c:51
0xcb74e1 walk_body
        ../../gcc/tree-nested.c:573
0xcb7538 walk_function
        ../../gcc/tree-nested.c:584
0xcb7538 walk_all_functions
        ../../gcc/tree-nested.c:649
0xcbf882 lower_nested_functions(tree_node*)
        ../../gcc/tree-nested.c:3187
0x83d546 cgraph_node::analyze()
        ../../gcc/cgraphunit.c:631
0x840b13 analyze_functions
        ../../gcc/cgraphunit.c:1086

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]