! { dg-do run }
! { dg-options "-fno-range-check" }
! { dg-add-options ieee }
! { dg-skip-if "NaN not supported" { spu-*-* } { "*" } { "" } }
!
! PR fortran/34318
!
! Infinity and NaN were not properly written to the .mod file.
!
module nonordinal
  implicit none
  real, parameter :: inf = 1./0., nan = 0./0., minf = -1./0.0
end module nonordinal

program a
  use nonordinal
  implicit none
  character(len=20) :: str
  if (log(abs(inf))  < huge(inf)) call abort()
  if (log(abs(minf)) < huge(inf)) call abort()
  if (.not. isnan(nan)) call abort()
  write(str,"(sp,f10.2)") inf
  if (adjustl(str) /= "+Infinity") call abort()
  write(str,*) minf
  if (adjustl(str) /= "-Infinity") call abort()
  write(str,*) nan
  if (adjustl(str) /= "NaN") call abort()
end program a
