! { dg-do compile }
! { dg-options "-O3 -ffast-math -fdump-tree-optimized" }

! Make sure that FRE does not replace c with b in d = c - 5

function test(a)
  real a, b, c, d
  b = a + 5.
  c = (a + 5.)
  d = c - 5.
  call foo(b)
  test = d
end

! { dg-final { scan-tree-dump "- 5" "optimized" } }
! { dg-final { cleanup-tree-dump "optimized" } }
