diff options
author | burnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-03-17 09:53:40 +0000 |
---|---|---|
committer | burnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-03-17 09:53:40 +0000 |
commit | 452695a8da676319b005b0fdfafc623139ea2f83 (patch) | |
tree | 978b2f56225a8d013d78445f9deae7c75e80ae5a /gcc/fortran/trans-array.c | |
parent | 17db414fa2dc953c38f029f7e620f555a62c61bf (diff) | |
download | gcc-452695a8da676319b005b0fdfafc623139ea2f83.tar.gz |
2010-03-17 Tobias Burnus <burnus@net-b.de>
PR fortran/43331
* trans-array.c (gfc_conv_array_index_offset,gfc_conv_array_ref,
gfc_conv_ss_startstride): Remove no-longer-needed cp_was_assumed
check.
* decl.c (gfc_match_derived_decl): Don't mark assumed-size Cray
pointees as having explizit size.
* expr.c (gfc_check_assign): Remove now unreachable Cray pointee
check.
* trans-types.c (gfc_is_nodesc_array): Add cp_was_assumed to
* assert.
(gfc_sym_type): Don't mark Cray pointees as restricted pointers.
* resolve.c (resolve_symbol): Handle cp_was_assumed.
* trans-decl.c (gfc_trans_deferred_vars): Ditto.
(gfc_finish_var_decl): Don't mark Cray pointees as restricted
pointers.
2010-03-17 Tobias Burnus <burnus@net-b.de>
PR fortran/43331
* gfortran.dg/cray_pointers_1.f90: Update dg-error message.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157512 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fortran/trans-array.c')
-rw-r--r-- | gcc/fortran/trans-array.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c index 8eea3aca716..5eeead831c4 100644 --- a/gcc/fortran/trans-array.c +++ b/gcc/fortran/trans-array.c @@ -2404,8 +2404,8 @@ gfc_conv_array_index_offset (gfc_se * se, gfc_ss_info * info, int dim, int i, index = gfc_trans_array_bound_check (se, info->descriptor, index, dim, &ar->where, - (ar->as->type != AS_ASSUMED_SIZE - && !ar->as->cp_was_assumed) || dim < ar->dimen - 1); + ar->as->type != AS_ASSUMED_SIZE + || dim < ar->dimen - 1); break; case DIMEN_VECTOR: @@ -2431,8 +2431,8 @@ gfc_conv_array_index_offset (gfc_se * se, gfc_ss_info * info, int dim, int i, /* Do any bounds checking on the final info->descriptor index. */ index = gfc_trans_array_bound_check (se, info->descriptor, index, dim, &ar->where, - (ar->as->type != AS_ASSUMED_SIZE - && !ar->as->cp_was_assumed) || dim < ar->dimen - 1); + ar->as->type != AS_ASSUMED_SIZE + || dim < ar->dimen - 1); break; case DIMEN_RANGE: @@ -2581,8 +2581,7 @@ gfc_conv_array_ref (gfc_se * se, gfc_array_ref * ar, gfc_symbol * sym, /* Upper bound, but not for the last dimension of assumed-size arrays. */ - if (n < ar->dimen - 1 - || (ar->as->type != AS_ASSUMED_SIZE && !ar->as->cp_was_assumed)) + if (n < ar->dimen - 1 || ar->as->type != AS_ASSUMED_SIZE) { tmp = gfc_conv_array_ubound (se->expr, n); if (sym->attr.temporary) @@ -3207,8 +3206,7 @@ gfc_conv_ss_startstride (gfc_loopinfo * loop) continue; if (dim == info->ref->u.ar.dimen - 1 - && (info->ref->u.ar.as->type == AS_ASSUMED_SIZE - || info->ref->u.ar.as->cp_was_assumed)) + && info->ref->u.ar.as->type == AS_ASSUMED_SIZE) check_upper = false; else check_upper = true; |