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

1.1       root        1:       PROGRAM FM300                                                     00010300
                      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                                                                       00020300
                      6: C                                                                       00030300
                      7: C        THIS ROUTINE TESTS THE USE OF THE EQUIVALENCE STATEMENT TO     00040300
                      8: C     EQUATE STORAGE UNITS OF VARIABLES, ARRAYS AND ARRAY ELEMENTS.     00050300
                      9: C     ONLY INTEGER, REAL, LOGICAL AND CHARACTER DATA TYPES ARE TESTED.  00060300
                     10: C     NO ATTEMPT IS MADE TO TEST DATA OF DIFFERENT TYPES THAT ARE       00070300
                     11: C     EQUATED WITH THE EQUIVALENCE STATEMENT.                           00080300
                     12: C                                                                       00090300
                     13: C     REFERENCES.                                                       00100300
                     14: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00110300
                     15: C           X3.9-1978                                                   00120300
                     16: C                                                                       00130300
                     17: C        SECTION 8.1, DIMENSION STATEMENT                               00140300
                     18: C        SECTION 8.2, EQUIVALENCE STATEMENT                             00150300
                     19: C        SECTION 9, DATA STATEMENT                                      00160300
                     20: C                                                                       00170300
                     21: C                                                                       00180300
                     22: C     ******************************************************************00190300
                     23: C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00200300
                     24: C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN STANDARD FORTRAN   00210300
                     25: C     X3.9-1978, HAS BEEN DEVELOPED BY THE DEPARTMENT OF THE NAVY.  THE 00220300
                     26: C     FORTRAN COMPILER VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT       00230300
                     27: C     ROUTINES, THEIR RELATED DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT00240300
                     28: C     ROUTINE IS A FORTRAN PROGRAM OR SUBPROGRAM WHICH INCLUDES TESTS   00250300
                     29: C     OF SPECIFIC LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING00260300
                     30: C     THE RESULT OF EXECUTING THESE TESTS.                              00270300
                     31: C                                                                       00280300
                     32: C     THIS PARTICULAR PROGRAM OR SUBPROGRAM CONTAINS ONLY FEATURES      00290300
                     33: C     FOUND IN THE SUBSET LEVEL OF THE STANDARD.                        00300300
                     34: C                                                                       00310300
                     35: C           SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO             00320300
                     36: C                    DEPARTMENT OF THE NAVY                             00330300
                     37: C                    FEDERAL COBOL COMPILER TESTING SERVICE             00340300
                     38: C                    WASHINGTON, D.C.   20376                           00350300
                     39: C                                                                       00360300
                     40: C     ******************************************************************00370300
                     41: C                                                                       00380300
                     42: C                                                                       00390300
                     43:       IMPLICIT LOGICAL (L)                                              00400300
                     44:       IMPLICIT CHARACTER*14 (C)                                         00410300
                     45: C                                                                       00420300
                     46:                                                                         00430300
                     47: C     *** SPECIFICATION STATEMENTS FOR TEST 001 ***                     00440300
                     48: C                                                                       00450300
                     49:       EQUIVALENCE (IVOE01, IVOE02)                                      00460300
                     50: C                                                                       00470300
                     51: C     *** SPECIFICATION STATEMENTS FOR TEST 002 ***                     00480300
                     52: C                                                                       00490300
                     53:       EQUIVALENCE (RVOE01, RVOE02)                                      00500300
                     54: C                                                                       00510300
                     55: C     *** SPECIFICATION STATEMENTS FOR TEST 003 ***                     00520300
                     56: C                                                                       00530300
                     57:       EQUIVALENCE (LVOE01, LVOE02)                                      00540300
                     58: C                                                                       00550300
                     59: C     *** SPECIFICATION STATEMENTS FOR TEST 004 ***                     00560300
                     60: C                                                                       00570300
                     61:       CHARACTER CVTE01*3, CVTE02*3, CVCOMP*3                            00580300
                     62:       EQUIVALENCE (CVTE01, CVTE02)                                      00590300
                     63: C                                                                       00600300
                     64: C     *** SPECIFICATION STATEMENTS FOR TEST 005 ***                     00610300
                     65: C                                                                       00620300
                     66:       EQUIVALENCE (IVOE03, IVOE04, IVOE05)                              00630300
                     67: C                                                                       00640300
                     68: C     *** SPECIFICATION STATEMENTS FOR TEST 006 ***                     00650300
                     69: C                                                                       00660300
                     70:       EQUIVALENCE (IVOE06, IVOE07, RVOE03)                              00670300
                     71: C                                                                       00680300
                     72: C     *** SPECIFICATION STATEMENTS FOR TESTS 007 AND 008 ***            00690300
                     73: C                                                                       00700300
                     74:       EQUIVALENCE (IVOE08, IVOE09), (IVOE10, IVOE11)                    00710300
                     75: C                                                                       00720300
                     76: C     *** SPECIFICATION STATEMENTS FOR TEST 009 ***                     00730300
                     77: C                                                                       00740300
                     78:       EQUIVALENCE (IVOE12, IVOE13), (IVOE13, IVOE14)                    00750300
                     79: C                                                                       00760300
                     80: C     *** SPECIFICATION STATEMENTS FOR TEST 010 ***                     00770300
                     81: C                                                                       00780300
                     82:       EQUIVALENCE (IVOE15, IVOE16)                                      00790300
                     83:       EQUIVALENCE (IVOE16, IVOE17)                                      00800300
                     84: C                                                                       00810300
                     85: C     *** SPECIFICATION STATEMENTS FOR TESTS 011 AND 012 ***            00820300
                     86: C                                                                       00830300
                     87:       DIMENSION IADE11(2), IADE12(3)                                    00840300
                     88:       EQUIVALENCE (IADE11, IADE12)                                      00850300
                     89: C                                                                       00860300
                     90: C     *** SPECIFICATION STATEMENTS FOR TESTS 013 AND 014 ***            00870300
                     91: C                                                                       00880300
                     92:       DIMENSION RADE11(5), RADE12(5)                                    00890300
                     93:       EQUIVALENCE (RADE11(4), RADE12(2))                                00900300
                     94: C                                                                       00910300
                     95: C     *** SPECIFICATION STATEMENTS FOR TEST 015 ***                     00920300
                     96: C                                                                       00930300
                     97:       DIMENSION IADE13(4), IADE14(4)                                    00940300
                     98:       EQUIVALENCE (IADE13, IADE14(3))                                   00950300
                     99: C                                                                       00960300
                    100: C     *** SPECIFICATION STATEMENTS FOR TEST 016 ***                     00970300
                    101: C                                                                       00980300
                    102:       DIMENSION IADE15(3)                                               00990300
                    103:       EQUIVALENCE (IADE15(2), IVOE18)                                   01000300
                    104: C                                                                       01010300
                    105: C     *** SPECIFICATION STATEMENTS FOR TESTS 017 AND 018 ***            01020300
                    106: C                                                                       01030300
                    107:       DIMENSION IADE21(2,2), IADE16(4)                                  01040300
                    108:       EQUIVALENCE (IADE21, IADE16)                                      01050300
                    109: C                                                                       01060300
                    110: C     *** SPECIFICATION STATEMENTS FOR TEST 019 ***                     01070300
                    111: C                                                                       01080300
                    112:       EQUIVALENCE (IVOE19, IVOE20)                                      01090300
                    113:       DATA IVOE19/19/                                                   01100300
                    114: C                                                                       01110300
                    115: C                                                                       01120300
                    116: C                                                                       01130300
                    117: C     INITIALIZATION SECTION.                                           01140300
                    118: C                                                                       01150300
                    119: C     INITIALIZE CONSTANTS                                              01160300
                    120: C     ********************                                              01170300
                    121: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER          01180300
                    122:       I01 = 5                                                           01190300
                    123: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER              01200300
                    124:       I02 = 6                                                           01210300
                    125: C     SYSTEM ENVIRONMENT SECTION                                        01220300
                    126: C                                                                       01230300
                    127:       I01 = 5                                                           01240300
                    128: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      01250300
                    129: C     (UNIT NUMBER FOR CARD READER).                                    01260300
                    130: CX011      THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD01270300
                    131: C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            01280300
                    132: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         01290300
                    133: C                                                                       01300300
                    134:       I02 = 6                                                           01310300
                    135: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      01320300
                    136: C     (UNIT NUMBER FOR PRINTER).                                        01330300
                    137: CX021     THIS CARD IS PEPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD.01340300
                    138: C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            01350300
                    139: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         01360300
                    140: C                                                                       01370300
                    141:       IVPASS = 0                                                        01380300
                    142:       IVFAIL = 0                                                        01390300
                    143:       IVDELE = 0                                                        01400300
                    144:       ICZERO = 0                                                        01410300
                    145: C                                                                       01420300
                    146: C     WRITE OUT PAGE HEADERS                                            01430300
                    147: C                                                                       01440300
                    148:       WRITE (I02,90002)                                                 01450300
                    149:       WRITE (I02,90006)                                                 01460300
                    150:       WRITE (I02,90008)                                                 01470300
                    151:       WRITE (I02,90004)                                                 01480300
                    152:       WRITE (I02,90010)                                                 01490300
                    153:       WRITE (I02,90004)                                                 01500300
                    154:       WRITE (I02,90016)                                                 01510300
                    155:       WRITE (I02,90001)                                                 01520300
                    156:       WRITE (I02,90004)                                                 01530300
                    157:       WRITE (I02,90012)                                                 01540300
                    158:       WRITE (I02,90014)                                                 01550300
                    159:       WRITE (I02,90004)                                                 01560300
                    160: C                                                                       01570300
                    161: C                                                                       01580300
                    162: C     ****  FCVS PROGRAM 300  -  TEST 001  ****                         01590300
                    163: C                                                                       01600300
                    164: C        THIS IS A TEST FOR EQUATING TWO INTEGER VARIABLES.             01610300
                    165: C                                                                       01620300
                    166: C                                                                       01630300
                    167:       IVTNUM =   1                                                      01640300
                    168:       IF (ICZERO) 30010, 0010, 30010                                    01650300
                    169:  0010 CONTINUE                                                          01660300
                    170:       IVCOMP = 0                                                        01670300
                    171:       IVOE01 = 5                                                        01680300
                    172:       IVOE02 = 7                                                        01690300
                    173:       IVCORR = 7                                                        01700300
                    174:       IVCOMP = IVOE01                                                   01710300
                    175: 40010 IF (IVCOMP - 7) 20010,10010,20010                                 01720300
                    176: 30010 IVDELE = IVDELE + 1                                               01730300
                    177:       WRITE (I02,80000) IVTNUM                                          01740300
                    178:       IF (ICZERO) 10010, 0021, 20010                                    01750300
                    179: 10010 IVPASS = IVPASS + 1                                               01760300
                    180:       WRITE (I02,80002) IVTNUM                                          01770300
                    181:       GO TO 0021                                                        01780300
                    182: 20010 IVFAIL = IVFAIL + 1                                               01790300
                    183:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01800300
                    184:  0021 CONTINUE                                                          01810300
                    185: C                                                                       01820300
                    186: C     ****  FCVS PROGRAM 300  -  TEST 002  ****                         01830300
                    187: C                                                                       01840300
                    188: C        THIS IS A TEST FOR EQUATING TWO REAL VARIABLES.                01850300
                    189: C                                                                       01860300
                    190: C                                                                       01870300
                    191:       IVTNUM =   2                                                      01880300
                    192:       IF (ICZERO) 30020, 0020, 30020                                    01890300
                    193:  0020 CONTINUE                                                          01900300
                    194:       RVCOMP = 0.0                                                      01910300
                    195:       RVOE01 = 4.5                                                      01920300
                    196:       RVOE02 = 1.2                                                      01930300
                    197:       RVCORR = 1.2                                                      01940300
                    198:       RVCOMP = RVOE01                                                   01950300
                    199: 40020 IF (RVCOMP - 1.1995) 20020,10020,40021                            01960300
                    200: 40021 IF (RVCOMP - 1.2005) 10020,10020,20020                            01970300
                    201: 30020 IVDELE = IVDELE + 1                                               01980300
                    202:       WRITE (I02,80000) IVTNUM                                          01990300
                    203:       IF (ICZERO) 10020, 0031, 20020                                    02000300
                    204: 10020 IVPASS = IVPASS + 1                                               02010300
                    205:       WRITE (I02,80002) IVTNUM                                          02020300
                    206:       GO TO 0031                                                        02030300
                    207: 20020 IVFAIL = IVFAIL + 1                                               02040300
                    208:       WRITE (I02,80012) IVTNUM, RVCOMP, RVCORR                          02050300
                    209:  0031 CONTINUE                                                          02060300
                    210: C                                                                       02070300
                    211: C     ****  FCVS PROGRAM 300  -  TEST 003  ****                         02080300
                    212: C                                                                       02090300
                    213: C        THIS IS A TEST FOR EQUATING TWO LOGICAL VARIABLES.             02100300
                    214: C                                                                       02110300
                    215: C                                                                       02120300
                    216:       IVTNUM =   3                                                      02130300
                    217:       IF (ICZERO) 30030, 0030, 30030                                    02140300
                    218:  0030 CONTINUE                                                          02150300
                    219:       LVOE01 = .TRUE.                                                   02160300
                    220:       LVOE02 = .FALSE.                                                  02170300
                    221:       IVCORR = 0                                                        02180300
                    222:       IVCOMP = 0                                                        02190300
                    223:       IF (LVOE01) IVCOMP = 1                                            02200300
                    224: 40030 IF (IVCOMP) 20030,10030,20030                                     02210300
                    225: 30030 IVDELE = IVDELE + 1                                               02220300
                    226:       WRITE (I02,80000) IVTNUM                                          02230300
                    227:       IF (ICZERO) 10030, 0041, 20030                                    02240300
                    228: 10030 IVPASS = IVPASS + 1                                               02250300
                    229:       WRITE (I02,80002) IVTNUM                                          02260300
                    230:       GO TO 0041                                                        02270300
                    231: 20030 IVFAIL = IVFAIL + 1                                               02280300
                    232:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02290300
                    233:  0041 CONTINUE                                                          02300300
                    234: C                                                                       02310300
                    235: C     ****  FCVS PROGRAM 300  -  TEST 004  ****                         02320300
                    236: C                                                                       02330300
                    237: C        THIS IS A TEST FOR EQUATING TWO CHARACTER VARIABLES.           02340300
                    238: C                                                                       02350300
                    239: C                                                                       02360300
                    240:       IVTNUM =   4                                                      02370300
                    241:       IF (ICZERO) 30040, 0040, 30040                                    02380300
                    242:  0040 CONTINUE                                                          02390300
                    243:       CVCOMP = '   '                                                    02400300
                    244:       CVTE01 = 'ABC'                                                    02410300
                    245:       CVTE02 = 'DEF'                                                    02420300
                    246:       CVCORR = 'DEF'                                                    02430300
                    247:       CVCOMP = CVTE01                                                   02440300
                    248: 40040 IF (CVCOMP .EQ. 'DEF') GO TO 10040                                02450300
                    249: 40041 GO TO 20040                                                       02460300
                    250: 30040 IVDELE = IVDELE + 1                                               02470300
                    251:       WRITE (I02,80000) IVTNUM                                          02480300
                    252:       IF (ICZERO) 10040, 0051, 20040                                    02490300
                    253: 10040 IVPASS = IVPASS + 1                                               02500300
                    254:       WRITE (I02,80002) IVTNUM                                          02510300
                    255:       GO TO 0051                                                        02520300
                    256: 20040 IVFAIL = IVFAIL + 1                                               02530300
                    257:       WRITE (I02,80018) IVTNUM, CVCOMP, CVCORR                          02540300
                    258:  0051 CONTINUE                                                          02550300
                    259: C                                                                       02560300
                    260: C     ****  FCVS PROGRAM 300  -  TEST 005  ****                         02570300
                    261: C                                                                       02580300
                    262: C     THIS IS A TEST FOR EQUATING THREE INTEGER VARIABLES.              02590300
                    263: C                                                                       02600300
                    264: C                                                                       02610300
                    265:       IVTNUM =   5                                                      02620300
                    266:       IF (ICZERO) 30050, 0050, 30050                                    02630300
                    267:  0050 CONTINUE                                                          02640300
                    268:       IVCOMP = 0                                                        02650300
                    269:       IVOE03 = 3                                                        02660300
                    270:       IVOE04 = 4                                                        02670300
                    271:       IVOE05 = 5                                                        02680300
                    272:       IVCORR = 5                                                        02690300
                    273:       IVCOMP = IVOE03                                                   02700300
                    274: 40050 IF (IVCOMP - 5) 20050,40051,20050                                 02710300
                    275: 40051 IVCOMP = IVOE04                                                   02720300
                    276: 40052 IF (IVCOMP - 5) 20050,10050,20050                                 02730300
                    277: 30050 IVDELE = IVDELE + 1                                               02740300
                    278:       WRITE (I02,80000) IVTNUM                                          02750300
                    279:       IF (ICZERO) 10050, 0061, 20050                                    02760300
                    280: 10050 IVPASS = IVPASS + 1                                               02770300
                    281:       WRITE (I02,80002) IVTNUM                                          02780300
                    282:       GO TO 0061                                                        02790300
                    283: 20050 IVFAIL = IVFAIL + 1                                               02800300
                    284:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02810300
                    285:  0061 CONTINUE                                                          02820300
                    286: C                                                                       02830300
                    287: C     ****  FCVS PROGRAM 300  -  TEST 006  ****                         02840300
                    288: C                                                                       02850300
                    289: C        THIS IS A TEST FOR EQUATING TWO INTEGER VARIABLES AND ONE      02860300
                    290: C     REAL VARIABLE WITHIN ONE EQUIVALENCE STATEMENT LIST OF NAMES.  THE02870300
                    291: C     VALUE OF THE REAL VARIABLE IS NOT TESTED.                         02880300
                    292: C                                                                       02890300
                    293: C                                                                       02900300
                    294:       IVTNUM =   6                                                      02910300
                    295:       IF (ICZERO) 30060, 0060, 30060                                    02920300
                    296:  0060 CONTINUE                                                          02930300
                    297:       IVCOMP = 0                                                        02940300
                    298:       RVOE03 = 3.445                                                    02950300
                    299:       IVOE06 = 6                                                        02960300
                    300:       IVOE07 = 7                                                        02970300
                    301:       IVCORR = 7                                                        02980300
                    302:       IVCOMP = IVOE06                                                   02990300
                    303: 40060 IF (IVCOMP - 7) 20060,10060,20060                                 03000300
                    304: 30060 IVDELE = IVDELE + 1                                               03010300
                    305:       WRITE (I02,80000) IVTNUM                                          03020300
                    306:       IF (ICZERO) 10060, 0071, 20060                                    03030300
                    307: 10060 IVPASS = IVPASS + 1                                               03040300
                    308:       WRITE (I02,80002) IVTNUM                                          03050300
                    309:       GO TO 0071                                                        03060300
                    310: 20060 IVFAIL = IVFAIL + 1                                               03070300
                    311:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03080300
                    312:  0071 CONTINUE                                                          03090300
                    313: C                                                                       03100300
                    314: C     ****  FCVS PROGRAM 300  -  TEST 007  ****                         03110300
                    315: C                                                                       03120300
                    316: C        THIS IS A TEST FOR EQUATING INTEGER VARIABLES USING TWO LISTS  03130300
                    317: C     OF NAMES IN ONE EQUIVALENCE STATEMENT.  NAMES SPECIFIED IN THE    03140300
                    318: C     FIRST LIST ARE NOT EQUATED TO NAMES IN THE SECOND LIST.  THIS     03150300
                    319: C     TEST CHECKS THE EQUIVALINCE OF THE VARIABLES IN THE FIRST LIST.   03160300
                    320: C                                                                       03170300
                    321: C                                                                       03180300
                    322:       IVTNUM =   7                                                      03190300
                    323:       IF (ICZERO) 30070, 0070, 30070                                    03200300
                    324:  0070 CONTINUE                                                          03210300
                    325:       IVCOMP = 0                                                        03220300
                    326:       IVOE08 = 8                                                        03230300
                    327:       IVOE09 = 9                                                        03240300
                    328:       IVOE10 = 10                                                       03250300
                    329:       IVOE11 = 11                                                       03260300
                    330:       IVCORR = 9                                                        03270300
                    331:       IVCOMP = IVOE08                                                   03280300
                    332: 40070 IF (IVCOMP - 9) 20070,10070,20070                                 03290300
                    333: 30070 IVDELE = IVDELE + 1                                               03300300
                    334:       WRITE (I02,80000) IVTNUM                                          03310300
                    335:       IF (ICZERO) 10070, 0081, 20070                                    03320300
                    336: 10070 IVPASS = IVPASS + 1                                               03330300
                    337:       WRITE (I02,80002) IVTNUM                                          03340300
                    338:       GO TO 0081                                                        03350300
                    339: 20070 IVFAIL = IVFAIL + 1                                               03360300
                    340:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03370300
                    341:  0081 CONTINUE                                                          03380300
                    342: C                                                                       03390300
                    343: C     ****  FCVS PROGRAM 300  -  TEST 008  ****                         03400300
                    344: C                                                                       03410300
                    345: C        THIS TEST CHECKS THE EQUIVALENCE OF THE VARIABLES IN THE       03420300
                    346: C     SECOND LIST.                                                      03430300
                    347: C                                                                       03440300
                    348: C                                                                       03450300
                    349:       IVTNUM =   8                                                      03460300
                    350:       IF (ICZERO) 30080, 0080, 30080                                    03470300
                    351:  0080 CONTINUE                                                          03480300
                    352:       IVCOMP = 0                                                        03490300
                    353:       IVCORR = 11                                                       03500300
                    354:       IVCOMP = IVOE10                                                   03510300
                    355: 40080 IF (IVCOMP - 11) 20080,10080,20080                                03520300
                    356: 30080 IVDELE = IVDELE + 1                                               03530300
                    357:       WRITE (I02,80000) IVTNUM                                          03540300
                    358:       IF (ICZERO) 10080, 0091, 20080                                    03550300
                    359: 10080 IVPASS = IVPASS + 1                                               03560300
                    360:       WRITE (I02,80002) IVTNUM                                          03570300
                    361:       GO TO 0091                                                        03580300
                    362: 20080 IVFAIL = IVFAIL + 1                                               03590300
                    363:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03600300
                    364:  0091 CONTINUE                                                          03610300
                    365: C                                                                       03620300
                    366: C     ****  FCVS PROGRAM 300  -  TEST 009  ****                         03630300
                    367: C                                                                       03640300
                    368: C        THIS IS A TEST FOR EQUATING INTEGER VARIABLES IN ONE LIST      03650300
                    369: C     WITH INTEGER VARIABLES IN A SECOND LIST OF THE SAME EQUIVALENCE   03660300
                    370: C     STATEMENT.  ALL VARIABLES SHOULD BE EQUATED AND SHARE THE SAME    03670300
                    371: C     STORAGE UNIT.                                                     03680300
                    372: C                                                                       03690300
                    373: C                                                                       03700300
                    374:       IVTNUM =   9                                                      03710300
                    375:       IF (ICZERO) 30090, 0090, 30090                                    03720300
                    376:  0090 CONTINUE                                                          03730300
                    377:       IVCOMP = 0                                                        03740300
                    378:       IVOE12 = 12                                                       03750300
                    379:       IVOE13 = 13                                                       03760300
                    380:       IVOE14 = 14                                                       03770300
                    381:       IVCORR = 14                                                       03780300
                    382:       IVCOMP = IVOE13                                                   03790300
                    383: 40090 IF (IVCOMP - 14) 20090,40091,20090                                03800300
                    384: 40091 IVCOMP = IVOE12                                                   03810300
                    385: 40092 IF (IVCOMP - 14) 20090,10090,20090                                03820300
                    386: 30090 IVDELE = IVDELE + 1                                               03830300
                    387:       WRITE (I02,80000) IVTNUM                                          03840300
                    388:       IF (ICZERO) 10090, 0101, 20090                                    03850300
                    389: 10090 IVPASS = IVPASS + 1                                               03860300
                    390:       WRITE (I02,80002) IVTNUM                                          03870300
                    391:       GO TO 0101                                                        03880300
                    392: 20090 IVFAIL = IVFAIL + 1                                               03890300
                    393:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03900300
                    394:  0101 CONTINUE                                                          03910300
                    395: C                                                                       03920300
                    396: C     ****  FCVS PROGRAM 300  -  TEST 010  ****                         03930300
                    397: C                                                                       03940300
                    398: C        THIS IS A TEST FOR EQUATING INTEGER VARIABLES SPECIFIED IN ONE 03950300
                    399: C     EQUIVALENCE STATEMENT WITH INTEGER VARIABLES SPECIFIED IN A       03960300
                    400: C     SECOND EQUIVALENCE STATEMENT.  ONE VARIABLE IS SPECIFIED IN BOTH  03970300
                    401: C     STATEMENTS, THEREFORE ALL VARIABLES SHOULD BE EQUATED AND SHARE   03980300
                    402: C     THE SAME STORAGE UNIT.                                            03990300
                    403: C                                                                       04000300
                    404: C                                                                       04010300
                    405:       IVTNUM =  10                                                      04020300
                    406:       IF (ICZERO) 30100, 0100, 30100                                    04030300
                    407:  0100 CONTINUE                                                          04040300
                    408:       IVCOMP = 0                                                        04050300
                    409:       IVOE15 = 15                                                       04060300
                    410:       IVOE16 = 16                                                       04070300
                    411:       IVOE17 = 17                                                       04080300
                    412:       IVCORR = 17                                                       04090300
                    413:       IVCOMP = IVOE16                                                   04100300
                    414: 40100 IF (IVCOMP - 17) 20100,40101,20100                                04110300
                    415: 40101 IVCOMP = IVOE15                                                   04120300
                    416: 40102 IF (IVCOMP - 17) 20100,10100,20100                                04130300
                    417: 30100 IVDELE = IVDELE + 1                                               04140300
                    418:       WRITE (I02,80000) IVTNUM                                          04150300
                    419:       IF (ICZERO) 10100, 0111, 20100                                    04160300
                    420: 10100 IVPASS = IVPASS + 1                                               04170300
                    421:       WRITE (I02,80002) IVTNUM                                          04180300
                    422:       GO TO 0111                                                        04190300
                    423: 20100 IVFAIL = IVFAIL + 1                                               04200300
                    424:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04210300
                    425:  0111 CONTINUE                                                          04220300
                    426: C                                                                       04230300
                    427: C     ****  FCVS PROGRAM 300  -  TEST 011  ****                         04240300
                    428: C                                                                       04250300
                    429: C        THIS IS A TEST FOR EQUATING TWO INTEGER ARRAYS UNQUALIFIED     04260300
                    430: C     BY A SUBSCRIPT IN THE EQUIVALENCE STATEMENT.  ALL ARRAY ELEMENTS  04270300
                    431: C     SPECIFIED BY THE SAME SUBSCRIPT VALUE, BEGINNING WITH THE FIRST   04280300
                    432: C     ARRAY ELEMENT, SHOULD BE EQUATED AND SHARE THE SAME STORAGE UNIT. 04290300
                    433: C     THIS TEST CHECKS THE EQUIVALENCE OF THE FIRST ARRAY ELEMENTS.     04300300
                    434: C                                                                       04310300
                    435: C                                                                       04320300
                    436:       IVTNUM =  11                                                      04330300
                    437:       IF (ICZERO) 30110, 0110, 30110                                    04340300
                    438:  0110 CONTINUE                                                          04350300
                    439:       IVCOMP = 0                                                        04360300
                    440:       IADE11(1) = 111                                                   04370300
                    441:       IADE11(2) = 112                                                   04380300
                    442:       IADE12(1) = 121                                                   04390300
                    443:       IADE12(2) = 122                                                   04400300
                    444:       IADE12(3) = 123                                                   04410300
                    445:       IVCORR = 121                                                      04420300
                    446:       IVCOMP = IADE11(1)                                                04430300
                    447: 40110 IF (IVCOMP - 121) 20110,10110,20110                               04440300
                    448: 30110 IVDELE = IVDELE + 1                                               04450300
                    449:       WRITE (I02,80000) IVTNUM                                          04460300
                    450:       IF (ICZERO) 10110, 0121, 20110                                    04470300
                    451: 10110 IVPASS = IVPASS + 1                                               04480300
                    452:       WRITE (I02,80002) IVTNUM                                          04490300
                    453:       GO TO 0121                                                        04500300
                    454: 20110 IVFAIL = IVFAIL + 1                                               04510300
                    455:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04520300
                    456:  0121 CONTINUE                                                          04530300
                    457: C                                                                       04540300
                    458: C     ****  FCVS PROGRAM 300  -  TEST 012  ****                         04550300
                    459: C                                                                       04560300
                    460: C        THIS TEST CHECKS THE EQUIVALENCE OF THE SECOND ARRAY ELEMENTS. 04570300
                    461: C                                                                       04580300
                    462: C                                                                       04590300
                    463:       IVTNUM =  12                                                      04600300
                    464:       IF (ICZERO) 30120, 0120, 30120                                    04610300
                    465:  0120 CONTINUE                                                          04620300
                    466:       IVCOMP = 0                                                        04630300
                    467:       IVCORR = 122                                                      04640300
                    468:       IVCOMP = IADE11(2)                                                04650300
                    469: 40120 IF (IVCOMP - 122) 20120,10120,20120                               04660300
                    470: 30120 IVDELE = IVDELE + 1                                               04670300
                    471:       WRITE (I02,80000) IVTNUM                                          04680300
                    472:       IF (ICZERO) 10120, 0131, 20120                                    04690300
                    473: 10120 IVPASS = IVPASS + 1                                               04700300
                    474:       WRITE (I02,80002) IVTNUM                                          04710300
                    475:       GO TO 0131                                                        04720300
                    476: 20120 IVFAIL = IVFAIL + 1                                               04730300
                    477:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04740300
                    478:  0131 CONTINUE                                                          04750300
                    479: C                                                                       04760300
                    480: C     ****  FCVS PROGRAM 300  -  TEST 013  ****                         04770300
                    481: C                                                                       04780300
                    482: C        THIS IS A TEST FOR EQUATING TWO REAL ARRAY ELEMENTS.  THIS     04790300
                    483: C     TEST CHECKS THE EQUIVALENCE OF THE TWO ARRAY ELEMENTS SPECIFIED   04800300
                    484: C     IN THE EQUIVALENCE STATEMENT.                                     04810300
                    485: C                                                                       04820300
                    486: C                                                                       04830300
                    487:       IVTNUM =  13                                                      04840300
                    488:       IF (ICZERO) 30130, 0130, 30130                                    04850300
                    489:  0130 CONTINUE                                                          04860300
                    490:       RVCOMP = 0.0                                                      04870300
                    491:       RADE11(4) = 11.4                                                  04880300
                    492:       RADE12(2) = 1.22                                                  04890300
                    493:       RVCORR = 1.22                                                     04900300
                    494:       RVCOMP = RADE11(4)                                                04910300
                    495: 40130 IF (RVCOMP - 1.2195) 20130,10130,40131                            04920300
                    496: 40131 IF (RVCOMP - 1.2205) 10130,10130,20130                            04930300
                    497: 30130 IVDELE = IVDELE + 1                                               04940300
                    498:       WRITE (I02,80000) IVTNUM                                          04950300
                    499:       IF (ICZERO) 10130, 0141, 20130                                    04960300
                    500: 10130 IVPASS = IVPASS + 1                                               04970300
                    501:       WRITE (I02,80002) IVTNUM                                          04980300
                    502:       GO TO 0141                                                        04990300
                    503: 20130 IVFAIL = IVFAIL + 1                                               05000300
                    504:       WRITE (I02,80012) IVTNUM, RVCOMP, RVCORR                          05010300
                    505:  0141 CONTINUE                                                          05020300
                    506: C                                                                       05030300
                    507: C     ****  FCVS PROGRAM 300  -  TEST 014  ****                         05040300
                    508: C                                                                       05050300
                    509: C        THIS TEST CHECKS THE EQUIVALENCE OF THE ARRAY ELEMENTS         05060300
                    510: C     WITH A SUBSCRIPT VALUE ONE LESS THAN THOSE TESTED IN THE          05070300
                    511: C     PREVIOUS TEST.  THESE ELEMENTS SHOULD BE EQUATED AND SHARE THE    05080300
                    512: C     SAME STORAGE UNIT DUE TO THE WAY ARRAY ELEMENTS OCCUPY            05090300
                    513: C     CONSECUTIVE STORAGE UNITS.                                        05100300
                    514: C                                                                       05110300
                    515: C                                                                       05120300
                    516:       IVTNUM =  14                                                      05130300
                    517:       IF (ICZERO) 30140, 0140, 30140                                    05140300
                    518:  0140 CONTINUE                                                          05150300
                    519:       RVCOMP = 0.0                                                      05160300
                    520:       RADE11(3) = .113                                                  05170300
                    521:       RADE12(1) = 122.                                                  05180300
                    522:       RVCORR = 122.                                                     05190300
                    523:       RVCOMP = RADE11(3)                                                05200300
                    524: 40140 IF (RVCOMP - 121.95) 20140,10140,40141                            05210300
                    525: 40141 IF (RVCOMP - 122.05) 10140,10140,20140                            05220300
                    526: 30140 IVDELE = IVDELE + 1                                               05230300
                    527:       WRITE (I02,80000) IVTNUM                                          05240300
                    528:       IF (ICZERO) 10140, 0151, 20140                                    05250300
                    529: 10140 IVPASS = IVPASS + 1                                               05260300
                    530:       WRITE (I02,80002) IVTNUM                                          05270300
                    531:       GO TO 0151                                                        05280300
                    532: 20140 IVFAIL = IVFAIL + 1                                               05290300
                    533:       WRITE (I02,80012) IVTNUM, RVCOMP, RVCORR                          05300300
                    534:  0151 CONTINUE                                                          05310300
                    535: C                                                                       05320300
                    536: C     ****  FCVS PROGRAM 300  -  TEST 015  ****                         05330300
                    537: C                                                                       05340300
                    538: C        THIS IS A TEST TO EQUATE AN ARRAY NAME TO AN ARRAY ELEMENT     05350300
                    539: C     NAME.                                                             05360300
                    540: C                                                                       05370300
                    541: C                                                                       05380300
                    542:       IVTNUM =  15                                                      05390300
                    543:       IF (ICZERO) 30150, 0150, 30150                                    05400300
                    544:  0150 CONTINUE                                                          05410300
                    545:       IVCOMP = 0                                                        05420300
                    546:       IADE13(1) = 131                                                   05430300
                    547:       IADE14(3) = 143                                                   05440300
                    548:       IVCORR = 143                                                      05450300
                    549:       IVCOMP = IADE13(1)                                                05460300
                    550: 40150 IF (IVCOMP - 143) 20150,10150,20150                               05470300
                    551: 30150 IVDELE = IVDELE + 1                                               05480300
                    552:       WRITE (I02,80000) IVTNUM                                          05490300
                    553:       IF (ICZERO) 10150, 0161, 20150                                    05500300
                    554: 10150 IVPASS = IVPASS + 1                                               05510300
                    555:       WRITE (I02,80002) IVTNUM                                          05520300
                    556:       GO TO 0161                                                        05530300
                    557: 20150 IVFAIL = IVFAIL + 1                                               05540300
                    558:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05550300
                    559:  0161 CONTINUE                                                          05560300
                    560: C                                                                       05570300
                    561: C     ****  FCVS PROGRAM 300  -  TEST 016  ****                         05580300
                    562: C                                                                       05590300
                    563: C        THIS IS A TEST TO EQUATE AN ARRAY ELEMENT TO AN INTEGER        05600300
                    564: C     VARIABLE.                                                         05610300
                    565: C                                                                       05620300
                    566: C                                                                       05630300
                    567:       IVTNUM =  16                                                      05640300
                    568:       IF (ICZERO) 30160, 0160, 30160                                    05650300
                    569:  0160 CONTINUE                                                          05660300
                    570:       IVCOMP = 0                                                        05670300
                    571:       IADE15(2) = 152                                                   05680300
                    572:       IVOE18 = 18                                                       05690300
                    573:       IVCORR = 18                                                       05700300
                    574:       IVCOMP = IADE15(2)                                                05710300
                    575: 40160 IF (IVCOMP - 18) 20160,10160,20160                                05720300
                    576: 30160 IVDELE = IVDELE + 1                                               05730300
                    577:       WRITE (I02,80000) IVTNUM                                          05740300
                    578:       IF (ICZERO) 10160, 0171, 20160                                    05750300
                    579: 10160 IVPASS = IVPASS + 1                                               05760300
                    580:       WRITE (I02,80002) IVTNUM                                          05770300
                    581:       GO TO 0171                                                        05780300
                    582: 20160 IVFAIL = IVFAIL + 1                                               05790300
                    583:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05800300
                    584:  0171 CONTINUE                                                          05810300
                    585: C                                                                       05820300
                    586: C     ****  FCVS PROGRAM 300  -  TEST 017  ****                         05830300
                    587: C                                                                       05840300
                    588: C        THIS IS A TEST TO EQUATE A ONE DIMENSIONAL ARRAY TO A TWO      05850300
                    589: C     DIMENSIONAL ARRAY.  THIS TEST CHECKS THE SECOND ARRAY ELEMENTS.   05860300
                    590: C                                                                       05870300
                    591: C                                                                       05880300
                    592:       IVTNUM =  17                                                      05890300
                    593:       IF (ICZERO) 30170, 0170, 30170                                    05900300
                    594:  0170 CONTINUE                                                          05910300
                    595:       IVCOMP = 0                                                        05920300
                    596:       IADE21(2,1) = 212                                                 05930300
                    597:       IADE16(2) = 162                                                   05940300
                    598:       IVCORR = 162                                                      05950300
                    599:       IVCOMP = IADE21(2,1)                                              05960300
                    600: 40170 IF (IVCOMP - 162) 20170,10170,20170                               05970300
                    601: 30170 IVDELE = IVDELE + 1                                               05980300
                    602:       WRITE (I02,80000) IVTNUM                                          05990300
                    603:       IF (ICZERO) 10170, 0181, 20170                                    06000300
                    604: 10170 IVPASS = IVPASS + 1                                               06010300
                    605:       WRITE (I02,80002) IVTNUM                                          06020300
                    606:       GO TO 0181                                                        06030300
                    607: 20170 IVFAIL = IVFAIL + 1                                               06040300
                    608:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          06050300
                    609:  0181 CONTINUE                                                          06060300
                    610: C                                                                       06070300
                    611: C     ****  FCVS PROGRAM 300  -  TEST 018  ****                         06080300
                    612: C                                                                       06090300
                    613: C        THIS TEST CHECKS THE THIRD ARRAY ELEMENTS FROM THE PREVIOUS    06100300
                    614: C     TEST.                                                             06110300
                    615: C                                                                       06120300
                    616: C                                                                       06130300
                    617:       IVTNUM =  18                                                      06140300
                    618:       IF (ICZERO) 30180, 0180, 30180                                    06150300
                    619:  0180 CONTINUE                                                          06160300
                    620:       IVCOMP = 0                                                        06170300
                    621:       IADE21(1,2) = 2112                                                06180300
                    622:       IADE16(3) = 163                                                   06190300
                    623:       IVCORR = 163                                                      06200300
                    624:       IVCOMP = IADE21(1,2)                                              06210300
                    625: 40180 IF (IVCOMP - 163) 20180,10180,20180                               06220300
                    626: 30180 IVDELE = IVDELE + 1                                               06230300
                    627:       WRITE (I02,80000) IVTNUM                                          06240300
                    628:       IF (ICZERO) 10180, 0191, 20180                                    06250300
                    629: 10180 IVPASS = IVPASS + 1                                               06260300
                    630:       WRITE (I02,80002) IVTNUM                                          06270300
                    631:       GO TO 0191                                                        06280300
                    632: 20180 IVFAIL = IVFAIL + 1                                               06290300
                    633:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          06300300
                    634:  0191 CONTINUE                                                          06310300
                    635: C                                                                       06320300
                    636: C     ****  FCVS PROGRAM 300  -  TEST 019  ****                         06330300
                    637: C                                                                       06340300
                    638: C        THIS IS A TEST TO EQUATE TWO INTEGER VARIABLES ONE OF WHICH    06350300
                    639: C     IS INITIALIZED IN A DATA STATEMENT.                               06360300
                    640: C                                                                       06370300
                    641: C                                                                       06380300
                    642:       IVTNUM =  19                                                      06390300
                    643:       IF (ICZERO) 30190, 0190, 30190                                    06400300
                    644:  0190 CONTINUE                                                          06410300
                    645:       IVCOMP = 0                                                        06420300
                    646:       IVCORR = 19                                                       06430300
                    647:       IVCOMP = IVOE20                                                   06440300
                    648: 40190 IF (IVCOMP - 19) 20190,10190,20190                                06450300
                    649: 30190 IVDELE = IVDELE + 1                                               06460300
                    650:       WRITE (I02,80000) IVTNUM                                          06470300
                    651:       IF (ICZERO) 10190, 0201, 20190                                    06480300
                    652: 10190 IVPASS = IVPASS + 1                                               06490300
                    653:       WRITE (I02,80002) IVTNUM                                          06500300
                    654:       GO TO 0201                                                        06510300
                    655: 20190 IVFAIL = IVFAIL + 1                                               06520300
                    656:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          06530300
                    657:  0201 CONTINUE                                                          06540300
                    658: C                                                                       06550300
                    659: C                                                                       06560300
                    660: C     WRITE OUT TEST SUMMARY                                            06570300
                    661: C                                                                       06580300
                    662:       WRITE (I02,90004)                                                 06590300
                    663:       WRITE (I02,90014)                                                 06600300
                    664:       WRITE (I02,90004)                                                 06610300
                    665:       WRITE (I02,90000)                                                 06620300
                    666:       WRITE (I02,90004)                                                 06630300
                    667:       WRITE (I02,90020) IVFAIL                                          06640300
                    668:       WRITE (I02,90022) IVPASS                                          06650300
                    669:       WRITE (I02,90024) IVDELE                                          06660300
                    670:       STOP                                                              06670300
                    671: 90001 FORMAT (1H ,24X,5HFM300)                                          06680300
                    672: 90000 FORMAT (1H ,20X,20HEND OF PROGRAM FM300)                          06690300
                    673: C                                                                       06700300
                    674: C     FORMATS FOR TEST DETAIL LINES                                     06710300
                    675: C                                                                       06720300
                    676: 80000 FORMAT (1H ,4X,I5,6X,7HDELETED)                                   06730300
                    677: 80002 FORMAT (1H ,4X,I5,7X,4HPASS)                                      06740300
                    678: 80010 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6)                         06750300
                    679: 80012 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5)                    06760300
                    680: 80018 FORMAT (1H ,4X,I5,7X,4HFAIL,2X,A14,1X,A14)                        06770300
                    681: C                                                                       06780300
                    682: C     FORMAT STATEMENTS FOR PAGE HEADERS                                06790300
                    683: C                                                                       06800300
                    684: 90002 FORMAT (1H1)                                                      06810300
                    685: 90004 FORMAT (1H )                                                      06820300
                    686: 90006 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM)            06830300
                    687: 90008 FORMAT (1H ,21X,11HVERSION 1.0)                                   06840300
                    688: 90010 FORMAT (1H ,8X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978)         06850300
                    689: 90012 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL,5X,8HCOMPUTED,8X,7HCORRECT)  06860300
                    690: 90014 FORMAT (1H ,5X,46H----------------------------------------------) 06870300
                    691: 90016 FORMAT (1H ,18X,17HSUBSET LEVEL TEST)                             06880300
                    692: C                                                                       06890300
                    693: C     FORMAT STATEMENTS FOR RUN SUMMARY                                 06900300
                    694: C                                                                       06910300
                    695: 90020 FORMAT (1H ,19X,I5,13H TESTS FAILED)                              06920300
                    696: 90022 FORMAT (1H ,19X,I5,13H TESTS PASSED)                              06930300
                    697: 90024 FORMAT (1H ,19X,I5,14H TESTS DELETED)                             06940300
                    698:       END                                                               06950300

unix.superglobalmegacorp.com

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