1! { dg-do run } 2 3! PR fortran/37099 4! Check for correct results when comparing array-section-substrings. 5 6PROGRAM main 7 IMPLICIT NONE 8 9 CHARACTER(*), PARAMETER :: exprs(1) = (/ 'aa' /) 10 11 CHARACTER(*), PARAMETER :: al1 = 'a'; 12 CHARACTER(len=LEN (al1)) :: al2 = al1; 13 14 LOGICAL :: tmp(1), tmp2(1) 15 16 tmp = (exprs(1:1)(1:1) == al1) 17 tmp2 = (exprs(1:1)(1:1) == al2) 18 19 PRINT '(L1)', tmp 20 PRINT '(L1)', tmp2 21 22 IF (.NOT. tmp(1) .OR. .NOT. tmp2(1)) THEN 23 CALL abort () 24 END IF 25END PROGRAM main 26