| ! { dg-do run } |
| program main |
| complex(kind=4) :: c |
| real(kind=4) :: a(2) |
| integer(kind=4) :: i(2) |
| integer(kind=1) :: b(8) |
| integer(kind=8) :: j |
| |
| c = (3.14, 2.71) |
| open (10, form="unformatted",convert="swap") ! { dg-warning "Extension: CONVERT" } |
| write (10) c |
| rewind (10) |
| read (10) a |
| if (a(1) /= 3.14 .or. a(2) /= 2.71) STOP 1 |
| close(10,status="delete") |
| |
| open (10, form="unformatted",convert="big_endian") ! { dg-warning "Extension: CONVERT" } |
| i = (/ int(Z'11223344'), int(Z'55667700') /) |
| write (10) i |
| rewind (10) |
| read (10) b |
| if (any(b /= (/ int(Z'11',1), int(Z'22',1), int(Z'33',1), int(Z'44',1), & |
| & int(Z'55',1), int(Z'66',1), int(Z'77',1), int(Z'00',1) /))) & |
| STOP 2 |
| backspace 10 |
| read (10) j |
| if (j /= int(Z'1122334455667700',8)) STOP 3 |
| close (10, status="delete") |
| |
| open (10, form="unformatted", convert="little_endian") ! { dg-warning "Extension: CONVERT" } |
| write (10) i |
| rewind (10) |
| read (10) b |
| if (any(b /= (/ int(Z'44',1), int(Z'33',1), int(Z'22',1), int(Z'11',1), & |
| & int(Z'00',1), int(Z'77',1), int(Z'66',1), int(Z'55',1) /))) & |
| STOP 4 |
| backspace 10 |
| read (10) j |
| if (j /= int(Z'5566770011223344',8)) STOP 5 |
| close (10, status="delete") |
| |
| end program main |