The attached program stops in Plato without any failure message. The option “Fail on underflow” is switched off. This behaviour is different from v 8.95. KL
program test110
use, intrinsic :: iso_fortran_env
implicit none
integer, parameter :: sp = real32
integer, parameter :: dp = real64
!!! integer, parameter :: sp = kind (1.0)
!!! integer, parameter :: dp = kind (1.0d0)
real (sp) :: a, b, d
real (dp) :: c
logical :: test
test = .true.
!! test = .false.
if (test) then
a = 2.89e-3
b = 8.30544_sp
c = 95.0428_sp
d = a * b**5.5 * exp(-c)
write(*,*) d
read (*,*)
else
a = 2.89d-3
b = 8.30544_dp
c = 95.0428_dp
!! c = 80.0_dp
d = real (real(a, dp) * real(b, dp)**5.5_dp * exp(-c), sp )
write(*,*) d
read (*,*)
end if
end program test110