https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70959
--- Comment #6 from Dominique d'Humieres <dominiq at lps dot ens.fr> --- > 1. Maybe the placement of the warning is spurious, but is there any chance it > is actually assigning the type REAL(4) to e18? I don't think so as shown by the results 37037036703703701 37037036703703701 37037036296732672 37037036703703704 of the following test: integer(8), parameter :: e1 = 3 * 12345678901234567_8 integer(8) :: e2, e3, e4 real(4) :: a real(8) :: b e2 = (e1) a = e1 b = e1 e3 = a e4 = b print *, e1, e2, e3, e4 end