Annotation of cci/usr/src/usr.bin/f77/testf77/tests/FM004.f, revision 1.1.1.1

1.1       root        1: C     COMMENT SECTION                                                   00010004
                      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                                                                       00020004
                      6: C     FM004                                                             00030004
                      7: C                                                                       00040004
                      8: C         THIS ROUTINE CONTAINS BASIC ARITHMETIC IF STATEMENT TESTS.    00050004
                      9: C     THE STATEMENT FORMAT IS                                           00060004
                     10: C                IF  (E)  K1, K2, K3                                    00070004
                     11: C     WHERE E IS A SIMPLE INTEGER EXPRESSION OF FORM                    00080004
                     12: C                VARIABLE - CONSTANT                                    00090004
                     13: C                VARIABLE + CONSTANT                                    00100004
                     14: C     AND K1, K2 AND K3 ARE STATEMENT LABELS.  ONLY THE STATEMENTS IN   00110004
                     15: C     THE BASIC ASSUMPTIONS ARE INCLUDED IN THESE TESTS.                00120004
                     16: C         EXECUTION OF AN IF STATEMENT CAUSES EVALUATION OF THE         00130004
                     17: C     EXPRESSION E FOLLOWING WHICH THE STATEMENT LABEL K1, K2 OR K3     00140004
                     18: C     IS EXECUTED NEXT AS THE VALUE OF E IS LESS THAN ZERO, ZERO, OR    00150004
                     19: C     GREATER THAN ZERO, RESPECTIVELY.                                  00160004
                     20: C                                                                       00170004
                     21: C         THE BASIC UNCONDITIONAL GO TO STATEMENT IS TESTED IN THIS     00180004
                     22: C     ROUTINE. THE STATEMENT IS OF THE FORM                             00190004
                     23: C               GO TO K                                                 00200004
                     24: C     WHERE K IS A STATEMENT LABEL.                                     00210004
                     25: C         EXECUTION OF AN UNCONDITIONAL GO TO STATEMENT CAUSES THE      00220004
                     26: C     STATEMENT IDENTIFIED BY STATEMENT LABEL K TO BE EXECUTED NEXT.    00230004
                     27: C                                                                       00240004
                     28: C      REFERENCES                                                       00250004
                     29: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00260004
                     30: C              X3.9-1978                                                00270004
                     31: C                                                                       00280004
                     32: C        SECTION 3.6, NORMAL EXECUTION SEQUENCE AND TRANSFER OF CONTROL 00290004
                     33: C        SECTION 11.1, GO TO STATEMENT                                  00300004
                     34: C        SECTION 11.4, ARITHMETIC IF STATEMENT                          00310004
                     35: C                                                                       00320004
                     36: C      **********************************************************       00330004
                     37: C                                                                       00340004
                     38: C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00350004
                     39: C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN NATIONAL STANDARD  00360004
                     40: C     PROGRAMMING LANGUAGE FORTRAN X3.9-1978, HAS BEEN DEVELOPED BY THE 00370004
                     41: C     FEDERAL COBOL COMPILER TESTING SERVICE.  THE FORTRAN COMPILER     00380004
                     42: C     VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT ROUTINES, THEIR RELATED00390004
                     43: C     DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT ROUTINE IS A FORTRAN   00400004
                     44: C     PROGRAM, SUBPROGRAM OR FUNCTION WHICH INCLUDES TESTS OF SPECIFIC  00410004
                     45: C     LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING THE RESULT 00420004
                     46: C     OF EXECUTING THESE TESTS.                                         00430004
                     47: C                                                                       00440004
                     48: C         THIS PARTICULAR PROGRAM/SUBPROGRAM/FUNCTION CONTAINS FEATURES 00450004
                     49: C     FOUND ONLY IN THE SUBSET AS DEFINED IN X3.9-1978.                 00460004
                     50: C                                                                       00470004
                     51: C         SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO -             00480004
                     52: C                                                                       00490004
                     53: C                  DEPARTMENT OF THE NAVY                               00500004
                     54: C                  FEDERAL COBOL COMPILER TESTING SERVICE               00510004
                     55: C                  WASHINGTON, D.C.  20376                              00520004
                     56: C                                                                       00530004
                     57: C      **********************************************************       00540004
                     58: C                                                                       00550004
                     59: C                                                                       00560004
                     60: C                                                                       00570004
                     61: C     INITIALIZATION SECTION                                            00580004
                     62: C                                                                       00590004
                     63: C     INITIALIZE CONSTANTS                                              00600004
                     64: C      **************                                                   00610004
                     65: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER.         00620004
                     66:       I01 = 5                                                           00630004
                     67: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER.             00640004
                     68:       I02 = 6                                                           00650004
                     69: C     SYSTEM ENVIRONMENT SECTION                                        00660004
                     70: C                                                                       00670004
                     71:       I01 = 5                                                           00680004
                     72: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      00690004
                     73: C     (UNIT NUMBER FOR CARD READER).                                    00700004
                     74: CX011    THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD. 00710004
                     75: C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00720004
                     76: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         00730004
                     77: C                                                                       00740004
                     78:       I02 = 6                                                           00750004
                     79: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      00760004
                     80: C     (UNIT NUMBER FOR PRINTER).                                        00770004
                     81: CX021    THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD. 00780004
                     82: C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00790004
                     83: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         00800004
                     84: C                                                                       00810004
                     85:       IVPASS=0                                                          00820004
                     86:       IVFAIL=0                                                          00830004
                     87:       IVDELE=0                                                          00840004
                     88:       ICZERO=0                                                          00850004
                     89: C                                                                       00860004
                     90: C     WRITE PAGE HEADERS                                                00870004
                     91:       WRITE (I02,90000)                                                 00880004
                     92:       WRITE (I02,90001)                                                 00890004
                     93:       WRITE (I02,90002)                                                 00900004
                     94:       WRITE (I02, 90002)                                                00910004
                     95:       WRITE (I02,90003)                                                 00920004
                     96:       WRITE (I02,90002)                                                 00930004
                     97:       WRITE (I02,90004)                                                 00940004
                     98:       WRITE (I02,90002)                                                 00950004
                     99:       WRITE (I02,90011)                                                 00960004
                    100:       WRITE (I02,90002)                                                 00970004
                    101:       WRITE (I02,90002)                                                 00980004
                    102:       WRITE (I02,90005)                                                 00990004
                    103:       WRITE (I02,90006)                                                 01000004
                    104:       WRITE (I02,90002)                                                 01010004
                    105: C          TEST SECTION                                                 01020004
                    106: C                                                                       01030004
                    107: C         TESTS 21, 22, AND 23 CONTAIN THE SAME IF STATEMENT BUT THE    01040004
                    108: C     EXPECTED BRANCH IS TO THE FIRST, SECOND OR THIRD STATEMENT LABEL  01050004
                    109: C     AS THE INTEGER EXPRESSION IS LESS THAN ZERO, EQUAL TO ZERO, OR    01060004
                    110: C     GREATER THAN ZERO RESPECTIVELY.                                   01070004
                    111: C                                                                       01080004
                    112:   211 CONTINUE                                                          01090004
                    113:       IVTNUM =  21                                                      01100004
                    114: C                                                                       01110004
                    115: C      ****  TEST 021  ****                                             01120004
                    116: C     TEST 21 - ARITHMETIC IF STATEMENT TEST                            01130004
                    117: C         LESS THAN ZERO BRANCH EXPECTED.                               01140004
                    118: C                                                                       01150004
                    119:       IF (ICZERO) 30210,  210, 30210                                    01160004
                    120:   210 CONTINUE                                                          01170004
                    121:       IVON01=2                                                          01180004
                    122:       IF (IVON01 - 3) 212,213,214                                       01190004
                    123:   212 IVON02 = -1                                                       01200004
                    124:       GO TO 40210                                                       01210004
                    125:   213 IVON02 = 0                                                        01220004
                    126:       GO TO 40210                                                       01230004
                    127:   214 IVON02 = 1                                                        01240004
                    128:       GO TO 40210                                                       01250004
                    129: 30210 IVDELE = IVDELE + 1                                               01260004
                    130:       WRITE (I02,80003) IVTNUM                                          01270004
                    131:       IF (ICZERO) 40210,  221, 40210                                    01280004
                    132: 40210 IF (IVON02) 10210, 20210, 20210                                   01290004
                    133: 10210 IVPASS = IVPASS + 1                                               01300004
                    134:       WRITE (I02,80001) IVTNUM                                          01310004
                    135:       GO TO  221                                                        01320004
                    136: 20210 IVFAIL = IVFAIL + 1                                               01330004
                    137:       IVCOMP=IVON02                                                     01340004
                    138:       IVCORR=-1                                                         01350004
                    139:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          01360004
                    140:   221 CONTINUE                                                          01370004
                    141:       IVTNUM =  22                                                      01380004
                    142: C                                                                       01390004
                    143: C      ****  TEST 022  ****                                             01400004
                    144: C     TEST 22 - ARITHMETIC IF STATEMENT TEST                            01410004
                    145: C         EQUAL TO ZERO BRANCH EXPECTED                                 01420004
                    146: C                                                                       01430004
                    147:       IF (ICZERO) 30220,  220, 30220                                    01440004
                    148:   220 CONTINUE                                                          01450004
                    149:       IVON01 = 3                                                        01460004
                    150:       IF (IVON01 - 3) 222,223,224                                       01470004
                    151:   222 IVON02 = -1                                                       01480004
                    152:       GO TO 40220                                                       01490004
                    153:   223 IVON02 = 0                                                        01500004
                    154:       GO TO 40220                                                       01510004
                    155:   224 IVON02 = 1                                                        01520004
                    156:       GO TO 40220                                                       01530004
                    157: 30220 IVDELE = IVDELE + 1                                               01540004
                    158:       WRITE (I02,80003) IVTNUM                                          01550004
                    159:       IF (ICZERO) 40220,  231, 40220                                    01560004
                    160: 40220 IF (IVON02) 20220, 10220, 20220                                   01570004
                    161: 10220 IVPASS = IVPASS + 1                                               01580004
                    162:       WRITE (I02,80001) IVTNUM                                          01590004
                    163:       GO TO  231                                                        01600004
                    164: 20220 IVFAIL = IVFAIL + 1                                               01610004
                    165:       IVCOMP=IVON02                                                     01620004
                    166:       IVCORR= 0                                                         01630004
                    167:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          01640004
                    168:   231 CONTINUE                                                          01650004
                    169:       IVTNUM =  23                                                      01660004
                    170: C                                                                       01670004
                    171: C      ****  TEST 023  ****                                             01680004
                    172: C     TEST 23 - ARITHMETIC IF STATEMENT TEST                            01690004
                    173: C         GREATER THAN ZERO BRANCH EXPECTED                             01700004
                    174: C                                                                       01710004
                    175:       IF (ICZERO) 30230,  230, 30230                                    01720004
                    176:   230 CONTINUE                                                          01730004
                    177:       IVON01 = 4                                                        01740004
                    178:       IF (IVON01 - 3) 232,233,234                                       01750004
                    179:   232 IVON02 = -1                                                       01760004
                    180:       GO TO 40230                                                       01770004
                    181:   233 IVON02 = 0                                                        01780004
                    182:       GO TO 40230                                                       01790004
                    183:   234 IVON02 = 1                                                        01800004
                    184:       GO TO 40230                                                       01810004
                    185: 30230 IVDELE = IVDELE + 1                                               01820004
                    186:       WRITE (I02,80003) IVTNUM                                          01830004
                    187:       IF (ICZERO) 40230,  241, 40230                                    01840004
                    188: 40230 IF (IVON02) 20230, 20230, 10230                                   01850004
                    189: 10230 IVPASS = IVPASS + 1                                               01860004
                    190:       WRITE (I02,80001) IVTNUM                                          01870004
                    191:       GO TO  241                                                        01880004
                    192: 20230 IVFAIL = IVFAIL + 1                                               01890004
                    193:       IVCOMP=IVON02                                                     01900004
                    194:       IVCORR = 1                                                        01910004
                    195:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          01920004
                    196: C                                                                       01930004
                    197: C         TESTS 24 THROUGH 29 CONTAIN AN IF STATEMENT WITH TWO OF THE   01940004
                    198: C     THREE BRANCH STATEMENT LABELS EQUAL.                              01950004
                    199: C                                                                       01960004
                    200:   241 CONTINUE                                                          01970004
                    201:       IVTNUM =  24                                                      01980004
                    202: C                                                                       01990004
                    203: C      ****  TEST 024  ****                                             02000004
                    204: C     TEST 24 - ARITHMETIC IF STATEMENT TEST                            02010004
                    205: C         LESS THAN ZERO BRANCH EXPECTED                                02020004
                    206: C                                                                       02030004
                    207:       IF (ICZERO) 30240,  240, 30240                                    02040004
                    208:   240 CONTINUE                                                          02050004
                    209:       IVON01=2                                                          02060004
                    210:       IF (IVON01 - 3) 242,243,242                                       02070004
                    211:   242 IVON02=-1                                                         02080004
                    212:       GO TO 40240                                                       02090004
                    213:   243 IVON02=0                                                          02100004
                    214:       GO TO 40240                                                       02110004
                    215: 30240 IVDELE = IVDELE + 1                                               02120004
                    216:       WRITE (I02,80003) IVTNUM                                          02130004
                    217:       IF (ICZERO) 40240,  251, 40240                                    02140004
                    218: 40240 IF (IVON02) 10240, 20240, 20240                                   02150004
                    219: 10240 IVPASS = IVPASS + 1                                               02160004
                    220:       WRITE (I02,80001) IVTNUM                                          02170004
                    221:       GO TO  251                                                        02180004
                    222: 20240 IVFAIL = IVFAIL + 1                                               02190004
                    223:       IVCOMP=IVON02                                                     02200004
                    224:       IVCORR=-1                                                         02210004
                    225:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02220004
                    226:   251 CONTINUE                                                          02230004
                    227:       IVTNUM =  25                                                      02240004
                    228: C                                                                       02250004
                    229: C      ****  TEST 025  ****                                             02260004
                    230: C     TEST 25 - ARITHMETIC IF STATEMENT TEST                            02270004
                    231: C         EQUAL TO ZERO BRANCH EXPECTED                                 02280004
                    232: C                                                                       02290004
                    233:       IF (ICZERO) 30250,  250, 30250                                    02300004
                    234:   250 CONTINUE                                                          02310004
                    235:       IVON01=3                                                          02320004
                    236:       IF (IVON01 - 3) 252,253,252                                       02330004
                    237:   252 IVON02= -1                                                        02340004
                    238:       GO TO 40250                                                       02350004
                    239:   253 IVON02 = 0                                                        02360004
                    240:       GO TO 40250                                                       02370004
                    241: 30250 IVDELE = IVDELE + 1                                               02380004
                    242:       WRITE (I02,80003) IVTNUM                                          02390004
                    243:       IF (ICZERO) 40250,  261, 40250                                    02400004
                    244: 40250 IF (IVON02) 20250,10250,20250                                     02410004
                    245: 10250 IVPASS = IVPASS + 1                                               02420004
                    246:       WRITE (I02,80001) IVTNUM                                          02430004
                    247:       GO TO  261                                                        02440004
                    248: 20250 IVFAIL = IVFAIL + 1                                               02450004
                    249:       IVCOMP=IVON02                                                     02460004
                    250:       IVCORR=0                                                          02470004
                    251:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02480004
                    252:   261 CONTINUE                                                          02490004
                    253:       IVTNUM =  26                                                      02500004
                    254: C                                                                       02510004
                    255: C      ****  TEST 026  ****                                             02520004
                    256: C     TEST 26 - ARITHMETIC IF STATEMENT TEST                            02530004
                    257: C         GREATER THAN ZERO BRANCH EXPECTED                             02540004
                    258: C                                                                       02550004
                    259:       IF (ICZERO) 30260,  260, 30260                                    02560004
                    260:   260 CONTINUE                                                          02570004
                    261:       IVON01=4                                                          02580004
                    262:       IF (IVON01-3) 262, 263, 262                                       02590004
                    263:   262 IVON02= 1                                                         02600004
                    264:       GO TO 40260                                                       02610004
                    265:   263 IVON02 = 0                                                        02620004
                    266:       GO TO 40260                                                       02630004
                    267: 30260 IVDELE = IVDELE + 1                                               02640004
                    268:       WRITE (I02,80003) IVTNUM                                          02650004
                    269:       IF (ICZERO) 40260,  271, 40260                                    02660004
                    270: 40260 IF (IVON02) 20260, 20260, 10260                                   02670004
                    271: 10260 IVPASS = IVPASS + 1                                               02680004
                    272:       WRITE (I02,80001) IVTNUM                                          02690004
                    273:       GO TO  271                                                        02700004
                    274: 20260 IVFAIL = IVFAIL + 1                                               02710004
                    275:       IVCOMP=IVON02                                                     02720004
                    276:       IVCORR = 1                                                        02730004
                    277:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02740004
                    278:   271 CONTINUE                                                          02750004
                    279:       IVTNUM =  27                                                      02760004
                    280: C                                                                       02770004
                    281: C      ****  TEST 027  ****                                             02780004
                    282: C     TEST 27 - ARITHMETIC IF STATEMENT TEST                            02790004
                    283: C         LESS THAN ZERO BRANCH EXPECTED                                02800004
                    284: C                                                                       02810004
                    285:       IF (ICZERO) 30270,  270, 30270                                    02820004
                    286:   270 CONTINUE                                                          02830004
                    287:       IVON01 = -4                                                       02840004
                    288:       IF (IVON01 + 3) 272, 272, 273                                     02850004
                    289:   272 IVON02= -1                                                        02860004
                    290:       GO TO 40270                                                       02870004
                    291:   273 IVON02 = 1                                                        02880004
                    292:       GO TO 40270                                                       02890004
                    293: 30270 IVDELE = IVDELE + 1                                               02900004
                    294:       WRITE (I02,80003) IVTNUM                                          02910004
                    295:       IF (ICZERO) 40270,  281, 40270                                    02920004
                    296: 40270 IF (IVON02) 10270, 20270, 20270                                   02930004
                    297: 10270 IVPASS = IVPASS + 1                                               02940004
                    298:       WRITE (I02,80001) IVTNUM                                          02950004
                    299:       GO TO  281                                                        02960004
                    300: 20270 IVFAIL = IVFAIL + 1                                               02970004
                    301:       IVCOMP=IVON02                                                     02980004
                    302:       IVCORR= -1                                                        02990004
                    303:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03000004
                    304:   281 CONTINUE                                                          03010004
                    305:       IVTNUM =  28                                                      03020004
                    306: C                                                                       03030004
                    307: C      ****  TEST 028  ****                                             03040004
                    308: C     TEST 28 - ARITHMETIC IF STATEMENT TEST                            03050004
                    309: C         EQUAL TO ZERO BRANCH EXPECTED                                 03060004
                    310: C                                                                       03070004
                    311:       IF (ICZERO) 30280,  280, 30280                                    03080004
                    312:   280 CONTINUE                                                          03090004
                    313:       IVON01 = -3                                                       03100004
                    314:       IF (IVON01 + 3) 282, 282, 283                                     03110004
                    315:   282 IVON02 = 0                                                        03120004
                    316:       GO TO 40280                                                       03130004
                    317:   283 IVON02 = 1                                                        03140004
                    318:       GO TO 40280                                                       03150004
                    319: 30280 IVDELE = IVDELE + 1                                               03160004
                    320:       WRITE (I02,80003) IVTNUM                                          03170004
                    321:       IF (ICZERO) 40280,  291, 40280                                    03180004
                    322: 40280 IF (IVON02) 20280, 10280, 20280                                   03190004
                    323: 10280 IVPASS = IVPASS + 1                                               03200004
                    324:       WRITE (I02,80001) IVTNUM                                          03210004
                    325:       GO TO  291                                                        03220004
                    326: 20280 IVFAIL = IVFAIL + 1                                               03230004
                    327:       IVCOMP=IVON02                                                     03240004
                    328:       IVCORR= 0                                                         03250004
                    329:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03260004
                    330:   291 CONTINUE                                                          03270004
                    331:       IVTNUM =  29                                                      03280004
                    332: C                                                                       03290004
                    333: C      ****  TEST 029  ****                                             03300004
                    334: C     TEST 29 - ARITHMETIC IF STATEMENT TEST                            03310004
                    335: C         GREATER THAN ZERO BRANCH EXPECTED                             03320004
                    336: C                                                                       03330004
                    337:       IF (ICZERO) 30290,  290, 30290                                    03340004
                    338:   290 CONTINUE                                                          03350004
                    339:       IVON01 = -2                                                       03360004
                    340:       IF (IVON01 + 3) 292,292,293                                       03370004
                    341:   292 IVON02 = -1                                                       03380004
                    342:       GO TO 40290                                                       03390004
                    343:   293 IVON02 = 1                                                        03400004
                    344:       GO TO 40290                                                       03410004
                    345: 30290 IVDELE = IVDELE + 1                                               03420004
                    346:       WRITE (I02,80003) IVTNUM                                          03430004
                    347:       IF (ICZERO) 40290,  301, 40290                                    03440004
                    348: 40290 IF (IVON02) 20290, 20290, 10290                                   03450004
                    349: 10290 IVPASS = IVPASS + 1                                               03460004
                    350:       WRITE (I02,80001) IVTNUM                                          03470004
                    351:       GO TO  301                                                        03480004
                    352: 20290 IVFAIL = IVFAIL + 1                                               03490004
                    353:       IVCOMP= IVON02                                                    03500004
                    354:       IVCORR = 1                                                        03510004
                    355:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03520004
                    356: C                                                                       03530004
                    357: C         TESTS 30 AND 31 CONTAIN THE BASIC GO TO STATEMENT TESTS.      03540004
                    358: C                                                                       03550004
                    359:   301 CONTINUE                                                          03560004
                    360:       IVTNUM =  30                                                      03570004
                    361: C                                                                       03580004
                    362: C      ****  TEST 030  ****                                             03590004
                    363: C     TEST 30 - UNCONDITIONAL GO TO STATEMENT TEST                      03600004
                    364: C                                                                       03610004
                    365:       IF (ICZERO) 30300,  300, 30300                                    03620004
                    366:   300 CONTINUE                                                          03630004
                    367:       IVON01 = 1                                                        03640004
                    368:       GO TO 302                                                         03650004
                    369:   303 IVON01 = 2                                                        03660004
                    370:       GO TO 304                                                         03670004
                    371:   302 IVON01 = 3                                                        03680004
                    372:       GO TO 303                                                         03690004
                    373:   304 GO TO 40300                                                       03700004
                    374: 30300 IVDELE = IVDELE + 1                                               03710004
                    375:       WRITE (I02,80003) IVTNUM                                          03720004
                    376:       IF (ICZERO) 40300,  311, 40300                                    03730004
                    377: 40300 IF (IVON01 - 2) 20300,10300,20300                                 03740004
                    378: 10300 IVPASS = IVPASS + 1                                               03750004
                    379:       WRITE (I02,80001) IVTNUM                                          03760004
                    380:       GO TO  311                                                        03770004
                    381: 20300 IVFAIL = IVFAIL + 1                                               03780004
                    382:       IVCOMP = IVON01                                                   03790004
                    383:       IVCORR = 2                                                        03800004
                    384:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03810004
                    385:   311 CONTINUE                                                          03820004
                    386:       IVTNUM =  31                                                      03830004
                    387: C                                                                       03840004
                    388: C      ****  TEST 031  ****                                             03850004
                    389: C     TEST 31 - UNCONDITIONAL GO TO STATEMENT TEST                      03860004
                    390: C                                                                       03870004
                    391:       IF (ICZERO) 30310,  310, 30310                                    03880004
                    392:   310 CONTINUE                                                          03890004
                    393:       IVON01 = 1                                                        03900004
                    394:       GO TO 316                                                         03910004
                    395:   313 GO TO 317                                                         03920004
                    396:   314 IVON01 = 3                                                        03930004
                    397:       GO TO 40310                                                       03940004
                    398:   315 GO TO 313                                                         03950004
                    399:   316 GO TO 315                                                         03960004
                    400:   317 GO TO 314                                                         03970004
                    401: 30310 IVDELE = IVDELE + 1                                               03980004
                    402:       WRITE (I02,80003) IVTNUM                                          03990004
                    403:       IF (ICZERO) 40310,  321, 40310                                    04000004
                    404: 40310 IF (IVON01 - 3) 20310, 10310, 20310                               04010004
                    405: 10310 IVPASS = IVPASS + 1                                               04020004
                    406:       WRITE (I02,80001) IVTNUM                                          04030004
                    407:       GO TO  321                                                        04040004
                    408: 20310 IVFAIL = IVFAIL + 1                                               04050004
                    409:       IVCOMP=IVON01                                                     04060004
                    410:       IVCORR = 3                                                        04070004
                    411:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          04080004
                    412:   321 CONTINUE                                                          04090004
                    413:       IVTNUM =  32                                                      04100004
                    414: C                                                                       04110004
                    415: C      ****  TEST 032  ****                                             04120004
                    416: C         TEST 32 - ARITHMETIC IF STATEMENT AND UNCONDITIONAL GO TO     04130004
                    417: C                   STATEMENT                                           04140004
                    418: C     THIS TEST COMBINES THE BASIC ARITHMETIC IF STATEMENTS AND         04150004
                    419: C     UNCONDITIONAL GO TO STATEMENTS IN ONE TEST.                       04160004
                    420: C                                                                       04170004
                    421:       IF (ICZERO) 30320,  320, 30320                                    04180004
                    422:   320 CONTINUE                                                          04190004
                    423:       IVON01 = 1                                                        04200004
                    424:       GO TO 322                                                         04210004
                    425:   324 IVON01 = 2                                                        04220004
                    426:       IF (IVON01 -1) 323, 323, 325                                      04230004
                    427:   327 IVON01 = 5                                                        04240004
                    428:       GO TO 328                                                         04250004
                    429:   326 IVON01 = -4                                                       04260004
                    430:       IF (IVON01 + 4) 323, 327, 323                                     04270004
                    431:   322 IF (IVON01 - 1) 323, 324, 323                                     04280004
                    432:   323 GO TO 20320                                                       04290004
                    433:   325 IVON01 = 3                                                        04300004
                    434:       IF (IVON01 -4) 326,323,323                                        04310004
                    435:   328 GO TO 40320                                                       04320004
                    436: 30320 IVDELE = IVDELE + 1                                               04330004
                    437:       WRITE (I02,80003) IVTNUM                                          04340004
                    438:       IF (ICZERO) 40320,  331, 40320                                    04350004
                    439: 40320 IF (IVON01 - 5) 20320, 10320, 20320                               04360004
                    440: 10320 IVPASS = IVPASS + 1                                               04370004
                    441:       WRITE (I02,80001) IVTNUM                                          04380004
                    442:       GO TO  331                                                        04390004
                    443: 20320 IVFAIL = IVFAIL + 1                                               04400004
                    444:       IVCOMP=IVON01                                                     04410004
                    445:       IVCORR=5                                                          04420004
                    446:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          04430004
                    447:   331 CONTINUE                                                          04440004
                    448: C                                                                       04450004
                    449: C     WRITE PAGE FOOTINGS AND RUN SUMMARIES                             04460004
                    450: 99999 CONTINUE                                                          04470004
                    451:       WRITE (I02,90002)                                                 04480004
                    452:       WRITE (I02,90006)                                                 04490004
                    453:       WRITE (I02,90002)                                                 04500004
                    454:       WRITE (I02,90002)                                                 04510004
                    455:       WRITE (I02,90007)                                                 04520004
                    456:       WRITE (I02,90002)                                                 04530004
                    457:       WRITE (I02,90008)  IVFAIL                                         04540004
                    458:       WRITE (I02,90009) IVPASS                                          04550004
                    459:       WRITE (I02,90010) IVDELE                                          04560004
                    460: C                                                                       04570004
                    461: C                                                                       04580004
                    462: C     TERMINATE ROUTINE EXECUTION                                       04590004
                    463:       STOP                                                              04600004
                    464: C                                                                       04610004
                    465: C     FORMAT STATEMENTS FOR PAGE HEADERS                                04620004
                    466: 90000 FORMAT (1H1)                                                      04630004
                    467: 90002 FORMAT (1H )                                                      04640004
                    468: 90001 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM)            04650004
                    469: 90003 FORMAT (1H ,21X,11HVERSION 1.0)                                   04660004
                    470: 90004 FORMAT (1H ,10X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978)        04670004
                    471: 90005 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL, 5X,8HCOMPUTED,8X,7HCORRECT) 04680004
                    472: 90006 FORMAT (1H ,5X,46H----------------------------------------------) 04690004
                    473: 90011 FORMAT (1H ,18X,17HSUBSET LEVEL TEST)                             04700004
                    474: C                                                                       04710004
                    475: C     FORMAT STATEMENTS FOR RUN SUMMARIES                               04720004
                    476: 90008 FORMAT (1H ,15X,I5,19H ERRORS ENCOUNTERED)                        04730004
                    477: 90009 FORMAT (1H ,15X,I5,13H TESTS PASSED)                              04740004
                    478: 90010 FORMAT (1H ,15X,I5,14H TESTS DELETED)                             04750004
                    479: C                                                                       04760004
                    480: C     FORMAT STATEMENTS FOR TEST RESULTS                                04770004
                    481: 80001 FORMAT (1H ,4X,I5,7X,4HPASS)                                      04780004
                    482: 80002 FORMAT (1H ,4X,I5,7X,4HFAIL)                                      04790004
                    483: 80003 FORMAT (1H ,4X,I5,7X,7HDELETED)                                   04800004
                    484: 80004 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6)                         04810004
                    485: 80005 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5)                    04820004
                    486: C                                                                       04830004
                    487: 90007 FORMAT (1H ,20X,20HEND OF PROGRAM FM004)                          04840004
                    488:       END                                                               04850004

unix.superglobalmegacorp.com

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