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