PR target/83368
[official-gcc.git] / gcc / testsuite / gfortran.dg / fmt_g0_1.f08
blob5b74a3e29a92cb9febabf094987edfc3248782d1
1 ! { dg-do run }
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
20 end