recursive_statement_functions.f90

来自「用于进行gcc测试」· F90 代码 · 共 32 行

F90
32
字号
! { dg-do compile }! PR20866 - A statement function cannot be recursive.! Contributed by Joost VandeVondele <jv244@cam.ac.uk>!! Modified 20051110 to check that regressions PR24655 and PR24755! are fixed. Thanks to pavarini@pv.infn.it and tdeutsch@cea.fr for! the tests.!  INTEGER :: i, st1, st2, st3, lambda, n  REAL :: x, z(2,2)  character(8) :: ch  real(8)   :: fi, arg, sigma, dshpfunc  real(8), parameter :: one=1d0!! Test check for recursion via other statement functions, string! length references, function actual arguments and array index! references.!  st1 (i) = len (ch(st2 (1):8))  st2 (i) = max (st3 (1), 4)  st3 (i) = 2 + cos (z(st1 (1), i)) ! { dg-error "is recursive" }!! Test the two regressions.!  fi (n) = n *one  dshpfunc (arg)=-lambda/sigma*(arg/sigma)**(lambda-1)*exp(-(arg/sigma)**lambda)!! References to each statement function.!  write(6,*) st1 (1), fi (2), dshpfunc (1.0_8)  END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?