diff options
author | Erik Edelmann <eedelman@gcc.gnu.org> | 2006-01-30 22:23:57 +0000 |
---|---|---|
committer | Erik Edelmann <eedelman@gcc.gnu.org> | 2006-01-30 22:23:57 +0000 |
commit | 64db4d29006823b28081c1aad7158d150f0fad18 (patch) | |
tree | d7333d6cba028f930db25db37029ca71b9a5a57e /gcc/fortran | |
parent | e939885ff55dc2a789f35c222ae2ef8066da91f5 (diff) | |
download | gcc-64db4d29006823b28081c1aad7158d150f0fad18.zip gcc-64db4d29006823b28081c1aad7158d150f0fad18.tar.gz gcc-64db4d29006823b28081c1aad7158d150f0fad18.tar.bz2 |
re PR fortran/24266 (ICE when writing to array of strings that is an elements of a user defined type)
fortran/
2005-01-30 Erik Edelmann <eedelman@gcc.gnu.org>
PR fortran/24266
* trans-io.c (set_internal_unit): Check the rank of the
expression node itself instead of its symbol.
testsuite/
2005-01-30 Erik Edelmann <eedelman@gcc.gnu.org>
PR fortran/24266
* gfortran.dg/arrayio_derived_2.f90: New.
From-SVN: r110412
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/trans-io.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 4eb14b8..bcdd799 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2005-01-30 Erik Edelmann <eedelman@gcc.gnu.org> + + PR fortran/24266 + * trans-io.c (set_internal_unit): Check the rank of the + expression node itself instead of its symbol. + 2006-01-29 Paul Thomas <pault@gcc.gnu.org> PR fortran/18578 diff --git a/gcc/fortran/trans-io.c b/gcc/fortran/trans-io.c index 24b7bc9..db1a481 100644 --- a/gcc/fortran/trans-io.c +++ b/gcc/fortran/trans-io.c @@ -599,7 +599,7 @@ set_internal_unit (stmtblock_t * block, tree var, gfc_expr * e) } /* Character array. */ - else if (e->symtree && (e->symtree->n.sym->as->rank > 0)) + else if (e->rank > 0) { se.ss = gfc_walk_expr (e); |