1! { dg-do compile } 2! { dg-options "-O1 -fno-signed-zeros -fno-trapping-math -fdump-tree-optimized" } 3! Fortran defaults to associative by default, 4! with -fno-signed-zeros -fno-trapping-math this should optimize away all additions 5SUBROUTINE S1(a) 6 REAL :: a 7 a=1+a-1 8END SUBROUTINE S1 9! { dg-final { scan-tree-dump-times " \\\+ " 0 "optimized" } } 10