From 71ff73f3fbaac481a9c3c9f49c885e9a5bdee84b Mon Sep 17 00:00:00 2001 From: Tobias Burnus Date: Mon, 26 Jul 2010 12:30:45 +0200 Subject: re PR fortran/45066 (ICE in namelist read in snapshot of 7/24/2010) 2010-07-26 Tobias Burnus PR fortran/45066 * trans-io.c (build_dt): Use NULL_TREE rather than NULL for call to transfer_namelist_element. * trans-decl.c (gfc_get_symbol_decl): Also set sym->backend_decl for -fwhole-file. 2010-07-26 Tobias Burnus PR fortran/45066 * gfortran.dg/namelist_62.f90: New. From-SVN: r162532 --- gcc/fortran/ChangeLog | 8 ++++++++ gcc/fortran/trans-decl.c | 3 ++- gcc/fortran/trans-io.c | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) (limited to 'gcc/fortran') diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index f29ccca..999d38e 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,11 @@ +2010-07-26 Tobias Burnus + + PR fortran/45066 + * trans-io.c (build_dt): Use NULL_TREE rather than NULL + for call to transfer_namelist_element. + * trans-decl.c (gfc_get_symbol_decl): Also set sym->backend_decl + for -fwhole-file. + 2010-07-25 Thomas Koenig PR fortran/40628 diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c index a1789ea..4a3fcd8 100644 --- a/gcc/fortran/trans-decl.c +++ b/gcc/fortran/trans-decl.c @@ -1150,7 +1150,8 @@ gfc_get_symbol_decl (gfc_symbol * sym) true); if (sym->ts.type == BT_CHARACTER) sym->ts.u.cl->backend_decl = s->ts.u.cl->backend_decl; - return s->backend_decl; + sym->backend_decl = s->backend_decl; + return sym->backend_decl; } } } diff --git a/gcc/fortran/trans-io.c b/gcc/fortran/trans-io.c index a806d42..00c44e7 100644 --- a/gcc/fortran/trans-io.c +++ b/gcc/fortran/trans-io.c @@ -1760,7 +1760,7 @@ build_dt (tree function, gfc_code * code) for (nml = dt->namelist->namelist; nml; nml = nml->next) transfer_namelist_element (&block, nml->sym->name, nml->sym, - NULL, NULL); + NULL, NULL_TREE); } else set_parameter_const (&block, var, IOPARM_common_flags, mask); -- cgit v1.1