c=========================================================== c Investigates return codes from read() statements c=========================================================== program tiostat implicit none integer rc, val integer EOF parameter ( EOF = -1 ) 100 continue write(*,*) 'Enter an integer' read(*,*,iostat=rc) val write(*,*) ' integer test: val = ', val write(*,*) ' integer test: rc = ', rc write(*,*) 'Enter a real value' read(*,*,iostat=rc) val write(*,*) ' real test: val = ', val write(*,*) ' real test: rc = ', rc write(*,*) 'Enter a non-numeric value' read(*,*,iostat=rc) val write(*,*) ' non-numeric test: val = ', val write(*,*) ' non-numeric test: rc = ', rc write(*,*) 'Enter an EOF' read(*,*,iostat=rc) val write(*,*) ' EOF test: val = ', val write(*,*) ' EOF test: rc = ', rc if( rc .ne. EOF ) go to 100 stop end