1! { dg-do run } 2! { dg-options "-fdec" } 3! 4! Test support for providing a default exponent of zero when unspecified in 5! real constants with -fdec. 6! 7 8subroutine asserteq (rexp, ract, msg) 9 real, intent(in) :: rexp, ract 10 character(*), intent(in) :: msg 11 if (rexp .ne. ract) then 12 write (*, '(A,F12.6,F12.6)') msg, rexp, ract 13 STOP 1 14 endif 15end subroutine 16 17implicit none 18 19real, parameter :: r1 = 8e0 20real, parameter :: r2 = 8e ! { equivalent to 8e0 } 21real, volatile :: r3, r4 22character(2) :: s 23r3 = 8e ! { equivalent to 8e0 } 24s = '8e' 25 26read (s, *) r4 27 28call asserteq (r1, r2, "[const]") 29call asserteq (r1, r3, "[vol. ]") 30call asserteq (r1, r4, "[read ]") 31 32r4 = 8e + 48e 33call asserteq (56e, r4, "[sum ]") 34 35end 36