diff options
Diffstat (limited to 'testing/source/gcc/patches/gfortran.deferred-shape-vs-assumed-shape.patch')
-rw-r--r-- | testing/source/gcc/patches/gfortran.deferred-shape-vs-assumed-shape.patch | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/testing/source/gcc/patches/gfortran.deferred-shape-vs-assumed-shape.patch b/testing/source/gcc/patches/gfortran.deferred-shape-vs-assumed-shape.patch deleted file mode 100644 index f695b969e..000000000 --- a/testing/source/gcc/patches/gfortran.deferred-shape-vs-assumed-shape.patch +++ /dev/null @@ -1,40 +0,0 @@ -[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 - |