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

1.1       root        1:       PROGRAM FM256                                                     00010256
                      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                                                                       00020256
                      6: C                                                                       00030256
                      7: C                                                                       00040256
                      8: C        THIS ROUTINE IS A TEST OF THE DO STATEMENT.  THE DO IS TESTED  00050256
                      9: C     BOTH OUTSIDE AND INSIDE THE BLOCK-IF STRUCTURE.  TESTS ARE MADE OF00060256
                     10: C     THE DO-VARIABLE WHEN THE DO BECOMES INACTIVE.  OTHER TESTS CHECK  00070256
                     11: C     LOOP AND INCREMENTATION PROCESSING.  THE DO-LOOP EXECUTION        00080256
                     12: C     IS TESTED FOR THOSE CONDITIONS WHICH MAKE THE DO-LOOP INACTIVE.   00090256
                     13: C                                                                       00100256
                     14: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00110256
                     15: C             X3.9-1978                                                 00120256
                     16: C        SECTION 11.10,      DO STATEMENT                               00130256
                     17: C        SECTION 11.10.1,    RANGE OF A DO-LOOP                         00140256
                     18: C        SECTION 11.10.2,    ACTIVE AND INACTIVE DO-LOOPS               00150256
                     19: C        SECTION 11.10.3,    EXECUTING A DO STATEMENT                   00160256
                     20: C        SECTION 11.10.4,    LOOP CONTROL PROCESSING                    00170256
                     21: C        SECTION 11.10.5,    EXECUTION OF THE RANGE                     00180256
                     22: C        SECTION 11.10.6,    TERMINAL STATEMENT EXECUTION               00190256
                     23: C        SECTION 11.10.7,    INCREMENTATION PROCESSING                  00200256
                     24: C                                                                       00210256
                     25: C        FM012 - TESTS THE DO STATEMENT WITH THE FORTRAN 66 CONCEPTS OF 00220256
                     26: C                EXTENDED RANGE OF A DO STATEMENT.                      00230256
                     27: C                                                                       00240256
                     28: C                                                                       00250256
                     29: C                                                                       00260256
                     30: C     ******************************************************************00270256
                     31: C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00280256
                     32: C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN STANDARD FORTRAN   00290256
                     33: C     X3.9-1978, HAS BEEN DEVELOPED BY THE DEPARTMENT OF THE NAVY.  THE 00300256
                     34: C     FORTRAN COMPILER VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT       00310256
                     35: C     ROUTINES, THEIR RELATED DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT00320256
                     36: C     ROUTINE IS A FORTRAN PROGRAM OR SUBPROGRAM WHICH INCLUDES TESTS   00330256
                     37: C     OF SPECIFIC LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING00340256
                     38: C     THE RESULT OF EXECUTING THESE TESTS.                              00350256
                     39: C                                                                       00360256
                     40: C     THIS PARTICULAR PROGRAM OR SUBPROGRAM CONTAINS ONLY FEATURES      00370256
                     41: C     FOUND IN THE SUBSET LEVEL OF THE STANDARD.                        00380256
                     42: C                                                                       00390256
                     43: C           SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO             00400256
                     44: C                    DEPARTMENT OF THE NAVY                             00410256
                     45: C                    FEDERAL COBOL COMPILER TESTING SERVICE             00420256
                     46: C                    WASHINGTON, D.C.   20376                           00430256
                     47: C                                                                       00440256
                     48: C     ******************************************************************00450256
                     49: C                                                                       00460256
                     50: C                                                                       00470256
                     51:       IMPLICIT LOGICAL (L)                                              00480256
                     52:       IMPLICIT CHARACTER*14 (C)                                         00490256
                     53: C                                                                       00500256
                     54: C                                                                       00510256
                     55: C                                                                       00520256
                     56: C     INITIALIZATION SECTION.                                           00530256
                     57: C                                                                       00540256
                     58: C     INITIALIZE CONSTANTS                                              00550256
                     59: C     ********************                                              00560256
                     60: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER          00570256
                     61:       I01 = 5                                                           00580256
                     62: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER              00590256
                     63:       I02 = 6                                                           00600256
                     64: C     SYSTEM ENVIRONMENT SECTION                                        00610256
                     65: C                                                                       00620256
                     66:       I01 = 5                                                           00630256
                     67: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      00640256
                     68: C     (UNIT NUMBER FOR CARD READER).                                    00650256
                     69: CX011      THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD00660256
                     70: C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00670256
                     71: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         00680256
                     72: C                                                                       00690256
                     73:       I02 = 6                                                           00700256
                     74: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      00710256
                     75: C     (UNIT NUMBER FOR PRINTER).                                        00720256
                     76: CX021     THIS CARD IS PEPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD.00730256
                     77: C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00740256
                     78: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         00750256
                     79: C                                                                       00760256
                     80:       IVPASS = 0                                                        00770256
                     81:       IVFAIL = 0                                                        00780256
                     82:       IVDELE = 0                                                        00790256
                     83:       ICZERO = 0                                                        00800256
                     84: C                                                                       00810256
                     85: C     WRITE OUT PAGE HEADERS                                            00820256
                     86: C                                                                       00830256
                     87:       WRITE (I02,90002)                                                 00840256
                     88:       WRITE (I02,90006)                                                 00850256
                     89:       WRITE (I02,90008)                                                 00860256
                     90:       WRITE (I02,90004)                                                 00870256
                     91:       WRITE (I02,90010)                                                 00880256
                     92:       WRITE (I02,90004)                                                 00890256
                     93:       WRITE (I02,90016)                                                 00900256
                     94:       WRITE (I02,90001)                                                 00910256
                     95:       WRITE (I02,90004)                                                 00920256
                     96:       WRITE (I02,90012)                                                 00930256
                     97:       WRITE (I02,90014)                                                 00940256
                     98:       WRITE (I02,90004)                                                 00950256
                     99: C                                                                       00960256
                    100: C                                                                       00970256
                    101: C     ****  FCVS PROGRAM 256  -  TEST 001  ****                         00980256
                    102: C                                                                       00990256
                    103: C        TEST 001 CHECKS THE SIMPLE DO STATEMENT WITH THE OPTIONAL      01000256
                    104: C     COMMAS AND ALL DO PARAMETERS SPECIFIED.  THE LOOP IS ACTIVE FOR   01010256
                    105: C     TEN COUNTS.  THE FINAL VALUE OF THE INTEGER COUNTER SHOULD BE     01020256
                    106: C     EQUAL TO TEN (10).  THE FORM OF THE DO STATEMENT USED IN THIS TEST01030256
                    107: C     IS SHOWN BELOW -                                                  01040256
                    108: C                                                                       01050256
                    109: C        DO S, I = E1, E2, E3                                           01060256
                    110: C                                                                       01070256
                    111: C                                                                       01080256
                    112:       IVTNUM =   1                                                      01090256
                    113:       IF (ICZERO) 30010, 0010, 30010                                    01100256
                    114:  0010 CONTINUE                                                          01110256
                    115:       IVCOMP = 0                                                        01120256
                    116:       DO 0012, IVON01 = 1, 10, 1                                        01130256
                    117:       IVCOMP = IVCOMP + 1                                               01140256
                    118:  0012 CONTINUE                                                          01150256
                    119:       IVCORR = 10                                                       01160256
                    120: 40010 IF ( IVCOMP - 10 )  20010, 10010, 20010                           01170256
                    121: 30010 IVDELE = IVDELE + 1                                               01180256
                    122:       WRITE (I02,80000) IVTNUM                                          01190256
                    123:       IF (ICZERO) 10010, 0021, 20010                                    01200256
                    124: 10010 IVPASS = IVPASS + 1                                               01210256
                    125:       WRITE (I02,80002) IVTNUM                                          01220256
                    126:       GO TO 0021                                                        01230256
                    127: 20010 IVFAIL = IVFAIL + 1                                               01240256
                    128:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01250256
                    129:  0021 CONTINUE                                                          01260256
                    130: C                                                                       01270256
                    131: C     ****  FCVS PROGRAM 256  -  TEST 002  ****                         01280256
                    132: C                                                                       01290256
                    133: C        TEST 002 IS SIMILAR TO THE PREVIOUS TEST EXCEPT THAT THE COMMAS01300256
                    134: C     THAT ARE OPTIONAL HAVE BEEN DELETED AS A SYNTAX CHECK.            01310256
                    135: C                                                                       01320256
                    136: C        THE INCREMENTATION PARAMETER IS OPTIONAL AND NOT PRESENT IN    01330256
                    137: C     THIS TEST.    ACCORDING TO SECTION 11.10.3,  IF E3 DOES NOT APPEAR01340256
                    138: C     THEN M3 HAS A VALUE OF ONE.  THE DO STATEMENT FOR THIS TEST IS OF 01350256
                    139: C     THE FORM SHOWN BELOW -                                            01360256
                    140: C                                                                       01370256
                    141: C        DO S I = E1, E2                                                01380256
                    142: C                                                                       01390256
                    143: C                                                                       01400256
                    144:       IVTNUM =   2                                                      01410256
                    145:       IF (ICZERO) 30020, 0020, 30020                                    01420256
                    146:  0020 CONTINUE                                                          01430256
                    147:       IVCOMP = 0                                                        01440256
                    148:       DO 0022 IVON01 = 1, 10                                            01450256
                    149:       IVCOMP = IVCOMP + 1                                               01460256
                    150:  0022 CONTINUE                                                          01470256
                    151:       IVCORR = 10                                                       01480256
                    152: 40020 IF ( IVCOMP - 10 )  20020, 10020, 20020                           01490256
                    153: 30020 IVDELE = IVDELE + 1                                               01500256
                    154:       WRITE (I02,80000) IVTNUM                                          01510256
                    155:       IF (ICZERO) 10020, 0031, 20020                                    01520256
                    156: 10020 IVPASS = IVPASS + 1                                               01530256
                    157:       WRITE (I02,80002) IVTNUM                                          01540256
                    158:       GO TO 0031                                                        01550256
                    159: 20020 IVFAIL = IVFAIL + 1                                               01560256
                    160:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01570256
                    161:  0031 CONTINUE                                                          01580256
                    162: C                                                                       01590256
                    163: C     ****  FCVS PROGRAM 256  -  TEST 003  ****                         01600256
                    164: C                                                                       01610256
                    165: C        TEST 003 HAS A DO STATEMENT INSIDE A BLOCKED IF STRUCTURE.     01620256
                    166: C     THE LOGICAL EXPRESSION IS TRUE SO THE DO-LOOP SHOULD BE EXECUTED  01630256
                    167: C     A TOTAL OF TEN TIMES.                                             01640256
                    168: C                                                                       01650256
                    169: C                                                                       01660256
                    170:       IVTNUM =   3                                                      01670256
                    171:       IF (ICZERO) 30030, 0030, 30030                                    01680256
                    172:  0030 CONTINUE                                                          01690256
                    173:       IVCOMP = 0                                                        01700256
                    174:       LVON01 = .TRUE.                                                   01710256
                    175:       IF ( LVON01 )  THEN                                               01720256
                    176:            DO 0032, IVON01 = 1, 10, 1                                   01730256
                    177:            IVCOMP = IVCOMP + 1                                          01740256
                    178:  0032      CONTINUE                                                     01750256
                    179:       END IF                                                            01760256
                    180:       IVCORR = 10                                                       01770256
                    181: 40030 IF ( IVCOMP - 10 )  20030, 10030, 20030                           01780256
                    182: 30030 IVDELE = IVDELE + 1                                               01790256
                    183:       WRITE (I02,80000) IVTNUM                                          01800256
                    184:       IF (ICZERO) 10030, 0041, 20030                                    01810256
                    185: 10030 IVPASS = IVPASS + 1                                               01820256
                    186:       WRITE (I02,80002) IVTNUM                                          01830256
                    187:       GO TO 0041                                                        01840256
                    188: 20030 IVFAIL = IVFAIL + 1                                               01850256
                    189:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01860256
                    190:  0041 CONTINUE                                                          01870256
                    191: C                                                                       01880256
                    192: C     ****  FCVS PROGRAM 256  -  TEST 004  ****                         01890256
                    193: C                                                                       01900256
                    194: C        TEST 004 IS SIMILAR TO THE PREVIOUS TEST EXCEPT THAT THE DO    01910256
                    195: C     STATEMENT IS LOCATED IN AN ELSE IF-BLOCK.  THE DO-LOOP SHOULD BE  01920256
                    196: C     EXECUTED FIVE (5) TIMES.                                          01930256
                    197: C                                                                       01940256
                    198: C                                                                       01950256
                    199:       IVTNUM =   4                                                      01960256
                    200:       IF (ICZERO) 30040, 0040, 30040                                    01970256
                    201:  0040 CONTINUE                                                          01980256
                    202:       IVCOMP = 0                                                        01990256
                    203:       LVON01 = .FALSE.                                                  02000256
                    204:       LVON02 = .TRUE.                                                   02010256
                    205:       IF ( LVON01 )  THEN                                               02020256
                    206:            IVCOMP = 32000                                               02030256
                    207:       ELSE IF ( LVON02 )  THEN                                          02040256
                    208:            DO 0042 IVON01 = 1, 5                                        02050256
                    209:            IVCOMP = IVCOMP + 1                                          02060256
                    210:  0042      CONTINUE                                                     02070256
                    211:       END IF                                                            02080256
                    212:       IVCORR = 5                                                        02090256
                    213: 40040 IF ( IVCOMP - 5 )  20040, 10040, 20040                            02100256
                    214: 30040 IVDELE = IVDELE + 1                                               02110256
                    215:       WRITE (I02,80000) IVTNUM                                          02120256
                    216:       IF (ICZERO) 10040, 0051, 20040                                    02130256
                    217: 10040 IVPASS = IVPASS + 1                                               02140256
                    218:       WRITE (I02,80002) IVTNUM                                          02150256
                    219:       GO TO 0051                                                        02160256
                    220: 20040 IVFAIL = IVFAIL + 1                                               02170256
                    221:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02180256
                    222:  0051 CONTINUE                                                          02190256
                    223: C                                                                       02200256
                    224: C     ****  FCVS PROGRAM 256  -  TEST 005  ****                         02210256
                    225: C                                                                       02220256
                    226: C        TEST 005 IS SIMILAR TO THE PREVIOUS TWO TESTS EXCEPT THAT THE  02230256
                    227: C     DO STATEMENT IS CONTAINED IN AN ELSE-BLOCK.  THE DO-LOOP SHOULD BE02240256
                    228: C     EXECUTED A TOTAL OF 3 TIMES.                                      02250256
                    229: C                                                                       02260256
                    230: C                                                                       02270256
                    231:       IVTNUM =   5                                                      02280256
                    232:       IF (ICZERO) 30050, 0050, 30050                                    02290256
                    233:  0050 CONTINUE                                                          02300256
                    234:       IVCOMP = 0                                                        02310256
                    235:       LVON01 = .FALSE.                                                  02320256
                    236:       LVON02 = .FALSE.                                                  02330256
                    237:       IF ( LVON01 )  THEN                                               02340256
                    238:            IVCOMP = 100                                                 02350256
                    239:       ELSE IF ( LVON02 )  THEN                                          02360256
                    240:            IVCOMP = 1000                                                02370256
                    241:       ELSE                                                              02380256
                    242:            DO 0052, IVON01 = 1, 3                                       02390256
                    243:            IVCOMP = IVCOMP + 1                                          02400256
                    244:  0052      CONTINUE                                                     02410256
                    245:       END IF                                                            02420256
                    246:       IVCORR = 3                                                        02430256
                    247: 40050 IF ( IVCOMP - 3 )  20050, 10050, 20050                            02440256
                    248: 30050 IVDELE = IVDELE + 1                                               02450256
                    249:       WRITE (I02,80000) IVTNUM                                          02460256
                    250:       IF (ICZERO) 10050, 0061, 20050                                    02470256
                    251: 10050 IVPASS = IVPASS + 1                                               02480256
                    252:       WRITE (I02,80002) IVTNUM                                          02490256
                    253:       GO TO 0061                                                        02500256
                    254: 20050 IVFAIL = IVFAIL + 1                                               02510256
                    255:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02520256
                    256:  0061 CONTINUE                                                          02530256
                    257: C                                                                       02540256
                    258: C     ****  FCVS PROGRAM 256  -  TEST 006  ****                         02550256
                    259: C                                                                       02560256
                    260: C        TEST 006 HAS A BLOCKED IF STRUCTURE INSIDE A DO-LOOP.          02570256
                    261: C     THE LOOP IS EXECUTED THREE (3) TIMES.  ALL THREE PARTS OF THE     02580256
                    262: C     BLOCK-IF STRUCTURE SHOULD BE EXECUTED.                            02590256
                    263: C                                                                       02600256
                    264: C                                                                       02610256
                    265:       IVTNUM =   6                                                      02620256
                    266:       IF (ICZERO) 30060, 0060, 30060                                    02630256
                    267:  0060 CONTINUE                                                          02640256
                    268:       IVCOMP = 1                                                        02650256
                    269:       DO 0062, IVON01 = 3, 5, 1                                         02660256
                    270:       IF ( IVON01 .LE. 3 )  THEN                                        02670256
                    271:            IVCOMP = IVCOMP * 2                                          02680256
                    272:       ELSE IF ( IVON01 .GT. 3 .AND. IVON01 .LT. 5 )  THEN               02690256
                    273:            IVCOMP = IVCOMP * 3                                          02700256
                    274:       ELSE                                                              02710256
                    275:            IVCOMP = IVCOMP * 5                                          02720256
                    276:       END IF                                                            02730256
                    277:  0062 CONTINUE                                                          02740256
                    278: C                                                                       02750256
                    279: C        **** IVCOMP IS DETERMINED BY IVCOMP = 30 = 1 * 2 * 3 * 5   ****02760256
                    280: C                                                                       02770256
                    281:       IVCORR = 30                                                       02780256
                    282: 40060 IF ( IVCOMP - 30 )  20060, 10060, 20060                           02790256
                    283: 30060 IVDELE = IVDELE + 1                                               02800256
                    284:       WRITE (I02,80000) IVTNUM                                          02810256
                    285:       IF (ICZERO) 10060, 0071, 20060                                    02820256
                    286: 10060 IVPASS = IVPASS + 1                                               02830256
                    287:       WRITE (I02,80002) IVTNUM                                          02840256
                    288:       GO TO 0071                                                        02850256
                    289: 20060 IVFAIL = IVFAIL + 1                                               02860256
                    290:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02870256
                    291:  0071 CONTINUE                                                          02880256
                    292: C                                                                       02890256
                    293: C                                                                       02900256
                    294: C        THE FOLLOWING SERIES OF TESTS CHECK THE DO-VARIABLE WHEN THE   02910256
                    295: C     DO-LOOP BECOMES INACTIVE.  ACCORDING TO SECTION 11.10.2,  WHEN A  02920256
                    296: C     DO-LOOP BECOMES INACTIVE, THE DO-VARIABLE OF THE DO-LOOP RETAINS  02930256
                    297: C     ITS LAST DEFINED VALUE.                                           02940256
                    298: C                                                                       02950256
                    299: C                                                                       02960256
                    300: C                                                                       02970256
                    301: C     ****  FCVS PROGRAM 256  -  TEST 007  ****                         02980256
                    302: C                                                                       02990256
                    303: C        TEST 007 CHECKS THAT THE DO-VARIABLE CONTAINS ITS LAST DEFINED 03000256
                    304: C     VALUE WHEN THE ITERATION COUNT IS ZERO.                           03010256
                    305: C                                                                       03020256
                    306: C                                                                       03030256
                    307:       IVTNUM =   7                                                      03040256
                    308:       IF (ICZERO) 30070, 0070, 30070                                    03050256
                    309:  0070 CONTINUE                                                          03060256
                    310:       IVCOMP = 0                                                        03070256
                    311:       IVON02 = 0                                                        03080256
                    312:       DO 0072 IVON01 = 100, 105, 2                                      03090256
                    313:       IVON02 = IVON02 + 1                                               03100256
                    314:  0072 CONTINUE                                                          03110256
                    315:       IVCOMP = IVON01                                                   03120256
                    316:       IVCORR = 106                                                      03130256
                    317: 40070 IF ( IVCOMP - 106 )  20070, 10070, 20070                          03140256
                    318: 30070 IVDELE = IVDELE + 1                                               03150256
                    319:       WRITE (I02,80000) IVTNUM                                          03160256
                    320:       IF (ICZERO) 10070, 0081, 20070                                    03170256
                    321: 10070 IVPASS = IVPASS + 1                                               03180256
                    322:       WRITE (I02,80002) IVTNUM                                          03190256
                    323:       GO TO 0081                                                        03200256
                    324: 20070 IVFAIL = IVFAIL + 1                                               03210256
                    325:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03220256
                    326:  0081 CONTINUE                                                          03230256
                    327: C                                                                       03240256
                    328: C     ****  FCVS PROGRAM 256  -  TEST 008  ****                         03250256
                    329: C                                                                       03260256
                    330: C        TEST 008 CHECKS THAT THE LOOP COUNTER IN THE PREVIOUS TEST HAD 03270256
                    331: C     A VALUE OF THREE TO SHOW THAT THE DO-LOOP WAS EXECUTED THREE TIMES03280256
                    332: C     BEFORE TERMINATING ( BECOMMING INACTIVE ).                        03290256
                    333: C                                                                       03300256
                    334: C                                                                       03310256
                    335:       IVTNUM =   8                                                      03320256
                    336:       IF (ICZERO) 30080, 0080, 30080                                    03330256
                    337:  0080 CONTINUE                                                          03340256
                    338:       IVCOMP = 0                                                        03350256
                    339:       IVCOMP = IVON02                                                   03360256
                    340:       IVCORR = 3                                                        03370256
                    341: 40080 IF ( IVCOMP - 3 )  20080, 10080, 20080                            03380256
                    342: 30080 IVDELE = IVDELE + 1                                               03390256
                    343:       WRITE (I02,80000) IVTNUM                                          03400256
                    344:       IF (ICZERO) 10080, 0091, 20080                                    03410256
                    345: 10080 IVPASS = IVPASS + 1                                               03420256
                    346:       WRITE (I02,80002) IVTNUM                                          03430256
                    347:       GO TO 0091                                                        03440256
                    348: 20080 IVFAIL = IVFAIL + 1                                               03450256
                    349:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03460256
                    350:  0091 CONTINUE                                                          03470256
                    351: C                                                                       03480256
                    352: C     ****  FCVS PROGRAM 256  -  TEST 009  ****                         03490256
                    353: C                                                                       03500256
                    354: C        TEST 009 CHECKS THAT A DO-LOOP BECOMES INACTIVE IF THERE IS A  03510256
                    355: C     TRANSFER OF CONTROL OUTSIDE THE RANGE OF THE DO-LOOP.  THE TRANS- 03520256
                    356: C     FER MUST BE INSIDE OF THE SAME PROGRAM UNIT - NOT A CALL OR       03530256
                    357: C     FUNCTION REFERENCE TO A SUBPROGRAM.                               03540256
                    358: C                                                                       03550256
                    359: C        THIS IS A SIGNIFICANT DIFFERENCE BETWEEN FORTRAN 66 AND FORTRAN03560256
                    360: C     77.  FORTRAN 66 HAD AN EXTENDED RANGE OF THE DO FEATURE WHICH     03570256
                    361: C     ALLOWED FOR A TRANSFER OUTSIDE THE RANGE OF A DO-LOOP WITHOUT     03580256
                    362: C     MAKING THE DO-LOOP INACTIVE.                                      03590256
                    363: C                                                                       03600256
                    364: C                                                                       03610256
                    365:       IVTNUM =   9                                                      03620256
                    366:       IF (ICZERO) 30090, 0090, 30090                                    03630256
                    367:  0090 CONTINUE                                                          03640256
                    368:       IVCOMP = 0                                                        03650256
                    369:       DO 0092 IVON01 = 1, 7                                             03660256
                    370:       IF ( IVON01 .GE. 3 )  GO TO 0093                                  03670256
                    371:  0092 CONTINUE                                                          03680256
                    372:  0093 IVCOMP = IVON01                                                   03690256
                    373:       IVCORR = 3                                                        03700256
                    374: 40090 IF ( IVCOMP - 3 )  20090, 10090, 20090                            03710256
                    375: 30090 IVDELE = IVDELE + 1                                               03720256
                    376:       WRITE (I02,80000) IVTNUM                                          03730256
                    377:       IF (ICZERO) 10090, 0101, 20090                                    03740256
                    378: 10090 IVPASS = IVPASS + 1                                               03750256
                    379:       WRITE (I02,80002) IVTNUM                                          03760256
                    380:       GO TO 0101                                                        03770256
                    381: 20090 IVFAIL = IVFAIL + 1                                               03780256
                    382:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03790256
                    383:  0101 CONTINUE                                                          03800256
                    384: C                                                                       03810256
                    385: C     ****  FCVS PROGRAM 256  -  TEST 010  ****                         03820256
                    386: C                                                                       03830256
                    387: C        TEST 010 CHECKS FOR AN INITIAL COUNT EQUAL TO ZERO BECAUSE     03840256
                    388: C     M1 IS GREATER THAN M2 AND M3 IS GREATER THAN ZERO - SEE SECTION   03850256
                    389: C     11.10.3 FOR CONDITIONS WHICH MAKE THE ITERATION COUNT ZERO.       03860256
                    390: C     THE LOOP SHOULD NOT BE EXECUTED AT ALL.                           03870256
                    391: C                                                                       03880256
                    392: C                                                                       03890256
                    393:       IVTNUM =  10                                                      03900256
                    394:       IF (ICZERO) 30100, 0100, 30100                                    03910256
                    395:  0100 CONTINUE                                                          03920256
                    396:       IVCOMP = 0                                                        03930256
                    397:       DO 0102, IVON01 = 100, 10, 3                                      03940256
                    398:       IVCOMP = IVCOMP + 1                                               03950256
                    399:  0102 CONTINUE                                                          03960256
                    400:       IVCORR = 0                                                        03970256
                    401: 40100 IF ( IVCOMP )  20100, 10100, 20100                                03980256
                    402: 30100 IVDELE = IVDELE + 1                                               03990256
                    403:       WRITE (I02,80000) IVTNUM                                          04000256
                    404:       IF (ICZERO) 10100, 0111, 20100                                    04010256
                    405: 10100 IVPASS = IVPASS + 1                                               04020256
                    406:       WRITE (I02,80002) IVTNUM                                          04030256
                    407:       GO TO 0111                                                        04040256
                    408: 20100 IVFAIL = IVFAIL + 1                                               04050256
                    409:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04060256
                    410:  0111 CONTINUE                                                          04070256
                    411: C                                                                       04080256
                    412: C     ****  FCVS PROGRAM 256  -  TEST 011  ****                         04090256
                    413: C                                                                       04100256
                    414: C        TEST 011 CHECKS FOR THE PROPER EXECUTION OF THE STEPS AS SHOWN 04110256
                    415: C     IN SECTION 11.10.3 - EXECUTING A DO STATEMENT.  THE VARIABLE IVON004120256
                    416: C     SHOULD HAVE BEEN SET TO 100.  THE ITERATION COUNT IS ZERO BY THE  04130256
                    417: C     FORMULA IN 11.10.3(3). AS DESCRIBED IN SECTION 11.10.4 - THE      04140256
                    418: C     ITERATION COUNT IS TESTED.  IF IT IS NOT ZERO, EXECUTION OF THE   04150256
                    419: C     FIRST STATEMENT IN THE RANGE OF THE DO-LOOP BEGINS.  IF THE       04160256
                    420: C     ITERATION COUNT IS ZERO, THE DO-LOOP BECOMES INACTIVE.            04170256
                    421: C                                                                       04180256
                    422: C                                                                       04190256
                    423:       IVTNUM =  11                                                      04200256
                    424:       IF (ICZERO) 30110, 0110, 30110                                    04210256
                    425:  0110 CONTINUE                                                          04220256
                    426:       IVCOMP = 0                                                        04230256
                    427:       IVCOMP = IVON01                                                   04240256
                    428:       IVCORR = 100                                                      04250256
                    429: 40110 IF ( IVCOMP - 100 )  20110, 10110, 20110                          04260256
                    430: 30110 IVDELE = IVDELE + 1                                               04270256
                    431:       WRITE (I02,80000) IVTNUM                                          04280256
                    432:       IF (ICZERO) 10110, 0121, 20110                                    04290256
                    433: 10110 IVPASS = IVPASS + 1                                               04300256
                    434:       WRITE (I02,80002) IVTNUM                                          04310256
                    435:       GO TO 0121                                                        04320256
                    436: 20110 IVFAIL = IVFAIL + 1                                               04330256
                    437:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04340256
                    438:  0121 CONTINUE                                                          04350256
                    439: C                                                                       04360256
                    440: C                                                                       04370256
                    441: C        THE FOLLOWING TWO TESTS ARE SIMILAR TO THE PREVIOUS TWO TESTS  04380256
                    442: C     IN THAT THE PARAMETERS OF THE DO STATEMENT MAKE THE ITERATION     04390256
                    443: C     COUNT ZERO WHEN THE DO STATEMENT IS EXECUTED.                     04400256
                    444: C                                                                       04410256
                    445: C                                                                       04420256
                    446: C                                                                       04430256
                    447: C     ****  FCVS PROGRAM 256  -  TEST 012  ****                         04440256
                    448: C                                                                       04450256
                    449: C        TEST 012 HAS M1 LESS THAN M2, BUT M3 IS NEGATIVE.  THE LOOP    04460256
                    450: C     SHOULD NOT BE EXECUTED AT ALL.                                    04470256
                    451: C                                                                       04480256
                    452: C                                                                       04490256
                    453:       IVTNUM =  12                                                      04500256
                    454:       IF (ICZERO) 30120, 0120, 30120                                    04510256
                    455:  0120 CONTINUE                                                          04520256
                    456:       IVCOMP = 0                                                        04530256
                    457:       DO 0122 IVON01 = 10, 100, -3                                      04540256
                    458:       IVCOMP = IVCOMP + 1                                               04550256
                    459:  0122 CONTINUE                                                          04560256
                    460:       IVCORR = 0                                                        04570256
                    461: 40120 IF ( IVCOMP )  20120, 10120, 20120                                04580256
                    462: 30120 IVDELE = IVDELE + 1                                               04590256
                    463:       WRITE (I02,80000) IVTNUM                                          04600256
                    464:       IF (ICZERO) 10120, 0131, 20120                                    04610256
                    465: 10120 IVPASS = IVPASS + 1                                               04620256
                    466:       WRITE (I02,80002) IVTNUM                                          04630256
                    467:       GO TO 0131                                                        04640256
                    468: 20120 IVFAIL = IVFAIL + 1                                               04650256
                    469:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04660256
                    470:  0131 CONTINUE                                                          04670256
                    471: C                                                                       04680256
                    472: C     ****  FCVS PROGRAM 256  -  TEST 013  ****                         04690256
                    473: C                                                                       04700256
                    474: C        TEST 013 CHECKS THAT THE VALUE RETAINED FOR THE DO-VARIABLE    04710256
                    475: C     IN THE PREVIOUS TEST IS EQUAL TO THE INITIAL PARAMETER VALUE - M3.04720256
                    476: C                                                                       04730256
                    477: C                                                                       04740256
                    478:       IVTNUM =  13                                                      04750256
                    479:       IF (ICZERO) 30130, 0130, 30130                                    04760256
                    480:  0130 CONTINUE                                                          04770256
                    481:       IVCOMP = 0                                                        04780256
                    482:       IVCOMP = IVON01                                                   04790256
                    483:       IVCORR = 10                                                       04800256
                    484: 40130 IF ( IVCOMP - 10 )  20130, 10130, 20130                           04810256
                    485: 30130 IVDELE = IVDELE + 1                                               04820256
                    486:       WRITE (I02,80000) IVTNUM                                          04830256
                    487:       IF (ICZERO) 10130, 0141, 20130                                    04840256
                    488: 10130 IVPASS = IVPASS + 1                                               04850256
                    489:       WRITE (I02,80002) IVTNUM                                          04860256
                    490:       GO TO 0141                                                        04870256
                    491: 20130 IVFAIL = IVFAIL + 1                                               04880256
                    492:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04890256
                    493:  0141 CONTINUE                                                          04900256
                    494: C                                                                       04910256
                    495: C     ****  FCVS PROGRAM 256  -  TEST 014  ****                         04920256
                    496: C                                                                       04930256
                    497: C        TEST 014 CHECKS FOR ONE EXECUTION OF THE RANGE OF A DO-LOOP    04940256
                    498: C     ACCORDING TO THE FORMULA SHOWN IN 11.10.3(3) WITH M1 = M2.        04950256
                    499: C                                                                       04960256
                    500: C        THE DO-LOOPS IN THIS TEST ARE A NEST OF THREE EACH WITH ITS    04970256
                    501: C     OWN TERMINAL STATEMENT.                                           04980256
                    502: C                                                                       04990256
                    503: C                                                                       05000256
                    504:       IVTNUM =  14                                                      05010256
                    505:       IF (ICZERO) 30140, 0140, 30140                                    05020256
                    506:  0140 CONTINUE                                                          05030256
                    507:       IVCOMP = 1                                                        05040256
                    508:       DO 0144 IVON01 = 1, 1, 1                                          05050256
                    509:            IVCOMP = IVCOMP * 2                                          05060256
                    510:            DO 0143 IVON02 = 10,10,10                                    05070256
                    511:                 IVCOMP = IVCOMP * 3                                     05080256
                    512:                 DO 0142, IVON03 = 100, 100, -2                          05090256
                    513:                      IVCOMP = IVCOMP * 5                                05100256
                    514:  0142           CONTINUE                                                05110256
                    515:  0143      CONTINUE                                                     05120256
                    516:  0144 CONTINUE                                                          05130256
                    517: C                                                                       05140256
                    518: C        **** IVCOMP IS DETERMINED BY IVCOMP = 30 = 1 * 2 * 3 * 5    ***05150256
                    519: C                                                                       05160256
                    520:       IVCORR = 30                                                       05170256
                    521: 40140 IF ( IVCOMP - 30 )  20140, 10140, 20140                           05180256
                    522: 30140 IVDELE = IVDELE + 1                                               05190256
                    523:       WRITE (I02,80000) IVTNUM                                          05200256
                    524:       IF (ICZERO) 10140, 0151, 20140                                    05210256
                    525: 10140 IVPASS = IVPASS + 1                                               05220256
                    526:       WRITE (I02,80002) IVTNUM                                          05230256
                    527:       GO TO 0151                                                        05240256
                    528: 20140 IVFAIL = IVFAIL + 1                                               05250256
                    529:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05260256
                    530:  0151 CONTINUE                                                          05270256
                    531: C                                                                       05280256
                    532: C     ****  FCVS PROGRAM 256  -  TEST 015  ****                         05290256
                    533: C                                                                       05300256
                    534: C        TEST 015 IS A CHECK ON THE FIRST EXAMPLE SHOWN IN SECTION      05310256
                    535: C     11.10.7.  THIS IS A TEST OF INCREMENTATION PROCESSING OF TWO NEST 05320256
                    536: C     DO-LOOPS HAVING THE SAME TERMINAL STATEMENT.                      05330256
                    537: C                                                                       05340256
                    538: C        THIS IS A TEST OF A DO-LOOP THAT BECOMES ACTIVE INSIDE AN      05350256
                    539: C     ALREADY ACTIVE DO-LOOP.                                           05360256
                    540: C                                                                       05370256
                    541: C                                                                       05380256
                    542:       IVTNUM =  15                                                      05390256
                    543:       IF (ICZERO) 30150, 0150, 30150                                    05400256
                    544:  0150 CONTINUE                                                          05410256
                    545:       IVCOMP = 0                                                        05420256
                    546:       IVON01 = 0                                                        05430256
                    547:       DO 0152 IVON02 = 1, 10                                            05440256
                    548:       IVON03 = IVON02                                                   05450256
                    549:       DO 0152 IVON04 = 1, 5                                             05460256
                    550:       IVON05 = IVON04                                                   05470256
                    551:  0152 IVON01 = IVON01 + 1                                               05480256
                    552:  0153 CONTINUE                                                          05490256
                    553:       IVCOMP = IVON02                                                   05500256
                    554: C     THIS IS THE VALUE FOR I IN THE EXAMPLE.                           05510256
                    555:       IVCORR = 11                                                       05520256
                    556: 40150 IF ( IVCOMP - 11 )  20150, 10150, 20150                           05530256
                    557: 30150 IVDELE = IVDELE + 1                                               05540256
                    558:       WRITE (I02,80000) IVTNUM                                          05550256
                    559:       IF (ICZERO) 10150, 0161, 20150                                    05560256
                    560: 10150 IVPASS = IVPASS + 1                                               05570256
                    561:       WRITE (I02,80002) IVTNUM                                          05580256
                    562:       GO TO 0161                                                        05590256
                    563: 20150 IVFAIL = IVFAIL + 1                                               05600256
                    564:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05610256
                    565:  0161 CONTINUE                                                          05620256
                    566: C                                                                       05630256
                    567: C     ****  FCVS PROGRAM 256  -  TEST 016  ****                         05640256
                    568: C                                                                       05650256
                    569: C        TEST 016 CHECKS THE VALUE OF J (IVON03) IN THE FIRST EXAMPLE.  05660256
                    570: C                                                                       05670256
                    571: C                                                                       05680256
                    572:       IVTNUM =  16                                                      05690256
                    573:       IF (ICZERO) 30160, 0160, 30160                                    05700256
                    574:  0160 CONTINUE                                                          05710256
                    575:       IVCOMP = 0                                                        05720256
                    576:       IVCOMP = IVON03                                                   05730256
                    577:       IVCORR = 10                                                       05740256
                    578: 40160 IF ( IVCOMP - 10 )  20160, 10160, 20160                           05750256
                    579: 30160 IVDELE = IVDELE + 1                                               05760256
                    580:       WRITE (I02,80000) IVTNUM                                          05770256
                    581:       IF (ICZERO) 10160, 0171, 20160                                    05780256
                    582: 10160 IVPASS = IVPASS + 1                                               05790256
                    583:       WRITE (I02,80002) IVTNUM                                          05800256
                    584:       GO TO 0171                                                        05810256
                    585: 20160 IVFAIL = IVFAIL + 1                                               05820256
                    586:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05830256
                    587:  0171 CONTINUE                                                          05840256
                    588: C                                                                       05850256
                    589: C     ****  FCVS PROGRAM 256  -  TEST 017  ****                         05860256
                    590: C                                                                       05870256
                    591: C        TEST 017 CHECKS THE VALUE OF K (IVON04) IN THE FIRST EXAMPLE.  05880256
                    592: C                                                                       05890256
                    593: C                                                                       05900256
                    594:       IVTNUM =  17                                                      05910256
                    595:       IF (ICZERO) 30170, 0170, 30170                                    05920256
                    596:  0170 CONTINUE                                                          05930256
                    597:       IVCOMP = 0                                                        05940256
                    598:       IVCOMP = IVON04                                                   05950256
                    599:       IVCORR = 6                                                        05960256
                    600: 40170 IF ( IVCOMP - 6  )  20170, 10170, 20170                           05970256
                    601: 30170 IVDELE = IVDELE + 1                                               05980256
                    602:       WRITE (I02,80000) IVTNUM                                          05990256
                    603:       IF (ICZERO) 10170, 0181, 20170                                    06000256
                    604: 10170 IVPASS = IVPASS + 1                                               06010256
                    605:       WRITE (I02,80002) IVTNUM                                          06020256
                    606:       GO TO 0181                                                        06030256
                    607: 20170 IVFAIL = IVFAIL + 1                                               06040256
                    608:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          06050256
                    609:  0181 CONTINUE                                                          06060256
                    610: C                                                                       06070256
                    611: C     ****  FCVS PROGRAM 256  -  TEST 018  ****                         06080256
                    612: C                                                                       06090256
                    613: C        TEST 018 CHECKS THE VALUE OF L (IVON05) IN THE FIRST EXAMPLE.  06100256
                    614: C                                                                       06110256
                    615: C                                                                       06120256
                    616:       IVTNUM =  18                                                      06130256
                    617:       IF (ICZERO) 30180, 0180, 30180                                    06140256
                    618:  0180 CONTINUE                                                          06150256
                    619:       IVCOMP = 0                                                        06160256
                    620:       IVCOMP = IVON05                                                   06170256
                    621:       IVCORR = 5                                                        06180256
                    622: 40180 IF ( IVCOMP - 5  )  20180, 10180, 20180                           06190256
                    623: 30180 IVDELE = IVDELE + 1                                               06200256
                    624:       WRITE (I02,80000) IVTNUM                                          06210256
                    625:       IF (ICZERO) 10180, 0191, 20180                                    06220256
                    626: 10180 IVPASS = IVPASS + 1                                               06230256
                    627:       WRITE (I02,80002) IVTNUM                                          06240256
                    628:       GO TO 0191                                                        06250256
                    629: 20180 IVFAIL = IVFAIL + 1                                               06260256
                    630:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          06270256
                    631:  0191 CONTINUE                                                          06280256
                    632: C                                                                       06290256
                    633: C     ****  FCVS PROGRAM 256  -  TEST 019  ****                         06300256
                    634: C                                                                       06310256
                    635: C        TEST 019 CHECKS THE VALUE OF N (IVON01) IN THE FIRST EXAMPLE.  06320256
                    636: C                                                                       06330256
                    637: C                                                                       06340256
                    638:       IVTNUM =  19                                                      06350256
                    639:       IF (ICZERO) 30190, 0190, 30190                                    06360256
                    640:  0190 CONTINUE                                                          06370256
                    641:       IVCOMP = 0                                                        06380256
                    642:       IVCOMP = IVON01                                                   06390256
                    643:       IVCORR = 50                                                       06400256
                    644: 40190 IF ( IVCOMP - 50 )  20190, 10190, 20190                           06410256
                    645: 30190 IVDELE = IVDELE + 1                                               06420256
                    646:       WRITE (I02,80000) IVTNUM                                          06430256
                    647:       IF (ICZERO) 10190, 0201, 20190                                    06440256
                    648: 10190 IVPASS = IVPASS + 1                                               06450256
                    649:       WRITE (I02,80002) IVTNUM                                          06460256
                    650:       GO TO 0201                                                        06470256
                    651: 20190 IVFAIL = IVFAIL + 1                                               06480256
                    652:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          06490256
                    653:  0201 CONTINUE                                                          06500256
                    654: C                                                                       06510256
                    655: C     ****  FCVS PROGRAM 256  -  TEST 020  ****                         06520256
                    656: C                                                                       06530256
                    657: C        TEST 020 IS A CHECK ON THE SECOND EXAMPLE IN SECTION 11.10.7.  06540256
                    658: C     IN THIS EXAMPLE, THE INNER DO-LOOP BECOMES ACTIVE AND THEN        06550256
                    659: C     IMMEDIATELY INACTIVE INSIDE AN ALREADY ACTIVE OUTER DO-LOOP.      06560256
                    660: C                                                                       06570256
                    661: C        ALTHOUGH IN SOME WAYS SIMILAR TO THE FIRST EXAMPLE, THE SECOND 06580256
                    662: C     EXAMPLE SHOULD HAVE DIFFERENT FINAL VALUES ON THE INTEGER COUNTERS06590256
                    663: C     AND THE VALUE OF L (IVON10) WILL NOT BE TESTED BECAUSE IT IS NOT  06600256
                    664: C     DEFINED DURING THE RANGE OF THE DO-LOOP INVOLVED.                 06610256
                    665: C                                                                       06620256
                    666: C                                                                       06630256
                    667:       IVTNUM =  20                                                      06640256
                    668:       IF (ICZERO) 30200, 0200, 30200                                    06650256
                    669:  0200 CONTINUE                                                          06660256
                    670:       IVCOMP = 0                                                        06670256
                    671:       IVON06 = 0                                                        06680256
                    672:       DO 0202 IVON07 = 1, 10                                            06690256
                    673:       IVON08 = IVON07                                                   06700256
                    674:       DO 0202 IVON09 = 5, 1                                             06710256
                    675:       IVON10 = IVON09                                                   06720256
                    676:  0202 IVON06 = IVON06 + 1                                               06730256
                    677:  0203 CONTINUE                                                          06740256
                    678:       IVCOMP = IVON07                                                   06750256
                    679: C     THIS IS THE VALUE FOR I IN THE SECOND EXAMPLE.                    06760256
                    680:       IVCORR = 11                                                       06770256
                    681: 40200 IF ( IVCOMP - 11 )  20200, 10200, 20200                           06780256
                    682: 30200 IVDELE = IVDELE + 1                                               06790256
                    683:       WRITE (I02,80000) IVTNUM                                          06800256
                    684:       IF (ICZERO) 10200, 0211, 20200                                    06810256
                    685: 10200 IVPASS = IVPASS + 1                                               06820256
                    686:       WRITE (I02,80002) IVTNUM                                          06830256
                    687:       GO TO 0211                                                        06840256
                    688: 20200 IVFAIL = IVFAIL + 1                                               06850256
                    689:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          06860256
                    690:  0211 CONTINUE                                                          06870256
                    691: C                                                                       06880256
                    692: C     ****  FCVS PROGRAM 256  -  TEST 021  ****                         06890256
                    693: C                                                                       06900256
                    694: C        TEST 021 CHECKS THE VALUE OF J (IVON08) IN THE SECOND EXAMPLE. 06910256
                    695: C                                                                       06920256
                    696: C                                                                       06930256
                    697:       IVTNUM =  21                                                      06940256
                    698:       IF (ICZERO) 30210, 0210, 30210                                    06950256
                    699:  0210 CONTINUE                                                          06960256
                    700:       IVCOMP = 0                                                        06970256
                    701:       IVCOMP = IVON08                                                   06980256
                    702:       IVCORR = 10                                                       06990256
                    703: 40210 IF ( IVCOMP - 10 )  20210, 10210, 20210                           07000256
                    704: 30210 IVDELE = IVDELE + 1                                               07010256
                    705:       WRITE (I02,80000) IVTNUM                                          07020256
                    706:       IF (ICZERO) 10210, 0221, 20210                                    07030256
                    707: 10210 IVPASS = IVPASS + 1                                               07040256
                    708:       WRITE (I02,80002) IVTNUM                                          07050256
                    709:       GO TO 0221                                                        07060256
                    710: 20210 IVFAIL = IVFAIL + 1                                               07070256
                    711:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          07080256
                    712:  0221 CONTINUE                                                          07090256
                    713: C                                                                       07100256
                    714: C     ****  FCVS PROGRAM 256  -  TEST 022  ****                         07110256
                    715: C                                                                       07120256
                    716: C        TEST 022 CHECKS THE VALUE OF K (IVON09) IN THE SECOND EXAMPLE. 07130256
                    717: C                                                                       07140256
                    718: C                                                                       07150256
                    719:       IVTNUM =  22                                                      07160256
                    720:       IF (ICZERO) 30220, 0220, 30220                                    07170256
                    721:  0220 CONTINUE                                                          07180256
                    722:       IVCOMP = 0                                                        07190256
                    723:       IVCOMP = IVON09                                                   07200256
                    724:       IVCORR = 5                                                        07210256
                    725: 40220 IF ( IVCOMP - 5  )  20220, 10220, 20220                           07220256
                    726: 30220 IVDELE = IVDELE + 1                                               07230256
                    727:       WRITE (I02,80000) IVTNUM                                          07240256
                    728:       IF (ICZERO) 10220, 0231, 20220                                    07250256
                    729: 10220 IVPASS = IVPASS + 1                                               07260256
                    730:       WRITE (I02,80002) IVTNUM                                          07270256
                    731:       GO TO 0231                                                        07280256
                    732: 20220 IVFAIL = IVFAIL + 1                                               07290256
                    733:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          07300256
                    734:  0231 CONTINUE                                                          07310256
                    735: C                                                                       07320256
                    736: C     ****  FCVS PROGRAM 256  -  TEST 023  ****                         07330256
                    737: C                                                                       07340256
                    738: C        TEST 023 CHECKS THE VALUE OF N (IVON06) IN THE SECOND EXAMPLE. 07350256
                    739: C                                                                       07360256
                    740: C                                                                       07370256
                    741:       IVTNUM =  23                                                      07380256
                    742:       IF (ICZERO) 30230, 0230, 30230                                    07390256
                    743:  0230 CONTINUE                                                          07400256
                    744:       IVCOMP = 0                                                        07410256
                    745:       IVCOMP = IVON06                                                   07420256
                    746:       IVCORR = 0                                                        07430256
                    747: 40230 IF ( IVCOMP - 0  )  20230, 10230, 20230                           07440256
                    748: 30230 IVDELE = IVDELE + 1                                               07450256
                    749:       WRITE (I02,80000) IVTNUM                                          07460256
                    750:       IF (ICZERO) 10230, 0241, 20230                                    07470256
                    751: 10230 IVPASS = IVPASS + 1                                               07480256
                    752:       WRITE (I02,80002) IVTNUM                                          07490256
                    753:       GO TO 0241                                                        07500256
                    754: 20230 IVFAIL = IVFAIL + 1                                               07510256
                    755:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          07520256
                    756:  0241 CONTINUE                                                          07530256
                    757: C                                                                       07540256
                    758: C     ****  FCVS PROGRAM 256  -  TEST 024  ****                         07550256
                    759: C                                                                       07560256
                    760: C        TEST 024 IS A CHECK ON USING A LOGICAL IF STATEMENT AS THE     07570256
                    761: C     TERMINAL STATEMENT IN THE RANGE OF A DO-LOOP.  THE LOGICAL IF     07580256
                    762: C     STATEMENT HAS AN UNCONDITIONAL GO TO STATEMENT AS ITS EXECUTABLE  07590256
                    763: C     STATEMENT  AS ALLOWED IN SECTION 11.10.                           07600256
                    764: C                                                                       07610256
                    765: C                                                                       07620256
                    766:       IVTNUM =  24                                                      07630256
                    767:       IF (ICZERO) 30240, 0240, 30240                                    07640256
                    768:  0240 CONTINUE                                                          07650256
                    769:       IVCOMP = 0                                                        07660256
                    770:       DO 0242 IVON01 = 1, 10                                            07670256
                    771:       IVCOMP = IVCOMP + 1                                               07680256
                    772:  0242 IF ( IVON01 .GE. 5 )  GO TO 0243                                  07690256
                    773: C                                                                       07700256
                    774: C                                                                       07710256
                    775: C     IF THE LOGIC DOES NOT BRANCH OUT OF THE RANGE OF THE DO-LOOP WHEN 07720256
                    776: C     THE DO-VARIABLE (IVON01) IS EQUAL TO FIVE (5), THEN IVCOMP WILL BE07730256
                    777: C     SET BACK TO THE VALUE OF ZERO.                                    07740256
                    778: C                                                                       07750256
                    779:       IVCOMP = 0                                                        07760256
                    780: C                                                                       07770256
                    781: C                                                                       07780256
                    782:  0243 IVCORR = 5                                                        07790256
                    783: 40240 IF ( IVCOMP - 5 )  20240, 10240, 20240                            07800256
                    784: 30240 IVDELE = IVDELE + 1                                               07810256
                    785:       WRITE (I02,80000) IVTNUM                                          07820256
                    786:       IF (ICZERO) 10240, 0251, 20240                                    07830256
                    787: 10240 IVPASS = IVPASS + 1                                               07840256
                    788:       WRITE (I02,80002) IVTNUM                                          07850256
                    789:       GO TO 0251                                                        07860256
                    790: 20240 IVFAIL = IVFAIL + 1                                               07870256
                    791:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          07880256
                    792:  0251 CONTINUE                                                          07890256
                    793: C                                                                       07900256
                    794: C                                                                       07910256
                    795: C     WRITE OUT TEST SUMMARY                                            07920256
                    796: C                                                                       07930256
                    797:       WRITE (I02,90004)                                                 07940256
                    798:       WRITE (I02,90014)                                                 07950256
                    799:       WRITE (I02,90004)                                                 07960256
                    800:       WRITE (I02,90000)                                                 07970256
                    801:       WRITE (I02,90004)                                                 07980256
                    802:       WRITE (I02,90020) IVFAIL                                          07990256
                    803:       WRITE (I02,90022) IVPASS                                          08000256
                    804:       WRITE (I02,90024) IVDELE                                          08010256
                    805:       STOP                                                              08020256
                    806: 90001 FORMAT (1H ,24X,5HFM256)                                          08030256
                    807: 90000 FORMAT (1H ,20X,20HEND OF PROGRAM FM256)                          08040256
                    808: C                                                                       08050256
                    809: C     FORMATS FOR TEST DETAIL LINES                                     08060256
                    810: C                                                                       08070256
                    811: 80000 FORMAT (1H ,4X,I5,6X,7HDELETED)                                   08080256
                    812: 80002 FORMAT (1H ,4X,I5,7X,4HPASS)                                      08090256
                    813: 80010 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6)                         08100256
                    814: 80012 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5)                    08110256
                    815: 80018 FORMAT (1H ,4X,I5,7X,4HFAIL,2X,A14,1X,A14)                        08120256
                    816: C                                                                       08130256
                    817: C     FORMAT STATEMENTS FOR PAGE HEADERS                                08140256
                    818: C                                                                       08150256
                    819: 90002 FORMAT (1H1)                                                      08160256
                    820: 90004 FORMAT (1H )                                                      08170256
                    821: 90006 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM)            08180256
                    822: 90008 FORMAT (1H ,21X,11HVERSION 1.0)                                   08190256
                    823: 90010 FORMAT (1H ,8X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978)         08200256
                    824: 90012 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL,5X,8HCOMPUTED,8X,7HCORRECT)  08210256
                    825: 90014 FORMAT (1H ,5X,46H----------------------------------------------) 08220256
                    826: 90016 FORMAT (1H ,18X,17HSUBSET LEVEL TEST)                             08230256
                    827: C                                                                       08240256
                    828: C     FORMAT STATEMENTS FOR RUN SUMMARY                                 08250256
                    829: C                                                                       08260256
                    830: 90020 FORMAT (1H ,19X,I5,13H TESTS FAILED)                              08270256
                    831: 90022 FORMAT (1H ,19X,I5,13H TESTS PASSED)                              08280256
                    832: 90024 FORMAT (1H ,19X,I5,14H TESTS DELETED)                             08290256
                    833:       END                                                               08300256

unix.superglobalmegacorp.com

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