view gcc/testsuite/gfortran.fortran-torture/compile/pr83189.f90 @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 84e7813d76e9
children
line wrap: on
line source

Module radin_mod
  INTEGER, PARAMETER :: DP = selected_real_kind(14,200)
Contains
  Subroutine SPLIFT (X,Y,YP,YPP,N,IERR,ISX,A1,B1,AN,BN)
    Integer,  Intent(in) :: N,ISX
    Real(dp), Intent(in) :: X(N),Y(N),A1,B1,AN,BN
    Real(dp), Intent(out) :: YP(N),YPP(N)
    Real(dp), Allocatable, Dimension(:,:) :: W
    NM1  = N-1
    NM2  = N-2
    If (ISX.Gt.0) GO TO 40
    Do I=2,N
       If (X(I)-X(I-1) .Le. 0) Then
          IERR = 3
          Return
       Endif
    End Do
    Allocate(W(N,3))
40  YPP(1) = 4*B1
    DOLD = (Y(2)-Y(1))/W(2,2)
    Do  I=2,NM2
       DNEW   = (Y(I+1) - Y(I))/W(I+1,2)
       YPP(I) = 6*(DNEW - DOLD)
       YP(I)  = DOLD
       DOLD = DNEW
    End Do
    Return
  End Subroutine SPLIFT
End Module radin_mod