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

1.1       root        1:       PROGRAM FM413                                                     00010413
                      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                                                                       00020413
                      6: C                                                                       00030413
                      7: C                                                                       00040413
                      8: C        THIS ROUTINE TESTS FOR PROPER PROCESSING OF UNFORMATTED RECORDS00050413
                      9: C     IN FILES CONNECTED FOR DIRECT ACCESS.  FOR THE SUBSET LANGUAGE A  00060413
                     10: C     FILE CONNECTED FOR DIRECT ACCESS MUST HAVE UNFORMATTED RECORDS    00070413
                     11: C     THIS ROUTINE FIRST TESTS SEVERAL SYNTACTICAL VARIATIONS OF THE    00080413
                     12: C     READ AND WRITE STATEMENTS USED IN CREATING AND ACCESSING          00090413
                     13: C     RECORDS OF THE FILE.  THE OPEN STATEMENT IS USED TO CONNECT       00100413
                     14: C     THE FILE TO  A  UNIT  AND ESTABLISH ITS CONNECTION FOR DIRECT     00110413
                     15: C     ACCESS.  THE FIRST SERIES OF TESTS CREATE  AND ACCESS   THE       00120413
                     16: C     RECORDS OF THE FILE IN RECORD NUMBER SEQUENCE AND THE LAST        00130413
                     17: C     SERIES OF TESTS CREATE AND ACCESS   RECORDS OF THE FILE IN RANDOM 00140413
                     18: C     ORDER.                                                            00150413
                     19: C                                                                       00160413
                     20: C        UNFORMATTED RECORDS MAY HAVE BOTH CHARACTER AND NONCHARACTER   00170413
                     21: C     DATA AND THIS DATA IS TRANSFERRED WITHOUT EDITING BETWEEN THE     00180413
                     22: C     CURRENT RECORD AND THE ENTITIES SPECIFIED BY THE INPUT/OUTPUT     00190413
                     23: C     LIST.   THIS ROUTINE BOTH READS AND WRITES RECORDS CONTAINING     00200413
                     24: C     THE DATA TYPES OF INTEGER ,REAL AND LOGICAL WITH I/O LIST ITEMS   00210413
                     25: C     REPRESENTED AS VARIABLE NAMES, ARRAY ELEMENT NAMES AND ARRAY      00220413
                     26: C     NAMES.  THIS ROUTINE DOES NOT TEST DATA OF TYPE CHARACTER.        00230413
                     27: C                                                                       00240413
                     28: C          ROUTINE FM411 TESTS USE OF UNFORMATTED RECORDS               00250413
                     29: C     WITH A FILE CONNECTED FOR SEQUENTIAL ACCESS.                      00260413
                     30: C                                                                       00270413
                     31: C        THIS ROUTINE TESTS                                             00280413
                     32: C                                                                       00290413
                     33: C             (1) THE STATEMENT CONSTRUCTS                              00300413
                     34: C                                                                       00310413
                     35: C                 A. WRITE (U,REC=RN)  VARIABLE-NAME,...                00320413
                     36: C                 B. WRITE (U,REC=RN)  ARRAY-ELEMENT-NAME,...           00330413
                     37: C                 C. WRITE (U,REC=RN)  ARRAY-NAME,...                   00340413
                     38: C                 D. WRITE (U,REC=RN)            -  NO OUTPUT LIST      00350413
                     39: C                 E. WRITE (U,REC=RN)  IMPLIED-DO-LIST                  00360413
                     40: C                 F. READ (U,REC=RN)   VARIABLE-NAME,...                00370413
                     41: C                 G. READ (U,REC=RN)   ARRAY-ELEMENT-NAME,...           00380413
                     42: C                 H. READ (U,REC=RN)   ARRAY-NAME,...                   00390413
                     43: C                 I. READ (U,REC=RN)             -  NO INPUT LIST       00400413
                     44: C                 J. READ (U,REC=RN)   IMPLIED-DO-LIST                  00410413
                     45: C                                                                       00420413
                     46: C             (2) USE OF A READ STATEMENT WHERE THE NUMBER OF VALUES    00430413
                     47: C                 IN THE INPUT LIST IS LESS THAN OR EQUAL TO THE        00440413
                     48: C                 NUMBER OF VALUES IN THE RECORD.                       00450413
                     49: C             (3) USE OF THE STATEMENT                                  00460413
                     50: C                      OPEN (U,ACCESS='DIRECT',RECL=RL)                 00470413
                     51: C                 FOR CONNECTING A FILE TO THE UNIT.                    00480413
                     52: C                                                                       00490413
                     53: C             (4) THAT THE RECORDS OF A DIRECT ACCESS FILE NEED NOT BE  00500413
                     54: C                 BE CREATED AND READ IN ORDER OF THEIR RECORD NUMBERS. 00510413
                     55: C                                                                       00520413
                     56: C             (5) THAT THE VALUES OF THE RECORD MAY BE CHANGED WHEN     00530413
                     57: C                 THE RECORD IS REWRITTEN.                              00540413
                     58: C     REFERENCES -                                                      00550413
                     59: C                                                                       00560413
                     60: C           AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,    00570413
                     61: C           X3.9-1977                                                   00580413
                     62: C                                                                       00590413
                     63: C             SECTION 4.1,        DATA TYPES                            00600413
                     64: C             SECTION 12.1.2,     UNFORMATTED RECORD                    00610413
                     65: C             SECTION 12.2.4,     FILE ACCESS                           00620413
                     66: C             SECTION 12.2.4.2,   DIRECT ACCESS                         00630413
                     67: C             SECTION 12.3.3,     UNIT SPECIFIER AND IDENTIFIER         00640413
                     68: C             SECTION 12.7.2,     END-OF-FILE SPECIFIER                 00650413
                     69: C             SECTION 12.8,       READ, WRITE AND PRINT STATEMENTS      00660413
                     70: C             SECTION 12.8.1,     CONTROL INFORMATION LIST              00670413
                     71: C             SECTION 12.8.2,     INPUT/OUTPUT LIST                     00680413
                     72: C             SECTION 12.8.2.1,   INPUT LIST ITEMS                      00690413
                     73: C             SECTION 12.8.2.2,   OUTPUT LIST ITEMS                     00700413
                     74: C             SECTION 12.8.2.3,   IMPLIED-DO  LIST                      00710413
                     75: C             SECTION 12.9.5.1,   UNFORMATTED DATA TRANSFER             00720413
                     76: C             SECTION 12.10.1,    OPEN STATEMENT                        00730413
                     77: C                                                                       00740413
                     78: C                                                                       00750413
                     79: C                                                                       00760413
                     80: C     ******************************************************************00770413
                     81: C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00780413
                     82: C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN STANDARD FORTRAN   00790413
                     83: C     X3.9-1978, HAS BEEN DEVELOPED BY THE DEPARTMENT OF THE NAVY.  THE 00800413
                     84: C     FORTRAN COMPILER VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT       00810413
                     85: C     ROUTINES, THEIR RELATED DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT00820413
                     86: C     ROUTINE IS A FORTRAN PROGRAM OR SUBPROGRAM WHICH INCLUDES TESTS   00830413
                     87: C     OF SPECIFIC LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING00840413
                     88: C     THE RESULT OF EXECUTING THESE TESTS.                              00850413
                     89: C                                                                       00860413
                     90: C     THIS PARTICULAR PROGRAM OR SUBPROGRAM CONTAINS ONLY FEATURES      00870413
                     91: C     FOUND IN THE SUBSET LEVEL OF THE STANDARD.                        00880413
                     92: C                                                                       00890413
                     93: C           SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO             00900413
                     94: C                    DEPARTMENT OF THE NAVY                             00910413
                     95: C                    FEDERAL COBOL COMPILER TESTING SERVICE             00920413
                     96: C                    WASHINGTON, D.C.   20376                           00930413
                     97: C                                                                       00940413
                     98: C     ******************************************************************00950413
                     99: C                                                                       00960413
                    100: C                                                                       00970413
                    101:       IMPLICIT LOGICAL (L)                                              00980413
                    102:       IMPLICIT CHARACTER*14 (C)                                         00990413
                    103: C                                                                       01000413
                    104:       LOGICAL  LAON11, LAON21, LAON31, LCONT1, LCONF2, LVONT1, LVONF2   01010413
                    105:       LOGICAL  LAON12, LAON22, LAON32, LCONT3, LCONF4, LVONT3, LVONF4   01020413
                    106:       LOGICAL  LCONT5, LCONF6, LCONT7, LCONF8, LVONT5, LVONF6, LVONT7   01030413
                    107:       LOGICAL LVONF8                                                    01040413
                    108:       DIMENSION IDUMP(80)                                               01050413
                    109:       DIMENSION IAON11(8), IAON21(2,4), IAON31(2,2,2)                   01060413
                    110:       DIMENSION IAON12(8), IAON22(2,4), IAON32(2,2,2)                   01070413
                    111:       DIMENSION RAON11(8), RAON21(2,4), RAON31(2,2,2)                   01080413
                    112:       DIMENSION RAON12(8), RAON22(2,4), RAON32(2,2,2)                   01090413
                    113:       DIMENSION LAON11(8), LAON21(2,4), LAON31(2,2,2)                   01100413
                    114:       DIMENSION LAON12(8), LAON22(2,4), LAON32(2,2,2)                   01110413
                    115:       DATA  IAON11 /11, -11, 777, -777, 512, -512, -32767, 32767/       01120413
                    116:       DATA  IAON21 /11, -11, 777, -777, 512, -512, -32767, 32767/       01130413
                    117:       DATA  IAON31 /11, -11, 777, -777, 512, -512, -32767, 32767/       01140413
                    118:       DATA  LAON11 /.TRUE., .FALSE., .TRUE., .FALSE., .TRUE., .FALSE.,  01150413
                    119:      1              .TRUE., .FALSE./                                    01160413
                    120:       DATA  LAON21 /.TRUE., .FALSE., .TRUE., .FALSE., .TRUE., .FALSE.,  01170413
                    121:      1              .TRUE., .FALSE./                                    01180413
                    122:       DATA  LAON31 /.TRUE., .FALSE., .TRUE., .FALSE., .TRUE., .FALSE.,  01190413
                    123:      1              .TRUE., .FALSE./                                    01200413
                    124:       DATA  RAON11 /11., -11., 7.77, -7.77,.512, -.512, -32767., 32767./01210413
                    125:       DATA  RAON21 /11., -11., 7.77, -7.77,.512, -.512, -32767., 32767./01220413
                    126:       DATA  RAON31 /11., -11., 7.77, -7.77,.512, -.512, -32767., 32767./01230413
                    127:       ICON21 = 11                                                       01240413
                    128:       ICON22 = -11                                                      01250413
                    129:       ICON31 = +777                                                     01260413
                    130:       ICON32 = -777                                                     01270413
                    131:       ICON33 =  512                                                     01280413
                    132:       ICON34 = -512                                                     01290413
                    133:       ICON55 = -32767                                                   01300413
                    134:       ICON56 =  32767                                                   01310413
                    135:       RCON21 = 11.                                                      01320413
                    136:       RCON22 = -11.                                                     01330413
                    137:       RCON31 = +7.77                                                    01340413
                    138:       RCON32 = -7.77                                                    01350413
                    139:       RCON33 = .512                                                     01360413
                    140:       RCON34 = -.512                                                    01370413
                    141:       RCON55 = -32767.                                                  01380413
                    142:       RCON56 =  32767.                                                  01390413
                    143:       LCONT1 = .TRUE.                                                   01400413
                    144:       LCONF2 = .FALSE.                                                  01410413
                    145:       LCONT3 = .TRUE.                                                   01420413
                    146:       LCONF4 = .FALSE.                                                  01430413
                    147:       LCONT5 = .TRUE.                                                   01440413
                    148:       LCONF6 = .FALSE.                                                  01450413
                    149:       LCONT7 = .TRUE.                                                   01460413
                    150:       LCONF8 = .FALSE.                                                  01470413
                    151: C                                                                       01480413
                    152: C          THE FILE USED IN THIS ROUTINE HAS THE FOLLOWING PROPERTIES   01490413
                    153: C                                                                       01500413
                    154: C                  FILE IDENTIFIER     - I10 (X-NUMBER 10)              01510413
                    155: C                  RECORD SIZE         - 80                             01520413
                    156: C                  ACCESS METHOD       - DIRECT                         01530413
                    157: C                  RECORD TYPE         - UNFORMATTED                    01540413
                    158: C                  DESIGNATED DEVICE   - DISK                           01550413
                    159: C                  TYPE OF DATA        - INTEGER, REAL AND LOGICAL      01560413
                    160: C                  RECORDS IN FILE     - 214                            01570413
                    161: C                                                                       01580413
                    162: C          THE FIRST 6 FIELDS OF EACH RECORD IN THE FILE UNIQUELY IDENT-01590413
                    163: C     IFIES THAT RECORD.  THE REMAINING FIELDS OF THE RECORD CONTAIN    01600413
                    164: C     DATA WHICH ARE USED IN TESTING.  A DESCRIPTION OF EACH FIELD      01610413
                    165: C     OF THE  PREAMBLE FOLLOWS.                                         01620413
                    166: C                                                                       01630413
                    167: C                  VARIABLE NAME IN PROGRAM          FIELD NUMBER       01640413
                    168: C                  ------------------------          ------------       01650413
                    169: C                                                                       01660413
                    170: C                  IPROG  (ROUTINE NAME)         -       1              01670413
                    171: C                  IFILE  (LOGICAL/X-NUMBER)     -       2              01680413
                    172: C                  ITOTR  (RECORDS IN FILE)      -       3              01690413
                    173: C                  IRLGN  (LENGTH OF RECORD)     -       4              01700413
                    174: C                  IRECN  (RECORD NUMBER)        -       5              01710413
                    175: C                  IEOF   (9999 IF LAST RECORD)  -       6              01720413
                    176: C                                                                       01730413
                    177: C                                                                       01740413
                    178: C                                                                       01750413
                    179: C                                                                       01760413
                    180: C     INITIALIZATION SECTION.                                           01770413
                    181: C                                                                       01780413
                    182: C     INITIALIZE CONSTANTS                                              01790413
                    183: C     ********************                                              01800413
                    184: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER          01810413
                    185:       I01 = 5                                                           01820413
                    186: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER              01830413
                    187:       I02 = 6                                                           01840413
                    188: C     SYSTEM ENVIRONMENT SECTION                                        01850413
                    189: C                                                                       01860413
                    190:       I01 = 5                                                           01870413
                    191: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      01880413
                    192: C     (UNIT NUMBER FOR CARD READER).                                    01890413
                    193: CX011      THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD01900413
                    194: C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            01910413
                    195: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         01920413
                    196: C                                                                       01930413
                    197:       I02 = 6                                                           01940413
                    198: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      01950413
                    199: C     (UNIT NUMBER FOR PRINTER).                                        01960413
                    200: CX021     THIS CARD IS PEPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD.01970413
                    201: C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            01980413
                    202: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         01990413
                    203: C                                                                       02000413
                    204:       IVPASS = 0                                                        02010413
                    205:       IVFAIL = 0                                                        02020413
                    206:       IVDELE = 0                                                        02030413
                    207:       ICZERO = 0                                                        02040413
                    208: C                                                                       02050413
                    209: C     WRITE OUT PAGE HEADERS                                            02060413
                    210: C                                                                       02070413
                    211:       WRITE (I02,90002)                                                 02080413
                    212:       WRITE (I02,90006)                                                 02090413
                    213:       WRITE (I02,90008)                                                 02100413
                    214:       WRITE (I02,90004)                                                 02110413
                    215:       WRITE (I02,90010)                                                 02120413
                    216:       WRITE (I02,90004)                                                 02130413
                    217:       WRITE (I02,90016)                                                 02140413
                    218:       WRITE (I02,90001)                                                 02150413
                    219:       WRITE (I02,90004)                                                 02160413
                    220:       WRITE (I02,90012)                                                 02170413
                    221:       WRITE (I02,90014)                                                 02180413
                    222:       WRITE (I02,90004)                                                 02190413
                    223: C                                                                       02200413
                    224:       I10 = 9                                                           02210413
                    225: C     I10  CONTAINS THE LOGICAL UNIT NUMBER FOR A DIRECT ACCESS FILE    02220413
                    226: C     WITH UNFORMATTED RECORDS                                          02230413
                    227:       OPEN(UNIT=I10,ACCESS='DIRECT',FORM='UNFORMATTED',RECL=80)         02240413
                    228: CX101        THE CARD IS REPLACED BY CONTENTS OF X-101 CARD             02250413
                    229:       IPROG = 413                                                       02260413
                    230:       IFILE = I10                                                       02270413
                    231:       ITOTR = 214                                                       02280413
                    232:       IRLGN = 80                                                        02290413
                    233:       IRECN = 0                                                         02300413
                    234:       IEOF = 0                                                          02310413
                    235: C                                                                       02320413
                    236: C                                                                       02330413
                    237: C                                                                       02340413
                    238: C        TESTS 001 THROUGH 013 OPEN A FILE CONNECTED FOR DIRECT ACCESS  02350413
                    239: C     AND WRITE 12 RECORDS INTO THE FILE.  THESE TESTS TEST USE OF THE  02360413
                    240: C     ALLOWABLE FORMS OF THE OPEN AND WRITE STATEMENTS ON A FILE        02370413
                    241: C     CONNECTED FOR DIRECT ACCESS.  THE WRITE STATEMENT IS USED WITH    02380413
                    242: C     THE I/O LIST ITEM AS A VARIABLE, ARRAY ELEMENT AND AN ARRAY.      02390413
                    243: C        THE PURPOSE OF TESTS 001 THROUGH 013 IS TO CHECK THE COMPILER'S02400413
                    244: C     ABILITY TO HANDLE THE VARIOUS STATEMENT  CONSTRUCTS OF THE OPEN   02410413
                    245: C     AND WRITE STATEMENTS.  LATER TESTS WITHIN THIS ROUTINE READ       02420413
                    246: C     AND CHECK THE RECORDS WHICH WERE CREATED.                         02430413
                    247: C        THE VALUE IN IVCORR FOR TESTS 002 THROUGH 013 IS THE RECORD    02440413
                    248: C     NUMBER USED TO WRITE THE RECORD.                                  02450413
                    249: C                                                                       02460413
                    250: C                                                                       02470413
                    251: C                                                                       02480413
                    252: C     ****  FCVS PROGRAM 413  -  TEST 001  ****                         02490413
                    253: C                                                                       02500413
                    254: C                                                                       02510413
                    255: C        TEST 001 USES THE OPEN STATEMENT TO CONNECT A FILE FOR DIRECT  02520413
                    256: C       ACCESS.  THIS IS THE FIRST ROUTINE TO USE AN OPEN STATEMENT.    02530413
                    257: C                                                                       02540413
                    258: C                                                                       02550413
                    259:       IVTNUM =   1                                                      02560413
                    260:       IF (ICZERO) 30010, 0010, 30010                                    02570413
                    261:  0010 CONTINUE                                                          02580413
                    262:       IVCORR = 1                                                        02590413
                    263:       IVCOMP = 0                                                        02600413
                    264:       OPEN ( I10, ACCESS = 'DIRECT', RECL = 80 )                        02610413
                    265:       IVCOMP = 1                                                        02620413
                    266: 40010 IF (IVCOMP - 1) 20010, 10010, 20010                               02630413
                    267: 30010 IVDELE = IVDELE + 1                                               02640413
                    268:       WRITE (I02,80000) IVTNUM                                          02650413
                    269:       IF (ICZERO) 10010, 0021, 20010                                    02660413
                    270: 10010 IVPASS = IVPASS + 1                                               02670413
                    271:       WRITE (I02,80002) IVTNUM                                          02680413
                    272:       GO TO 0021                                                        02690413
                    273: 20010 IVFAIL = IVFAIL + 1                                               02700413
                    274:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02710413
                    275:  0021 CONTINUE                                                          02720413
                    276: C                                                                       02730413
                    277: C     ****  FCVS PROGRAM 413  -  TEST 002  ****                         02740413
                    278: C                                                                       02750413
                    279: C                                                                       02760413
                    280: C        TEST 002 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     02770413
                    281: C     IS A VARIABLE OF INTEGER TYPE.                                    02780413
                    282: C                                                                       02790413
                    283: C                                                                       02800413
                    284:       IVTNUM =   2                                                      02810413
                    285:       IF (ICZERO) 30020, 0020, 30020                                    02820413
                    286:  0020 CONTINUE                                                          02830413
                    287:       IRECN = 01                                                        02840413
                    288:       IVCORR = 01                                                       02850413
                    289:       WRITE (I10,REC=01)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    02860413
                    290:      1   ICON21, ICON22, ICON31, ICON32, ICON33, ICON34, ICON55, ICON56 02870413
                    291:       IVCOMP = IRECN                                                    02880413
                    292: 40020 IF (IVCOMP - 01)  20020, 10020, 20020                             02890413
                    293: 30020 IVDELE = IVDELE + 1                                               02900413
                    294:       WRITE (I02,80000) IVTNUM                                          02910413
                    295:       IF (ICZERO) 10020, 0031, 20020                                    02920413
                    296: 10020 IVPASS = IVPASS + 1                                               02930413
                    297:       WRITE (I02,80002) IVTNUM                                          02940413
                    298:       GO TO 0031                                                        02950413
                    299: 20020 IVFAIL = IVFAIL + 1                                               02960413
                    300:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02970413
                    301:  0031 CONTINUE                                                          02980413
                    302: C                                                                       02990413
                    303: C     ****  FCVS PROGRAM 413  -  TEST 003  ****                         03000413
                    304: C                                                                       03010413
                    305: C                                                                       03020413
                    306: C        TEST 003 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     03030413
                    307: C     IS A VARIABLE OF REAL TYPE.                                       03040413
                    308: C                                                                       03050413
                    309: C                                                                       03060413
                    310:       IVTNUM =   3                                                      03070413
                    311:       IF (ICZERO) 30030, 0030, 30030                                    03080413
                    312:  0030 CONTINUE                                                          03090413
                    313:       IRECN = 02                                                        03100413
                    314:       IVCORR = 02                                                       03110413
                    315:       WRITE (I10,REC=02)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    03120413
                    316:      1   RCON21, RCON22, RCON31, RCON32, RCON33, RCON34, RCON55, RCON56 03130413
                    317:       IVCOMP = IRECN                                                    03140413
                    318: 40030 IF (IVCOMP - 02)  20030, 10030, 20030                             03150413
                    319: 30030 IVDELE = IVDELE + 1                                               03160413
                    320:       WRITE (I02,80000) IVTNUM                                          03170413
                    321:       IF (ICZERO) 10030, 0041, 20030                                    03180413
                    322: 10030 IVPASS = IVPASS + 1                                               03190413
                    323:       WRITE (I02,80002) IVTNUM                                          03200413
                    324:       GO TO 0041                                                        03210413
                    325: 20030 IVFAIL = IVFAIL + 1                                               03220413
                    326:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03230413
                    327:  0041 CONTINUE                                                          03240413
                    328: C                                                                       03250413
                    329: C     ****  FCVS PROGRAM 413  -  TEST 004  ****                         03260413
                    330: C                                                                       03270413
                    331: C                                                                       03280413
                    332: C        TEST 004 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     03290413
                    333: C     IS A VARIABLE OF LOGICAL TYPE.                                    03300413
                    334: C                                                                       03310413
                    335: C                                                                       03320413
                    336:       IVTNUM =   4                                                      03330413
                    337:       IF (ICZERO) 30040, 0040, 30040                                    03340413
                    338:  0040 CONTINUE                                                          03350413
                    339:       IRECN = 03                                                        03360413
                    340:       IVCORR = 03                                                       03370413
                    341:       WRITE (I10,REC=03)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    03380413
                    342:      1   LCONT1, LCONF2,  LCONT3, LCONF4, LCONT5, LCONF6, LCONT7, LCONF803390413
                    343:       IVCOMP = IRECN                                                    03400413
                    344: 40040 IF (IVCOMP - 03)  20040, 10040, 20040                             03410413
                    345: 30040 IVDELE = IVDELE + 1                                               03420413
                    346:       WRITE (I02,80000) IVTNUM                                          03430413
                    347:       IF (ICZERO) 10040, 0051, 20040                                    03440413
                    348: 10040 IVPASS = IVPASS + 1                                               03450413
                    349:       WRITE (I02,80002) IVTNUM                                          03460413
                    350:       GO TO 0051                                                        03470413
                    351: 20040 IVFAIL = IVFAIL + 1                                               03480413
                    352:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03490413
                    353:  0051 CONTINUE                                                          03500413
                    354: C                                                                       03510413
                    355: C     ****  FCVS PROGRAM 413  -  TEST 005  ****                         03520413
                    356: C                                                                       03530413
                    357: C                                                                       03540413
                    358: C        TEST 005 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     03550413
                    359: C     IS AN ARRAY ELEMENT OF INTEGER TYPE.   ONE, TWO AND THREE         03560413
                    360: C     DIMENSION ARRAYS ARE USED.                                        03570413
                    361: C                                                                       03580413
                    362: C                                                                       03590413
                    363:       IVTNUM =   5                                                      03600413
                    364:       IF (ICZERO) 30050, 0050, 30050                                    03610413
                    365:  0050 CONTINUE                                                          03620413
                    366:       IRECN = 04                                                        03630413
                    367:       IVCORR = 04                                                       03640413
                    368:       WRITE (I10,REC=04)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    03650413
                    369:      1   IAON11(1), IAON11(2), IAON21(1,2), IAON21(2,2), IAON31(1,1,2), 03660413
                    370:      2   IAON31(2,1,2), IAON11(7), IAON11(8)                            03670413
                    371:       IVCOMP = IRECN                                                    03680413
                    372: 40050 IF (IVCOMP - 04)  20050, 10050, 20050                             03690413
                    373: 30050 IVDELE = IVDELE + 1                                               03700413
                    374:       WRITE (I02,80000) IVTNUM                                          03710413
                    375:       IF (ICZERO) 10050, 0061, 20050                                    03720413
                    376: 10050 IVPASS = IVPASS + 1                                               03730413
                    377:       WRITE (I02,80002) IVTNUM                                          03740413
                    378:       GO TO 0061                                                        03750413
                    379: 20050 IVFAIL = IVFAIL + 1                                               03760413
                    380:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03770413
                    381:  0061 CONTINUE                                                          03780413
                    382: C                                                                       03790413
                    383: C     ****  FCVS PROGRAM 413  -  TEST 006  ****                         03800413
                    384: C                                                                       03810413
                    385: C                                                                       03820413
                    386: C        TEST 006 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     03830413
                    387: C     IS AN ARRAY ELEMENT OF REAL TYPE.  ONE, TWO AND THREE             03840413
                    388: C     DIMENSION ARRAYS ARE USED.                                        03850413
                    389: C                                                                       03860413
                    390: C                                                                       03870413
                    391:       IVTNUM =   6                                                      03880413
                    392:       IF (ICZERO) 30060, 0060, 30060                                    03890413
                    393:  0060 CONTINUE                                                          03900413
                    394:       IRECN = 05                                                        03910413
                    395:       IVCORR = 05                                                       03920413
                    396:       WRITE (I10,REC=05)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    03930413
                    397:      1   RAON11(1), RAON11(2), RAON21(1,2), RAON21(2,2), RAON31(1,1,2), 03940413
                    398:      2   RAON31(2,1,2), RAON11(7), RAON11(8)                            03950413
                    399:       IVCOMP = IRECN                                                    03960413
                    400: 40060 IF (IVCOMP - 05)  20060, 10060, 20060                             03970413
                    401: 30060 IVDELE = IVDELE + 1                                               03980413
                    402:       WRITE (I02,80000) IVTNUM                                          03990413
                    403:       IF (ICZERO) 10060, 0071, 20060                                    04000413
                    404: 10060 IVPASS = IVPASS + 1                                               04010413
                    405:       WRITE (I02,80002) IVTNUM                                          04020413
                    406:       GO TO 0071                                                        04030413
                    407: 20060 IVFAIL = IVFAIL + 1                                               04040413
                    408:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04050413
                    409:  0071 CONTINUE                                                          04060413
                    410: C                                                                       04070413
                    411: C     ****  FCVS PROGRAM 413  -  TEST 007  ****                         04080413
                    412: C                                                                       04090413
                    413: C                                                                       04100413
                    414: C        TEST 007 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     04110413
                    415: C     IS AN ARRAY ELEMENT OF LOGICAL TYPE.  ONE, TWO AND THREE          04120413
                    416: C     DIMENSION ARRAYS ARE USED.                                        04130413
                    417: C                                                                       04140413
                    418: C                                                                       04150413
                    419:       IVTNUM =   7                                                      04160413
                    420:       IF (ICZERO) 30070, 0070, 30070                                    04170413
                    421:  0070 CONTINUE                                                          04180413
                    422:       IRECN = 06                                                        04190413
                    423:       IVCORR = 06                                                       04200413
                    424:       WRITE (I10,REC=06)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    04210413
                    425:      1   LAON11(1), LAON11(2), LAON21(1,2), LAON21(2,2), LAON31(1,1,2), 04220413
                    426:      2   LAON31(2,1,2), LAON11(7), LAON11(8)                            04230413
                    427:       IVCOMP = IRECN                                                    04240413
                    428: 40070 IF (IVCOMP - 06)  20070, 10070, 20070                             04250413
                    429: 30070 IVDELE = IVDELE + 1                                               04260413
                    430:       WRITE (I02,80000) IVTNUM                                          04270413
                    431:       IF (ICZERO) 10070, 0081, 20070                                    04280413
                    432: 10070 IVPASS = IVPASS + 1                                               04290413
                    433:       WRITE (I02,80002) IVTNUM                                          04300413
                    434:       GO TO 0081                                                        04310413
                    435: 20070 IVFAIL = IVFAIL + 1                                               04320413
                    436:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04330413
                    437:  0081 CONTINUE                                                          04340413
                    438: C                                                                       04350413
                    439: C     ****  FCVS PROGRAM 413  -  TEST 008  ****                         04360413
                    440: C                                                                       04370413
                    441: C                                                                       04380413
                    442: C        TEST 008 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     04390413
                    443: C     IS AN ARRAY OF INTEGER TYPE.                                      04400413
                    444: C                                                                       04410413
                    445: C                                                                       04420413
                    446:       IVTNUM =   8                                                      04430413
                    447:       IF (ICZERO) 30080, 0080, 30080                                    04440413
                    448:  0080 CONTINUE                                                          04450413
                    449:       IRECN = 07                                                        04460413
                    450:       IVCORR = 07                                                       04470413
                    451:       WRITE (I10,REC=07)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    04480413
                    452:      1   IAON31                                                         04490413
                    453:       IVCOMP = IRECN                                                    04500413
                    454: 40080 IF (IVCOMP - 07)  20080, 10080, 20080                             04510413
                    455: 30080 IVDELE = IVDELE + 1                                               04520413
                    456:       WRITE (I02,80000) IVTNUM                                          04530413
                    457:       IF (ICZERO) 10080, 0091, 20080                                    04540413
                    458: 10080 IVPASS = IVPASS + 1                                               04550413
                    459:       WRITE (I02,80002) IVTNUM                                          04560413
                    460:       GO TO 0091                                                        04570413
                    461: 20080 IVFAIL = IVFAIL + 1                                               04580413
                    462:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04590413
                    463:  0091 CONTINUE                                                          04600413
                    464: C                                                                       04610413
                    465: C     ****  FCVS PROGRAM 413  -  TEST 009  ****                         04620413
                    466: C                                                                       04630413
                    467: C                                                                       04640413
                    468: C        TEST 009 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     04650413
                    469: C     IS AN ARRAY OF REAL TYPE.                                         04660413
                    470: C                                                                       04670413
                    471: C                                                                       04680413
                    472:       IVTNUM =   9                                                      04690413
                    473:       IF (ICZERO) 30090, 0090, 30090                                    04700413
                    474:  0090 CONTINUE                                                          04710413
                    475:       IRECN = 08                                                        04720413
                    476:       IVCORR = 08                                                       04730413
                    477:       WRITE (I10,REC=08)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    04740413
                    478:      1   RAON31                                                         04750413
                    479:       IVCOMP = IRECN                                                    04760413
                    480: 40090 IF (IVCOMP - 08)  20090, 10090, 20090                             04770413
                    481: 30090 IVDELE = IVDELE + 1                                               04780413
                    482:       WRITE (I02,80000) IVTNUM                                          04790413
                    483:       IF (ICZERO) 10090, 0101, 20090                                    04800413
                    484: 10090 IVPASS = IVPASS + 1                                               04810413
                    485:       WRITE (I02,80002) IVTNUM                                          04820413
                    486:       GO TO 0101                                                        04830413
                    487: 20090 IVFAIL = IVFAIL + 1                                               04840413
                    488:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04850413
                    489:  0101 CONTINUE                                                          04860413
                    490: C                                                                       04870413
                    491: C     ****  FCVS PROGRAM 413  -  TEST 010  ****                         04880413
                    492: C                                                                       04890413
                    493: C                                                                       04900413
                    494: C        TEST 010 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     04910413
                    495: C     IS AN ARRAY OF LOGICAL TYPE.                                      04920413
                    496: C                                                                       04930413
                    497: C                                                                       04940413
                    498:       IVTNUM =  10                                                      04950413
                    499:       IF (ICZERO) 30100, 0100, 30100                                    04960413
                    500:  0100 CONTINUE                                                          04970413
                    501:       IRECN = 09                                                        04980413
                    502:       IVCORR = 09                                                       04990413
                    503:       WRITE (I10,REC=09)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    05000413
                    504:      1   LAON31                                                         05010413
                    505:       IVCOMP = IRECN                                                    05020413
                    506: 40100 IF (IVCOMP - 09)  20100, 10100, 20100                             05030413
                    507: 30100 IVDELE = IVDELE + 1                                               05040413
                    508:       WRITE (I02,80000) IVTNUM                                          05050413
                    509:       IF (ICZERO) 10100, 0111, 20100                                    05060413
                    510: 10100 IVPASS = IVPASS + 1                                               05070413
                    511:       WRITE (I02,80002) IVTNUM                                          05080413
                    512:       GO TO 0111                                                        05090413
                    513: 20100 IVFAIL = IVFAIL + 1                                               05100413
                    514:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05110413
                    515:  0111 CONTINUE                                                          05120413
                    516: C                                                                       05130413
                    517: C     ****  FCVS PROGRAM 413  -  TEST 011  ****                         05140413
                    518: C                                                                       05150413
                    519: C                                                                       05160413
                    520: C        TEST 011 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     05170413
                    521: C     IS AN IMPLIED-DO   WITH AN ITEM OF INTEGER TYPE.                  05180413
                    522: C        THE FIELD VALUES ARE WRITTEN IN MIXED ORDER VIS-A-VIS THE      05190413
                    523: C     ELEMENT SEQUENCE OF ARRAY IAON31.  THE SEQUENCE OF VALUES WRITTEN 05200413
                    524: C     IN THE RECORD ARE 11, 512, 777, -32767, -11, -512, -777, 32767.   05210413
                    525: C                                                                       05220413
                    526: C                                                                       05230413
                    527:       IVTNUM =  11                                                      05240413
                    528:       IF (ICZERO) 30110, 0110, 30110                                    05250413
                    529:  0110 CONTINUE                                                          05260413
                    530:       IRECN = 10                                                        05270413
                    531:       IVCORR = 10                                                       05280413
                    532:       WRITE (I10,REC=10)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    05290413
                    533:      1   (((IAON31 (J,K,I), I=1,2), K=1,2), J=1,2)                      05300413
                    534:       IVCOMP = IRECN                                                    05310413
                    535: 40110 IF (IVCOMP - 10)  20110, 10110, 20110                             05320413
                    536: 30110 IVDELE = IVDELE + 1                                               05330413
                    537:       WRITE (I02,80000) IVTNUM                                          05340413
                    538:       IF (ICZERO) 10110, 0121, 20110                                    05350413
                    539: 10110 IVPASS = IVPASS + 1                                               05360413
                    540:       WRITE (I02,80002) IVTNUM                                          05370413
                    541:       GO TO 0121                                                        05380413
                    542: 20110 IVFAIL = IVFAIL + 1                                               05390413
                    543:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05400413
                    544:  0121 CONTINUE                                                          05410413
                    545: C                                                                       05420413
                    546: C     ****  FCVS PROGRAM 413  -  TEST 012  ****                         05430413
                    547: C                                                                       05440413
                    548: C                                                                       05450413
                    549: C        TEST 012 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     05460413
                    550: C     IS AN IMPLIED-DO WITH AN ITEM OF REAL TYPE.  THE FIELD VALUES     05470413
                    551: C     (IN FIELD POSITION ORDER) WRITTEN IN THE RECORD ARE 11., -11.,    05480413
                    552: C     7.77, -7.77, .512, -.512, -32767., 32767.                         05490413
                    553: C                                                                       05500413
                    554: C                                                                       05510413
                    555:       IVTNUM =  12                                                      05520413
                    556:       IF (ICZERO) 30120, 0120, 30120                                    05530413
                    557:  0120 CONTINUE                                                          05540413
                    558:       IRECN = 11                                                        05550413
                    559:       IVCORR = 11                                                       05560413
                    560:       WRITE (I10,REC=11)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    05570413
                    561:      1   (((RAON31 (J,K,I), J=1,2), K=1,2), I=1,2)                      05580413
                    562:       IVCOMP = IRECN                                                    05590413
                    563: 40120 IF (IVCOMP - 11)  20120, 10120, 20120                             05600413
                    564: 30120 IVDELE = IVDELE + 1                                               05610413
                    565:       WRITE (I02,80000) IVTNUM                                          05620413
                    566:       IF (ICZERO) 10120, 0131, 20120                                    05630413
                    567: 10120 IVPASS = IVPASS + 1                                               05640413
                    568:       WRITE (I02,80002) IVTNUM                                          05650413
                    569:       GO TO 0131                                                        05660413
                    570: 20120 IVFAIL = IVFAIL + 1                                               05670413
                    571:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05680413
                    572:  0131 CONTINUE                                                          05690413
                    573: C                                                                       05700413
                    574: C     ****  FCVS PROGRAM 413  -  TEST 013  ****                         05710413
                    575: C                                                                       05720413
                    576: C                                                                       05730413
                    577: C        TEST 013 USES A WRITE STATEMENT WHERE THE OUTPUT LIST ITEM     05740413
                    578: C     IS AN IMPLIED-DO   WITH AN ITEM OF LOGICAL TYPE.                  05750413
                    579: C        THE FIELD VALUES ARE WRITTEN IN MIXED ORDER VIS-A-VIS THE      05760413
                    580: C     ELEMENT SEQUENCE OF ARRAY LAON31.  THE SEQUENCE OF VALUES WRITTEN 05770413
                    581: C     IN THE RECORD ARE .TRUE., .TRUE., .FALSE., .FALSE., .TRUE., .TRUE.05780413
                    582: C     .FALSE, .FALSE.                                                   05790413
                    583: C                                                                       05800413
                    584: C                                                                       05810413
                    585:       IVTNUM =  13                                                      05820413
                    586:       IF (ICZERO) 30130, 0130, 30130                                    05830413
                    587:  0130 CONTINUE                                                          05840413
                    588:       IRECN = 12                                                        05850413
                    589:       IVCORR = 12                                                       05860413
                    590:       WRITE (I10,REC=12)    IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,    05870413
                    591:      1   (((LAON31 (J,K,I), K=1,2), J=1,2), I=1,2)                      05880413
                    592:       IVCOMP = IRECN                                                    05890413
                    593: 40130 IF (IVCOMP - 12)  20130, 10130, 20130                             05900413
                    594: 30130 IVDELE = IVDELE + 1                                               05910413
                    595:       WRITE (I02,80000) IVTNUM                                          05920413
                    596:       IF (ICZERO) 10130, 0141, 20130                                    05930413
                    597: 10130 IVPASS = IVPASS + 1                                               05940413
                    598:       WRITE (I02,80002) IVTNUM                                          05950413
                    599:       GO TO 0141                                                        05960413
                    600: 20130 IVFAIL = IVFAIL + 1                                               05970413
                    601:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05980413
                    602:  0141 CONTINUE                                                          05990413
                    603: C                                                                       06000413
                    604: C                                                                       06010413
                    605: C        TESTS  14 AND 15 TEST THE WRITE WITHOUT OUTPUT LIST ITEMS.     06020413
                    606: C                                                                       06030413
                    607: C                                                                       06040413
                    608: C                                                                       06050413
                    609: C                                                                       06060413
                    610: C     ****  FCVS PROGRAM 413  -  TEST 014  ****                         06070413
                    611: C                                                                       06080413
                    612: C                                                                       06090413
                    613: C        TEST 014 USES A WRITE STATEMENT WITHOUT ANY OUTPUT LIST ITEMS. 06100413
                    614: C     THE OUTPUT LIST ITEMS ARE OPTIONAL  AND THIS TEST USES THIS FORM  06110413
                    615: C     TO ESTABLISH A RECORD NUMBER FOR A RECORD IN THE FILE.            06120413
                    616: C     ALSO THE LENGTH OF AN UNFORMATTED RECORD MAY BE ZERO.             06130413
                    617: C                                                                       06140413
                    618: C                  SEE SECTIONS 12.1.2,   UNFORMATTED RECORDS           06150413
                    619: C                               12.2.4.2 (5) AND (6), DIRECT ACCESS     06160413
                    620: C                               12.8,  READ, WRITE AND PRINT STATEMENTS 06170413
                    621: C                                                                       06180413
                    622: C                                                                       06190413
                    623:       IVTNUM =  14                                                      06200413
                    624:       IF (ICZERO) 30140, 0140, 30140                                    06210413
                    625:  0140 CONTINUE                                                          06220413
                    626:       IRECN = 13                                                        06230413
                    627:       IVCORR = 13                                                       06240413
                    628:       WRITE (I10,REC=13)                                                06250413
                    629:       IVCOMP = IRECN                                                    06260413
                    630: 40140 IF (IVCOMP - 13)  20140, 10140, 20140                             06270413
                    631: 30140 IVDELE = IVDELE + 1                                               06280413
                    632:       WRITE (I02,80000) IVTNUM                                          06290413
                    633:       IF (ICZERO) 10140, 0151, 20140                                    06300413
                    634: 10140 IVPASS = IVPASS + 1                                               06310413
                    635:       WRITE (I02,80002) IVTNUM                                          06320413
                    636:       GO TO 0151                                                        06330413
                    637: 20140 IVFAIL = IVFAIL + 1                                               06340413
                    638:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          06350413
                    639:  0151 CONTINUE                                                          06360413
                    640: C                                                                       06370413
                    641: C     ****  FCVS PROGRAM 413  -  TEST 015  ****                         06380413
                    642: C                                                                       06390413
                    643: C                                                                       06400413
                    644: C        TEST 015 IS SIMILAR TO TEST 014 ABOVE EXCEPT THE RN OF THE     06410413
                    645: C     RECORD SPECIFIER (REC = RN) IS AN INTEGER VARIABLE.               06420413
                    646: C                                                                       06430413
                    647: C                                                                       06440413
                    648:       IVTNUM =  15                                                      06450413
                    649:       IF (ICZERO) 30150, 0150, 30150                                    06460413
                    650:  0150 CONTINUE                                                          06470413
                    651:       IRECN = 14                                                        06480413
                    652:       IVCORR = 14                                                       06490413
                    653:       IREC = 14                                                         06500413
                    654:       WRITE (I10,REC = IREC)                                            06510413
                    655:       IVCOMP = IRECN                                                    06520413
                    656: 40150 IF (IVCOMP - 14)  20150, 10150, 20150                             06530413
                    657: 30150 IVDELE = IVDELE + 1                                               06540413
                    658:       WRITE (I02,80000) IVTNUM                                          06550413
                    659:       IF (ICZERO) 10150, 0161, 20150                                    06560413
                    660: 10150 IVPASS = IVPASS + 1                                               06570413
                    661:       WRITE (I02,80002) IVTNUM                                          06580413
                    662:       GO TO 0161                                                        06590413
                    663: 20150 IVFAIL = IVFAIL + 1                                               06600413
                    664:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          06610413
                    665:  0161 CONTINUE                                                          06620413
                    666: C                                                                       06630413
                    667: C                                                                       06640413
                    668: C        TESTS  16  AND  17  VERIFY THAT RECORDS MAY BE CREATED IN      06650413
                    669: C     OTHER THAN SEQUENTIAL ORDER.  ALSO THAT A VARIABLE MAY BY USED    06660413
                    670: C     AS THE OPERAND OF THE REC SPECIFIER FOR A WRITE STATEMENT.        06670413
                    671: C                                                                       06680413
                    672: C                                                                       06690413
                    673: C                                                                       06700413
                    674: C     ****  FCVS PROGRAM 413  -  TEST 016  ****                         06710413
                    675: C                                                                       06720413
                    676: C                                                                       06730413
                    677: C        TEST 016 TESTS USE OF THE REC SPECIFIER WHERE THE OPERAND      06740413
                    678: C     IS A VARIABLE.  THIS TEST IS SIMILAR  TO TEST 15 EXCEPT THE WRITE 06750413
                    679: C     STATEMENT CONTAINS OUTPUT LIST ITEMS.  ONE HUNDRED RECORDS ARE    06760413
                    680: C     WRITTEN BY INCREMENTING THE VARIABLE BY 2 FOR EACH WRITE.   TEST  06770413
                    681: C     032 READS THE RECORDS WRITTEN BY THIS METHOD.                     06780413
                    682: C                                                                       06790413
                    683: C                                                                       06800413
                    684:       IVTNUM =  16                                                      06810413
                    685:       IF (ICZERO) 30160, 0160, 30160                                    06820413
                    686:  0160 CONTINUE                                                          06830413
                    687:       IRECN = 13                                                        06840413
                    688:       IREC = 13                                                         06850413
                    689:       DO 4132 I = 1,100                                                 06860413
                    690:       IREC = IREC + 2                                                   06870413
                    691:       IRECN = IRECN + 2                                                 06880413
                    692:       WRITE (I10, REC = IREC) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,  06890413
                    693:      1   ICON21, ICON22, ICON31, ICON32, ICON33, ICON34, ICON55, ICON56 06900413
                    694:  4132 CONTINUE                                                          06910413
                    695:       IVCORR = 100                                                      06920413
                    696:       IVCOMP = IREC - 113                                               06930413
                    697: 40160 IF (IVCOMP - 100) 20160, 10160, 20160                             06940413
                    698: 30160 IVDELE = IVDELE + 1                                               06950413
                    699:       WRITE (I02,80000) IVTNUM                                          06960413
                    700:       IF (ICZERO) 10160, 0171, 20160                                    06970413
                    701: 10160 IVPASS = IVPASS + 1                                               06980413
                    702:       WRITE (I02,80002) IVTNUM                                          06990413
                    703:       GO TO 0171                                                        07000413
                    704: 20160 IVFAIL = IVFAIL + 1                                               07010413
                    705:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          07020413
                    706:  0171 CONTINUE                                                          07030413
                    707: C                                                                       07040413
                    708: C     ****  FCVS PROGRAM 413  -  TEST 017  ****                         07050413
                    709: C                                                                       07060413
                    710: C                                                                       07070413
                    711: C        TEST  17 IS SIMILAR  TO TEST 16 EXCEPT THE RECORD IS           07080413
                    712: C     WRITTEN IN REVERSE ORDER OF RECORD NUMBER.  ONE HUNDERD RECORDS   07090413
                    713: C     ARE WRITTEN AND THE VARIABLE OF THE REC SPECIFIER IS DECREMENTED  07100413
                    714: C     BY TWO FOR EACH WRITE.                                            07110413
                    715: C                                                                       07120413
                    716: C                                                                       07130413
                    717:       IVTNUM =  17                                                      07140413
                    718:       IF (ICZERO) 30170, 0170, 30170                                    07150413
                    719:  0170 CONTINUE                                                          07160413
                    720:       IRECN = 216                                                       07170413
                    721:       IREC = 216                                                        07180413
                    722:       IVCOMP = 0                                                        07190413
                    723:       DO 4133 I=1,100                                                   07200413
                    724:       IREC = IREC - 2                                                   07210413
                    725:       IRECN = IRECN - 2                                                 07220413
                    726:       WRITE (I10, REC = IREC) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,  07230413
                    727:      1   ICON21, ICON22, ICON31, ICON32, ICON33, ICON34, ICON55, ICON56 07240413
                    728:       IVCOMP = IVCOMP + 1                                               07250413
                    729:  4133 CONTINUE                                                          07260413
                    730:       IVCORR = 100                                                      07270413
                    731: 40170 IF (IVCOMP - 100) 20170, 10170, 20170                             07280413
                    732: 30170 IVDELE = IVDELE + 1                                               07290413
                    733:       WRITE (I02,80000) IVTNUM                                          07300413
                    734:       IF (ICZERO) 10170, 0181, 20170                                    07310413
                    735: 10170 IVPASS = IVPASS + 1                                               07320413
                    736:       WRITE (I02,80002) IVTNUM                                          07330413
                    737:       GO TO 0181                                                        07340413
                    738: 20170 IVFAIL = IVFAIL + 1                                               07350413
                    739:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          07360413
                    740:  0181 CONTINUE                                                          07370413
                    741: C                                                                       07380413
                    742: C                                                                       07390413
                    743: C        TESTS 018 THROUGH 030 READ AND CHECK THE RECORDS CREATED IN    07400413
                    744: C     TESTS 002 THROUGH 014.  EACH OF THE TESTS IN THIS SET IS CHECKING 07410413
                    745: C     TWO THINGS.  FIRST, THAT THE READ STATEMENT CONSTRUCT IS ACCEPTED 07420413
                    746: C     BY THE COMPILER AND SECOND THAT THE RECORDS CREATED IN TESTS 002  07430413
                    747: C     THROUGH 013 AND READ IN THESE TESTS CAN GIVE PREDICTIBLE VALUES.  07440413
                    748: C     THE READ STATEMENT IS USED WITH THE I/O LIST ITEM  AS A VARIABLE, 07450413
                    749: C     AN ARRAY ELEMENT AND AN ARRAY.                                    07460413
                    750: C                                                                       07470413
                    751: C                                                                       07480413
                    752: C                                                                       07490413
                    753: C     ****  FCVS PROGRAM 413  -  TEST 018  ****                         07500413
                    754: C                                                                       07510413
                    755: C                                                                       07520413
                    756: C        TEST 018 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  07530413
                    757: C     VARIABLE OF INTEGER TYPE.                                         07540413
                    758: C                                                                       07550413
                    759: C                                                                       07560413
                    760:       IVTNUM =  18                                                      07570413
                    761:       IF (ICZERO) 30180, 0180, 30180                                    07580413
                    762:  0180 CONTINUE                                                          07590413
                    763:       IVON22 = 0                                                        07600413
                    764:       IVON56 = 0                                                        07610413
                    765:       IVCORR = 30                                                       07620413
                    766:       IVCOMP = 1                                                        07630413
                    767:       READ (I10, REC = 01) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     07640413
                    768:      1   IVON21, IVON22, IVON31, IVON32, IVON33, IVON34, IVON55, IVON56 07650413
                    769:       IF (IRECN .EQ. 01)     IVCOMP = IVCOMP * 2                        07660413
                    770:       IF (IVON22 .EQ. -11)   IVCOMP = IVCOMP * 3                        07670413
                    771:       IF (IVON56 .EQ. 32767) IVCOMP = IVCOMP * 5                        07680413
                    772: 40180 IF (IVCOMP - 30)  20180, 10180, 20180                             07690413
                    773: 30180 IVDELE = IVDELE + 1                                               07700413
                    774:       WRITE (I02,80000) IVTNUM                                          07710413
                    775:       IF (ICZERO) 10180, 0191, 20180                                    07720413
                    776: 10180 IVPASS = IVPASS + 1                                               07730413
                    777:       WRITE (I02,80002) IVTNUM                                          07740413
                    778:       GO TO 0191                                                        07750413
                    779: 20180 IVFAIL = IVFAIL + 1                                               07760413
                    780:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          07770413
                    781:  0191 CONTINUE                                                          07780413
                    782: C                                                                       07790413
                    783: C     ****  FCVS PROGRAM 413  -  TEST 019  ****                         07800413
                    784: C                                                                       07810413
                    785: C                                                                       07820413
                    786: C        TEST 019 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  07830413
                    787: C     VARIABLE OF REAL TYPE.                                            07840413
                    788: C                                                                       07850413
                    789: C                                                                       07860413
                    790:       IVTNUM =  19                                                      07870413
                    791:       IF (ICZERO) 30190, 0190, 30190                                    07880413
                    792:  0190 CONTINUE                                                          07890413
                    793:       RVON22 = 0.0                                                      07900413
                    794:       RVON31 = 0.0                                                      07910413
                    795:       IVCORR = 30                                                       07920413
                    796:       IVCOMP = 1                                                        07930413
                    797:       READ (I10, REC = 02) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     07940413
                    798:      1   RVON21, RVON22, RVON31, RVON32, RVON33, RVON34, RVON55, RVON56 07950413
                    799:       IF (IRECN .EQ. 02)      IVCOMP = IVCOMP * 2                       07960413
                    800:       IF (RVON22 .EQ. -11.)  IVCOMP = IVCOMP * 3                        07970413
                    801:       IF (RVON31 .EQ. 7.77)  IVCOMP = IVCOMP * 5                        07980413
                    802: 40190 IF (IVCOMP - 30)  20190, 10190, 20190                             07990413
                    803: 30190 IVDELE = IVDELE + 1                                               08000413
                    804:       WRITE (I02,80000) IVTNUM                                          08010413
                    805:       IF (ICZERO) 10190, 0201, 20190                                    08020413
                    806: 10190 IVPASS = IVPASS + 1                                               08030413
                    807:       WRITE (I02,80002) IVTNUM                                          08040413
                    808:       GO TO 0201                                                        08050413
                    809: 20190 IVFAIL = IVFAIL + 1                                               08060413
                    810:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          08070413
                    811:  0201 CONTINUE                                                          08080413
                    812: C                                                                       08090413
                    813: C     ****  FCVS PROGRAM 413  -  TEST 020  ****                         08100413
                    814: C                                                                       08110413
                    815: C                                                                       08120413
                    816: C        TEST 020 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  08130413
                    817: C     VARIABLE OF LOGICAL TYPE.                                         08140413
                    818: C                                                                       08150413
                    819: C                                                                       08160413
                    820:       IVTNUM =  20                                                      08170413
                    821:       IF (ICZERO) 30200, 0200, 30200                                    08180413
                    822:  0200 CONTINUE                                                          08190413
                    823:       LVONT1 = .FALSE.                                                  08200413
                    824:       LVONF6 = .TRUE.                                                   08210413
                    825:       IVCORR = 30                                                       08220413
                    826:       IVCOMP = 1                                                        08230413
                    827:       READ (I10, REC = 03) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     08240413
                    828:      1   LVONT1, LVONF2,  LVONT3, LVONF4, LVONT5, LVONF6, LVONT7, LVONF808250413
                    829:       IF (IRECN .EQ. 03)     IVCOMP = IVCOMP * 2                        08260413
                    830:       IF (.NOT. LVONF6)      IVCOMP = IVCOMP * 3                        08270413
                    831:       IF (LVONT1)            IVCOMP = IVCOMP * 5                        08280413
                    832: 40200 IF (IVCOMP - 30)  20200, 10200, 20200                             08290413
                    833: 30200 IVDELE = IVDELE + 1                                               08300413
                    834:       WRITE (I02,80000) IVTNUM                                          08310413
                    835:       IF (ICZERO) 10200, 0211, 20200                                    08320413
                    836: 10200 IVPASS = IVPASS + 1                                               08330413
                    837:       WRITE (I02,80002) IVTNUM                                          08340413
                    838:       GO TO 0211                                                        08350413
                    839: 20200 IVFAIL = IVFAIL + 1                                               08360413
                    840:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          08370413
                    841:  0211 CONTINUE                                                          08380413
                    842: C                                                                       08390413
                    843: C     ****  FCVS PROGRAM 413  -  TEST 021  ****                         08400413
                    844: C                                                                       08410413
                    845: C                                                                       08420413
                    846: C        TEST 021 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  08430413
                    847: C     ARRAY ELEMENT OF INTEGER TYPE.  ONE, TWO, AND THREE               08440413
                    848: C     DIMENSION ARRAYS ARE USED.                                        08450413
                    849: C                                                                       08460413
                    850: C                                                                       08470413
                    851:       IVTNUM =  21                                                      08480413
                    852:       IF (ICZERO) 30210, 0210, 30210                                    08490413
                    853:  0210 CONTINUE                                                          08500413
                    854:       IAON12(2) = 0                                                     08510413
                    855:       IAON12(8) = 0                                                     08520413
                    856:       IVCORR = 30                                                       08530413
                    857:       IVCOMP = 1                                                        08540413
                    858:       READ (I10, REC = 04) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     08550413
                    859:      1   IAON12(1), IAON12(2), IAON22(1,2), IAON22(2,2), IAON32(1,1,2), 08560413
                    860:      2   IAON32(2,1,2), IAON12(7), IAON12(8)                            08570413
                    861:       IF (IRECN .EQ. 04)   IVCOMP = IVCOMP * 2                          08580413
                    862:       IF (IAON12(2) .EQ. -11)   IVCOMP = IVCOMP * 3                     08590413
                    863:       IF (IAON12(8) .EQ. 32767) IVCOMP = IVCOMP * 5                     08600413
                    864: C                                                                       08610413
                    865: C        THE ABOVE 3 IF STATEMENTS CHECK THE RECORD NUMBER,  A NEGATIVE 08620413
                    866: C     FIELD VALUE AND A POSITIVE FIELD VALUE.                           08630413
                    867: C                                                                       08640413
                    868: 40210 IF (IVCOMP - 30)   20210, 10210, 20210                            08650413
                    869: 30210 IVDELE = IVDELE + 1                                               08660413
                    870:       WRITE (I02,80000) IVTNUM                                          08670413
                    871:       IF (ICZERO) 10210, 0221, 20210                                    08680413
                    872: 10210 IVPASS = IVPASS + 1                                               08690413
                    873:       WRITE (I02,80002) IVTNUM                                          08700413
                    874:       GO TO 0221                                                        08710413
                    875: 20210 IVFAIL = IVFAIL + 1                                               08720413
                    876:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          08730413
                    877:  0221 CONTINUE                                                          08740413
                    878: C                                                                       08750413
                    879: C     ****  FCVS PROGRAM 413  -  TEST 022  ****                         08760413
                    880: C                                                                       08770413
                    881: C                                                                       08780413
                    882: C        TEST 022 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  08790413
                    883: C     ARRAY ELEMENT OF REAL TYPE.  ONE, TWO, AND THREE                  08800413
                    884: C     DIMENSION ARRAYS ARE USED.                                        08810413
                    885: C                                                                       08820413
                    886: C                                                                       08830413
                    887:       IVTNUM =  22                                                      08840413
                    888:       IF (ICZERO) 30220, 0220, 30220                                    08850413
                    889:  0220 CONTINUE                                                          08860413
                    890:       RAON22(2,2) = 0.0                                                 08870413
                    891:       RAON32(1,1,2) = 0.0                                               08880413
                    892:       IVCORR = 30                                                       08890413
                    893:       IVCOMP = 1                                                        08900413
                    894:       READ (I10, REC = 05) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     08910413
                    895:      1   RAON12(1), RAON12(2), RAON22(1,2), RAON22(2,2), RAON32(1,1,2), 08920413
                    896:      2   RAON32(2,1,2), RAON12(7), RAON12(8)                            08930413
                    897:       IF (IRECN .EQ. 05)             IVCOMP = IVCOMP * 2                08940413
                    898:       IF (RAON22(2,2) .EQ. -7.77)    IVCOMP = IVCOMP * 3                08950413
                    899:       IF (RAON32(1,1,2) .EQ.  .512 ) IVCOMP = IVCOMP * 5                08960413
                    900: C                                                                       08970413
                    901: C        THE ABOVE 3 IF STATEMENTS CHECK THE RECORD NUMBER,  A NEGATIVE 08980413
                    902: C     FIELD VALUE AND A POSITIVE FIELD VALUE.                           08990413
                    903: C                                                                       09000413
                    904: 40220 IF (IVCOMP - 30)   20220, 10220, 20220                            09010413
                    905: 30220 IVDELE = IVDELE + 1                                               09020413
                    906:       WRITE (I02,80000) IVTNUM                                          09030413
                    907:       IF (ICZERO) 10220, 0231, 20220                                    09040413
                    908: 10220 IVPASS = IVPASS + 1                                               09050413
                    909:       WRITE (I02,80002) IVTNUM                                          09060413
                    910:       GO TO 0231                                                        09070413
                    911: 20220 IVFAIL = IVFAIL + 1                                               09080413
                    912:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          09090413
                    913:  0231 CONTINUE                                                          09100413
                    914: C                                                                       09110413
                    915: C     ****  FCVS PROGRAM 413  -  TEST 023  ****                         09120413
                    916: C                                                                       09130413
                    917: C                                                                       09140413
                    918: C        TEST 023 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  09150413
                    919: C     ARRAY ELEMENT OF LOGICAL TYPE.  ONE, TWO, AND THREE               09160413
                    920: C     DIMENSION ARRAYS ARE USED.                                        09170413
                    921: C                                                                       09180413
                    922: C                                                                       09190413
                    923:       IVTNUM =  23                                                      09200413
                    924:       IF (ICZERO) 30230, 0230, 30230                                    09210413
                    925:  0230 CONTINUE                                                          09220413
                    926:       LAON12(1) = .FALSE.                                               09230413
                    927:       LAON32(2,1,2) = .TRUE.                                            09240413
                    928:       IVCORR = 30                                                       09250413
                    929:       IVCOMP = 1                                                        09260413
                    930:       READ (I10, REC = 06) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     09270413
                    931:      1   LAON12(1), LAON12(2), LAON22(1,2), LAON22(2,2), LAON32(1,1,2), 09280413
                    932:      2   LAON32(2,1,2), LAON12(7), LAON12(8)                            09290413
                    933:       IF (IRECN .EQ. 06)   IVCOMP = IVCOMP * 2                          09300413
                    934:       IF (LAON12(1))          IVCOMP = IVCOMP * 3                       09310413
                    935:       IF (.NOT. LAON32(2,1,2))  IVCOMP = IVCOMP * 5                     09320413
                    936: 40230 IF (IVCOMP - 30)   20230, 10230, 20230                            09330413
                    937: 30230 IVDELE = IVDELE + 1                                               09340413
                    938:       WRITE (I02,80000) IVTNUM                                          09350413
                    939:       IF (ICZERO) 10230, 0241, 20230                                    09360413
                    940: 10230 IVPASS = IVPASS + 1                                               09370413
                    941:       WRITE (I02,80002) IVTNUM                                          09380413
                    942:       GO TO 0241                                                        09390413
                    943: 20230 IVFAIL = IVFAIL + 1                                               09400413
                    944:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          09410413
                    945:  0241 CONTINUE                                                          09420413
                    946: C                                                                       09430413
                    947: C     ****  FCVS PROGRAM 413  -  TEST 024  ****                         09440413
                    948: C                                                                       09450413
                    949: C                                                                       09460413
                    950: C        TEST 024 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  09470413
                    951: C     ARRAY OF INTEGER TYPE.                                            09480413
                    952: C                                                                       09490413
                    953: C                                                                       09500413
                    954:       IVTNUM =  24                                                      09510413
                    955:       IF (ICZERO) 30240, 0240, 30240                                    09520413
                    956:  0240 CONTINUE                                                          09530413
                    957:       IAON32(2,1,1) = 0                                                 09540413
                    958:       IAON32(2,2,2) = 0                                                 09550413
                    959:       IVCORR = 30                                                       09560413
                    960:       IVCOMP = 1                                                        09570413
                    961:       READ (I10, REC = 07) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     09580413
                    962:      1   IAON32                                                         09590413
                    963:       IF (IRECN .EQ. 07)   IVCOMP = IVCOMP * 2                          09600413
                    964:       IF (IAON32(2,1,1) .EQ. -11)    IVCOMP = IVCOMP * 3                09610413
                    965:       IF (IAON32(2,2,2) .EQ. 32767)  IVCOMP = IVCOMP * 5                09620413
                    966: C                                                                       09630413
                    967: C        THE ABOVE 3 IF STATEMENTS CHECK THE RECORD NUMBER,  A NEGATIVE 09640413
                    968: C     FIELD VALUE AND A POSITIVE FIELD VALUE.                           09650413
                    969: C                                                                       09660413
                    970: 40240 IF (IVCOMP - 30)   20240, 10240, 20240                            09670413
                    971: 30240 IVDELE = IVDELE + 1                                               09680413
                    972:       WRITE (I02,80000) IVTNUM                                          09690413
                    973:       IF (ICZERO) 10240, 0251, 20240                                    09700413
                    974: 10240 IVPASS = IVPASS + 1                                               09710413
                    975:       WRITE (I02,80002) IVTNUM                                          09720413
                    976:       GO TO 0251                                                        09730413
                    977: 20240 IVFAIL = IVFAIL + 1                                               09740413
                    978:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          09750413
                    979:  0251 CONTINUE                                                          09760413
                    980: C                                                                       09770413
                    981: C     ****  FCVS PROGRAM 413  -  TEST 025  ****                         09780413
                    982: C                                                                       09790413
                    983: C                                                                       09800413
                    984: C        TEST 025 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  09810413
                    985: C     ARRAY OF REAL TYPE.                                               09820413
                    986: C                                                                       09830413
                    987: C                                                                       09840413
                    988:       IVTNUM =  25                                                      09850413
                    989:       IF (ICZERO) 30250, 0250, 30250                                    09860413
                    990:  0250 CONTINUE                                                          09870413
                    991:       RAON32(2,1,1) = 0.0                                               09880413
                    992:       RAON32(2,2,2) = 0.0                                               09890413
                    993:       IVCORR = 30                                                       09900413
                    994:       IVCOMP = 1                                                        09910413
                    995:       READ (I10, REC = 08) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     09920413
                    996:      1   RAON32                                                         09930413
                    997:       IF (IRECN .EQ. 08)   IVCOMP = IVCOMP * 2                          09940413
                    998:       IF (RAON32(2,1,1) .EQ. -11.)   IVCOMP = IVCOMP * 3                09950413
                    999:       IF (RAON32(2,2,2) .EQ.  32767.) IVCOMP = IVCOMP * 5               09960413
                   1000: C                                                                       09970413
                   1001: C        THE ABOVE 3 IF STATEMENTS CHECK THE RECORD NUMBER,  A NEGATIVE 09980413
                   1002: C     FIELD VALUE AND A POSITIVE FIELD VALUE.                           09990413
                   1003: C                                                                       10000413
                   1004: 40250 IF (IVCOMP - 30)   20250, 10250, 20250                            10010413
                   1005: 30250 IVDELE = IVDELE + 1                                               10020413
                   1006:       WRITE (I02,80000) IVTNUM                                          10030413
                   1007:       IF (ICZERO) 10250, 0261, 20250                                    10040413
                   1008: 10250 IVPASS = IVPASS + 1                                               10050413
                   1009:       WRITE (I02,80002) IVTNUM                                          10060413
                   1010:       GO TO 0261                                                        10070413
                   1011: 20250 IVFAIL = IVFAIL + 1                                               10080413
                   1012:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          10090413
                   1013:  0261 CONTINUE                                                          10100413
                   1014: C                                                                       10110413
                   1015: C     ****  FCVS PROGRAM 413  -  TEST 026  ****                         10120413
                   1016: C                                                                       10130413
                   1017: C                                                                       10140413
                   1018: C        TEST 026 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  10150413
                   1019: C     ARRAY OF LOGICAL TYPE.                                            10160413
                   1020: C                                                                       10170413
                   1021: C                                                                       10180413
                   1022:       IVTNUM =  26                                                      10190413
                   1023:       IF (ICZERO) 30260, 0260, 30260                                    10200413
                   1024:  0260 CONTINUE                                                          10210413
                   1025:       LAON32(1,1,1) = .FALSE.                                           10220413
                   1026:       LAON32(2,2,2) = .TRUE.                                            10230413
                   1027:       IVCORR = 30                                                       10240413
                   1028:       IVCOMP = 1                                                        10250413
                   1029:       READ (I10, REC = 09) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     10260413
                   1030:      1   LAON32                                                         10270413
                   1031:       IF (IRECN .EQ. 09)   IVCOMP = IVCOMP * 2                          10280413
                   1032:       IF (LAON32(1,1,1))     IVCOMP = IVCOMP * 3                        10290413
                   1033:       IF (.NOT. LAON32(2,2,2))    IVCOMP = IVCOMP * 5                   10300413
                   1034: 40260 IF (IVCOMP - 30)   20260, 10260, 20260                            10310413
                   1035: 30260 IVDELE = IVDELE + 1                                               10320413
                   1036:       WRITE (I02,80000) IVTNUM                                          10330413
                   1037:       IF (ICZERO) 10260, 0271, 20260                                    10340413
                   1038: 10260 IVPASS = IVPASS + 1                                               10350413
                   1039:       WRITE (I02,80002) IVTNUM                                          10360413
                   1040:       GO TO 0271                                                        10370413
                   1041: 20260 IVFAIL = IVFAIL + 1                                               10380413
                   1042:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          10390413
                   1043:  0271 CONTINUE                                                          10400413
                   1044: C                                                                       10410413
                   1045: C     ****  FCVS PROGRAM 413  -  TEST 027  ****                         10420413
                   1046: C                                                                       10430413
                   1047: C                                                                       10440413
                   1048: C        TEST 027 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  10450413
                   1049: C     IMPLIED-DO WITH AN ITEM OF INTEGER TYPE.  THE STORAGE VALUES IN   10460413
                   1050: C     THE ARRAY (BY THE IMPLIED-DO DURING THE READ) SHOULD RESULT IN A  10470413
                   1051: C     DIFFERENT STORAGE SEQUENCE IN THE ARRAY THAN FOUND IN THE RECORD  10480413
                   1052: C     OF THE FILE.  THIS RECORD IS RECORD NUMBER 10 AND WAS CREATED IN  10490413
                   1053: C     TEST 012 ABOVE.  THE FIELD VALUE, FIELD POSITION, POSITION WITHIN 10500413
                   1054: C     ARRAY IAON32 AND SUBSCRIPT VALUE AFTER THE READ IS                10510413
                   1055: C                                                                       10520413
                   1056: C      VALUE      11    777     512  -32767   -11   -777   -512   32767 10530413
                   1057: C      FIELD POS   1      3      2      4      5      7      6      8   10540413
                   1058: C      IAON32      1      2      3      4      5      6      7      8   10550413
                   1059: C      SUBSCRIPT 1,1,1   2,1,1  1,2,1  2,2,1  1,1,2  2,1,2  1,2,2  2,2,210560413
                   1060: C                                                                       10570413
                   1061: C                                                                       10580413
                   1062:       IVTNUM =  27                                                      10590413
                   1063:       IF (ICZERO) 30270, 0270, 30270                                    10600413
                   1064:  0270 CONTINUE                                                          10610413
                   1065:       IAON32(2,1,1) = 0                                                 10620413
                   1066:       IAON32(2,2,1) = 0                                                 10630413
                   1067:       IVCORR = 30                                                       10640413
                   1068:       IVCOMP = 1                                                        10650413
                   1069:       READ (I10, REC = 10) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     10660413
                   1070:      1   (((IAON32 (J,K,I), K=1,2), J=1,2), I=1,2)                      10670413
                   1071:       IF (IRECN .EQ. 10)   IVCOMP = IVCOMP * 2                          10680413
                   1072:       IF (IAON32(2,1,1) .EQ. 777)      IVCOMP = IVCOMP * 3              10690413
                   1073:       IF (IAON32(2,2,1) .EQ. -32767)   IVCOMP = IVCOMP * 5              10700413
                   1074: C                                                                       10710413
                   1075: C        THE ABOVE 3 IF STATEMENTS CHECK THE RECORD NUMBER,  A NEGATIVE 10720413
                   1076: C     FIELD VALUE AND A POSITIVE FIELD VALUE.                           10730413
                   1077: C                                                                       10740413
                   1078: 40270 IF (IVCOMP - 30)   20270, 10270, 20270                            10750413
                   1079: 30270 IVDELE = IVDELE + 1                                               10760413
                   1080:       WRITE (I02,80000) IVTNUM                                          10770413
                   1081:       IF (ICZERO) 10270, 0281, 20270                                    10780413
                   1082: 10270 IVPASS = IVPASS + 1                                               10790413
                   1083:       WRITE (I02,80002) IVTNUM                                          10800413
                   1084:       GO TO 0281                                                        10810413
                   1085: 20270 IVFAIL = IVFAIL + 1                                               10820413
                   1086:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          10830413
                   1087:  0281 CONTINUE                                                          10840413
                   1088: C                                                                       10850413
                   1089: C     ****  FCVS PROGRAM 413  -  TEST 028  ****                         10860413
                   1090: C                                                                       10870413
                   1091: C                                                                       10880413
                   1092: C        TEST 028 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  10890413
                   1093: C     IMPLIED-DO WITH AN ITEM OF  REAL   TYPE.  THE STORAGE VALUES IN   10900413
                   1094: C     THE ARRAY (BY THE IMPLIED-DO DURING THE READ) SHOULD RESULT IN A  10910413
                   1095: C     SEQUENCE THE SAME AS FOUND IN THE RECORD OF THE FILE.  THIS REC-  10920413
                   1096: C     ORD IS RECORD NUMBER 011 AND WAS CREATED IN TEST 013 ABOVE.       10930413
                   1097: C     THE FIELD VALUE, FIELD POSITION, POSITION WITHIN ARRAY RAON32  AND10940413
                   1098: C     SUBSCRIPT VALUE AFTER THE THE READ IS                             10950413
                   1099: C                                                                       10960413
                   1100: C      VALUE      11.   -11.   7.77   -7.77  .512   -.512 -32767. 32767.10970413
                   1101: C      FIELD POS   1      2      3      4      5      6      7      8   10980413
                   1102: C      RAON32      1      2      3      4      5      6      7      8   10990413
                   1103: C      SUBSCRIPT 1,1,1   2,1,1  1,2,1  2,2,1  1,1,2  2,1,2  1,2,2  2,2,211000413
                   1104: C                                                                       11010413
                   1105: C                                                                       11020413
                   1106:       IVTNUM =  28                                                      11030413
                   1107:       IF (ICZERO) 30280, 0280, 30280                                    11040413
                   1108:  0280 CONTINUE                                                          11050413
                   1109:       RAON32(1,2,1) = 0.0                                               11060413
                   1110:       RAON32(1,2,2) = 0.0                                               11070413
                   1111:       IVCORR = 30                                                       11080413
                   1112:       IVCOMP = 1                                                        11090413
                   1113:       READ (I10, REC = 11) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     11100413
                   1114:      1   (((RAON32 (J,K,I), J=1,2), K=1,2), I=1,2)                      11110413
                   1115:       IF (IRECN .EQ. 11)   IVCOMP = IVCOMP * 2                          11120413
                   1116:       IF (RAON32(1,2,1) .EQ. 7.77)     IVCOMP = IVCOMP * 3              11130413
                   1117:       IF (RAON32(1,2,2) .EQ. -32767.)  IVCOMP = IVCOMP * 5              11140413
                   1118: C                                                                       11150413
                   1119: C        THE ABOVE 3 IF STATEMENTS CHECK THE RECORD NUMBER,  A NEGATIVE 11160413
                   1120: C     FIELD VALUE AND A POSITIVE FIELD VALUE.                           11170413
                   1121: C                                                                       11180413
                   1122: 40280 IF (IVCOMP - 30)   20280, 10280, 20280                            11190413
                   1123: 30280 IVDELE = IVDELE + 1                                               11200413
                   1124:       WRITE (I02,80000) IVTNUM                                          11210413
                   1125:       IF (ICZERO) 10280, 0291, 20280                                    11220413
                   1126: 10280 IVPASS = IVPASS + 1                                               11230413
                   1127:       WRITE (I02,80002) IVTNUM                                          11240413
                   1128:       GO TO 0291                                                        11250413
                   1129: 20280 IVFAIL = IVFAIL + 1                                               11260413
                   1130:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          11270413
                   1131:  0291 CONTINUE                                                          11280413
                   1132: C                                                                       11290413
                   1133: C     ****  FCVS PROGRAM 413  -  TEST 029  ****                         11300413
                   1134: C                                                                       11310413
                   1135: C                                                                       11320413
                   1136: C        TEST 029 USES A READ STATEMENT WHERE THE INPUT LIST ITEM IS A  11330413
                   1137: C     IMPLIED-DO WITH AN ITEM OF LOGICAL TYPE.  THE STORAGE VALUES IN   11340413
                   1138: C     THE ARRAY (BY THE IMPLIED-DO DURING THE READ) SHOULD RESULT IN A  11350413
                   1139: C     DIFFERENT STORAGE SEQUENCE IN THE ARRAY THAN FOUND IN THE RECORD  11360413
                   1140: C     OF THE FILE.  THIS RECORD IS RECORD NUMBER 12 AND WAS CREATED IN  11370413
                   1141: C     TEST 014 ABOVE.  THE FIELD VALUE, FIELD POSITION, POSITION WITHIN 11380413
                   1142: C     ARRAY LAON32 AND SUBSCRIPT VALUE AFTER THE READ IS                11390413
                   1143: C                                                                       11400413
                   1144: C      VALUE       T      T      F      F      T       T     F      F   11410413
                   1145: C      FIELD POS   1      5      3      7       2      6     4      8   11420413
                   1146: C      LAON32      1      2      3      4      5      6      7      8   11430413
                   1147: C      SUBSCRIPT 1,1,1   2,1,1  1,2,1  2,2,1  1,1,2  2,1,2  1,2,2  2,2,211440413
                   1148: C                                                                       11450413
                   1149: C                                                                       11460413
                   1150:       IVTNUM =  29                                                      11470413
                   1151:       IF (ICZERO) 30290, 0290, 30290                                    11480413
                   1152:  0290 CONTINUE                                                          11490413
                   1153:       LAON32(1,2,1) = .TRUE.                                            11500413
                   1154:       LAON32(2,1,1) = .FALSE.                                           11510413
                   1155:       IVCORR = 30                                                       11520413
                   1156:       IVCOMP = 1                                                        11530413
                   1157:       READ (I10, REC = 12) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     11540413
                   1158:      1   (((LAON32 (J,K,I), I=1,2), K=1,2), J=1,2)                      11550413
                   1159:       IF (IRECN .EQ. 12)   IVCOMP = IVCOMP * 2                          11560413
                   1160:       IF ( .NOT. LAON32(1,2,1))   IVCOMP = IVCOMP * 3                   11570413
                   1161:       IF (LAON32(2,1,1))          IVCOMP = IVCOMP * 5                   11580413
                   1162: 40290 IF (IVCOMP - 30)   20290, 10290, 20290                            11590413
                   1163: 30290 IVDELE = IVDELE + 1                                               11600413
                   1164:       WRITE (I02,80000) IVTNUM                                          11610413
                   1165:       IF (ICZERO) 10290, 0301, 20290                                    11620413
                   1166: 10290 IVPASS = IVPASS + 1                                               11630413
                   1167:       WRITE (I02,80002) IVTNUM                                          11640413
                   1168:       GO TO 0301                                                        11650413
                   1169: 20290 IVFAIL = IVFAIL + 1                                               11660413
                   1170:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          11670413
                   1171:  0301 CONTINUE                                                          11680413
                   1172: C                                                                       11690413
                   1173: C     ****  FCVS PROGRAM 413  -  TEST 030  ****                         11700413
                   1174: C                                                                       11710413
                   1175: C                                                                       11720413
                   1176: C        TEST 030 USES A READ STATEMENT WITHOUT ANY INPUT LIST ITEMS    11730413
                   1177: C     (INPUT LIST ITEMS ARE OPTIONAL FOR THE READ STATEMENT). THIS      11740413
                   1178: C     RECORD WAS WRITTEN IN TEST 14 AND SHOULD BE RECORD NUMBER 13.     11750413
                   1179: C     THE PURPOSE OF THIS TEST IS TO SEE THAT THE STATEMENT CONSTRUCT   11760413
                   1180: C     IS ACCEPTABLE TO THE COMPILER.                                    11770413
                   1181: C     ALSO THE LENGTH OF AN UNFORMATTED RECORD MAY BE ZERO.             11780413
                   1182: C                                                                       11790413
                   1183: C                  SEE SECTIONS 12.1.2,   UNFORMATTED RECORDS           11800413
                   1184: C                               12.8,   READ, WRITE AND PRINT STATEMENTS11810413
                   1185: C                                                                       11820413
                   1186: C                                                                       11830413
                   1187:       IVTNUM =  30                                                      11840413
                   1188:       IF (ICZERO) 30300, 0300, 30300                                    11850413
                   1189:  0300 CONTINUE                                                          11860413
                   1190:       IRECN = 13                                                        11870413
                   1191:       IVCORR = 13                                                       11880413
                   1192:       READ (I10, REC = 13)                                              11890413
                   1193:       IVCOMP = IRECN                                                    11900413
                   1194: 40300 IF (IVCOMP - 13)   20300, 10300, 20300                            11910413
                   1195: 30300 IVDELE = IVDELE + 1                                               11920413
                   1196:       WRITE (I02,80000) IVTNUM                                          11930413
                   1197:       IF (ICZERO) 10300, 0311, 20300                                    11940413
                   1198: 10300 IVPASS = IVPASS + 1                                               11950413
                   1199:       WRITE (I02,80002) IVTNUM                                          11960413
                   1200:       GO TO 0311                                                        11970413
                   1201: 20300 IVFAIL = IVFAIL + 1                                               11980413
                   1202:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          11990413
                   1203:  0311 CONTINUE                                                          12000413
                   1204: C                                                                       12010413
                   1205: C     ****  FCVS PROGRAM 413  -  TEST 031  ****                         12020413
                   1206: C                                                                       12030413
                   1207: C                                                                       12040413
                   1208: C        TEST 031 USES A READ STATEMENT IN WHICH THE NUMBER OF VALUES   12050413
                   1209: C     REQUIRED BY THE INPUT LIST IS LESS THAN THE NUMBER OF VALUES IN   12060413
                   1210: C     THE RECORD.                                                       12070413
                   1211: C                                                                       12080413
                   1212: C                  SEE SECTION 12.9.5.1, UNFORMATED DATA TRANSFER       12090413
                   1213: C                                                                       12100413
                   1214: C                                                                       12110413
                   1215:       IVTNUM =  31                                                      12120413
                   1216:       IF (ICZERO) 30310, 0310, 30310                                    12130413
                   1217:  0310 CONTINUE                                                          12140413
                   1218:       IVON21 = 0                                                        12150413
                   1219:       IVON22 = 0                                                        12160413
                   1220:       IVON31 = 0                                                        12170413
                   1221:       IVCORR = 0                                                        12180413
                   1222:       IVCOMP = 1                                                        12190413
                   1223:       READ (I10, REC = 01) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,     12200413
                   1224:      1       IVON21, IVON22, IVON31                                     12210413
                   1225:       IF (IRECN .EQ. 01)  IVCOMP = IVCOMP * 2                           12220413
                   1226:       IF (IVON21 .EQ. 11)  IVCOMP = IVCOMP * 3                          12230413
                   1227:       IF (IVON22 .EQ. -11) IVCOMP = IVCOMP * 5                          12240413
                   1228: 40310 IF (IVCOMP - 30) 20310, 10310, 20310                              12250413
                   1229: 30310 IVDELE = IVDELE + 1                                               12260413
                   1230:       WRITE (I02,80000) IVTNUM                                          12270413
                   1231:       IF (ICZERO) 10310, 0321, 20310                                    12280413
                   1232: 10310 IVPASS = IVPASS + 1                                               12290413
                   1233:       WRITE (I02,80002) IVTNUM                                          12300413
                   1234:       GO TO 0321                                                        12310413
                   1235: 20310 IVFAIL = IVFAIL + 1                                               12320413
                   1236:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          12330413
                   1237:  0321 CONTINUE                                                          12340413
                   1238: C                                                                       12350413
                   1239: C                                                                       12360413
                   1240: C        TEST 032 AND 033 VERIFIES THAT RECORDS MAY BE READ IN ANY ORDER12370413
                   1241: C     ALSO THAT A VARIABLE MAY BE USED AS THE OPERAND OF THE REC SPEC-  12380413
                   1242: C     IFIER FOR A READ STATEMENT.                                       12390413
                   1243: C                                                                       12400413
                   1244: C              SEE SECTION 2.2.4.2(1) , DIRECT ACCESS                   12410413
                   1245: C                                                                       12420413
                   1246: C                                                                       12430413
                   1247: C                                                                       12440413
                   1248: C     ****  FCVS PROGRAM 413  -  TEST 032  ****                         12450413
                   1249: C                                                                       12460413
                   1250: C                                                                       12470413
                   1251: C        TEST 032 READS THE RECORDS WRITTEN IN TEST 16.  EVERY OTHER    12480413
                   1252: C     RECORD IS READ FOR A TOTAL OF 100 RECORDS (THE REC SPECIFIER      12490413
                   1253: C     VARIABLE IS INCREMENTED BY 2).                                    12500413
                   1254: C                                                                       12510413
                   1255: C                                                                       12520413
                   1256:       IVTNUM =  32                                                      12530413
                   1257:       IF (ICZERO) 30320, 0320, 30320                                    12540413
                   1258:  0320 CONTINUE                                                          12550413
                   1259:       IRECCK = 13                                                       12560413
                   1260:       IRECN = 0                                                         12570413
                   1261:       IREC = 13                                                         12580413
                   1262:       IVCOMP = 0                                                        12590413
                   1263:       DO 4134 I = 1,100                                                 12600413
                   1264:       IREC = IREC + 2                                                   12610413
                   1265:       IRECCK = IRECCK + 2                                               12620413
                   1266:       READ (I10, REC = IREC) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,   12630413
                   1267:      1   IVON21, IVON22, IVON31, IVON32, IVON33, IVON34, IVON55, IVON56 12640413
                   1268:       IF (IRECN .EQ. IRECCK)    IVCOMP = IVCOMP + 1                     12650413
                   1269:  4134 CONTINUE                                                          12660413
                   1270:       IVCORR = 100                                                      12670413
                   1271: 40320 IF (IVCOMP - 100)  20320, 10320, 20320                            12680413
                   1272: 30320 IVDELE = IVDELE + 1                                               12690413
                   1273:       WRITE (I02,80000) IVTNUM                                          12700413
                   1274:       IF (ICZERO) 10320, 0331, 20320                                    12710413
                   1275: 10320 IVPASS = IVPASS + 1                                               12720413
                   1276:       WRITE (I02,80002) IVTNUM                                          12730413
                   1277:       GO TO 0331                                                        12740413
                   1278: 20320 IVFAIL = IVFAIL + 1                                               12750413
                   1279:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          12760413
                   1280:  0331 CONTINUE                                                          12770413
                   1281: C                                                                       12780413
                   1282: C     ****  FCVS PROGRAM 413  -  TEST 033  ****                         12790413
                   1283: C                                                                       12800413
                   1284: C                                                                       12810413
                   1285: C        TEST 033 READS THE RECORDS WRITTEN IN TEST 17.  THIS TEST IS   12820413
                   1286: C     SIMILAR  TO TEST 32 ABOVE EXCEPT THE FILE IS READ IN REVERSE      12830413
                   1287: C     RECORD NUMBER ORDER.                                              12840413
                   1288: C                                                                       12850413
                   1289: C                                                                       12860413
                   1290:       IVTNUM =  33                                                      12870413
                   1291:       IF (ICZERO) 30330, 0330, 30330                                    12880413
                   1292:  0330 CONTINUE                                                          12890413
                   1293:       IRECCK = 216                                                      12900413
                   1294:       IRECN = 0                                                         12910413
                   1295:       IVCOMP = 0                                                        12920413
                   1296:       IREC = 216                                                        12930413
                   1297:       DO 4135 I = 1,100                                                 12940413
                   1298:       IREC = IREC - 2                                                   12950413
                   1299:       IRECCK = IRECCK - 2                                               12960413
                   1300:       READ (I10, REC = IREC)  IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,  12970413
                   1301:      1   IVON21, IVON22, IVON31, IVON32, IVON33, IVON34, IVON55, IVON56 12980413
                   1302:       IF (IRECN .EQ. IRECCK)           IVCOMP = IVCOMP + 1              12990413
                   1303:  4135 CONTINUE                                                          13000413
                   1304:       IVCORR = 100                                                      13010413
                   1305: 40330 IF (IVCOMP - 100)      20330, 10330, 20330                        13020413
                   1306: 30330 IVDELE = IVDELE + 1                                               13030413
                   1307:       WRITE (I02,80000) IVTNUM                                          13040413
                   1308:       IF (ICZERO) 10330, 0341, 20330                                    13050413
                   1309: 10330 IVPASS = IVPASS + 1                                               13060413
                   1310:       WRITE (I02,80002) IVTNUM                                          13070413
                   1311:       GO TO 0341                                                        13080413
                   1312: 20330 IVFAIL = IVFAIL + 1                                               13090413
                   1313:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          13100413
                   1314:  0341 CONTINUE                                                          13110413
                   1315: C                                                                       13120413
                   1316: C     ****  FCVS PROGRAM 413  -  TEST 034  ****                         13130413
                   1317: C                                                                       13140413
                   1318: C                                                                       13150413
                   1319: C        TEST 034 VERIFIES THAT THE VALUES OF A RECORD MAY BE CHANGED   13160413
                   1320: C     WHEN THE RECORD IS REWRITTEN.  RECORD NUMBER 01 IS USED FOR       13170413
                   1321: C     TESTING.  THE RECORD WAS WRITTEN IN TEST 02 AND READ IN TEST 18.  13180413
                   1322: C     A RECORD CANNOT BE DELETED FROM THE FILE BUT IT CAN BE REWRITTEN. 13190413
                   1323: C                                                                       13200413
                   1324: C                  SEE SECTION  12.2.4.2 (5), DIRECT ACCESS             13210413
                   1325: C                                                                       13220413
                   1326: C                                                                       13230413
                   1327:       IVTNUM =  34                                                      13240413
                   1328:       IF (ICZERO) 30340, 0340, 30340                                    13250413
                   1329:  0340 CONTINUE                                                          13260413
                   1330:       IRECN = 01                                                        13270413
                   1331:       WRITE (I10, REC = 01)  IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,   13280413
                   1332:      1    ICON31, ICON32, ICON21, ICON22, ICON55, ICON56, ICON33, ICON3413290413
                   1333:       READ (I10, REC=01)  IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,      13300413
                   1334:      1    IVON61, IVON62, IVON63, IVON64, IVON65,IVON66, IVON67, IVON68 13310413
                   1335:       IVCORR = 210                                                      13320413
                   1336:       IVCOMP = 1                                                        13330413
                   1337:       IF (IRECN .EQ. 01)             IVCOMP = IVCOMP * 2                13340413
                   1338:       IF (IVON61 .EQ. 777)           IVCOMP = IVCOMP  * 3               13350413
                   1339:       IF (IVON62 .EQ. -777)          IVCOMP = IVCOMP * 5                13360413
                   1340:       IF (IVON66 .EQ. 32767)         IVCOMP = IVCOMP * 7                13370413
                   1341: 40340 IF (IVCOMP - 210)  20340, 10340, 20340                            13380413
                   1342: 30340 IVDELE = IVDELE + 1                                               13390413
                   1343:       WRITE (I02,80000) IVTNUM                                          13400413
                   1344:       IF (ICZERO) 10340, 0351, 20340                                    13410413
                   1345: 10340 IVPASS = IVPASS + 1                                               13420413
                   1346:       WRITE (I02,80002) IVTNUM                                          13430413
                   1347:       GO TO 0351                                                        13440413
                   1348: 20340 IVFAIL = IVFAIL + 1                                               13450413
                   1349:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          13460413
                   1350:  0351 CONTINUE                                                          13470413
                   1351: C                                                                       13480413
                   1352: C                                                                       13490413
                   1353: C        THE FOLLOWING SOURCE CODE BRACKETED BY THE COMMENT LINES       13500413
                   1354: C     *****  BEGIN-FILE-DUMP SECTION AND *****  END-FILE-DUMP SECTION   13510413
                   1355: C     MAY OR MAY NOT  APPEAR AS COMMENTS IN THE SOURCE PROGRAM.         13520413
                   1356: C     THIS CODE IS OPTIONAL AND BY DEFAULT IT IS AUTOMATICALLY COMMENTED13530413
                   1357: C     OUT BY THE EXECUTIVE ROUTINE.  A DUMP OF THE FILE USED BY THIS    13540413
                   1358: C     ROUTINE IS PROVIDED BY USING THE *OPT1 EXECUTIVE ROUTINE CONTROL  13550413
                   1359: C     CARD.  IF THE OPTIONAL CODE IS SELECTED THE ROUTINE WILL DUMP     13560413
                   1360: C     THE CONTENTS OF THE FILE TO THE PRINT FILE FOLLOWING THE TEST     13570413
                   1361: C     REPORT AND BEFORE THE TEST REPORT SUMMARY.                        13580413
                   1362: C                                                                       13590413
                   1363: CDB**  BEGIN FILE DUMP CODE                                             13600413
                   1364: C     ITOTR = 214                                                       13610413
                   1365: C     ILUN  = I10                                                       13620413
                   1366: C     IRLGN = 80                                                        13630413
                   1367: C     IRNUM = 1                                                         13640413
                   1368: C7701 FORMAT (80A1)                                                     13650413
                   1369: C7702 FORMAT (1X,80A1)                                                  13660413
                   1370: C7703 FORMAT (10X,5HFILE ,I2,5H HAS ,I3,13H RECORDS - OK)               13670413
                   1371: C7704 FORMAT (10X,5HFILE ,I2,5H HAS ,I3,27H RECORDS - THERE SHOULD BE ,I13680413
                   1372: C    13,9H RECORDS.)                                                    13690413
                   1373: C     DO 7771 IRNUM = 1, ITOTR                                          13700413
                   1374: C     READ (ILUN, REC = IRNUM) (IDUMP(ICH), ICH = 1, IRLGN)             13710413
                   1375: C     WRITE (I02,  7702) (IDUMP(ICH), ICH = 1, IRLGN)                   13720413
                   1376: C7771 CONTINUE                                                          13730413
                   1377: CDE**      END OF DUMP CODE                                             13740413
                   1378: C        TEST  034 IS THE LAST TEST IN THIS PROGRAM.  THE ROUTINE SHOULD13750413
                   1379: C     HAVE MADE 34 EXPLICIT TESTS AND PROCESSED ONE FILE CONNECTED  FOR 13760413
                   1380: C     DIRECT ACCESS                                                     13770413
                   1381: C                                                                       13780413
                   1382: C                                                                       13790413
                   1383: C                                                                       13800413
                   1384: C     WRITE OUT TEST SUMMARY                                            13810413
                   1385: C                                                                       13820413
                   1386:       WRITE (I02,90004)                                                 13830413
                   1387:       WRITE (I02,90014)                                                 13840413
                   1388:       WRITE (I02,90004)                                                 13850413
                   1389:       WRITE (I02,90000)                                                 13860413
                   1390:       WRITE (I02,90004)                                                 13870413
                   1391:       WRITE (I02,90020) IVFAIL                                          13880413
                   1392:       WRITE (I02,90022) IVPASS                                          13890413
                   1393:       WRITE (I02,90024) IVDELE                                          13900413
                   1394:       STOP                                                              13910413
                   1395: 90001 FORMAT (1H ,24X,5HFM413)                                          13920413
                   1396: 90000 FORMAT (1H ,20X,20HEND OF PROGRAM FM413)                          13930413
                   1397: C                                                                       13940413
                   1398: C     FORMATS FOR TEST DETAIL LINES                                     13950413
                   1399: C                                                                       13960413
                   1400: 80000 FORMAT (1H ,4X,I5,6X,7HDELETED)                                   13970413
                   1401: 80002 FORMAT (1H ,4X,I5,7X,4HPASS)                                      13980413
                   1402: 80010 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6)                         13990413
                   1403: 80012 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5)                    14000413
                   1404: 80018 FORMAT (1H ,4X,I5,7X,4HFAIL,2X,A14,1X,A14)                        14010413
                   1405: C                                                                       14020413
                   1406: C     FORMAT STATEMENTS FOR PAGE HEADERS                                14030413
                   1407: C                                                                       14040413
                   1408: 90002 FORMAT (1H1)                                                      14050413
                   1409: 90004 FORMAT (1H )                                                      14060413
                   1410: 90006 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM)            14070413
                   1411: 90008 FORMAT (1H ,21X,11HVERSION 1.0)                                   14080413
                   1412: 90010 FORMAT (1H ,8X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978)         14090413
                   1413: 90012 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL,5X,8HCOMPUTED,8X,7HCORRECT)  14100413
                   1414: 90014 FORMAT (1H ,5X,46H----------------------------------------------) 14110413
                   1415: 90016 FORMAT (1H ,18X,17HSUBSET LEVEL TEST)                             14120413
                   1416: C                                                                       14130413
                   1417: C     FORMAT STATEMENTS FOR RUN SUMMARY                                 14140413
                   1418: C                                                                       14150413
                   1419: 90020 FORMAT (1H ,19X,I5,13H TESTS FAILED)                              14160413
                   1420: 90022 FORMAT (1H ,19X,I5,13H TESTS PASSED)                              14170413
                   1421: 90024 FORMAT (1H ,19X,I5,14H TESTS DELETED)                             14180413
                   1422:       END                                                               14190413

unix.superglobalmegacorp.com

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