summaryrefslogtreecommitdiff
path: root/libgfortran
diff options
context:
space:
mode:
authorPaul Thomas <pault@gcc.gnu.org>2019-10-05 08:17:55 +0000
committerPaul Thomas <pault@gcc.gnu.org>2019-10-05 08:17:55 +0000
commit980f185ce3ba6d532530ce0f23bfb6e30320fd8a (patch)
treeb40f3f5c3c1e5b8d688086087e5c32f403976dcd /libgfortran
parentd56cbcc0a2ae508afbbc1c3d6a6b925971ff2d6e (diff)
re PR fortran/91926 (assumed rank optional)
2019-10-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/91926 * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Correct the assignment of the attribute field to account correctly for an assumed shape dummy. Assign separately to the gfc and cfi descriptors since the atribute can be different. Add btanch to correctly handle missing optional dummies. 2019-10-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/91926 * gfortran.dg/ISO_Fortran_binding_13.f90 : New test. * gfortran.dg/ISO_Fortran_binding_13.c : Additional source. * gfortran.dg/ISO_Fortran_binding_14.f90 : New test. 2019-10-05 Paul Thomas <pault@gcc.gnu.org> PR fortran/91926 * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Do not modify the bounds and offset for CFI_other. From-SVN: r276624
Diffstat (limited to 'libgfortran')
-rw-r--r--libgfortran/ChangeLog8
-rw-r--r--libgfortran/runtime/ISO_Fortran_binding.c3
2 files changed, 9 insertions, 2 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 3f69e567ef7..7736e5da937 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,9 @@
+2019-10-05 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/91926
+ * runtime/ISO_Fortran_binding.c (cfi_desc_to_gfc_desc): Do not
+ modify the bounds and offset for CFI_other.
+
2019-10-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/91593
@@ -14,7 +20,7 @@
formatted_transfer_scalar_read, formatted_transfer_scalar_write,
pre_position, next_record_r, next_record_w): Add and use
FORMATTED_UNSPECIFIED to enumeration.
-
+
2019-09-27 Maciej W. Rozycki <macro@wdc.com>
* configure: Regenerate.
diff --git a/libgfortran/runtime/ISO_Fortran_binding.c b/libgfortran/runtime/ISO_Fortran_binding.c
index 695ef57ac32..8cfcc98965e 100644
--- a/libgfortran/runtime/ISO_Fortran_binding.c
+++ b/libgfortran/runtime/ISO_Fortran_binding.c
@@ -63,7 +63,8 @@ cfi_desc_to_gfc_desc (gfc_array_void *d, CFI_cdesc_t **s_ptr)
d->dtype.version = s->version;
GFC_DESCRIPTOR_RANK (d) = (signed char)s->rank;
- d->dtype.attribute = (signed short)s->attribute;
+ if (d->dtype.attribute == CFI_attribute_other)
+ return;
if (s->rank)
{