summaryrefslogtreecommitdiffstats
path: root/testing/source/gcc10/patches/gfortran.deferred-shape-vs-assumed-shape.patch
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2020-05-08 21:25:24 +0000
committer Eric Hameleers <alien@slackware.com>2020-05-09 08:59:52 +0200
commit04ebdce888955069ae2288597a2e50339eda3f4b (patch)
tree271c1bb47037cabcc3139d95e17120058dd8c4fa /testing/source/gcc10/patches/gfortran.deferred-shape-vs-assumed-shape.patch
parent7f9672ea573b02b2665782f9760d8c38b83c46e9 (diff)
downloadcurrent-04ebdce888955069ae2288597a2e50339eda3f4b.tar.gz
current-04ebdce888955069ae2288597a2e50339eda3f4b.tar.xz
Fri May 8 21:25:24 UTC 202020200508212524
a/shadow-4.8.1-x86_64-6.txz: Rebuilt. Include manpages for sulogin(8). a/util-linux-2.35.1-x86_64-5.txz: Rebuilt. ap/sysstat-12.3.3-x86_64-1.txz: Upgraded. d/bison-3.6-x86_64-1.txz: Upgraded. l/jansson-2.13.1-x86_64-1.txz: Upgraded. n/NetworkManager-1.24.0-x86_64-1.txz: Upgraded. n/fetchmail-6.4.5-x86_64-1.txz: Upgraded. testing/packages/PAM/shadow-4.8.1-x86_64-6_pam.txz: Rebuilt. Include manpages for sulogin(8). Use this version of /bin/su. testing/packages/PAM/util-linux-2.35.1-x86_64-5_pam.txz: Rebuilt. Don't use this version of /bin/su.
Diffstat (limited to 'testing/source/gcc10/patches/gfortran.deferred-shape-vs-assumed-shape.patch')
-rw-r--r--testing/source/gcc10/patches/gfortran.deferred-shape-vs-assumed-shape.patch40
1 files changed, 40 insertions, 0 deletions
diff --git a/testing/source/gcc10/patches/gfortran.deferred-shape-vs-assumed-shape.patch b/testing/source/gcc10/patches/gfortran.deferred-shape-vs-assumed-shape.patch
new file mode 100644
index 000000000..f695b969e
--- /dev/null
+++ b/testing/source/gcc10/patches/gfortran.deferred-shape-vs-assumed-shape.patch
@@ -0,0 +1,40 @@
+[PATCH] deferred-shape vs assumed-shape
+Steve Kargl sgk@troutmask.apl.washington.edu
+Wed Apr 1 20:04:43 GMT 2020
+
+See
+https://stackoverflow.com/questions/60972134/whats-wrong-with-the-following-fortran-code-gfortran-dtio-dummy-argument-at
+
+Is A(:) a deferred-shape array or an assumed-shape array? The
+answer of course depends on context.
+
+This patch fixes the issue found at the above URL.
+
+Index: gcc/fortran/interface.c
+===================================================================
+--- gcc/fortran/interface.c (revision 280157)
++++ gcc/fortran/interface.c (working copy)
+@@ -4916,10 +4916,15 @@ check_dtio_arg_TKR_intent (gfc_symbol *fsym, bool type
+ || ((type != BT_CLASS) && fsym->attr.dimension)))
+ gfc_error ("DTIO dummy argument at %L must be a scalar",
+ &fsym->declared_at);
+- else if (rank == 1
+- && (fsym->as == NULL || fsym->as->type != AS_ASSUMED_SHAPE))
+- gfc_error ("DTIO dummy argument at %L must be an "
+- "ASSUMED SHAPE ARRAY", &fsym->declared_at);
++ else if (rank == 1)
++ {
++ if (fsym->as == NULL
++ || !(fsym->as->type == AS_ASSUMED_SHAPE
++ || (fsym->as->type == AS_DEFERRED && fsym->attr.dummy
++ && !fsym->attr.allocatable && !fsym->attr.pointer)))
++ gfc_error ("DTIO dummy argument at %L must be an "
++ "ASSUMED-SHAPE ARRAY", &fsym->declared_at);
++ }
+
+ if (type == BT_CHARACTER && fsym->ts.u.cl->length != NULL)
+ gfc_error ("DTIO character argument at %L must have assumed length",
+
+--
+Steve
+