The following program returns nonsense values if the up or down flywheel is pushed. The prompted value (adate%iyr) always becomes 0 regardless of how many times the button is pushed, and the other value (adate%imn) becomes corrupted. A similar problem occurs even if the value is a simple integer, but that always returns as 0. There is no problem if you type in the desired number.
The problem occurs with version 9.10, but not in 9.00.
Program p Use clrwin, Only: winio@ Type :: t Integer :: iyr Integer :: imn End Type t Type(t) :: adate Integer :: iw, idy
adate%iyr = 2015 adate%imn = 4 idy = 15 Print *, adate iw = winio@( '%dd%5rd', 1, adate%iyr ) Print *, adate Print *, idy iw = winio@( '%ff%dd%5rd', 1, idy ) Print *, idy End Program p