diff options
author | Tobias Burnus <burnus@net-b.de> | 2010-04-06 20:23:56 +0200 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2010-04-06 20:23:56 +0200 |
commit | 178f9aa17efb04fe73f447763c9cab64166b1041 (patch) | |
tree | 09851507edcb4905b8c3426e51a826c7aa3fb49c /gcc/fortran/parse.c | |
parent | d079b87fab5e8de93c897940b750286d31d5d003 (diff) | |
download | gcc-178f9aa17efb04fe73f447763c9cab64166b1041.zip gcc-178f9aa17efb04fe73f447763c9cab64166b1041.tar.gz gcc-178f9aa17efb04fe73f447763c9cab64166b1041.tar.bz2 |
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.h (gfc_array_spec): Add cotype.
* array.c (gfc_match_array_spec,gfc_set_array_spec): Use it
and defer error diagnostic.
* resolve.c (resolve_fl_derived): Add missing check.
(resolve_symbol): Add cotype/type check.
* parse.c (parse_derived): Fix setting of coarray_comp.
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_4.f90: Fix test.
* gfortran.dg/coarray_6.f90: Add more tests.
From-SVN: r158014
Diffstat (limited to 'gcc/fortran/parse.c')
-rw-r--r-- | gcc/fortran/parse.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fortran/parse.c b/gcc/fortran/parse.c index b68afba..190148c 100644 --- a/gcc/fortran/parse.c +++ b/gcc/fortran/parse.c @@ -2115,7 +2115,8 @@ endType: sym->attr.proc_pointer_comp = 1; /* Looking for coarray components. */ - if (c->attr.codimension || c->attr.coarray_comp) + if (c->attr.codimension + || (c->attr.coarray_comp && !c->attr.pointer && !c->attr.allocatable)) sym->attr.coarray_comp = 1; /* Look for private components. */ |