! { dg-do run } ! { dg-options "-fdec" } ! ! Test support for providing a default exponent of zero when unspecified in ! real constants with -fdec. ! subroutine asserteq (rexp, ract, msg) real, intent(in) :: rexp, ract character(*), intent(in) :: msg if (rexp .ne. ract) then write (*, '(A,F12.6,F12.6)') msg, rexp, ract STOP 1 endif end subroutine implicit none real, parameter :: r1 = 8e0 real, parameter :: r2 = 8e ! { equivalent to 8e0 } real, volatile :: r3, r4 character(2) :: s r3 = 8e ! { equivalent to 8e0 } s = '8e' read (s, *) r4 call asserteq (r1, r2, "[const]") call asserteq (r1, r3, "[vol. ]") call asserteq (r1, r4, "[read ]") r4 = 8e + 48e call asserteq (56e, r4, "[sum ]") end