https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70914
--- Comment #3 from Gerhard Steinmetz <gerhard.steinmetz.fort...@t-online.de> --- Indeed, I can confirm that all examples from comment 0 are now working (and compiling without an ICE) when using gfortran-7-20160703. Though, if not covered elsewhere, only one remaining problem : $ cat z6.f90 program p character(:), pointer :: z z = 'z' z = z z = z z = z print *, z end $ gfortran-7-20160703 -Wall z6.f90 z6.f90:3:0: z = 'z' Warning: '.z' is used uninitialized in this function [-Wuninitialized] z6.f90:3:0: Warning: 'z' may be used uninitialized in this function [-Wmaybe-uninitialized] $ cat z7.f90 program p character(:), pointer :: z => null() z = 'z' z = z z = z z = z print *, z end $ gfortran-7-20160703 z7.f90 z7.f90:1:0: program p internal compiler error: in gfc_get_symbol_decl, at fortran/trans-decl.c:1655 0x745ba4 gfc_get_symbol_decl(gfc_symbol*) ../../gcc/fortran/trans-decl.c:1655 0x748e77 generate_local_decl ../../gcc/fortran/trans-decl.c:5237 0x70530b do_traverse_symtree ../../gcc/fortran/symbol.c:3926 0x749ca2 generate_local_vars ../../gcc/fortran/trans-decl.c:5427 0x749ca2 gfc_generate_function_code(gfc_namespace*) ../../gcc/fortran/trans-decl.c:6106 0x6d5d10 translate_all_program_units ../../gcc/fortran/parse.c:5886 0x6d5d10 gfc_parse_file() ../../gcc/fortran/parse.c:6092 0x718022 gfc_be_parse_file ../../gcc/fortran/f95-lang.c:198