(root)/
gcc-13.2.0/
gcc/
testsuite/
gfortran.dg/
intrinsic_sign_1.f90
! { dg-do run }
! At one point, SIGN() evaluated its first argument twice.
! Contributed by Brooks Moses <brooks.moses@codesourcery.com>
program sign1
  integer :: i
  i = 1
  if (sign(foo(i), 1) /= 1) STOP 1
  i = 1
  if (sign(foo(i), -1) /= -1) STOP 2
contains
  integer function foo(i)
    integer :: i
    foo = i
    i = i + 1
  end function
end