111
|
1 ! { dg-do run }
|
|
2 ! { dg-options "-O -fdump-tree-original" }
|
|
3 program main
|
|
4 implicit none
|
|
5 character(len=4) :: c
|
|
6 integer :: n
|
|
7 integer :: i
|
|
8 integer :: k1, k2
|
|
9 common /foo/ i
|
|
10
|
|
11 n = 0
|
|
12 i = 0
|
|
13 k1 = 1
|
|
14 k2 = 3
|
|
15 c = 'abcd'
|
|
16 n = n + 1 ; if (c(1:2) == c(1:2)) call yes
|
|
17 n = n + 1 ; if (c(k1:k2) >= c(k1:k2)) call yes
|
|
18 n = n + 1 ; if (c(:2) <= c(1:2)) call yes
|
|
19 n = n + 1 ; if (c(k2:) .eq. c(k2:4)) call yes
|
|
20 n = n + 1 ; if (c(:) .ge. c) call yes
|
|
21 n = n + 1 ; if (c .le. c) call yes
|
131
|
22 if (c(1:2) /= c(1:2)) STOP 1
|
|
23 if (c(k1:k2) > c(k1:k2)) STOP 2
|
|
24 if (c(:2) < c(1:2)) STOP 3
|
|
25 if (c(:) .ne. c) STOP 4
|
|
26 if (c(:2) .gt. c(1:2)) STOP 5
|
|
27 if (c(1:2) .lt. c(:2)) STOP 6
|
|
28 if (n /= i) STOP 7
|
111
|
29 end program main
|
|
30
|
|
31 subroutine yes
|
|
32 implicit none
|
|
33 common /foo/ i
|
|
34 integer :: i
|
|
35 i = i + 1
|
|
36 end subroutine yes
|
|
37
|
|
38 ! { dg-final { scan-tree-dump-times "gfortran_compare_string" 0 "original" } }
|
|
39
|