diff options
author | Tobias Burnus <burnus@net-b.de> | 2011-05-06 20:39:08 +0200 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2011-05-06 20:39:08 +0200 |
commit | c81e79b590707957ae3dd2ac872aebba7ad8a46e (patch) | |
tree | 20a46afa6ab4803eb0299a3388a1c8a1bad7d820 /gcc/fortran/trans-array.c | |
parent | cc9ae24cbea172e0810524ec506339b918e944ae (diff) | |
download | gcc-c81e79b590707957ae3dd2ac872aebba7ad8a46e.zip gcc-c81e79b590707957ae3dd2ac872aebba7ad8a46e.tar.gz gcc-c81e79b590707957ae3dd2ac872aebba7ad8a46e.tar.bz2 |
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-05-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* trans-array.c (gfc_walk_variable_expr): Continue walking
for scalar coarrays.
* trans-intrinsic.c (convert_element_to_coarray_ref): New
* function.
(trans_this_image, trans_image_index, conv_intrinsic_cobound): Use it.
(trans_this_image): Fix algorithm.
* trans-types.c (gfc_get_element_type,
* gfc_get_array_descriptor_base,
gfc_sym_type): Handle scalar coarrays.
2011-05-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray/this_image_2.f90: New.
From-SVN: r173506
Diffstat (limited to 'gcc/fortran/trans-array.c')
-rw-r--r-- | gcc/fortran/trans-array.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c index a7e5f81..1a4ab39 100644 --- a/gcc/fortran/trans-array.c +++ b/gcc/fortran/trans-array.c @@ -7443,7 +7443,7 @@ gfc_walk_variable_expr (gfc_ss * ss, gfc_expr * expr) ar = &ref->u.ar; - if (ar->as->rank == 0) + if (ar->as->rank == 0 && ref->next != NULL) { /* Scalar coarray. */ continue; |