annotate gcc/testsuite/gfortran.dg/backspace_1.f @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children 84e7813d76e9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 ! This file is all about BACKSPACE
kono
parents:
diff changeset
2 ! { dg-do run { target fd_truncate } }
kono
parents:
diff changeset
3
kono
parents:
diff changeset
4 integer i, n, nr
kono
parents:
diff changeset
5 real x(10), y(10)
kono
parents:
diff changeset
6
kono
parents:
diff changeset
7 ! PR libfortran/20068
kono
parents:
diff changeset
8 open (20, status='scratch')
kono
parents:
diff changeset
9 write (20,*) 1
kono
parents:
diff changeset
10 write (20,*) 2
kono
parents:
diff changeset
11 write (20,*) 3
kono
parents:
diff changeset
12 rewind (20)
kono
parents:
diff changeset
13 read (20,*) i
kono
parents:
diff changeset
14 if (i .ne. 1) call abort
kono
parents:
diff changeset
15 write (*,*) ' '
kono
parents:
diff changeset
16 backspace (20)
kono
parents:
diff changeset
17 read (20,*) i
kono
parents:
diff changeset
18 if (i .ne. 1) call abort
kono
parents:
diff changeset
19 close (20)
kono
parents:
diff changeset
20
kono
parents:
diff changeset
21 ! PR libfortran/20125
kono
parents:
diff changeset
22 open (20, status='scratch')
kono
parents:
diff changeset
23 write (20,*) 7
kono
parents:
diff changeset
24 backspace (20)
kono
parents:
diff changeset
25 read (20,*) i
kono
parents:
diff changeset
26 if (i .ne. 7) call abort
kono
parents:
diff changeset
27 close (20)
kono
parents:
diff changeset
28
kono
parents:
diff changeset
29 open (20, status='scratch', form='unformatted')
kono
parents:
diff changeset
30 write (20) 8
kono
parents:
diff changeset
31 backspace (20)
kono
parents:
diff changeset
32 read (20) i
kono
parents:
diff changeset
33 if (i .ne. 8) call abort
kono
parents:
diff changeset
34 close (20)
kono
parents:
diff changeset
35
kono
parents:
diff changeset
36 ! PR libfortran/20471
kono
parents:
diff changeset
37 do n = 1, 10
kono
parents:
diff changeset
38 x(n) = sqrt(real(n))
kono
parents:
diff changeset
39 end do
kono
parents:
diff changeset
40 open (3, form='unformatted', status='scratch')
kono
parents:
diff changeset
41 write (3) (x(n),n=1,10)
kono
parents:
diff changeset
42 backspace (3)
kono
parents:
diff changeset
43 rewind (3)
kono
parents:
diff changeset
44 read (3) (y(n),n=1,10)
kono
parents:
diff changeset
45
kono
parents:
diff changeset
46 do n = 1, 10
kono
parents:
diff changeset
47 if (abs(x(n)-y(n)) > 0.00001) call abort
kono
parents:
diff changeset
48 end do
kono
parents:
diff changeset
49 close (3)
kono
parents:
diff changeset
50
kono
parents:
diff changeset
51 ! PR libfortran/20156
kono
parents:
diff changeset
52 open (3, form='unformatted', status='scratch')
kono
parents:
diff changeset
53 do i = 1, 5
kono
parents:
diff changeset
54 x(1) = i
kono
parents:
diff changeset
55 write (3) n, (x(n),n=1,10)
kono
parents:
diff changeset
56 end do
kono
parents:
diff changeset
57 nr = 0
kono
parents:
diff changeset
58 rewind (3)
kono
parents:
diff changeset
59 20 continue
kono
parents:
diff changeset
60 read (3,end=30,err=90) n, (x(n),n=1,10)
kono
parents:
diff changeset
61 nr = nr + 1
kono
parents:
diff changeset
62 goto 20
kono
parents:
diff changeset
63 30 continue
kono
parents:
diff changeset
64 if (nr .ne. 5) call abort
kono
parents:
diff changeset
65
kono
parents:
diff changeset
66 do i = 1, nr+1
kono
parents:
diff changeset
67 backspace (3)
kono
parents:
diff changeset
68 end do
kono
parents:
diff changeset
69
kono
parents:
diff changeset
70 do i = 1, nr
kono
parents:
diff changeset
71 read(3,end=70,err=90) n, (x(n),n=1,10)
kono
parents:
diff changeset
72 if (abs(x(1) - i) .gt. 0.001) call abort
kono
parents:
diff changeset
73 end do
kono
parents:
diff changeset
74 close (3)
kono
parents:
diff changeset
75 stop
kono
parents:
diff changeset
76
kono
parents:
diff changeset
77 70 continue
kono
parents:
diff changeset
78 call abort
kono
parents:
diff changeset
79 90 continue
kono
parents:
diff changeset
80 call abort
kono
parents:
diff changeset
81
kono
parents:
diff changeset
82 end