1! { dg-do run } 2! PR 22217: Z edit descriptor with negative numbers used to give lots of * 3 4program main 5 character(len=70) line 6 character(len=20) fmt 7 write(unit=line,fmt='(Z4)') -1_1 8 if (line(1:4) .ne. ' FF') STOP 1 9 write(unit=line,fmt='(Z5)') -1_2 10 if (line(1:5) .ne. ' FFFF') STOP 2 11 write(unit=line,fmt='(Z9)') -1_4 12 if (line(1:9) .ne. ' FFFFFFFF') STOP 3 13 write(unit=line,fmt='(Z17)') -2_8 14 if (line(1:17) .ne. ' FFFFFFFFFFFFFFFE') STOP 4 15 write(unit=line,fmt='(Z2)') 10_8 16 if (line(1:2) .ne. ' A') STOP 5 17 18 write(unit=line,fmt='(Z8)') -43_8 19 if (line(1:1) .ne. '*') STOP 6 20 21 write(unit=line,fmt='(B65)') -1_8 22 if (line(1:2) .ne. ' 1') STOP 7 23 if (line(64:66) .ne. '11 ') STOP 8 24 25 write(unit=line,fmt='(O4)') -2_1 26 if (line(1:4) .ne. ' 376') STOP 9 27end 28