1! { dg-do run }
2! { dg-options "-std=gnu" }
3! PR58722
4program testit
5use ISO_FORTRAN_ENV
6  implicit none
7  integer, parameter :: j(size(real_kinds)+4)=[REAL_KINDS, [4, 4, 4, 4]]
8  character(50) :: astring
9  integer :: i, l, n
10
11  n = 0
12  do i=1,size(real_kinds)
13    if (i == 1) then
14      write(astring, '(ru,g0)') 1.0/real(10.0, kind=j(1))
15    else if (i == 2) then
16      write(astring, '(ru,g0)') 1.0/real(10.0, kind=j(2))
17    else if (i == 3) then
18      write(astring, '(ru,g0)') 1.0/real(10.0, kind=j(3))
19    else if (i == 4) then
20      write(astring, '(ru,g0)') 1.0/real(10.0, kind=j(4))
21    end if
22    if (astring(2:2) /= '9') then
23      l = index(astring, 'E')
24      if (l /= 0) then
25	!print *, i, l, trim(astring)
26	n = n + l
27      end if
28    end if
29  end do
30  if (n /= 0) call abort
31end program
32