2 ! { dg-options "-fbackslash" }
4 character(kind
=1,len
=20) :: s1
5 character(kind
=4,len
=20) :: s4
9 call check(s1
, 4_
"this is me! ")
10 call check2(s1
, 4_
"this is me! ")
12 call check(s1
, 4_
"this is me! ")
13 call check2(s1
, 4_
"this is me! ")
18 call check2(s1
, 4_
" ")
21 call check2(s1
, 4_
" ")
25 call check(s1
, 4_
" \xFF ")
26 call check2(s1
, 4_
" \xFF ")
28 call check(s1
, 4_
" \xFF ")
29 call check2(s1
, 4_
" \xFF ")
33 call check(s1
, 4_
" \xFF ")
34 call check2(s1
, 4_
" \xFF ")
36 call check(s1
, 4_
" \xFF ")
37 call check2(s1
, 4_
" \xFF ")
40 subroutine check(s1
,s4
)
41 character(kind
=1,len
=20) :: s1
, t1
42 character(kind
=4,len
=20) :: s4
44 if (t1
/= s1
) call abort
45 if (len(s1
) /= len(t1
)) call abort
46 if (len(s1
) /= len(s4
)) call abort
47 if (len_trim(s1
) /= len_trim(t1
)) call abort
48 if (len_trim(s1
) /= len_trim(s4
)) call abort
51 subroutine check2(s1
,s4
)
52 character(kind
=1,len
=*) :: s1
53 character(kind
=4,len
=*) :: s4
54 character(kind
=1,len
=len(s1
)) :: t1
55 character(kind
=4,len
=len(s4
)) :: t4
59 if (t1
/= s1
) call abort
60 if (t4
/= s4
) call abort
61 if (len(s1
) /= len(t1
)) call abort
62 if (len(s1
) /= len(s4
)) call abort
63 if (len(s1
) /= len(t4
)) call abort
64 if (len_trim(s1
) /= len_trim(t1
)) call abort
65 if (len_trim(s1
) /= len_trim(s4
)) call abort
66 if (len_trim(s1
) /= len_trim(t4
)) call abort