diff options
author | Janus Weil <janus@gcc.gnu.org> | 2011-09-15 19:48:27 +0200 |
---|---|---|
committer | Janus Weil <janus@gcc.gnu.org> | 2011-09-15 19:48:27 +0200 |
commit | f2ce74d1578c3a5c6be5fddeb842c5115eb002c8 (patch) | |
tree | 631a6e0f480743673c8c76432cd395c91d411ddc /gcc/fortran/resolve.c | |
parent | 5d248b41e343955bd4fdd274a351a3bb91203cc3 (diff) | |
download | gcc-f2ce74d1578c3a5c6be5fddeb842c5115eb002c8.zip gcc-f2ce74d1578c3a5c6be5fddeb842c5115eb002c8.tar.gz gcc-f2ce74d1578c3a5c6be5fddeb842c5115eb002c8.tar.bz2 |
re PR fortran/50401 (SIGSEGV in resolve_transfer)
2011-09-15 Janus Weil <janus@gcc.gnu.org>
PR fortran/50401
* resolve.c (resolve_transfer): Check if component 'ref' is defined.
PR fortran/50403
* symbol.c (gfc_use_derived): Check if argument 'sym' is defined.
2011-09-15 Janus Weil <janus@gcc.gnu.org>
PR fortran/50401
PR fortran/50403
* gfortran.dg/function_types_3.f90: New.
From-SVN: r178889
Diffstat (limited to 'gcc/fortran/resolve.c')
-rw-r--r-- | gcc/fortran/resolve.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index 9aab836..62750af 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -8222,7 +8222,7 @@ resolve_transfer (gfc_code *code) } } - if (sym->as != NULL && sym->as->type == AS_ASSUMED_SIZE + if (sym->as != NULL && sym->as->type == AS_ASSUMED_SIZE && exp->ref && exp->ref->type == REF_ARRAY && exp->ref->u.ar.type == AR_FULL) { gfc_error ("Data transfer element at %L cannot be a full reference to " |