Annotation of cci/usr/src/usr.bin/f77/testf77/tests/FM050.f, revision 1.1

1.1     ! root        1: C                                                                       00010050
        !             2: C     DATE***82/08/02*18.33.46
        !             3: C     OWNER  PRE/850703/TC-85-   -410/    /FSTC/278FCVS*F78UBP20/
        !             4: C     AUDIT  FCVS78 V2.0
        !             5: C     COMMENT SECTION                                                   00020050
        !             6: C                                                                       00030050
        !             7: C     FM050                                                             00040050
        !             8: C                                                                       00050050
        !             9: C          THIS ROUTINE CONTAINS BASIC SUBROUTINE AND FUNCTION REFERENCE00060050
        !            10: C     TESTS.  FOUR SUBROUTINES AND ONE FUNCTION ARE CALLED OR           00070050
        !            11: C     REFERENCED.  FS051 IS CALLED TO TEST THE CALLING AND PASSING OF   00080050
        !            12: C     ARGUMENTS THROUGH UNLABELED COMMON.  NO ARGUMENTS ARE SPECIFIED   00090050
        !            13: C     IN THE CALL LINE.  FS052 IS IDENTICAL TO FS051 EXCEPT THAT SEVERAL00100050
        !            14: C     RETURNS ARE USED.  FS053 UTILIZES MANY ARGUMENTS ON THE CALL      00110050
        !            15: C     STATEMENT AND MANY RETURN STATEMENTS IN THE SUBROUTINE BODY.      00120050
        !            16: C     FF054 IS A FUNCTION SUBROUTINE IN WHICH MANY ARGUMENTS AND RETURN 00130050
        !            17: C     STATEMENTS ARE USED.  AND FINALLY FS055 PASSES A ONE DIMENIONAL   00140050
        !            18: C     ARRAY BACK TO FM050.                                              00150050
        !            19: C                                                                       00160050
        !            20: C      REFERENCES                                                       00170050
        !            21: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00180050
        !            22: C              X3.9-1978                                                00190050
        !            23: C                                                                       00200050
        !            24: C        SECTION 15.5.2, REFERENCING AN EXTERNAL FUNCTION               00210050
        !            25: C        SECTION 15.6.2, SUBROUTINE REFERENCE                           00220050
        !            26: C                                                                       00230050
        !            27:       COMMON RVCN01,IVCN01,IVCN02,IACN11(20)                            00240050
        !            28:       INTEGER FF054                                                     00250050
        !            29: C                                                                       00260050
        !            30: C      **********************************************************       00270050
        !            31: C                                                                       00280050
        !            32: C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00290050
        !            33: C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN NATIONAL STANDARD  00300050
        !            34: C     PROGRAMMING LANGUAGE FORTRAN X3.9-1978, HAS BEEN DEVELOPED BY THE 00310050
        !            35: C     FEDERAL COBOL COMPILER TESTING SERVICE.  THE FORTRAN COMPILER     00320050
        !            36: C     VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT ROUTINES, THEIR RELATED00330050
        !            37: C     DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT ROUTINE IS A FORTRAN   00340050
        !            38: C     PROGRAM, SUBPROGRAM OR FUNCTION WHICH INCLUDES TESTS OF SPECIFIC  00350050
        !            39: C     LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING THE RESULT 00360050
        !            40: C     OF EXECUTING THESE TESTS.                                         00370050
        !            41: C                                                                       00380050
        !            42: C         THIS PARTICULAR PROGRAM/SUBPROGRAM/FUNCTION CONTAINS FEATURES 00390050
        !            43: C     FOUND ONLY IN THE SUBSET AS DEFINED IN X3.9-1978.                 00400050
        !            44: C                                                                       00410050
        !            45: C         SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO -             00420050
        !            46: C                                                                       00430050
        !            47: C                  DEPARTMENT OF THE NAVY                               00440050
        !            48: C                  FEDERAL COBOL COMPILER TESTING SERVICE               00450050
        !            49: C                  WASHINGTON, D.C.  20376                              00460050
        !            50: C                                                                       00470050
        !            51: C      **********************************************************       00480050
        !            52: C                                                                       00490050
        !            53: C                                                                       00500050
        !            54: C                                                                       00510050
        !            55: C     INITIALIZATION SECTION                                            00520050
        !            56: C                                                                       00530050
        !            57: C     INITIALIZE CONSTANTS                                              00540050
        !            58: C      **************                                                   00550050
        !            59: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER.         00560050
        !            60:       I01 = 5                                                           00570050
        !            61: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER.             00580050
        !            62:       I02 = 6                                                           00590050
        !            63: C     SYSTEM ENVIRONMENT SECTION                                        00600050
        !            64: C                                                                       00610050
        !            65:       I01 = 5                                                           00620050
        !            66: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      00630050
        !            67: C     (UNIT NUMBER FOR CARD READER).                                    00640050
        !            68: CX011    THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD. 00650050
        !            69: C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00660050
        !            70: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         00670050
        !            71: C                                                                       00680050
        !            72:       I02 = 6                                                           00690050
        !            73: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      00700050
        !            74: C     (UNIT NUMBER FOR PRINTER).                                        00710050
        !            75: CX021    THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD. 00720050
        !            76: C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00730050
        !            77: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         00740050
        !            78: C                                                                       00750050
        !            79:       IVPASS=0                                                          00760050
        !            80:       IVFAIL=0                                                          00770050
        !            81:       IVDELE=0                                                          00780050
        !            82:       ICZERO=0                                                          00790050
        !            83: C                                                                       00800050
        !            84: C     WRITE PAGE HEADERS                                                00810050
        !            85:       WRITE (I02,90000)                                                 00820050
        !            86:       WRITE (I02,90001)                                                 00830050
        !            87:       WRITE (I02,90002)                                                 00840050
        !            88:       WRITE (I02, 90002)                                                00850050
        !            89:       WRITE (I02,90003)                                                 00860050
        !            90:       WRITE (I02,90002)                                                 00870050
        !            91:       WRITE (I02,90004)                                                 00880050
        !            92:       WRITE (I02,90002)                                                 00890050
        !            93:       WRITE (I02,90011)                                                 00900050
        !            94:       WRITE (I02,90002)                                                 00910050
        !            95:       WRITE (I02,90002)                                                 00920050
        !            96:       WRITE (I02,90005)                                                 00930050
        !            97:       WRITE (I02,90006)                                                 00940050
        !            98:       WRITE (I02,90002)                                                 00950050
        !            99: C     TEST SECTION                                                      00960050
        !           100: C                                                                       00970050
        !           101: C         SUBROUTINE AND FUNCTION SUBPROGRAMS                           00980050
        !           102: C                                                                       00990050
        !           103:  4001 CONTINUE                                                          01000050
        !           104:       IVTNUM = 400                                                      01010050
        !           105: C                                                                       01020050
        !           106: C      ****  TEST 400  ****                                             01030050
        !           107: C     TEST 400 TESTS THE CALL TO A SUBROUTINE CONTAINING NO ARGUMENTS.  01040050
        !           108: C     ALL PARAMETERS ARE PASSED THROUGH UNLABELED COMMON.               01050050
        !           109: C                                                                       01060050
        !           110:       IF (ICZERO) 34000, 4000, 34000                                    01070050
        !           111:  4000 CONTINUE                                                          01080050
        !           112:       RVCN01 = 2.1654                                                   01090050
        !           113:       CALL FS051                                                        01100050
        !           114:       RVCOMP = RVCN01                                                   01110050
        !           115:       GO TO 44000                                                       01120050
        !           116: 34000 IVDELE = IVDELE + 1                                               01130050
        !           117:       WRITE (I02,80003) IVTNUM                                          01140050
        !           118:       IF (ICZERO) 44000, 4011, 44000                                    01150050
        !           119: 44000 IF (RVCOMP - 3.1649) 24000,14000,44001                            01160050
        !           120: 44001 IF (RVCOMP - 3.1659) 14000,14000,24000                            01170050
        !           121: 14000 IVPASS = IVPASS + 1                                               01180050
        !           122:       WRITE (I02,80001) IVTNUM                                          01190050
        !           123:       GO TO 4011                                                        01200050
        !           124: 24000 IVFAIL = IVFAIL + 1                                               01210050
        !           125:       RVCORR = 3.1654                                                   01220050
        !           126:       WRITE (I02,80005) IVTNUM, RVCOMP, RVCORR                          01230050
        !           127:  4011 CONTINUE                                                          01240050
        !           128: C                                                                       01250050
        !           129: C     TEST 401 THROUGH TEST 403 TEST THE CALL TO SUBROUTINE FS052 WHICH 01260050
        !           130: C     CONTAINS NO ARGUMENTS.  ALL PARAMETERS ARE PASSED THROUGH         01270050
        !           131: C     UNLABELED COMMON.  SUBROUTINE FS052 CONTAIN SEVERAL RETURN        01280050
        !           132: C     STATEMENTS.                                                       01290050
        !           133: C                                                                       01300050
        !           134:       IVTNUM = 401                                                      01310050
        !           135: C                                                                       01320050
        !           136: C      ****  TEST 401  ****                                             01330050
        !           137: C                                                                       01340050
        !           138:       IF (ICZERO) 34010, 4010, 34010                                    01350050
        !           139:  4010 CONTINUE                                                          01360050
        !           140:       IVCN01 = 5                                                        01370050
        !           141:       IVCN02 = 1                                                        01380050
        !           142:       CALL FS052                                                        01390050
        !           143:       IVCOMP = IVCN01                                                   01400050
        !           144:       GO TO 44010                                                       01410050
        !           145: 34010 IVDELE = IVDELE + 1                                               01420050
        !           146:       WRITE (I02,80003) IVTNUM                                          01430050
        !           147:       IF (ICZERO) 44010, 4021, 44010                                    01440050
        !           148: 44010 IF (IVCOMP - 6) 24010,14010,24010                                 01450050
        !           149: 14010 IVPASS = IVPASS + 1                                               01460050
        !           150:       WRITE (I02,80001) IVTNUM                                          01470050
        !           151:       GO TO 4021                                                        01480050
        !           152: 24010 IVFAIL = IVFAIL + 1                                               01490050
        !           153:       IVCORR = 6                                                        01500050
        !           154:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          01510050
        !           155:  4021 CONTINUE                                                          01520050
        !           156:       IVTNUM = 402                                                      01530050
        !           157: C                                                                       01540050
        !           158: C      ****  TEST 402  ****                                             01550050
        !           159: C                                                                       01560050
        !           160:       IF (ICZERO) 34020, 4020, 34020                                    01570050
        !           161:  4020 CONTINUE                                                          01580050
        !           162:       IVCN01 = 10                                                       01590050
        !           163:       IVCN02 =  5                                                       01600050
        !           164:       CALL FS052                                                        01610050
        !           165:       IVCOMP = IVCN01                                                   01620050
        !           166:       GO TO 44020                                                       01630050
        !           167: 34020 IVDELE = IVDELE + 1                                               01640050
        !           168:       WRITE (I02,80003) IVTNUM                                          01650050
        !           169:       IF (ICZERO) 44020, 4031, 44020                                    01660050
        !           170: 44020 IF (IVCOMP - 15) 24020,14020,24020                                01670050
        !           171: 14020 IVPASS = IVPASS + 1                                               01680050
        !           172:       WRITE (I02,80001) IVTNUM                                          01690050
        !           173:       GO TO 4031                                                        01700050
        !           174: 24020 IVFAIL = IVFAIL + 1                                               01710050
        !           175:       IVCORR = 15                                                       01720050
        !           176:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          01730050
        !           177:  4031 CONTINUE                                                          01740050
        !           178:       IVTNUM = 403                                                      01750050
        !           179: C                                                                       01760050
        !           180: C      ****  TEST 403  ****                                             01770050
        !           181: C                                                                       01780050
        !           182:       IF (ICZERO) 34030, 4030, 34030                                    01790050
        !           183:  4030 CONTINUE                                                          01800050
        !           184:       IVCN01 = 30                                                       01810050
        !           185:       IVCN02 = 3                                                        01820050
        !           186:       CALL FS052                                                        01830050
        !           187:       IVCOMP = IVCN01                                                   01840050
        !           188:       GO TO 44030                                                       01850050
        !           189: 34030 IVDELE = IVDELE + 1                                               01860050
        !           190:       WRITE (I02,80003) IVTNUM                                          01870050
        !           191:       IF (ICZERO) 44030, 4041, 44030                                    01880050
        !           192: 44030 IF (IVCOMP - 33) 24030,14030,24030                                01890050
        !           193: 14030 IVPASS = IVPASS + 1                                               01900050
        !           194:       WRITE (I02,80001) IVTNUM                                          01910050
        !           195:       GO TO 4041                                                        01920050
        !           196: 24030 IVFAIL = IVFAIL + 1                                               01930050
        !           197:       IVCORR = 33                                                       01940050
        !           198:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          01950050
        !           199:  4041 CONTINUE                                                          01960050
        !           200: C                                                                       01970050
        !           201: C     TEST 404 THROUGH TEST 406 TEST THE CALL TO SUBROUTINE FS053 WHICH 01980050
        !           202: C     CONTAINS SEVERAL ARGUMENTS AND SEVERAL RETURN STATEMENTS.         01990050
        !           203: C                                                                       02000050
        !           204:       IVTNUM = 404                                                      02010050
        !           205: C                                                                       02020050
        !           206: C      ****  TEST 404  ****                                             02030050
        !           207: C                                                                       02040050
        !           208:       IF (ICZERO) 34040, 4040, 34040                                    02050050
        !           209:  4040 CONTINUE                                                          02060050
        !           210:       CALL FS053 (6,10,11,IVON04,1)                                     02070050
        !           211:       IVCOMP = IVON04                                                   02080050
        !           212:       GO TO 44040                                                       02090050
        !           213: 34040 IVDELE = IVDELE + 1                                               02100050
        !           214:       WRITE (I02,80003) IVTNUM                                          02110050
        !           215:       IF (ICZERO) 44040, 4051, 44040                                    02120050
        !           216: 44040 IF (IVCOMP - 6) 24040,14040,24040                                 02130050
        !           217: 14040 IVPASS = IVPASS + 1                                               02140050
        !           218:       WRITE (I02,80001) IVTNUM                                          02150050
        !           219:       GO TO 4051                                                        02160050
        !           220: 24040 IVFAIL = IVFAIL + 1                                               02170050
        !           221:       IVCORR = 6                                                        02180050
        !           222:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02190050
        !           223:  4051 CONTINUE                                                          02200050
        !           224:       IVTNUM = 405                                                      02210050
        !           225: C                                                                       02220050
        !           226: C      ****  TEST 405  ****                                             02230050
        !           227: C                                                                       02240050
        !           228:       IF (ICZERO) 34050, 4050, 34050                                    02250050
        !           229:  4050 CONTINUE                                                          02260050
        !           230:       IVCN01 = 10                                                       02270050
        !           231:       CALL FS053 (6,IVCN01,11,IVON04,2)                                 02280050
        !           232:       IVCOMP = IVON04                                                   02290050
        !           233:       GO TO 44050                                                       02300050
        !           234: 34050 IVDELE = IVDELE + 1                                               02310050
        !           235:       WRITE (I02,80003) IVTNUM                                          02320050
        !           236:       IF (ICZERO) 44050, 4061, 44050                                    02330050
        !           237: 44050 IF (IVCOMP - 16) 24050,14050,24050                                02340050
        !           238: 14050 IVPASS = IVPASS + 1                                               02350050
        !           239:       WRITE (I02,80001) IVTNUM                                          02360050
        !           240:       GO TO 4061                                                        02370050
        !           241: 24050 IVFAIL = IVFAIL + 1                                               02380050
        !           242:       IVCORR = 16                                                       02390050
        !           243:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02400050
        !           244:  4061 CONTINUE                                                          02410050
        !           245:       IVTNUM = 406                                                      02420050
        !           246: C                                                                       02430050
        !           247: C      ****  TEST 406  ****                                             02440050
        !           248: C                                                                       02450050
        !           249:       IF (ICZERO) 34060, 4060, 34060                                    02460050
        !           250:  4060 CONTINUE                                                          02470050
        !           251:       IVON01 = 6                                                        02480050
        !           252:       IVON02 = 10                                                       02490050
        !           253:       IVON03 = 11                                                       02500050
        !           254:       IVON05 = 3                                                        02510050
        !           255:       CALL FS053 (IVON01,IVON02,IVON03,IVON04,IVON05)                   02520050
        !           256:       IVCOMP = IVON04                                                   02530050
        !           257:       GO TO 44060                                                       02540050
        !           258: 34060 IVDELE = IVDELE + 1                                               02550050
        !           259:       WRITE (I02,80003) IVTNUM                                          02560050
        !           260:       IF (ICZERO) 44060, 4071, 44060                                    02570050
        !           261: 44060 IF (IVCOMP - 27) 24060,14060,24060                                02580050
        !           262: 14060 IVPASS = IVPASS + 1                                               02590050
        !           263:       WRITE (I02,80001) IVTNUM                                          02600050
        !           264:       GO TO 4071                                                        02610050
        !           265: 24060 IVFAIL = IVFAIL + 1                                               02620050
        !           266:       IVCORR = 27                                                       02630050
        !           267:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02640050
        !           268:  4071 CONTINUE                                                          02650050
        !           269: C                                                                       02660050
        !           270: C     TEST 407 THROUGH 409 TEST THE REFERENCE TO FUNCTION FF054 WHICH   02670050
        !           271: C     CONTAINS SEVERAL ARGUMENTS AND SEVERAL RETURN STATEMENTS          02680050
        !           272: C                                                                       02690050
        !           273:       IVTNUM = 407                                                      02700050
        !           274: C                                                                       02710050
        !           275: C      ****  TEST 407  ****                                             02720050
        !           276: C                                                                       02730050
        !           277:       IF (ICZERO) 34070, 4070, 34070                                    02740050
        !           278:  4070 CONTINUE                                                          02750050
        !           279:       IVCOMP = FF054 (300,1,21,1)                                       02760050
        !           280:       GO TO 44070                                                       02770050
        !           281: 34070 IVDELE = IVDELE + 1                                               02780050
        !           282:       WRITE (I02,80003) IVTNUM                                          02790050
        !           283:       IF (ICZERO) 44070, 4081, 44070                                    02800050
        !           284: 44070 IF (IVCOMP - 300) 24070,14070,24070                               02810050
        !           285: 14070 IVPASS = IVPASS + 1                                               02820050
        !           286:       WRITE (I02,80001) IVTNUM                                          02830050
        !           287:       GO TO 4081                                                        02840050
        !           288: 24070 IVFAIL = IVFAIL + 1                                               02850050
        !           289:       IVCORR = 300                                                      02860050
        !           290:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02870050
        !           291:  4081 CONTINUE                                                          02880050
        !           292:       IVTNUM = 408                                                      02890050
        !           293: C                                                                       02900050
        !           294: C      ****  TEST 408  ****                                             02910050
        !           295: C                                                                       02920050
        !           296:       IF (ICZERO) 34080, 4080, 34080                                    02930050
        !           297:  4080 CONTINUE                                                          02940050
        !           298:       IVON01 = 300                                                      02950050
        !           299:       IVON04 = 2                                                        02960050
        !           300:       IVCOMP = FF054 (IVON01,77,5,IVON04)                               02970050
        !           301:       GO TO 44080                                                       02980050
        !           302: 34080 IVDELE = IVDELE + 1                                               02990050
        !           303:       WRITE (I02,80003) IVTNUM                                          03000050
        !           304:       IF (ICZERO) 44080, 4091, 44080                                    03010050
        !           305: 44080 IF (IVCOMP - 377) 24080,14080,24080                               03020050
        !           306: 14080 IVPASS = IVPASS + 1                                               03030050
        !           307:       WRITE (I02,80001) IVTNUM                                          03040050
        !           308:       GO TO 4091                                                        03050050
        !           309: 24080 IVFAIL = IVFAIL + 1                                               03060050
        !           310:       IVCORR = 377                                                      03070050
        !           311:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03080050
        !           312:  4091 CONTINUE                                                          03090050
        !           313:       IVTNUM = 409                                                      03100050
        !           314: C                                                                       03110050
        !           315: C      ****  TEST 409  ****                                             03120050
        !           316: C                                                                       03130050
        !           317:       IF (ICZERO) 34090, 4090, 34090                                    03140050
        !           318:  4090 CONTINUE                                                          03150050
        !           319:       IVON01 = 71                                                       03160050
        !           320:       IVON02 = 21                                                       03170050
        !           321:       IVON03 = 17                                                       03180050
        !           322:       IVON04 = 3                                                        03190050
        !           323:       IVCOMP = FF054 (IVON01,IVON02,IVON03,IVON04)                      03200050
        !           324:       GO TO 44090                                                       03210050
        !           325: 34090 IVDELE = IVDELE + 1                                               03220050
        !           326:       WRITE (I02,80003) IVTNUM                                          03230050
        !           327:       IF (ICZERO) 44090, 4101, 44090                                    03240050
        !           328: 44090 IF (IVCOMP - 109) 24090,14090,24090                               03250050
        !           329: 14090 IVPASS = IVPASS + 1                                               03260050
        !           330:       WRITE (I02,80001) IVTNUM                                          03270050
        !           331:       GO TO 4101                                                        03280050
        !           332: 24090 IVFAIL = IVFAIL + 1                                               03290050
        !           333:       IVCORR = 109                                                      03300050
        !           334:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03310050
        !           335:  4101 CONTINUE                                                          03320050
        !           336: C                                                                       03330050
        !           337: C     TEST 410 THROUGH 429 TEST THE CALL TO SUBROUTINE FS055 WHICH      03340050
        !           338: C     CONTAINS NO ARGUMENTS.  THE PARAMETERS ARE PASSED THROUGH AN      03350050
        !           339: C     INTEGER ARRAY VARIABLE IN UNLABELED COMMON.                       03360050
        !           340: C                                                                       03370050
        !           341:       CALL FS055                                                        03380050
        !           342:       DO 20 I = 1,20                                                    03390050
        !           343:       IF (ICZERO) 34100, 4100, 34100                                    03400050
        !           344:  4100 CONTINUE                                                          03410050
        !           345:       IVTNUM = 409 + I                                                  03420050
        !           346:       IVCOMP = IACN11(I)                                                03430050
        !           347:       GO TO 44100                                                       03440050
        !           348: 34100 IVDELE = IVDELE + 1                                               03450050
        !           349:       WRITE (I02,80003) IVTNUM                                          03460050
        !           350:       IF (ICZERO) 44100, 4111, 44100                                    03470050
        !           351: 44100 IF (IVCOMP - I) 24100,14100,24100                                 03480050
        !           352: 14100 IVPASS = IVPASS + 1                                               03490050
        !           353:       WRITE (I02,80001) IVTNUM                                          03500050
        !           354:       GO TO 4111                                                        03510050
        !           355: 24100 IVFAIL = IVFAIL + 1                                               03520050
        !           356:       IVCORR = I                                                        03530050
        !           357:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03540050
        !           358:  4111 CONTINUE                                                          03550050
        !           359: 20    CONTINUE                                                          03560050
        !           360: C                                                                       03570050
        !           361: C     WRITE PAGE FOOTINGS AND RUN SUMMARIES                             03580050
        !           362: 99999 CONTINUE                                                          03590050
        !           363:       WRITE (I02,90002)                                                 03600050
        !           364:       WRITE (I02,90006)                                                 03610050
        !           365:       WRITE (I02,90002)                                                 03620050
        !           366:       WRITE (I02,90002)                                                 03630050
        !           367:       WRITE (I02,90007)                                                 03640050
        !           368:       WRITE (I02,90002)                                                 03650050
        !           369:       WRITE (I02,90008)  IVFAIL                                         03660050
        !           370:       WRITE (I02,90009) IVPASS                                          03670050
        !           371:       WRITE (I02,90010) IVDELE                                          03680050
        !           372: C                                                                       03690050
        !           373: C                                                                       03700050
        !           374: C     TERMINATE ROUTINE EXECUTION                                       03710050
        !           375:       STOP                                                              03720050
        !           376: C                                                                       03730050
        !           377: C     FORMAT STATEMENTS FOR PAGE HEADERS                                03740050
        !           378: 90000 FORMAT (1H1)                                                      03750050
        !           379: 90002 FORMAT (1H )                                                      03760050
        !           380: 90001 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM)            03770050
        !           381: 90003 FORMAT (1H ,21X,11HVERSION 1.0)                                   03780050
        !           382: 90004 FORMAT (1H ,10X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978)        03790050
        !           383: 90005 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL, 5X,8HCOMPUTED,8X,7HCORRECT) 03800050
        !           384: 90006 FORMAT (1H ,5X,46H----------------------------------------------) 03810050
        !           385: 90011 FORMAT (1H ,18X,17HSUBSET LEVEL TEST)                             03820050
        !           386: C                                                                       03830050
        !           387: C     FORMAT STATEMENTS FOR RUN SUMMARIES                               03840050
        !           388: 90008 FORMAT (1H ,15X,I5,19H ERRORS ENCOUNTERED)                        03850050
        !           389: 90009 FORMAT (1H ,15X,I5,13H TESTS PASSED)                              03860050
        !           390: 90010 FORMAT (1H ,15X,I5,14H TESTS DELETED)                             03870050
        !           391: C                                                                       03880050
        !           392: C     FORMAT STATEMENTS FOR TEST RESULTS                                03890050
        !           393: 80001 FORMAT (1H ,4X,I5,7X,4HPASS)                                      03900050
        !           394: 80002 FORMAT (1H ,4X,I5,7X,4HFAIL)                                      03910050
        !           395: 80003 FORMAT (1H ,4X,I5,7X,7HDELETED)                                   03920050
        !           396: 80004 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6)                         03930050
        !           397: 80005 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5)                    03940050
        !           398: C                                                                       03950050
        !           399: 90007 FORMAT (1H ,20X,20HEND OF PROGRAM FM050)                          03960050
        !           400:       END                                                               03970050
        !           401: C                                                                       00010051
        !           402: C     DATE***82/08/02*18.33.46
        !           403: C     OWNER  PRE/850703/TC-85-   -410/    /FSTC/278FCVS*F78UBP20/
        !           404: C     AUDIT  FCVS78 V2.0
        !           405: C     COMMENT SECTION                                                   00020051
        !           406: C                                                                       00030051
        !           407: C     FS051                                                             00040051
        !           408: C                                                                       00050051
        !           409: C          FS051 IS A SUBROUTINE SUBPROGRAM WHICH IS CALLED BY THE MAIN 00060051
        !           410: C     PROGRAM FM050.  NO ARGUMENTS ARE SPECIFIED THEREFORE ALL          00070051
        !           411: C     PARAMETERS ARE PASSED VIA UNLABELED COMMON.  THE SUBROUTINE FS051 00080051
        !           412: C     INCREMENTS THE VALUE OF A REAL VARIABLE BY 1 AND RETURNS CONTROL  00090051
        !           413: C     TO THE CALLING PROGRAM FM050.                                     00100051
        !           414: C                                                                       00110051
        !           415: C      REFERENCES                                                       00120051
        !           416: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00130051
        !           417: C              X3.9-1978                                                00140051
        !           418: C                                                                       00150051
        !           419: C        SECTION 15.6, SUBROUTINES                                      00160051
        !           420: C        SECTION 15.8, RETURN STATEMENT                                 00170051
        !           421: C                                                                       00180051
        !           422: C     TEST SECTION                                                      00190051
        !           423: C                                                                       00200051
        !           424: C         SUBROUTINE SUBPROGRAM - NO ARGUMENTS                          00210051
        !           425: C                                                                       00220051
        !           426:       SUBROUTINE FS051                                                  00230051
        !           427:       COMMON //RVCN01                                                   00240051
        !           428:       RVCN01 = RVCN01 + 1.0                                             00250051
        !           429:       RETURN                                                            00260051
        !           430:       END                                                               00270051
        !           431: C                                                                       00010052
        !           432: C     DATE***82/08/02*18.33.46
        !           433: C     OWNER  PRE/850703/TC-85-   -410/    /FSTC/278FCVS*F78UBP20/
        !           434: C     AUDIT  FCVS78 V2.0
        !           435: C     COMMENT SECTION                                                   00020052
        !           436: C                                                                       00030052
        !           437: C     FS052                                                             00040052
        !           438: C                                                                       00050052
        !           439: C          FS052 IS A SUBROUTINE SUBPROGRAM WHICH IS CALLED BY THE MAIN 00060052
        !           440: C     PROGRAM FM050.  NO ARGUMENTS ARE SPECIFIED THEREFORE ALL          00070052
        !           441: C     PARAMETERS ARE PASSED VIA UNLABELED COMMON.  THE SUBROUTINE FS052 00080052
        !           442: C     INCREMENTS THE VALUE OF ONE INTEGER VARIABLE BY 1,2,3,4 OR 5      00090052
        !           443: C     DEPENDING ON THE VALUE OF A SECOND INTEGER VARIABLE AND THEN      00100052
        !           444: C     RETURNS CONTROL TO THE CALLING PROGRAM FM050.  SEVERAL RETURN     00110052
        !           445: C     STATEMENTS ARE INCLUDED.                                          00120052
        !           446: C                                                                       00130052
        !           447: C      REFERENCES                                                       00140052
        !           448: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00150052
        !           449: C              X3.9-1978                                                00160052
        !           450: C                                                                       00170052
        !           451: C        SECTION 15.6, SUBROUTINES                                      00180052
        !           452: C        SECTION 15.8, RETURN STATEMENT                                 00190052
        !           453: C                                                                       00200052
        !           454: C     TEST SECTION                                                      00210052
        !           455: C                                                                       00220052
        !           456: C         SUBROUTINE SUBPROGRAM - NO ARGUMENTS, MANY RETURNS            00230052
        !           457: C                                                                       00240052
        !           458:       SUBROUTINE FS052                                                  00250052
        !           459:       COMMON RVDN01,IVCN01,IVCN02                                       00260052
        !           460:       GO TO (10,20,30,40,50),IVCN02                                     00270052
        !           461: 10    IVCN01 = IVCN01 + 1                                               00280052
        !           462:       RETURN                                                            00290052
        !           463: 20    IVCN01 = IVCN01 + 2                                               00300052
        !           464:       RETURN                                                            00310052
        !           465: 30    IVCN01 = IVCN01 + 3                                               00320052
        !           466:       RETURN                                                            00330052
        !           467: 40    IVCN01 = IVCN01 + 4                                               00340052
        !           468:       RETURN                                                            00350052
        !           469: 50    IVCN01 = IVCN01 + 5                                               00360052
        !           470:       RETURN                                                            00370052
        !           471:       END                                                               00380052
        !           472: C                                                                       00010053
        !           473: C     DATE***82/08/02*18.33.46
        !           474: C     OWNER  PRE/850703/TC-85-   -410/    /FSTC/278FCVS*F78UBP20/
        !           475: C     AUDIT  FCVS78 V2.0
        !           476: C     COMMENT SECTION                                                   00020053
        !           477: C                                                                       00030053
        !           478: C     FS053                                                             00040053
        !           479: C                                                                       00050053
        !           480: C          FS053 IS A SUBROUTINE SUBPROGRAM WHICH IS CALLED BY THE MAIN 00060053
        !           481: C     PROGRAM FM050.  FIVE INTEGER VARIABLE ARGUMENTS ARE PASSED AND    00070053
        !           482: C     SEVERAL RETURN STATEMENTS ARE SPECIFIED.  THE SUBROUTINE FS053    00080053
        !           483: C     ADDS TOGETHER THE VALUES OF THE FIRST ONE, TWO OR THREE ARGUMENTS 00090053
        !           484: C     DEPENDING ON THE VALUE OF THE FIFTH ARGUMENT.  THE RESULTING SUM  00100053
        !           485: C     IS THEN RETURNED TO THE CALLING PROGRAM FM050 THROUGH THE FOURTH  00110053
        !           486: C     ARGUMENT.                                                         00120053
        !           487: C                                                                       00130053
        !           488: C      REFERENCES                                                       00140053
        !           489: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00150053
        !           490: C              X3.9-1978                                                00160053
        !           491: C                                                                       00170053
        !           492: C        SECTION 15.6, SUBROUTINES                                      00180053
        !           493: C        SECTION 15.8, RETURN STATEMENT                                 00190053
        !           494: C                                                                       00200053
        !           495: C     TEST SECTION                                                      00210053
        !           496: C                                                                       00220053
        !           497: C         SUBROUTINE SUBPROGRAM - SEVERAL ARGUMENTS, SEVERAL RETURNS    00230053
        !           498: C                                                                       00240053
        !           499:       SUBROUTINE FS053 (IVON01,IVON02,IVON03,IVON04,IVON05)             00250053
        !           500:       GO TO (10,20,30),IVON05                                           00260053
        !           501: 10    IVON04 = IVON01                                                   00270053
        !           502:       RETURN                                                            00280053
        !           503: 20    IVON04 = IVON01 + IVON02                                          00290053
        !           504:       RETURN                                                            00300053
        !           505: 30    IVON04 = IVON01 + IVON02 + IVON03                                 00310053
        !           506:       RETURN                                                            00320053
        !           507:       END                                                               00330053
        !           508: C                                                                       00010054
        !           509: C     DATE***82/08/02*18.33.46
        !           510: C     OWNER  PRE/850703/TC-85-   -410/    /FSTC/278FCVS*F78UBP20/
        !           511: C     AUDIT  FCVS78 V2.0
        !           512: C     COMMENT SECTION                                                   00020054
        !           513: C                                                                       00030054
        !           514: C     FF054                                                             00040054
        !           515: C                                                                       00050054
        !           516: C          FF054 IS A FUNCTION SUBPROGRAM WHICH IS REFERENCED BY THE    00060054
        !           517: C     MAIN PROGRAM.  FIVE INTEGER VARIABLE ARGUMENTS ARE PASSED AND     00070054
        !           518: C     SEVERAL RETURN STATEMENTS ARE SPECIFIED.  THE FUNCTION FF054      00080054
        !           519: C     ADDS TOGETHER THE VALUES OF THE FIRST ONE, TWO OR THREE ARGUMENTS 00090054
        !           520: C     DEPENDING ON THE VALUE OF THE FOURTH ARGUMENT.  THE RESULTING SUM 00100054
        !           521: C     IS THEN RETURNED TO THE REFERENCING PROGRAM FM050 THROUGH THE     00110054
        !           522: C     FUNCTION REFERENCE.                                               00120054
        !           523: C                                                                       00130054
        !           524: C      REFERENCES                                                       00140054
        !           525: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00150054
        !           526: C              X3.9-1978                                                00160054
        !           527: C                                                                       00170054
        !           528: C        SECTION 15.5.1, FUNCTION SUBPROGRAM AND FUNCTION STATEMENT     00180054
        !           529: C        SECTION 15.8, RETURN STATEMENT                                 00190054
        !           530: C                                                                       00200054
        !           531: C     TEST SECTION                                                      00210054
        !           532: C                                                                       00220054
        !           533: C         FUNCTION SUBPROGRAM - SEVERAL ARGUMENTS, SEVERAL RETURNS      00230054
        !           534: C                                                                       00240054
        !           535:       INTEGER FUNCTION FF054 (IVON01,IVON02,IVON03,IVON04)              00250054
        !           536:       GO TO (10,20,30),IVON04                                           00260054
        !           537: 10    FF054 = IVON01                                                    00270054
        !           538:       RETURN                                                            00280054
        !           539: 20    FF054 = IVON01 + IVON02                                           00290054
        !           540:       RETURN                                                            00300054
        !           541: 30    FF054 = IVON01 + IVON02 + IVON03                                  00310054
        !           542:       RETURN                                                            00320054
        !           543:       END                                                               00330054
        !           544: C                                                                       00010055
        !           545: C     DATE***82/08/02*18.33.46
        !           546: C     OWNER  PRE/850703/TC-85-   -410/    /FSTC/278FCVS*F78UBP20/
        !           547: C     AUDIT  FCVS78 V2.0
        !           548: C     COMMENT SECTION                                                   00020055
        !           549: C                                                                       00030055
        !           550: C     FS055                                                             00040055
        !           551: C                                                                       00050055
        !           552: C          FS055 IS A SUBROUTINE SUBPROGRAM WHICH IS CALLED BY THE MAIN 00060055
        !           553: C     PROGRAM FM050.  NO ARGUMENTS ARE SPECIFIED THEREFORE ALL          00070055
        !           554: C     PARAMETERS ARE PASSED VIA UNLABELED COMMON.  THE SUBROUTINE FS055 00080055
        !           555: C     INITIALIZES A ONE DIMENSIONAL INTEGER ARRAY OF 20 ELEMENTS WITH   00090055
        !           556: C     THE VALUES 1 THROUGH 20 RESPECTIVELY.  CONTROL IS THEN RETURNED   00100055
        !           557: C     TO THE CALLING PROGRAM FM050.                                     00110055
        !           558: C                                                                       00120055
        !           559: C      REFERENCES                                                       00130055
        !           560: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00140055
        !           561: C              X3.9-1978                                                00150055
        !           562: C                                                                       00160055
        !           563: C        SECTION 15.6, SUBROUTINES                                      00170055
        !           564: C        SECTION 15.8, RETURN STATEMENT                                 00180055
        !           565: C                                                                       00190055
        !           566: C     TEST SECTION                                                      00200055
        !           567: C                                                                       00210055
        !           568: C         SUBROUTINE SUBPROGRAM - ARRAY ARGUMENTS                       00220055
        !           569: C                                                                       00230055
        !           570:       SUBROUTINE FS055                                                  00240055
        !           571:       COMMON RVCN01,IVCN01,IVCN02,IACN11                                00250055
        !           572:       DIMENSION IACN11(20)                                              00260055
        !           573:       DO 20 I = 1,20                                                    00270055
        !           574:       IACN11(I) = I                                                     00280055
        !           575: 20    CONTINUE                                                          00290055
        !           576:       RETURN                                                            00300055
        !           577:       END                                                               00310055

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.