diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/string_compare_1.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/string_compare_1.f90 | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/string_compare_1.f90 b/gcc/testsuite/gfortran.dg/string_compare_1.f90 new file mode 100644 index 000000000..30cf35717 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/string_compare_1.f90 @@ -0,0 +1,25 @@ +! { dg-do run } + +! PR fortran/37099 +! Check for correct results when comparing array-section-substrings. + +PROGRAM main + IMPLICIT NONE + + CHARACTER(*), PARAMETER :: exprs(1) = (/ 'aa' /) + + CHARACTER(*), PARAMETER :: al1 = 'a'; + CHARACTER(len=LEN (al1)) :: al2 = al1; + + LOGICAL :: tmp(1), tmp2(1) + + tmp = (exprs(1:1)(1:1) == al1) + tmp2 = (exprs(1:1)(1:1) == al2) + + PRINT '(L1)', tmp + PRINT '(L1)', tmp2 + + IF (.NOT. tmp(1) .OR. .NOT. tmp2(1)) THEN + CALL abort () + END IF +END PROGRAM main |