diff options
author | Thomas Koenig <tkoenig@gcc.gnu.org> | 2020-12-23 11:40:00 +0100 |
---|---|---|
committer | Thomas Koenig <tkoenig@gcc.gnu.org> | 2020-12-23 11:40:00 +0100 |
commit | fe0069ed4d6e61dfcd8e66e227690635ba317d1a (patch) | |
tree | 114a40b8f5a7ba784c066d71b20c563fe1900c90 /gcc/cppdefault.c | |
parent | 1a50de8778750f019e61a97ee6d3e8226c41a7f1 (diff) | |
download | gcc-fe0069ed4d6e61dfcd8e66e227690635ba317d1a.zip gcc-fe0069ed4d6e61dfcd8e66e227690635ba317d1a.tar.gz gcc-fe0069ed4d6e61dfcd8e66e227690635ba317d1a.tar.bz2 |
Add offset to allocatable shared coarrays.
This adds the calculation of the offset for allocatable coarrays,
which was missing before, and fixes the resulting fallout for
ALLOCATED. Additionally, it prepares the way for STAT and ERRMSG
for ALLOCATE of coarrays, but that still needs changes to
gfc_trans_allocate.
gcc/fortran/ChangeLog:
* trans-array.c (gfc_conv_array_ref): If se->address_only is set,
throw away all the offset calculation.
(gfc_allocate_shared_coarray): Add arguments stat, errmsg and
errlen to call to allocate. Calculate offset for allocatable
coarrays.
(gfc_array_allocate): Adjust call to gfc_allocate_shared_coarray.
* trans-array.h (gfc_allocate_shared_coarray): Change prototype
of cas_coarray_alloc.
* trans-decl.c (gfc_build_builtin_function_decls): Adjust
cas_coarray_alloc to changed prototypes.
(gfc_trans_shared_coarray): Adjust call to gfc_allocate_shared_coarray.
* trans-intrinsic.c (gfc_conv_allocated): Set address_only on se.
* trans.h: Add flag address_only to gfc_se.
libgfortran/ChangeLog:
* caf_shared/wrapper.c (cas_coarray_alloc): Add status, error and
errmsg arguments and their checking.
Diffstat (limited to 'gcc/cppdefault.c')
0 files changed, 0 insertions, 0 deletions