If I assign a long integer to a short integer gfortran should warn about possible loss of precision, such as g95 does.
Thanks, Jonathan. Full test case: [EMAIL PROTECTED] ~/bugs/gfortran-4.3/ls_prec $ gfortran-4.3 -Wall -pedantic -o test test.f90 [EMAIL PROTECTED] ~/bugs/gfortran-4.3/ls_prec $ ./test lvar = 8589934592 svar = 0 lvar = 1073741824 svar = 1073741824 [EMAIL PROTECTED] ~/bugs/gfortran-4.3/ls_prec $ gfortran-4.3 -v Using built-in specs. Target: x86_64-unknown-linux-gnu Configured with: ../configure --program-suffix=-4.3 Thread model: posix gcc version 4.3.0 (GCC) [EMAIL PROTECTED] ~/bugs/gfortran-4.3/ls_prec $ cat test.f90 program test implicit none integer, parameter :: short = kind(0) integer, parameter :: long = selected_int_kind(18) integer(short) :: svar integer(long) :: lvar lvar = 2_long**33 svar = lvar print *, "lvar = ", lvar print *, "svar = ", svar lvar = 2_long**30 svar = lvar print *, "lvar = ", lvar print *, "svar = ", svar end program -- Summary: Should warn about precision loss on integer conversions in fortran Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: J dot Hogg at rl dot ac dot uk GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35962