https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71859
Bug ID: 71859 Summary: ICE on same variable/subroutine name (verify_gimple failed) Product: gcc Version: 7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: gerhard.steinmetz.fort...@t-online.de Target Milestone: --- When using the same name for a variable and a subroutine (invalid), experimental (--enable-checking=yes) versions 7, 6 and maybe older ones (not tested) give an ICE. No ICE for release versions 4.9, 5, 6, 7. $ cat z1.f90 program p call s(1) x = abs(s) end subroutine s(n) print *, n end $ gfortran-6 -g -O0 -Wall -fcheck=all -fno-frontend-optimize z1.f90 $ a.out 1 $ gfortran-7-20160710 z1.f90 z1.f90:1:0: program p Error: invalid types in conversion to floating point real(kind=8) void (*<T8ec>) (integer(kind=4) & restrict) x = (real(kind=8)) s; z1.f90:1:0: internal compiler error: verify_gimple failed 0xc48e8d verify_gimple_in_seq(gimple*) ../../gcc/tree-cfg.c:4879 0x9c9ec2 gimplify_body(tree_node*, bool) ../../gcc/gimplify.c:11710 0x9ca256 gimplify_function_tree(tree_node*) ../../gcc/gimplify.c:11798 0x8360b7 cgraph_node::analyze() ../../gcc/cgraphunit.c:625 0x839443 analyze_functions ../../gcc/cgraphunit.c:1086 0x83a128 symbol_table::finalize_compilation_unit() ../../gcc/cgraphunit.c:2543