1! PR target/35662 2! { dg-do run } 3! { dg-options "-O1" } 4 5subroutine f(x, y, z) 6 real, intent (in) :: x 7 real, intent (out) :: y, z 8 y = sin (x) 9 z = cos (x) 10end subroutine f 11 12program pr35662 13 real :: x, y, z 14 x = 3.1415926535897932384626433832795029 15 call f (x, y, z) 16 if (abs (y) > 1.0e-5 .or. abs (z + 1.0) > 1.0e-5) call abort 17 x = x / 2.0 18 call f (x, y, z) 19 if (abs (y - 1.0) > 1.0e-5 .or. abs (z) > 1.0e-5) call abort 20end program pr35662 21