This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/70937] [7 Regression] ICE: tree code âssa_nameâ is not supported in LTO streams
- From: "rguenther at suse dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 06 May 2016 11:28:41 +0000
- Subject: [Bug fortran/70937] [7 Regression] ICE: tree code âssa_nameâ is not supported in LTO streams
- Auto-submitted: auto-generated
- References: <bug-70937-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70937
--- Comment #11 from rguenther at suse dot de <rguenther at suse dot de> ---
On Fri, 6 May 2016, dominiq at lps dot ens.fr wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70937
>
> --- Comment #10 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
> With the second patch in comment 9 applied on top of my working tree (heavily
> patched), I get
>
> [Book15] f90/bug% gfc
> /opt/gcc/_clean/gcc/testsuite/gfortran.dg/allocatable_function_4.f90
> -fdump-tree-original
> /opt/gcc/_clean/gcc/testsuite/gfortran.dg/allocatable_function_4.f90:52:0:
>
> end function unique_A
>
> internal compiler error: tree check: expected tree that contains 'decl common'
> structure, have 'identifier_node' in print_declaration, at
> tree-pretty-print.c:3287
Which means TYPE_NAME is an IDENTIFIER_NODE here.
Index: gcc/fortran/trans-decl.c
===================================================================
--- gcc/fortran/trans-decl.c (revision 235945)
+++ gcc/fortran/trans-decl.c (working copy)
@@ -3818,6 +3818,12 @@ gfc_trans_vla_type_sizes (gfc_symbol *sy
}
gfc_trans_vla_type_sizes_1 (type, body);
+ /* gfc_build_qualified_array may have built this type but left
TYPE_NAME
+ pointing to the original type whose type sizes we need to expose to
+ the gimplifier unsharing. */
+ if (TYPE_NAME (type)
+ && TREE_CODE (TYPE_NAME (type)) == TYPE_DECL)
+ gfc_add_expr_to_block (body, build1 (DECL_EXPR, type, TYPE_NAME
(type)));
}
fixes this. I'm going to re-test with that change, will not be able
to commit before Monday.