| ! { dg-do run } |
| ! { dg-options "-std=legacy" } |
| ! PR78351 |
| program read_csv |
| implicit none |
| integer, parameter :: dbl = selected_real_kind(p=14, r=99) |
| |
| call checkit("101,1.,2.,3.,7,7") |
| call checkit ("102,1.,,3.,,7") |
| call checkit (",1.,,3.,, ") |
| |
| contains |
| |
| subroutine checkit (text) |
| character(*) :: text |
| integer :: I1, I2, I3 |
| real(dbl) :: R1, R2, R3 |
| 10 format (I8,3ES16.8,2I8) |
| |
| I1=-99; I2=-99; I3=-99 |
| R1=-99._DBL; R2=-99._DBL; R3=-99._DBL |
| read(text,10) I1, R1, R2, R3, I2, I3 |
| if (I1 == -99) stop 1 |
| if (I2 == -99) stop 2 |
| if (I3 == -99) stop 3 |
| if (R1 == -99._DBL) stop 4 |
| if (R2 == -99._DBL) stop 5 |
| if (R3 == -99._DBL) stop 6 |
| end subroutine |
| |
| end program |