diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/pr43505.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/pr43505.f90 | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/pr43505.f90 b/gcc/testsuite/gfortran.dg/pr43505.f90 new file mode 100644 index 000000000..b912c9ff0 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr43505.f90 @@ -0,0 +1,44 @@ + MODULE MAIN1 + INTEGER , PARAMETER :: MXGLVL = 87 + CHARACTER(8) :: SRCTYP + REAL :: GRIDWS(MXGLVL) + REAL :: ZI, HS + END MODULE MAIN1 + + PROGRAM TEST + USE MAIN1 + IF (HS >= ZI) THEN + ELSEIF ( SRCTYP == 'AREA' & + .OR. SRCTYP == 'AREAPOLY' & + .OR. SRCTYP == 'AREACIRC' & + .OR. SRCTYP == 'OPENPIT' ) THEN + CALL ANYAVG (MXGLVL, GRIDWS) + CALL ANYAVG (MXGLVL, GRIDWS) + ELSE + IF ( HS > 0.0 ) THEN + CALL ANYAVG (MXGLVL, GRIDWS) + CALL ANYAVG (MXGLVL, GRIDWS) + CALL ANYAVG (MXGLVL, GRIDWS) + ENDIF + ENDIF + IF (HS.LT.ZI) THEN + ZI = HS + ENDIF + contains + SUBROUTINE ANYAVG(NLVLS,HTS) + INTEGER NLVLS + REAL HTS(NLVLS) + IF (5.LT.NLVLS) THEN + CALL GINTRP (HTS(5),HTS(5+1)) + ENDIF + CALL GINTRP (HTS(5-1), HTS(5)) + END SUBROUTINE ANYAVG + + subroutine gintrp (x1, x2) + print *, x1, x2 + end subroutine + + END PROGRAM TEST +! { dg-final { cleanup-modules "main1" } } + + |