diff options
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/check.c | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 1aa71d8..89de9d0 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2020-04-02 Steven G. Kargl <kargl@gcc.gnu.org> + + PR fortran/93498 + * check.c (gfc_check_findloc): If the kinds of the arguments + differ goto label "incompat". + 2020-04-02 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/94030 diff --git a/gcc/fortran/check.c b/gcc/fortran/check.c index 519aa8b..cdabbf5 100644 --- a/gcc/fortran/check.c +++ b/gcc/fortran/check.c @@ -3947,6 +3947,10 @@ gfc_check_findloc (gfc_actual_arglist *ap) v1 = v->ts.type == BT_CHARACTER; if ((a1 && !v1) || (!a1 && v1)) goto incompat; + + /* Check the kind of the characters argument match. */ + if (a1 && v1 && a->ts.kind != v->ts.kind) + goto incompat; d = ap->next->next->expr; m = ap->next->next->next->expr; |