fix pr/45972
[official-gcc.git] / gcc / testsuite / gfortran.dg / graphite / id-4.f90
blob83899445de41fe0cf5bebfc5123b0f72b2260593
1 MODULE Vcimage
2 CHARACTER (LEN=80), SAVE :: CARD, FIELD
3 END MODULE Vcimage
4 MODULE Vimage
5 LOGICAL, SAVE :: EOFF
6 END MODULE Vimage
7 SUBROUTINE READIN(PROB, TITLE, CSTOP, FCYCLE, DCYCLE, DHIST, VHIST&
8 & , IMAX, PHIST, DEBUG, NSTAT, STATS, MAXSTA, NCORE, PPLOT, &
9 & DPLOT, VPLOT, TPLOT, SLIST, D0, E0, NODES, SHEAT, GAMMA, COLD &
10 & , THIST, NVISC, SCREEN, WEIGHT, TSTOP, STABF)
11 USE Vcimage
12 USE Vimage
13 INTEGER, DIMENSION(MAXSTA) :: STATS
14 IF (.NOT.EOFF) THEN
15 IF (FIELD=='PROB' .OR. FIELD=='PROBLEM_NUMBER') THEN
16 CALL QSORT (STATS(1:NSTAT))
17 WRITE (16, &
18 &'(//'' YOU HAVE REQUESTED A PRINTOUT OF THE STATION'', &
19 & '' ABORT''//)')
20 ENDIF
21 ENDIF
22 CONTAINS
23 RECURSIVE SUBROUTINE QSORT (LIST)
24 INTEGER, DIMENSION(:), INTENT(INOUT) :: LIST
25 INTEGER, DIMENSION(SIZE(LIST)) :: SMALLER,LARGER
26 IF (SIZE(LIST) > 1) THEN
27 LIST(NUMBER_SMALLER+1:NUMBER_SMALLER+NUMBER_EQUAL) = CHOSEN
28 CALL QSORT (LARGER(1:NUMBER_LARGER))
29 LIST(NUMBER_SMALLER+NUMBER_EQUAL+1:) = LARGER(1:NUMBER_LARGER)
30 END IF
31 END SUBROUTINE QSORT
32 END SUBROUTINE READIN
33 ! { dg-final { cleanup-modules "vimage vcimage" } }