1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
! { dg-do run } ! PR libfortran/31210 program test implicit none integer :: l = 0 character(len=20) :: s write(s,'(A,I1)') foo(), 0 if (trim(s) /= "0") call abort contains function foo() character(len=l) :: foo foo = "XXXX" end function end program test