2 ! PR36420 Fortran 2008: g0 edit descriptor
3 ! Test case provided by Jerry DeLisle <jvdelisle@gcc.gnu.org>
4 character(25) :: string = "(g0,g0,g0)"
5 character(50) :: buffer
6 write(buffer, '(g0,g0,g0)') ':',12340,':'
7 if (buffer.ne.":12340:") call abort
8 write(buffer, string) ':',0,':'
9 if (buffer.ne.":0:") call abort
10 write(buffer, string) ':',1.0_8/3.0_8,':'
11 if (buffer.ne.":0.33333333333333331:") call abort
12 write(buffer, '(1x,a,g0,a)') ':',1.0_8/3.0_8,':'
13 if (buffer.ne." :0.33333333333333331:") call abort
14 write(buffer, string) ':',"hello",':'
15 if (buffer.ne.":hello:") call abort
16 write(buffer, "(g0,g0,g0,g0)") ':',.true.,.false.,':'
17 if (buffer.ne.":TF:") call abort
18 write(buffer, "(g0,g0,',',g0,g0)") '(',( 1.2345_8, 2.4567_8 ),')'
19 if (buffer.ne."(1.2344999999999999,2.4567000000000001)") call abort