aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran
diff options
context:
space:
mode:
authorTobias Burnus <tobias@codesourcery.com>2020-06-25 16:57:08 +0200
committerTobias Burnus <tobias@codesourcery.com>2020-06-25 16:57:08 +0200
commitf48bffe70cba310461ec19ffcd07c573a6b86575 (patch)
tree55c737310793db38ac215616287c8d1f50a1f6cc /gcc/fortran
parent628b78f9794a2eefcbc578011806bfa8e09b9ef7 (diff)
downloadgcc-f48bffe70cba310461ec19ffcd07c573a6b86575.zip
gcc-f48bffe70cba310461ec19ffcd07c573a6b86575.tar.gz
gcc-f48bffe70cba310461ec19ffcd07c573a6b86575.tar.bz2
Fortran: Fix character-kind=4 substring resolution (PR95837)
Testing showed that it is always set and its value matches always ts->kind (if available) or otherwise, if it is a variable, the sym->ts.kind. gcc/fortran/ChangeLog: PR fortran/95837 * resolve.c (gfc_resolve_substring_charlen): Remove bogus ts.kind setting for the expression. gcc/testsuite/ChangeLog: PR fortran/95837 * gfortran.dg/char4-subscript.f90: New test.
Diffstat (limited to 'gcc/fortran')
-rw-r--r--gcc/fortran/resolve.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index c53b312..8c602da 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -5140,9 +5140,6 @@ gfc_resolve_substring_charlen (gfc_expr *e)
return;
}
- e->ts.type = BT_CHARACTER;
- e->ts.kind = gfc_default_character_kind;
-
if (!e->ts.u.cl)
e->ts.u.cl = gfc_new_charlen (gfc_current_ns, NULL);