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

1.1       root        1:       PROGRAM FM252                                                     00010252
                      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                                                                       00020252
                      6: C                                                                       00030252
                      7: C                                                                       00040252
                      8: C                                                                       00050252
                      9: C        THIS PROGRAM TESTS REDEFINITION OF STATEMENT LABELS WITH THE   00060252
                     10: C     ASSIGN STATEMENT IN CONJUNCTION WITH THE ASSIGNED GO TO STATEMENT.00070252
                     11: C     THE OPTIONAL COMMA IN THE SYNTAX OF THE ASSIGNED GO TO IS TESTED. 00080252
                     12: C     THE RANGE OF STATEMENT LABELS ( FROM 00001 TO 99999 ) IS TESTED   00090252
                     13: C     USING THE ASSIGN STATEMENT AND THE ASSIGNED GO TO STATEMENT.      00100252
                     14: C     IT ALSO TESTS THE OPTIONAL COMMA IN THE SYNTAX OF THE COMPUTED    00110252
                     15: C     GO TO STATEMENT AND HAS TESTS ON THE RANGE OF THE INDEX IN THE    00120252
                     16: C     COMPUTED GO TO.                                                   00130252
                     17: C                                                                       00140252
                     18: C                                                                       00150252
                     19: C     REFERENCES                                                        00160252
                     20: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00170252
                     21: C             X3.9-1978                                                 00180252
                     22: C        SECTION 10.3,       STATEMENT LABEL ASSIGNMENT (ASSIGN)        00190252
                     23: C        SECTION 11.2,       COMPUTED GO TO STATEMENT                   00200252
                     24: C        SECTION 11.3,       ASSIGNED GO TO STATEMENT                   00210252
                     25: C                                                                       00220252
                     26: C                                                                       00230252
                     27: C        FM013 - SUBSET LEVEL TESTS OF THE ASSIGN STATEMENT AND THE     00240252
                     28: C                ASSIGNED GO TO STATEMENT.                              00250252
                     29: C                                                                       00260252
                     30: C        FM014, FM052, AND FM053 - SUBSET LEVEL TESTS OF THE COMPUTED   00270252
                     31: C                GO TO STATEMENT.                                       00280252
                     32: C                                                                       00290252
                     33: C                                                                       00300252
                     34: C                                                                       00310252
                     35: C                                                                       00320252
                     36: C     ******************************************************************00330252
                     37: C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00340252
                     38: C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN STANDARD FORTRAN   00350252
                     39: C     X3.9-1978, HAS BEEN DEVELOPED BY THE DEPARTMENT OF THE NAVY.  THE 00360252
                     40: C     FORTRAN COMPILER VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT       00370252
                     41: C     ROUTINES, THEIR RELATED DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT00380252
                     42: C     ROUTINE IS A FORTRAN PROGRAM OR SUBPROGRAM WHICH INCLUDES TESTS   00390252
                     43: C     OF SPECIFIC LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING00400252
                     44: C     THE RESULT OF EXECUTING THESE TESTS.                              00410252
                     45: C                                                                       00420252
                     46: C     THIS PARTICULAR PROGRAM OR SUBPROGRAM CONTAINS ONLY FEATURES      00430252
                     47: C     FOUND IN THE SUBSET LEVEL OF THE STANDARD.                        00440252
                     48: C                                                                       00450252
                     49: C           SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO             00460252
                     50: C                    DEPARTMENT OF THE NAVY                             00470252
                     51: C                    FEDERAL COBOL COMPILER TESTING SERVICE             00480252
                     52: C                    WASHINGTON, D.C.   20376                           00490252
                     53: C                                                                       00500252
                     54: C     ******************************************************************00510252
                     55: C                                                                       00520252
                     56: C                                                                       00530252
                     57:       IMPLICIT LOGICAL (L)                                              00540252
                     58:       IMPLICIT CHARACTER*14 (C)                                         00550252
                     59: C                                                                       00560252
                     60: C                                                                       00570252
                     61: C                                                                       00580252
                     62: C     INITIALIZATION SECTION.                                           00590252
                     63: C                                                                       00600252
                     64: C     INITIALIZE CONSTANTS                                              00610252
                     65: C     ********************                                              00620252
                     66: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER          00630252
                     67:       I01 = 5                                                           00640252
                     68: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER              00650252
                     69:       I02 = 6                                                           00660252
                     70: C     SYSTEM ENVIRONMENT SECTION                                        00670252
                     71: C                                                                       00680252
                     72:       I01 = 5                                                           00690252
                     73: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      00700252
                     74: C     (UNIT NUMBER FOR CARD READER).                                    00710252
                     75: CX011      THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD00720252
                     76: C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00730252
                     77: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         00740252
                     78: C                                                                       00750252
                     79:       I02 = 6                                                           00760252
                     80: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      00770252
                     81: C     (UNIT NUMBER FOR PRINTER).                                        00780252
                     82: CX021     THIS CARD IS PEPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD.00790252
                     83: C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00800252
                     84: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         00810252
                     85: C                                                                       00820252
                     86:       IVPASS = 0                                                        00830252
                     87:       IVFAIL = 0                                                        00840252
                     88:       IVDELE = 0                                                        00850252
                     89:       ICZERO = 0                                                        00860252
                     90: C                                                                       00870252
                     91: C     WRITE OUT PAGE HEADERS                                            00880252
                     92: C                                                                       00890252
                     93:       WRITE (I02,90002)                                                 00900252
                     94:       WRITE (I02,90006)                                                 00910252
                     95:       WRITE (I02,90008)                                                 00920252
                     96:       WRITE (I02,90004)                                                 00930252
                     97:       WRITE (I02,90010)                                                 00940252
                     98:       WRITE (I02,90004)                                                 00950252
                     99:       WRITE (I02,90016)                                                 00960252
                    100:       WRITE (I02,90001)                                                 00970252
                    101:       WRITE (I02,90004)                                                 00980252
                    102:       WRITE (I02,90012)                                                 00990252
                    103:       WRITE (I02,90014)                                                 01000252
                    104:       WRITE (I02,90004)                                                 01010252
                    105: C                                                                       01020252
                    106: C                                                                       01030252
                    107: C     ****  FCVS PROGRAM 252  -  TEST 001  ****                         01040252
                    108: C                                                                       01050252
                    109: C        TEST 001 IS AN ASSIGN STATEMENT IN WHICH THE STATEMENT         01060252
                    110: C     LABEL IS ACTUALLY FOR A FORMAT STATEMENT.  IN 10.3 - THE STATEMENT01070252
                    111: C     LABEL MUST BE THE LABEL OF AN EXECUTABLE STATEMENT OR A FORMAT    01080252
                    112: C     STATEMENT.  THE ASSIGN STATEMENT IS FOLLOWED BY A SIMPLE WRITE    01090252
                    113: C     TO THE PRINTER.                                                   01100252
                    114: C                                                                       01110252
                    115: C                                                                       01120252
                    116:       IVTNUM =   1                                                      01130252
                    117:       IF (ICZERO) 30010, 0010, 30010                                    01140252
                    118:  0010 CONTINUE                                                          01150252
                    119:       ASSIGN 0012 TO I                                                  01160252
                    120:  0012 FORMAT (51H **** ASSIGN FORMAT NUMBER TO INTEGER VARIABLE ****)   01170252
                    121:       WRITE (I02, I)                                                    01180252
                    122: C        ***** VISUALLY CHECK THE OUTPUT PRINTER LISTING *****          01190252
                    123:       IVCOMP = 0                                                        01200252
                    124:       IVCORR = 0                                                        01210252
                    125: 40010 IF ( IVCOMP )  20010, 10010, 20010                                01220252
                    126: 30010 IVDELE = IVDELE + 1                                               01230252
                    127:       WRITE (I02,80000) IVTNUM                                          01240252
                    128:       IF (ICZERO) 10010, 0021, 20010                                    01250252
                    129: 10010 IVPASS = IVPASS + 1                                               01260252
                    130:       WRITE (I02,80002) IVTNUM                                          01270252
                    131:       GO TO 0021                                                        01280252
                    132: 20010 IVFAIL = IVFAIL + 1                                               01290252
                    133:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01300252
                    134:  0021 CONTINUE                                                          01310252
                    135: C                                                                       01320252
                    136: C     ****  FCVS PROGRAM 252  -  TEST 002  ****                         01330252
                    137: C                                                                       01340252
                    138: C        TEST 002 IS A TEST OF THE ASSIGNED GO TO STATEMENT WITH THE    01350252
                    139: C     OPTIONAL COMMA INTENTIONALLY DELETED FROM THE SYNTAX.             01360252
                    140: C                  GO TO I (S1, S2, S3)                                 01370252
                    141: C                                                                       01380252
                    142: C                                                                       01390252
                    143:       IVTNUM =   2                                                      01400252
                    144:       IF (ICZERO) 30020, 0020, 30020                                    01410252
                    145:  0020 CONTINUE                                                          01420252
                    146:       IVCOMP = 0                                                        01430252
                    147:       IVCORR = 1                                                        01440252
                    148:       ASSIGN 0023 TO J                                                  01450252
                    149:       GO TO 0025                                                        01460252
                    150:  0022 IVCOMP = 0                                                        01470252
                    151:       GO TO 40020                                                       01480252
                    152:  0023 IVCOMP = 1                                                        01490252
                    153:       GO TO 40020                                                       01500252
                    154:  0024 IVCOMP = 0                                                        01510252
                    155:       GO TO 40020                                                       01520252
                    156:  0025 GO TO J (0022, 0023, 0024)                                        01530252
                    157: C        NOTE THAT THE OPTIONAL COMMA IS NOT PRESENT AFTER THE J IN     01540252
                    158: C     PREVIOUS ASSIGNED GO TO STATEMENT.                                01550252
                    159: 40020 IF ( IVCOMP - 1 )  20020, 10020, 20020                            01560252
                    160: 30020 IVDELE = IVDELE + 1                                               01570252
                    161:       WRITE (I02,80000) IVTNUM                                          01580252
                    162:       IF (ICZERO) 10020, 0031, 20020                                    01590252
                    163: 10020 IVPASS = IVPASS + 1                                               01600252
                    164:       WRITE (I02,80002) IVTNUM                                          01610252
                    165:       GO TO 0031                                                        01620252
                    166: 20020 IVFAIL = IVFAIL + 1                                               01630252
                    167:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01640252
                    168:  0031 CONTINUE                                                          01650252
                    169: C                                                                       01660252
                    170: C     ****  FCVS PROGRAM 252  -  TEST 003  ****                         01670252
                    171: C                                                                       01680252
                    172: C        TEST 003 USES A SERIES OF ASSIGN STATEMENTS TO TEST THAT THE   01690252
                    173: C     SAME STATEMENT LABEL AND INTEGER VARIABLE CAN BE USED IN A        01700252
                    174: C     MULTIPLE REDEFINITION TO THE SAME VALUES.  A SIMPLE ASSIGNED      01710252
                    175: C     GO TO IS USED TO TEST THE VALUE OF THE INTEGER VARIABLE M.        01720252
                    176: C                                                                       01730252
                    177: C                                                                       01740252
                    178:       IVTNUM =   3                                                      01750252
                    179:       IF (ICZERO) 30030, 0030, 30030                                    01760252
                    180:  0030 CONTINUE                                                          01770252
                    181:       IVCOMP = 0                                                        01780252
                    182:       IVCORR = 1                                                        01790252
                    183:       ASSIGN 0033 TO M                                                  01800252
                    184:       ASSIGN 0033 TO M                                                  01810252
                    185:       ASSIGN 0033 TO M                                                  01820252
                    186:       GO TO 0035                                                        01830252
                    187:  0032 IVCOMP = 0                                                        01840252
                    188:       GO TO 40030                                                       01850252
                    189:  0033 IVCOMP = 1                                                        01860252
                    190:       GO TO 40030                                                       01870252
                    191:  0034 IVCOMP = 0                                                        01880252
                    192:       GO TO 40030                                                       01890252
                    193:  0035 GO TO M, (0032, 0033, 0034)                                       01900252
                    194: 40030 IF ( IVCOMP - 1 )  20030, 10030, 20030                            01910252
                    195: 30030 IVDELE = IVDELE + 1                                               01920252
                    196:       WRITE (I02,80000) IVTNUM                                          01930252
                    197:       IF (ICZERO) 10030, 0041, 20030                                    01940252
                    198: 10030 IVPASS = IVPASS + 1                                               01950252
                    199:       WRITE (I02,80002) IVTNUM                                          01960252
                    200:       GO TO 0041                                                        01970252
                    201: 20030 IVFAIL = IVFAIL + 1                                               01980252
                    202:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01990252
                    203:  0041 CONTINUE                                                          02000252
                    204: C                                                                       02010252
                    205: C     ****  FCVS PROGRAM 252  -  TEST 004  ****                         02020252
                    206: C                                                                       02030252
                    207: C        TEST 004 USES A SERIES OF ASSIGN STATEMENTS TO SET THE INTEGER 02040252
                    208: C     VARIABLE K TO A STATEMENT LABEL IN THE PARENTHESIZED LIST OF      02050252
                    209: C     STATEMENT LABELS FOR THE ASSIGNED GO TO STATEMENT, THEN TO A      02060252
                    210: C     STATEMENT LABEL NOT IN THE LIST AND FINALLY BACK TO A PROPER      02070252
                    211: C     STATEMENT LABEL WITHIN THE PARENTHESIZED LIST.  SECTION 11.3      02080252
                    212: C     REQUIRES - IF THE PARENTHESIZED LIST IS PRESENT, THE STATEMENT    02090252
                    213: C     LABEL ASSIGNED TO  I  MUST BE ONE OF THE STATEMENT LABELS IN      02100252
                    214: C     THE LIST.  AN ASSIGNED GO TO STATEMENT IS USED TO TEST THE FINAL  02110252
                    215: C     ASSIGNMENT OF STATEMENT LABELS TO THE INTEGER VARIABLE K.         02120252
                    216: C                                                                       02130252
                    217: C                                                                       02140252
                    218:       IVTNUM =   4                                                      02150252
                    219:       IF (ICZERO) 30040, 0040, 30040                                    02160252
                    220:  0040 CONTINUE                                                          02170252
                    221:       IVCOMP = 0                                                        02180252
                    222:       IVCORR = 1                                                        02190252
                    223:       ASSIGN 0043 TO K                                                  02200252
                    224:       ASSIGN 0042 TO K                                                  02210252
                    225:  0042 ASSIGN 0043 TO K                                                  02220252
                    226:       GO TO 0045                                                        02230252
                    227:  0043 IVCOMP = 1                                                        02240252
                    228:       GO TO 40040                                                       02250252
                    229:  0044 IVCOMP = 0                                                        02260252
                    230:       GO TO 40040                                                       02270252
                    231:  0045 GO TO K, (0044, 0043)                                             02280252
                    232: 40040 IF ( IVCOMP - 1 )  20040, 10040, 20040                            02290252
                    233: 30040 IVDELE = IVDELE + 1                                               02300252
                    234:       WRITE (I02,80000) IVTNUM                                          02310252
                    235:       IF (ICZERO) 10040, 0051, 20040                                    02320252
                    236: 10040 IVPASS = IVPASS + 1                                               02330252
                    237:       WRITE (I02,80002) IVTNUM                                          02340252
                    238:       GO TO 0051                                                        02350252
                    239: 20040 IVFAIL = IVFAIL + 1                                               02360252
                    240:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02370252
                    241:  0051 CONTINUE                                                          02380252
                    242: C                                                                       02390252
                    243: C                                                                       02400252
                    244: C        THE FOLLOWING TWO TESTS CHECK THE POSSIBLE RANGE OF STATEMENT  02410252
                    245: C     LABELS ( FROM 00001 TO 99999 ) BY USING THEM IN ASSIGN STATEMENTS 02420252
                    246: C     AND ASSIGNED GO TO STATEMENTS.                                    02430252
                    247: C                                                                       02440252
                    248: C                                                                       02450252
                    249: C                                                                       02460252
                    250: C     ****  FCVS PROGRAM 252  -  TEST 005  ****                         02470252
                    251: C                                                                       02480252
                    252: C        TEST 005 USES A STATEMENT LABEL OF 00001 WHICH IS THE SMALLEST 02490252
                    253: C     ALLOWABLE STATEMENT LABEL.                                        02500252
                    254: C                                                                       02510252
                    255: C                                                                       02520252
                    256:       IVTNUM =   5                                                      02530252
                    257:       IF (ICZERO) 30050, 0050, 30050                                    02540252
                    258:  0050 CONTINUE                                                          02550252
                    259:       IVCOMP = 0                                                        02560252
                    260:       IVCORR = 1                                                        02570252
                    261:       ASSIGN 00001 TO I                                                 02580252
                    262:       GO TO 0054                                                        02590252
                    263:  0052 IVCOMP = 0                                                        02600252
                    264:       GO TO 40050                                                       02610252
                    265: 00001 IVCOMP = 1                                                        02620252
                    266:       GO TO 40050                                                       02630252
                    267:  0053 IVCOMP = 0                                                        02640252
                    268:       GO TO 40050                                                       02650252
                    269:  0054 GO TO I, ( 0052, 00001, 0053 )                                    02660252
                    270: 40050 IF ( IVCOMP - 1 )  20050, 10050, 20050                            02670252
                    271: 30050 IVDELE = IVDELE + 1                                               02680252
                    272:       WRITE (I02,80000) IVTNUM                                          02690252
                    273:       IF (ICZERO) 10050, 0061, 20050                                    02700252
                    274: 10050 IVPASS = IVPASS + 1                                               02710252
                    275:       WRITE (I02,80002) IVTNUM                                          02720252
                    276:       GO TO 0061                                                        02730252
                    277: 20050 IVFAIL = IVFAIL + 1                                               02740252
                    278:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02750252
                    279:  0061 CONTINUE                                                          02760252
                    280: C                                                                       02770252
                    281: C     ****  FCVS PROGRAM 252  -  TEST 006  ****                         02780252
                    282: C                                                                       02790252
                    283: C        TEST 006 USES A STATEMENT LABEL OF 99999 WHICH IS THE LARGEST  02800252
                    284: C     ALLOWABLE STATEMENT LABEL.                                        02810252
                    285: C                                                                       02820252
                    286: C                                                                       02830252
                    287:       IVTNUM =   6                                                      02840252
                    288:       IF (ICZERO) 30060, 0060, 30060                                    02850252
                    289:  0060 CONTINUE                                                          02860252
                    290:       IVCOMP = 0                                                        02870252
                    291:       IVCORR = 1                                                        02880252
                    292:       ASSIGN 99999 TO J                                                 02890252
                    293:       GO TO 0064                                                        02900252
                    294:  0062 IVCOMP = 0                                                        02910252
                    295:       GO TO 40060                                                       02920252
                    296: 99999 IVCOMP = 1                                                        02930252
                    297:       GO TO 40060                                                       02940252
                    298:  0063 IVCOMP = 0                                                        02950252
                    299:       GO TO 40060                                                       02960252
                    300:  0064 GO TO J, ( 0062, 99999, 0063 )                                    02970252
                    301: 40060 IF ( IVCOMP - 1 )  20060, 10060, 20060                            02980252
                    302: 30060 IVDELE = IVDELE + 1                                               02990252
                    303:       WRITE (I02,80000) IVTNUM                                          03000252
                    304:       IF (ICZERO) 10060, 0071, 20060                                    03010252
                    305: 10060 IVPASS = IVPASS + 1                                               03020252
                    306:       WRITE (I02,80002) IVTNUM                                          03030252
                    307:       GO TO 0071                                                        03040252
                    308: 20060 IVFAIL = IVFAIL + 1                                               03050252
                    309:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03060252
                    310:  0071 CONTINUE                                                          03070252
                    311: C                                                                       03080252
                    312: C     ****  FCVS PROGRAM 252  -  TEST 007  ****                         03090252
                    313: C                                                                       03100252
                    314: C        TEST 007 IS A SYNTAX CHECK ON THE OPTIONAL COMMA IN THE        03110252
                    315: C     COMPUTED GO TO STATEMENT.  THE COMMA FOLLOWING THE PARENTHESIZED  03120252
                    316: C     LIST OF STATEMENT LABELS IS INTENTIONALLY OMITTED.                03130252
                    317: C                  GO TO ( S1, S2, S3 )  I                              03140252
                    318: C                                                                       03150252
                    319: C                                                                       03160252
                    320:       IVTNUM =   7                                                      03170252
                    321:       IF (ICZERO) 30070, 0070, 30070                                    03180252
                    322:  0070 CONTINUE                                                          03190252
                    323:       IVCOMP = 0                                                        03200252
                    324:       IVCORR = 1                                                        03210252
                    325:       I = 3                                                             03220252
                    326:       GO TO 0075                                                        03230252
                    327:  0072 IVCOMP = 0                                                        03240252
                    328:       I = 1                                                             03250252
                    329:       GO TO 0075                                                        03260252
                    330:  0073 IVCOMP = 1                                                        03270252
                    331:       GO TO 40070                                                       03280252
                    332:  0074 IVCOMP = 0                                                        03290252
                    333:       I = 2                                                             03300252
                    334:       GO TO 0075                                                        03310252
                    335:  0075 GO TO ( 0074, 0073, 0072 )  I                                     03320252
                    336: 40070 IF ( I - 2 )  20070, 40071, 20070                                 03330252
                    337: 40071 IF ( IVCOMP - 1 )  20070, 10070, 20070                            03340252
                    338: 30070 IVDELE = IVDELE + 1                                               03350252
                    339:       WRITE (I02,80000) IVTNUM                                          03360252
                    340:       IF (ICZERO) 10070, 0081, 20070                                    03370252
                    341: 10070 IVPASS = IVPASS + 1                                               03380252
                    342:       WRITE (I02,80002) IVTNUM                                          03390252
                    343:       GO TO 0081                                                        03400252
                    344: 20070 IVFAIL = IVFAIL + 1                                               03410252
                    345:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03420252
                    346:  0081 CONTINUE                                                          03430252
                    347: C                                                                       03440252
                    348: C     ****  FCVS PROGRAM 252  -  TEST 008  ****                         03450252
                    349: C                                                                       03460252
                    350: C        TEST 008 USES THE COMPUTED GO TO WITHOUT THE OPTIONAL COMMA    03470252
                    351: C     AND HAS A SINGLE STATEMENT LABEL IN THE PARENTHESIZED LIST OF     03480252
                    352: C     STATEMENT LABELS.                                                 03490252
                    353: C                  GO TO ( S1 ) I                                       03500252
                    354: C                                                                       03510252
                    355: C                                                                       03520252
                    356:       IVTNUM =   8                                                      03530252
                    357:       IF (ICZERO) 30080, 0080, 30080                                    03540252
                    358:  0080 CONTINUE                                                          03550252
                    359:       IVCOMP = 0                                                        03560252
                    360:       IVCORR = 1                                                        03570252
                    361:       J = 1                                                             03580252
                    362:       GO TO 0083                                                        03590252
                    363:  0082 IVCOMP = 1                                                        03600252
                    364:       GO TO 40080                                                       03610252
                    365:  0083 GO TO ( 0082 ) J                                                  03620252
                    366: 40080 IF ( IVCOMP - 1 )  20080, 10080, 20080                            03630252
                    367: 30080 IVDELE = IVDELE + 1                                               03640252
                    368:       WRITE (I02,80000) IVTNUM                                          03650252
                    369:       IF (ICZERO) 10080, 0091, 20080                                    03660252
                    370: 10080 IVPASS = IVPASS + 1                                               03670252
                    371:       WRITE (I02,80002) IVTNUM                                          03680252
                    372:       GO TO 0091                                                        03690252
                    373: 20080 IVFAIL = IVFAIL + 1                                               03700252
                    374:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03710252
                    375:  0091 CONTINUE                                                          03720252
                    376: C                                                                       03730252
                    377: C                                                                       03740252
                    378: C        THE NEXT THREE TESTS OF THE COMPUTED GO TO TEST THE RANGE OF   03750252
                    379: C     THE INDEX.                                                        03760252
                    380: C                                                                       03770252
                    381: C        FORTRAN 77 HAS THE REQUIREMENT IN SECTION 11.2 - IF THE INDEX  03780252
                    382: C     IS LESS THAN ONE OR GREATER THAN THE NUMBER OF STATEMENT LABELS IN03790252
                    383: C     THE PARENTHESIZED LIST, THE EXECUTION SEQUENCE CONTINUES AS THOUGH03800252
                    384: C     A  CONTINUE  STATEMENT WERE EXECUTED.                             03810252
                    385: C                                                                       03820252
                    386: C                                                                       03830252
                    387: C                                                                       03840252
                    388: C     ****  FCVS PROGRAM 252  -  TEST 009  ****                         03850252
                    389: C                                                                       03860252
                    390: C                                                                       03870252
                    391: C        TEST 009 USES A VALUE OF THE INDEX OF THE COMPUTED GO TO       03880252
                    392: C     STATEMENT GREATER THAN THE NUMBER OF STATEMENT LABELS IN THE      03890252
                    393: C     PARENTHESIZED LIST.                                               03900252
                    394: C                                                                       03910252
                    395: C                                                                       03920252
                    396:       IVTNUM =   9                                                      03930252
                    397:       IF (ICZERO) 30090, 0090, 30090                                    03940252
                    398:  0090 CONTINUE                                                          03950252
                    399:       IVCOMP = 0                                                        03960252
                    400:       IVCORR = 1                                                        03970252
                    401:       K = 3                                                             03980252
                    402:       GO TO 0094                                                        03990252
                    403:  0092 IVCOMP = 0                                                        04000252
                    404:       GO TO 40090                                                       04010252
                    405:  0093 IVCOMP = 0                                                        04020252
                    406:       GO TO 40090                                                       04030252
                    407:  0094 GO TO ( 0092, 0093 )  K                                           04040252
                    408: C                                                                       04050252
                    409: C        TO REACH THIS STATEMENT THE COMPUTED GO TO WILL HAVE TO BE     04060252
                    410: C     EXECUTED AS IF IT WERE A CONTINUE STATEMENT.                      04070252
                    411: C                                                                       04080252
                    412:       IVCOMP = 1                                                        04090252
                    413: 40090 IF ( IVCOMP - 1 )  20090, 10090, 20090                            04100252
                    414: 30090 IVDELE = IVDELE + 1                                               04110252
                    415:       WRITE (I02,80000) IVTNUM                                          04120252
                    416:       IF (ICZERO) 10090, 0101, 20090                                    04130252
                    417: 10090 IVPASS = IVPASS + 1                                               04140252
                    418:       WRITE (I02,80002) IVTNUM                                          04150252
                    419:       GO TO 0101                                                        04160252
                    420: 20090 IVFAIL = IVFAIL + 1                                               04170252
                    421:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04180252
                    422:  0101 CONTINUE                                                          04190252
                    423: C                                                                       04200252
                    424: C     ****  FCVS PROGRAM 252  -  TEST 010  ****                         04210252
                    425: C                                                                       04220252
                    426: C        TEST 010 USES A VALUE OF THE INDEX OF THE COMPUTED GO TO       04230252
                    427: C     STATEMENT EQUAL TO ZERO.                                          04240252
                    428: C                                                                       04250252
                    429: C                                                                       04260252
                    430:       IVTNUM =  10                                                      04270252
                    431:       IF (ICZERO) 30100, 0100, 30100                                    04280252
                    432:  0100 CONTINUE                                                          04290252
                    433:       IVCOMP = 0                                                        04300252
                    434:       IVCORR = 1                                                        04310252
                    435:       I = 0                                                             04320252
                    436:       GO TO 0104                                                        04330252
                    437:  0102 IVCOMP = 0                                                        04340252
                    438:       GO TO 40100                                                       04350252
                    439:  0103 IVCOMP = 0                                                        04360252
                    440:       GO TO 40100                                                       04370252
                    441:  0104 GO TO ( 0103, 0102 ), I                                           04380252
                    442: C                                                                       04390252
                    443: C        THIS STATEMENT CAN ONLY BE REACHED IF THE COMPUTED GO TO       04400252
                    444: C     IS EXECUTED AS IF IT WERE A CONTINUE STATEMENT.                   04410252
                    445: C                                                                       04420252
                    446:       IVCOMP = 1                                                        04430252
                    447: 40100 IF ( IVCOMP - 1 )  20100, 10100, 20100                            04440252
                    448: 30100 IVDELE = IVDELE + 1                                               04450252
                    449:       WRITE (I02,80000) IVTNUM                                          04460252
                    450:       IF (ICZERO) 10100, 0111, 20100                                    04470252
                    451: 10100 IVPASS = IVPASS + 1                                               04480252
                    452:       WRITE (I02,80002) IVTNUM                                          04490252
                    453:       GO TO 0111                                                        04500252
                    454: 20100 IVFAIL = IVFAIL + 1                                               04510252
                    455:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04520252
                    456:  0111 CONTINUE                                                          04530252
                    457: C                                                                       04540252
                    458: C     ****  FCVS PROGRAM 252  -  TEST 011  ****                         04550252
                    459: C                                                                       04560252
                    460: C        TEST 011 USES A VALUE OF THE INDEX OF THE COMPUTED GO TO       04570252
                    461: C     EQUAL TO -1.                                                      04580252
                    462: C                                                                       04590252
                    463:       IVTNUM =  11                                                      04600252
                    464:       IF (ICZERO) 30110, 0110, 30110                                    04610252
                    465:  0110 CONTINUE                                                          04620252
                    466:       IVCOMP = 0                                                        04630252
                    467:       IVCORR = 1                                                        04640252
                    468:       J = -1                                                            04650252
                    469:       GO TO 0114                                                        04660252
                    470:  0112 IVCOMP = 0                                                        04670252
                    471:       GO TO 40110                                                       04680252
                    472:  0113 IVCOMP = 0                                                        04690252
                    473:       GO TO 40110                                                       04700252
                    474:  0114 GO TO  (0112,0113),J                                              04710252
                    475: C                                                                       04720252
                    476: C        THIS STATEMENT CAN ONLY BE REACHED IF THE COMPUTED GO TO       04730252
                    477: C     IS EXECUTED AS IF IT WERE A CONTINUE STATEMENT.                   04740252
                    478: C                                                                       04750252
                    479:       IVCOMP = 1                                                        04760252
                    480: 40110 IF ( IVCOMP - 1 )  20110, 10110, 20110                            04770252
                    481: 30110 IVDELE = IVDELE + 1                                               04780252
                    482:       WRITE (I02,80000) IVTNUM                                          04790252
                    483:       IF (ICZERO) 10110, 0121, 20110                                    04800252
                    484: 10110 IVPASS = IVPASS + 1                                               04810252
                    485:       WRITE (I02,80002) IVTNUM                                          04820252
                    486:       GO TO 0121                                                        04830252
                    487: 20110 IVFAIL = IVFAIL + 1                                               04840252
                    488:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04850252
                    489:  0121 CONTINUE                                                          04860252
                    490: C                                                                       04870252
                    491: C                                                                       04880252
                    492: C     WRITE OUT TEST SUMMARY                                            04890252
                    493: C                                                                       04900252
                    494:       WRITE (I02,90004)                                                 04910252
                    495:       WRITE (I02,90014)                                                 04920252
                    496:       WRITE (I02,90004)                                                 04930252
                    497:       WRITE (I02,90000)                                                 04940252
                    498:       WRITE (I02,90004)                                                 04950252
                    499:       WRITE (I02,90020) IVFAIL                                          04960252
                    500:       WRITE (I02,90022) IVPASS                                          04970252
                    501:       WRITE (I02,90024) IVDELE                                          04980252
                    502:       STOP                                                              04990252
                    503: 90001 FORMAT (1H ,24X,5HFM252)                                          05000252
                    504: 90000 FORMAT (1H ,20X,20HEND OF PROGRAM FM252)                          05010252
                    505: C                                                                       05020252
                    506: C     FORMATS FOR TEST DETAIL LINES                                     05030252
                    507: C                                                                       05040252
                    508: 80000 FORMAT (1H ,4X,I5,6X,7HDELETED)                                   05050252
                    509: 80002 FORMAT (1H ,4X,I5,7X,4HPASS)                                      05060252
                    510: 80010 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6)                         05070252
                    511: 80012 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5)                    05080252
                    512: 80018 FORMAT (1H ,4X,I5,7X,4HFAIL,2X,A14,1X,A14)                        05090252
                    513: C                                                                       05100252
                    514: C     FORMAT STATEMENTS FOR PAGE HEADERS                                05110252
                    515: C                                                                       05120252
                    516: 90002 FORMAT (1H1)                                                      05130252
                    517: 90004 FORMAT (1H )                                                      05140252
                    518: 90006 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM)            05150252
                    519: 90008 FORMAT (1H ,21X,11HVERSION 1.0)                                   05160252
                    520: 90010 FORMAT (1H ,8X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978)         05170252
                    521: 90012 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL,5X,8HCOMPUTED,8X,7HCORRECT)  05180252
                    522: 90014 FORMAT (1H ,5X,46H----------------------------------------------) 05190252
                    523: 90016 FORMAT (1H ,18X,17HSUBSET LEVEL TEST)                             05200252
                    524: C                                                                       05210252
                    525: C     FORMAT STATEMENTS FOR RUN SUMMARY                                 05220252
                    526: C                                                                       05230252
                    527: 90020 FORMAT (1H ,19X,I5,13H TESTS FAILED)                              05240252
                    528: 90022 FORMAT (1H ,19X,I5,13H TESTS PASSED)                              05250252
                    529: 90024 FORMAT (1H ,19X,I5,14H TESTS DELETED)                             05260252
                    530:       END                                                               05270252

unix.superglobalmegacorp.com

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