diff options
author | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2010-11-12 23:07:18 +0000 |
---|---|---|
committer | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2010-11-12 23:07:18 +0000 |
commit | 4e141305fa7ae7dbe4c3edcd42d31931a28725e3 (patch) | |
tree | 0d082867117176fa19e9fb2d09778ed8dd922c07 /gcc | |
parent | c6c06f31ca99f23e0dbd0ad8b352c8c6b0bbf01d (diff) | |
download | gcc-4e141305fa7ae7dbe4c3edcd42d31931a28725e3.zip gcc-4e141305fa7ae7dbe4c3edcd42d31931a28725e3.tar.gz gcc-4e141305fa7ae7dbe4c3edcd42d31931a28725e3.tar.bz2 |
re PR fortran/45794 (ICE: Segmentation fault in gfc_conv_procedure_call)
2010-11-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/45794
trans-expr.c (gfc_conv_procedure_call): Avoid NULL array spec.
From-SVN: r166686
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fortran/trans-expr.c | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 55e5058..b45d072 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2010-11-12 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/45794 + trans-expr.c (gfc_conv_procedure_call): Avoid NULL array spec. + 2010-11-11 Nathan Froyd <froydnj@codesourcery.com> PR c/44782 diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c index 94dfa34..e8b516c 100644 --- a/gcc/fortran/trans-expr.c +++ b/gcc/fortran/trans-expr.c @@ -3121,8 +3121,10 @@ gfc_conv_procedure_call (gfc_se * se, gfc_symbol * sym, && ((e->rank > 0 && sym->attr.elemental) || e->representation.length || e->ts.type == BT_CHARACTER || (e->rank > 0 - && (fsym == NULL || fsym->as->type == AS_ASSUMED_SHAPE - || fsym->as->type == AS_DEFERRED)))) + && (fsym == NULL + || (fsym-> as + && (fsym->as->type == AS_ASSUMED_SHAPE + || fsym->as->type == AS_DEFERRED)))))) gfc_conv_missing_dummy (&parmse, e, fsym ? fsym->ts : e->ts, e->representation.length); } |