aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gfortran.fortran-torture/execute/st_function_2.f90
blob: 2dec735625fabce77d19950a7aa807ffad68bd49 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
! PR15620
! Check that evaluating a statement function doesn't affect the value of
! its dummy argument variables.
program st_function_2
  integer fn, a, b
  fn(a, b) = a + b
  if (foo(1) .ne. 43) call abort

  ! Check that values aren't modified when avaluating the arguments.
  a = 1
  b = 5
  if (fn (b + 2, a + 3) .ne. 11) call abort
contains
function foo (x) 
  integer z, y, foo, x 
  bar(z) = z*z 
  z = 42 
  t = bar(x) 
  foo = t + z 
end function 
end program