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

1.1       root        1: C     COMMENT SECTION.                                                  00010023
                      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                                                                       00020023
                      6: C     FM023                                                             00030023
                      7: C                                                                       00040023
                      8: C                  TWO DIMENSIONED ARRAYS ARE USED IN THIS ROUTINE.     00050023
                      9: C         THIS ROUTINE TESTS ARRAYS WITH FIXED DIMENSION AND SIZE LIMITS00060023
                     10: C     SET EITHER IN A BLANK COMMON OR DIMENSION STATEMENT.  THE VALUES  00070023
                     11: C     OF THE ARRAY ELEMENTS ARE SET IN VARIOUS WAYS SUCH AS SIMPLE      00080023
                     12: C     ASSIGNMENT STATEMENTS, SET TO THE VALUES OF OTHER ARRAY ELEMENTS  00090023
                     13: C     (EITHER POSITIVE OR NEGATIVE), SET BY INTEGER TO REAL OR REAL TO  00100023
                     14: C     INTEGER CONVERSION, SET BY ARITHMETIC EXPRESSIONS, OR SET BY      00110023
                     15: C     USE OF THE  EQUIVALENCE  STATEMENT.                               00120023
                     16: C                                                                       00130023
                     17: C                                                                       00140023
                     18: C      REFERENCES                                                       00150023
                     19: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00160023
                     20: C              X3.9-1978                                                00170023
                     21: C                                                                       00180023
                     22: C        SECTION 8, SPECIFICATION STATEMENTS                            00190023
                     23: C        SECTION 8.1, DIMENSION STATEMENT                               00200023
                     24: C        SECTION 8.2, EQUIVALENCE STATEMENT                             00210023
                     25: C        SECTION 8.3, COMMON STATEMENT                                  00220023
                     26: C        SECTION 8.4, TYPE-STATEMENTS                                   00230023
                     27: C        SECTION 9, DATA STATEMENT                                      00240023
                     28: C                                                                       00250023
                     29:       COMMON IADN22(2,2), RADN22(2,2), ICOE01, RCOE01                   00260023
                     30:       DIMENSION IADN21(2,2), RADN21(2,2)                                00270023
                     31:       DIMENSION IADE23(2,2), IADE24(2,2), RADE23(2,2), RADE24(2,2)      00280023
                     32:       EQUIVALENCE (IADE23(2,2),IADN22(2,2),IADE24(2,2))                 00290023
                     33:       EQUIVALENCE (RADE23(2,2),RADN22(2,2),RADE24(2,2))                 00300023
                     34:       EQUIVALENCE (ICOE01,ICOE02,ICOE03,ICOE04), (RCOE01,RCOE02,RCOE03) 00310023
                     35:       INTEGER RADN11(2), RADN25(2,2)                                    00320023
                     36:       LOGICAL LADN21(2,2)                                               00330023
                     37:       DATA RADN21(2,2)/-512./                                           00340023
                     38:       DATA LADN21/4*.TRUE./                                             00350023
                     39: C                                                                       00360023
                     40: C      **********************************************************       00370023
                     41: C                                                                       00380023
                     42: C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00390023
                     43: C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN NATIONAL STANDARD  00400023
                     44: C     PROGRAMMING LANGUAGE FORTRAN X3.9-1978, HAS BEEN DEVELOPED BY THE 00410023
                     45: C     FEDERAL COBOL COMPILER TESTING SERVICE.  THE FORTRAN COMPILER     00420023
                     46: C     VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT ROUTINES, THEIR RELATED00430023
                     47: C     DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT ROUTINE IS A FORTRAN   00440023
                     48: C     PROGRAM, SUBPROGRAM OR FUNCTION WHICH INCLUDES TESTS OF SPECIFIC  00450023
                     49: C     LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING THE RESULT 00460023
                     50: C     OF EXECUTING THESE TESTS.                                         00470023
                     51: C                                                                       00480023
                     52: C         THIS PARTICULAR PROGRAM/SUBPROGRAM/FUNCTION CONTAINS FEATURES 00490023
                     53: C     FOUND ONLY IN THE SUBSET AS DEFINED IN X3.9-1978.                 00500023
                     54: C                                                                       00510023
                     55: C         SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO -             00520023
                     56: C                                                                       00530023
                     57: C                  DEPARTMENT OF THE NAVY                               00540023
                     58: C                  FEDERAL COBOL COMPILER TESTING SERVICE               00550023
                     59: C                  WASHINGTON, D.C.  20376                              00560023
                     60: C                                                                       00570023
                     61: C      **********************************************************       00580023
                     62: C                                                                       00590023
                     63: C                                                                       00600023
                     64: C                                                                       00610023
                     65: C     INITIALIZATION SECTION                                            00620023
                     66: C                                                                       00630023
                     67: C     INITIALIZE CONSTANTS                                              00640023
                     68: C      **************                                                   00650023
                     69: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER.         00660023
                     70:       I01 = 5                                                           00670023
                     71: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER.             00680023
                     72:       I02 = 6                                                           00690023
                     73: C     SYSTEM ENVIRONMENT SECTION                                        00700023
                     74: C                                                                       00710023
                     75:       I01 = 5                                                           00720023
                     76: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      00730023
                     77: C     (UNIT NUMBER FOR CARD READER).                                    00740023
                     78: CX011    THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD. 00750023
                     79: C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00760023
                     80: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         00770023
                     81: C                                                                       00780023
                     82:       I02 = 6                                                           00790023
                     83: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      00800023
                     84: C     (UNIT NUMBER FOR PRINTER).                                        00810023
                     85: CX021    THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD. 00820023
                     86: C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00830023
                     87: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         00840023
                     88: C                                                                       00850023
                     89:       IVPASS=0                                                          00860023
                     90:       IVFAIL=0                                                          00870023
                     91:       IVDELE=0                                                          00880023
                     92:       ICZERO=0                                                          00890023
                     93: C                                                                       00900023
                     94: C     WRITE PAGE HEADERS                                                00910023
                     95:       WRITE (I02,90000)                                                 00920023
                     96:       WRITE (I02,90001)                                                 00930023
                     97:       WRITE (I02,90002)                                                 00940023
                     98:       WRITE (I02, 90002)                                                00950023
                     99:       WRITE (I02,90003)                                                 00960023
                    100:       WRITE (I02,90002)                                                 00970023
                    101:       WRITE (I02,90004)                                                 00980023
                    102:       WRITE (I02,90002)                                                 00990023
                    103:       WRITE (I02,90011)                                                 01000023
                    104:       WRITE (I02,90002)                                                 01010023
                    105:       WRITE (I02,90002)                                                 01020023
                    106:       WRITE (I02,90005)                                                 01030023
                    107:       WRITE (I02,90006)                                                 01040023
                    108:       WRITE (I02,90002)                                                 01050023
                    109:       IVTNUM = 632                                                      01060023
                    110: C                                                                       01070023
                    111: C      ****  TEST 632  ****                                             01080023
                    112: C     TEST 632  -  TESTS SETTING AN INTEGER ARRAY ELEMENT BY A          01090023
                    113: C     SIMPLE ASSIGNMENT STATEMENT TO THE VALUE 9999.                    01100023
                    114: C                                                                       01110023
                    115:       IF (ICZERO) 36320, 6320, 36320                                    01120023
                    116:  6320 CONTINUE                                                          01130023
                    117:       IADN21(1,1) = 9999                                                01140023
                    118:       IVCOMP = IADN21(1,1)                                              01150023
                    119:       GO TO 46320                                                       01160023
                    120: 36320 IVDELE = IVDELE + 1                                               01170023
                    121:       WRITE (I02,80003) IVTNUM                                          01180023
                    122:       IF (ICZERO) 46320, 6331, 46320                                    01190023
                    123: 46320 IF ( IVCOMP - 9999 )  26320, 16320, 26320                         01200023
                    124: 16320 IVPASS = IVPASS + 1                                               01210023
                    125:       WRITE (I02,80001) IVTNUM                                          01220023
                    126:       GO TO 6331                                                        01230023
                    127: 26320 IVFAIL = IVFAIL + 1                                               01240023
                    128:       IVCORR = 9999                                                     01250023
                    129:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          01260023
                    130:  6331 CONTINUE                                                          01270023
                    131:       IVTNUM = 633                                                      01280023
                    132: C                                                                       01290023
                    133: C      ****  TEST 633  ****                                             01300023
                    134: C     TEST 633  -  TESTS SETTING A REAL ARRAY ELEMENT BY A SIMPLE       01310023
                    135: C     ASSIGNMENT STATEMENT TO THE VALUE -32766.                         01320023
                    136: C                                                                       01330023
                    137:       IF (ICZERO) 36330, 6330, 36330                                    01340023
                    138:  6330 CONTINUE                                                          01350023
                    139:       RADN21(1,2) = -32766.                                             01360023
                    140:       IVCOMP = RADN21(1,2)                                              01370023
                    141:       GO TO 46330                                                       01380023
                    142: 36330 IVDELE = IVDELE + 1                                               01390023
                    143:       WRITE (I02,80003) IVTNUM                                          01400023
                    144:       IF (ICZERO) 46330, 6341, 46330                                    01410023
                    145: 46330 IF ( IVCOMP + 32766 )  26330, 16330, 26330                        01420023
                    146: 16330 IVPASS = IVPASS + 1                                               01430023
                    147:       WRITE (I02,80001) IVTNUM                                          01440023
                    148:       GO TO 6341                                                        01450023
                    149: 26330 IVFAIL = IVFAIL + 1                                               01460023
                    150:       IVCORR = -32766                                                   01470023
                    151:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          01480023
                    152:  6341 CONTINUE                                                          01490023
                    153:       IVTNUM = 634                                                      01500023
                    154: C                                                                       01510023
                    155: C      ****  TEST 634  ****                                             01520023
                    156: C     TEST 634  -  TEST OF THE DATA INITIALIZATION STATEMENT AND SETTING01530023
                    157: C     AN INTEGER ARRAY ELEMENT EQUAL TO THE VALUE OF A REAL ARRAY       01540023
                    158: C     ELEMENT.  THE VALUE USED IS -512.                                 01550023
                    159: C                                                                       01560023
                    160:       IF (ICZERO) 36340, 6340, 36340                                    01570023
                    161:  6340 CONTINUE                                                          01580023
                    162:       IADN21(2,2) = RADN21(2,2)                                         01590023
                    163:       IVCOMP = IADN21(2,2)                                              01600023
                    164:       GO TO 46340                                                       01610023
                    165: 36340 IVDELE = IVDELE + 1                                               01620023
                    166:       WRITE (I02,80003) IVTNUM                                          01630023
                    167:       IF (ICZERO) 46340, 6351, 46340                                    01640023
                    168: 46340 IF ( IVCOMP + 512 )  26340, 16340, 26340                          01650023
                    169: 16340 IVPASS = IVPASS + 1                                               01660023
                    170:       WRITE (I02,80001) IVTNUM                                          01670023
                    171:       GO TO 6351                                                        01680023
                    172: 26340 IVFAIL = IVFAIL + 1                                               01690023
                    173:       IVCORR = -512                                                     01700023
                    174:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          01710023
                    175:  6351 CONTINUE                                                          01720023
                    176:       IVTNUM = 635                                                      01730023
                    177: C                                                                       01740023
                    178: C      ****  TEST 635  ****                                             01750023
                    179: C     TEST 635  -  TEST OF SETTING A TWO DIMENSIONED ARRAY ELEMENT      01760023
                    180: C     EQUAL TO THE VALUE OF A ONE DIMENSIONED ARRAY ELEMENT.            01770023
                    181: C     BOTH ARRAYS ARE SET INTEGER BY THE TYPE STATEMENT AND THE TWO     01780023
                    182: C     DIMENSIONED ARRAY ELEMENT IS MINUS THE VALUE OF THE ONE DIMENSION 01790023
                    183: C     ELEMENT.  THE VALUE USED IS 3.                                    01800023
                    184: C                                                                       01810023
                    185:       IF (ICZERO) 36350, 6350, 36350                                    01820023
                    186:  6350 CONTINUE                                                          01830023
                    187:       RADN11(1) = 3                                                     01840023
                    188:       RADN25(2,2) = - RADN11(1)                                         01850023
                    189:       IVCOMP = RADN25(2,2)                                              01860023
                    190:       GO TO 46350                                                       01870023
                    191: 36350 IVDELE = IVDELE + 1                                               01880023
                    192:       WRITE (I02,80003) IVTNUM                                          01890023
                    193:       IF (ICZERO) 46350, 6361, 46350                                    01900023
                    194: 46350 IF ( IVCOMP + 3 )  26350, 16350, 26350                            01910023
                    195: 16350 IVPASS = IVPASS + 1                                               01920023
                    196:       WRITE (I02,80001) IVTNUM                                          01930023
                    197:       GO TO 6361                                                        01940023
                    198: 26350 IVFAIL = IVFAIL + 1                                               01950023
                    199:       IVCORR = -3                                                       01960023
                    200:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          01970023
                    201:  6361 CONTINUE                                                          01980023
                    202:       IVTNUM = 636                                                      01990023
                    203: C                                                                       02000023
                    204: C      ****  TEST 636  ****                                             02010023
                    205: C     TEST 636  -  TEST OF LOGICAL ARRAY ELEMENTS SET BY DATA STATEMENTS02020023
                    206: C                                                                       02030023
                    207:       IF (ICZERO) 36360, 6360, 36360                                    02040023
                    208:  6360 CONTINUE                                                          02050023
                    209:       ICON01 = 0                                                        02060023
                    210:       IF ( LADN21(2,1) )  ICON01 = 1                                    02070023
                    211:       GO TO 46360                                                       02080023
                    212: 36360 IVDELE = IVDELE + 1                                               02090023
                    213:       WRITE (I02,80003) IVTNUM                                          02100023
                    214:       IF (ICZERO) 46360, 6371, 46360                                    02110023
                    215: 46360 IF ( ICON01 - 1 )  26360, 16360, 26360                            02120023
                    216: 16360 IVPASS = IVPASS + 1                                               02130023
                    217:       WRITE (I02,80001) IVTNUM                                          02140023
                    218:       GO TO 6371                                                        02150023
                    219: 26360 IVFAIL = IVFAIL + 1                                               02160023
                    220:       IVCOMP = ICON01                                                   02170023
                    221:       IVCORR = 1                                                        02180023
                    222:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02190023
                    223:  6371 CONTINUE                                                          02200023
                    224:       IVTNUM = 637                                                      02210023
                    225: C                                                                       02220023
                    226: C      ****  TEST 637  ****                                             02230023
                    227: C     TEST 637  -  TEST OF REAL TO INTEGER CONVERSION AND SETTING       02240023
                    228: C     INTEGER ARRAY ELEMENTS TO THE VALUE OBTAINED IN AN ARITHMETIC     02250023
                    229: C     EXPRESSION USING REAL ARRAY ELEMENTS.   .5  +  .5  =  1           02260023
                    230: C                                                                       02270023
                    231:       IF (ICZERO) 36370, 6370, 36370                                    02280023
                    232:  6370 CONTINUE                                                          02290023
                    233:       RADN21(1,2) = 00000.5                                             02300023
                    234:       RADN21(2,1) = .500000                                             02310023
                    235:       IADN21(2,1) = RADN21(1,2) + RADN21(2,1)                           02320023
                    236:       IVCOMP = IADN21(2,1)                                              02330023
                    237:       GO TO 46370                                                       02340023
                    238: 36370 IVDELE = IVDELE + 1                                               02350023
                    239:       WRITE (I02,80003) IVTNUM                                          02360023
                    240:       IF (ICZERO) 46370, 6381, 46370                                    02370023
                    241: 46370 IF ( IVCOMP - 1 )  26370, 16370, 26370                            02380023
                    242: 16370 IVPASS = IVPASS + 1                                               02390023
                    243:       WRITE (I02,80001) IVTNUM                                          02400023
                    244:       GO TO 6381                                                        02410023
                    245: 26370 IVFAIL = IVFAIL + 1                                               02420023
                    246:       IVCORR = 1                                                        02430023
                    247:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02440023
                    248:  6381 CONTINUE                                                          02450023
                    249:       IVTNUM = 638                                                      02460023
                    250: C                                                                       02470023
                    251: C      ****  TEST 638  ****                                             02480023
                    252: C     TEST 638  -  TEST OF EQUIVALENCE OF THREE INTEGER ARRAYS ONE OF   02490023
                    253: C     WHICH IS IN COMMON.                                               02500023
                    254: C                                                                       02510023
                    255:       IF (ICZERO) 36380, 6380, 36380                                    02520023
                    256:  6380 CONTINUE                                                          02530023
                    257:       IADN22(2,1) = -9999                                               02540023
                    258:       IVCOMP = IADE23(2,1)                                              02550023
                    259:       GO TO 46380                                                       02560023
                    260: 36380 IVDELE = IVDELE + 1                                               02570023
                    261:       WRITE (I02,80003) IVTNUM                                          02580023
                    262:       IF (ICZERO) 46380, 6391, 46380                                    02590023
                    263: 46380 IF ( IVCOMP + 9999 )  26380, 16380, 26380                         02600023
                    264: 16380 IVPASS = IVPASS + 1                                               02610023
                    265:       WRITE (I02,80001) IVTNUM                                          02620023
                    266:       GO TO 6391                                                        02630023
                    267: 26380 IVFAIL = IVFAIL + 1                                               02640023
                    268:       IVCORR = -9999                                                    02650023
                    269:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02660023
                    270:  6391 CONTINUE                                                          02670023
                    271:       IVTNUM = 639                                                      02680023
                    272: C                                                                       02690023
                    273: C      ****  TEST 639  ****                                             02700023
                    274: C     TEST 639  -  LIKE TEST 638 ONLY THE OTHER EQUIVALENCED ARRAY IS   02710023
                    275: C     TESTED FOR THE VALUE -9999.                                       02720023
                    276: C                                                                       02730023
                    277:       IF (ICZERO) 36390, 6390, 36390                                    02740023
                    278:  6390 CONTINUE                                                          02750023
                    279:       IADE23(2,1) = -9999                                               02760023
                    280:       IVCOMP = IADE24(2,1)                                              02770023
                    281:       GO TO 46390                                                       02780023
                    282: 36390 IVDELE = IVDELE + 1                                               02790023
                    283:       WRITE (I02,80003) IVTNUM                                          02800023
                    284:       IF (ICZERO) 46390, 6401, 46390                                    02810023
                    285: 46390 IF ( IVCOMP + 9999 )  26390, 16390, 26390                         02820023
                    286: 16390 IVPASS = IVPASS + 1                                               02830023
                    287:       WRITE (I02,80001) IVTNUM                                          02840023
                    288:       GO TO 6401                                                        02850023
                    289: 26390 IVFAIL = IVFAIL + 1                                               02860023
                    290:       IVCORR = -9999                                                    02870023
                    291:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          02880023
                    292:  6401 CONTINUE                                                          02890023
                    293:       IVTNUM = 640                                                      02900023
                    294: C                                                                       02910023
                    295: C      ****  TEST 640  ****                                             02920023
                    296: C     TEST 640  -  TEST OF THREE REAL ARRAYS THAT ARE EQUIVALENCED.     02930023
                    297: C     ONE OF THE ARRAYS IS IN COMMON.  THE VALUE 512 IS SET INTO ONE OF 02940023
                    298: C     THE DIMENSIONED ARRAY ELEMENTS BY AN INTEGER TO REAL CONVERSION   02950023
                    299: C     ASSIGNMENT STATEMENT.                                             02960023
                    300: C                                                                       02970023
                    301:       IF (ICZERO) 36400, 6400, 36400                                    02980023
                    302:  6400 CONTINUE                                                          02990023
                    303:       RADE24(2,2) = 512                                                 03000023
                    304:       IVCOMP = RADN22(2,2)                                              03010023
                    305:       GO TO 46400                                                       03020023
                    306: 36400 IVDELE = IVDELE + 1                                               03030023
                    307:       WRITE (I02,80003) IVTNUM                                          03040023
                    308:       IF (ICZERO) 46400, 6411, 46400                                    03050023
                    309: 46400 IF ( IVCOMP - 512 )  26400, 16400, 26400                          03060023
                    310: 16400 IVPASS = IVPASS + 1                                               03070023
                    311:       WRITE (I02,80001) IVTNUM                                          03080023
                    312:       GO TO 6411                                                        03090023
                    313: 26400 IVFAIL = IVFAIL + 1                                               03100023
                    314:       IVCORR = 512                                                      03110023
                    315:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03120023
                    316:  6411 CONTINUE                                                          03130023
                    317:       IVTNUM = 641                                                      03140023
                    318: C                                                                       03150023
                    319: C      ****  TEST 641  ****                                             03160023
                    320: C     TEST 641  -  LIKE TEST 640 ONLY THE OTHER EQUIVALENCED ARRAY IS   03170023
                    321: C     TESTED FOR THE VALUE 512.                                         03180023
                    322: C                                                                       03190023
                    323:       IF (ICZERO) 36410, 6410, 36410                                    03200023
                    324:  6410 CONTINUE                                                          03210023
                    325:       RADN22(2,2) = 512                                                 03220023
                    326:       IVCOMP = RADE23(2,2)                                              03230023
                    327:       GO TO 46410                                                       03240023
                    328: 36410 IVDELE = IVDELE + 1                                               03250023
                    329:       WRITE (I02,80003) IVTNUM                                          03260023
                    330:       IF (ICZERO) 46410, 6421, 46410                                    03270023
                    331: 46410 IF ( IVCOMP - 512 )  26410, 16410, 26410                          03280023
                    332: 16410 IVPASS = IVPASS + 1                                               03290023
                    333:       WRITE (I02,80001) IVTNUM                                          03300023
                    334:       GO TO 6421                                                        03310023
                    335: 26410 IVFAIL = IVFAIL + 1                                               03320023
                    336:       IVCORR = 512                                                      03330023
                    337:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03340023
                    338:  6421 CONTINUE                                                          03350023
                    339:       IVTNUM = 642                                                      03360023
                    340: C                                                                       03370023
                    341: C      ****  TEST 642  ****                                             03380023
                    342: C     TEST 642  -  TEST OF FOUR INTEGER VARIABLES THAT ARE EQUIVALENCED.03390023
                    343: C     ONE OF THE INTEGER VARIABLES IS IN BLANK COMMON.  THE VALUE USED  03400023
                    344: C     IS 3 SET  BY AN ASSIGNMENT STATEMENT.                             03410023
                    345: C                                                                       03420023
                    346:       IF (ICZERO) 36420, 6420, 36420                                    03430023
                    347:  6420 CONTINUE                                                          03440023
                    348:       ICOE03 = 3                                                        03450023
                    349:       IVCOMP = ICOE01                                                   03460023
                    350:       GO TO 46420                                                       03470023
                    351: 36420 IVDELE = IVDELE + 1                                               03480023
                    352:       WRITE (I02,80003) IVTNUM                                          03490023
                    353:       IF (ICZERO) 46420, 6431, 46420                                    03500023
                    354: 46420 IF ( IVCOMP - 3 )  26420, 16420, 26420                            03510023
                    355: 16420 IVPASS = IVPASS + 1                                               03520023
                    356:       WRITE (I02,80001) IVTNUM                                          03530023
                    357:       GO TO 6431                                                        03540023
                    358: 26420 IVFAIL = IVFAIL + 1                                               03550023
                    359:       IVCORR = 3                                                        03560023
                    360:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03570023
                    361:  6431 CONTINUE                                                          03580023
                    362:       IVTNUM = 643                                                      03590023
                    363: C                                                                       03600023
                    364: C      ****  TEST 643  ****                                             03610023
                    365: C     TEST 643  -  LIKE TEST 642 BUT ANOTHER OF THE ELEMENTS IS TESTED  03620023
                    366: C     BY AN ARITHMETIC EXPRESSION USING THE EQUIVALENCED  ELEMENTS.     03630023
                    367: C     THE VALUE OF ALL OF THE ELEMENTS SHOULD INITITIALLY BE 3 SINCE    03640023
                    368: C     THEY ALL SHOULD SHARE THE SAME STORAGE LOCATION. ICOE04 = 3+3+3+3 03650023
                    369: C     ICOE04 = 12  THEN THE ELEMENT ICOE02 IS TESTED FOR THE VALUE 12.  03660023
                    370: C                                                                       03670023
                    371:       IF (ICZERO) 36430, 6430, 36430                                    03680023
                    372:  6430 CONTINUE                                                          03690023
                    373:       ICOE01 = 3                                                        03700023
                    374:       ICOE04 = ICOE01 + ICOE02 + ICOE03 + ICOE04                        03710023
                    375:       IVCOMP = ICOE02                                                   03720023
                    376:       GO TO 46430                                                       03730023
                    377: 36430 IVDELE = IVDELE + 1                                               03740023
                    378:       WRITE (I02,80003) IVTNUM                                          03750023
                    379:       IF (ICZERO) 46430, 6441, 46430                                    03760023
                    380: 46430 IF ( IVCOMP - 12 )  26430, 16430, 26430                           03770023
                    381: 16430 IVPASS = IVPASS + 1                                               03780023
                    382:       WRITE (I02,80001) IVTNUM                                          03790023
                    383:       GO TO 6441                                                        03800023
                    384: 26430 IVFAIL = IVFAIL + 1                                               03810023
                    385:       IVCORR = 12                                                       03820023
                    386:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          03830023
                    387:  6441 CONTINUE                                                          03840023
                    388:       IVTNUM = 644                                                      03850023
                    389: C                                                                       03860023
                    390: C      ****  TEST 644  ****                                             03870023
                    391: C     TEST 644  -  TEST OF EQUIVALENCE WITH THREE REAL VARIABLES ONE    03880023
                    392: C     OF WHICH IS IN BLANK COMMON.  THE ELEMENTS ARE SET INITIALLY TO .503890023
                    393: C     THEN ALL OF THE ELEMENTS ARE USED IN AN ARITHMETIC EXPRESSION     03900023
                    394: C     RCOE01 =(.5 + .5 + .5) * 2.   SO RCOE01 = 3.   ELEMENT RCOE02     03910023
                    395: C     IS TESTED FOR THE VALUE 3.                                        03920023
                    396: C                                                                       03930023
                    397:       IF (ICZERO) 36440, 6440, 36440                                    03940023
                    398:  6440 CONTINUE                                                          03950023
                    399:       RCOE02 = 0.5                                                      03960023
                    400:       RCOE01 = ( RCOE01 + RCOE02 + RCOE03 ) * 2.                        03970023
                    401:       IVCOMP = RCOE02                                                   03980023
                    402:       GO TO 46440                                                       03990023
                    403: 36440 IVDELE = IVDELE + 1                                               04000023
                    404:       WRITE (I02,80003) IVTNUM                                          04010023
                    405:       IF (ICZERO) 46440, 6451, 46440                                    04020023
                    406: 46440 IF ( IVCOMP - 3 )  26440, 16440, 26440                            04030023
                    407: 16440 IVPASS = IVPASS + 1                                               04040023
                    408:       WRITE (I02,80001) IVTNUM                                          04050023
                    409:       GO TO 6451                                                        04060023
                    410: 26440 IVFAIL = IVFAIL + 1                                               04070023
                    411:       IVCORR = 3                                                        04080023
                    412:       WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR                          04090023
                    413:  6451 CONTINUE                                                          04100023
                    414: C                                                                       04110023
                    415: C     WRITE PAGE FOOTINGS AND RUN SUMMARIES                             04120023
                    416: 99999 CONTINUE                                                          04130023
                    417:       WRITE (I02,90002)                                                 04140023
                    418:       WRITE (I02,90006)                                                 04150023
                    419:       WRITE (I02,90002)                                                 04160023
                    420:       WRITE (I02,90002)                                                 04170023
                    421:       WRITE (I02,90007)                                                 04180023
                    422:       WRITE (I02,90002)                                                 04190023
                    423:       WRITE (I02,90008)  IVFAIL                                         04200023
                    424:       WRITE (I02,90009) IVPASS                                          04210023
                    425:       WRITE (I02,90010) IVDELE                                          04220023
                    426: C                                                                       04230023
                    427: C                                                                       04240023
                    428: C     TERMINATE ROUTINE EXECUTION                                       04250023
                    429:       STOP                                                              04260023
                    430: C                                                                       04270023
                    431: C     FORMAT STATEMENTS FOR PAGE HEADERS                                04280023
                    432: 90000 FORMAT (1H1)                                                      04290023
                    433: 90002 FORMAT (1H )                                                      04300023
                    434: 90001 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM)            04310023
                    435: 90003 FORMAT (1H ,21X,11HVERSION 1.0)                                   04320023
                    436: 90004 FORMAT (1H ,10X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978)        04330023
                    437: 90005 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL, 5X,8HCOMPUTED,8X,7HCORRECT) 04340023
                    438: 90006 FORMAT (1H ,5X,46H----------------------------------------------) 04350023
                    439: 90011 FORMAT (1H ,18X,17HSUBSET LEVEL TEST)                             04360023
                    440: C                                                                       04370023
                    441: C     FORMAT STATEMENTS FOR RUN SUMMARIES                               04380023
                    442: 90008 FORMAT (1H ,15X,I5,19H ERRORS ENCOUNTERED)                        04390023
                    443: 90009 FORMAT (1H ,15X,I5,13H TESTS PASSED)                              04400023
                    444: 90010 FORMAT (1H ,15X,I5,14H TESTS DELETED)                             04410023
                    445: C                                                                       04420023
                    446: C     FORMAT STATEMENTS FOR TEST RESULTS                                04430023
                    447: 80001 FORMAT (1H ,4X,I5,7X,4HPASS)                                      04440023
                    448: 80002 FORMAT (1H ,4X,I5,7X,4HFAIL)                                      04450023
                    449: 80003 FORMAT (1H ,4X,I5,7X,7HDELETED)                                   04460023
                    450: 80004 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6)                         04470023
                    451: 80005 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5)                    04480023
                    452: C                                                                       04490023
                    453: 90007 FORMAT (1H ,20X,20HEND OF PROGRAM FM023)                          04500023
                    454:       END                                                               04510023

unix.superglobalmegacorp.com

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