Quoted from KennyT
it's unformatted so there's no IOSTAT option.
That is not true as far as I know. Here is a simple test program.
program tst
integer :: i,j,k,stat
open(10,file='xyz.ufd',status='replace',form='unformatted')
i=17; j=i*i; k=2*j+3*i
write(10)i,j,k
close(10)
open(11,file='xyz.ufd',status='old',iostat=stat,form='unformatted')
write(*,100)'After open',stat
read(11,iostat=stat)i,j,k
write(*,100)'After read',stat
close(11,iostat=stat)
write(*,100)'After close',stat
100 format(1x,A12,I8)
end program
The program prints IOSTAT=0 after the three I/O statements pertaining to file unit-11.