https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99852
Bug ID: 99852 Summary: Missing error "Arithmetic overflow" for some cases Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: gs...@t-online.de Target Milestone: --- Following examples produce an error for c and d, but not for a and b : (similar for wik=2,4,8,16) $ cat z1.f90 program p implicit none integer, parameter :: wik = 1 integer(wik), parameter :: a = huge(1_wik) + 1_wik integer(wik) :: b = huge(1_wik) + 1_wik integer(wik) :: c c = huge(1_wik) + 1_wik associate (d => huge(1_wik) + 1_wik) print *, a, b, c, d end associate end $ cat z2.f90 program p implicit none integer, parameter :: wik = 1 integer(wik), parameter :: a = -huge(1_wik) - 2_wik integer(wik) :: b = -huge(1_wik) - 2_wik integer(wik) :: c c = -huge(1_wik) - 2_wik associate (d => -huge(1_wik) - 2_wik) print *, a, b, c, d end associate end $ gfortran-11-20210328 -c z1.f90 z1.f90:7:7: 7 | c = huge(1_wik) + 1_wik | 1 Error: Arithmetic overflow at (1) z1.f90:8:19: 8 | associate (d => huge(1_wik) + 1_wik) | 1 Error: Arithmetic overflow at (1)