This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/77604] New: ICE in get_frame_type, at tree-nested.c:208
- From: "gerhard dot steinmetz dot fortran at t-online dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 15 Sep 2016 17:47:46 +0000
- Subject: [Bug fortran/77604] New: ICE in get_frame_type, at tree-nested.c:208
- Auto-submitted: auto-generated
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