Annotation of cci/usr/src/usr.bin/f77/testf77/tests/FM251.f, revision 1.1

1.1     ! root        1:       PROGRAM FM251                                                     00010251
        !             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                                                                       00020251
        !             6: C                                                                       00030251
        !             7: C                                                                       00040251
        !             8: C        THIS ROUTINE TESTS THE IMPLICIT STATEMENT FOR DECLARING        00050251
        !             9: C     VARIABLES AS TYPE LOGICAL.  THE TYPE OF A VARIABLE ( LOGICAL,     00060251
        !            10: C     INTEGER, OR REAL ) IS SET BY BOTH IMPLICIT STATEMENTS AND ALSO    00070251
        !            11: C     BY EXPLICIT TYPE STATEMENTS.  TESTS ARE MADE TO CHECK THAT        00080251
        !            12: C     EXPLICIT TYPE STATEMENTS OVERIDE THE TYPE SET BY AN IMPLICIT      00090251
        !            13: C     STATEMENT FOR THE VARIABLES LISTED.                               00100251
        !            14: C                                                                       00110251
        !            15: C     REFERENCES                                                        00120251
        !            16: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00130251
        !            17: C             X3.9-1977                                                 00140251
        !            18: C        SECTION 4.7,    LOGICAL TYPE                                   00150251
        !            19: C        SECTION 8.4.1,  LOGICAL TYPE STAEMENT                          00160251
        !            20: C        SECTION 8.5,    IMPLICIT STATEMENT                             00170251
        !            21: C        SECTION 11.5,   LOGICAL IF STATEMENT                           00180251
        !            22: C                                                                       00190251
        !            23: C                                                                       00200251
        !            24: C        FM016 - TESTS LOGICAL TYPE STATEMENTS WITH VARIOUS FORMS OF    00210251
        !            25: C                LOGICAL CONSTANTS AND VARIABLES.                       00220251
        !            26: C                                                                       00230251
        !            27: C                                                                       00240251
        !            28: C                                                                       00250251
        !            29: C                                                                       00260251
        !            30: C     ******************************************************************00270251
        !            31: C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00280251
        !            32: C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN STANDARD FORTRAN   00290251
        !            33: C     X3.9-1978, HAS BEEN DEVELOPED BY THE DEPARTMENT OF THE NAVY.  THE 00300251
        !            34: C     FORTRAN COMPILER VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT       00310251
        !            35: C     ROUTINES, THEIR RELATED DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT00320251
        !            36: C     ROUTINE IS A FORTRAN PROGRAM OR SUBPROGRAM WHICH INCLUDES TESTS   00330251
        !            37: C     OF SPECIFIC LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING00340251
        !            38: C     THE RESULT OF EXECUTING THESE TESTS.                              00350251
        !            39: C                                                                       00360251
        !            40: C     THIS PARTICULAR PROGRAM OR SUBPROGRAM CONTAINS ONLY FEATURES      00370251
        !            41: C     FOUND IN THE SUBSET LEVEL OF THE STANDARD.                        00380251
        !            42: C                                                                       00390251
        !            43: C           SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO             00400251
        !            44: C                    DEPARTMENT OF THE NAVY                             00410251
        !            45: C                    FEDERAL COBOL COMPILER TESTING SERVICE             00420251
        !            46: C                    WASHINGTON, D.C.   20376                           00430251
        !            47: C                                                                       00440251
        !            48: C     ******************************************************************00450251
        !            49: C                                                                       00460251
        !            50: C                                                                       00470251
        !            51:       IMPLICIT LOGICAL (L)                                              00480251
        !            52:       IMPLICIT CHARACTER*14 (C)                                         00490251
        !            53: C                                                                       00500251
        !            54:       IMPLICIT LOGICAL (M,N)                                            00510251
        !            55:       IMPLICIT LOGICAL ( E-H, O, P-Q, S-T, X-Y ), INTEGER ( U-W )       00520251
        !            56:       IMPLICIT INTEGER (A, B), REAL (I, J)                              00530251
        !            57:       INTEGER IVCOMP, IVPASS, IVCORR, IVTNUM, IVDELE, IVFAIL, I01, I02  00540251
        !            58:       INTEGER ICZERO                                                    00550251
        !            59:       INTEGER MVTN01                                                    00560251
        !            60:       REAL NVTN01                                                       00570251
        !            61:       LOGICAL MVTN02, NVTN02, MATN21(3,3)                               00580251
        !            62:       LOGICAL AVTN01                                                    00590251
        !            63:       LOGICAL IVTN01                                                    00600251
        !            64: C                                                                       00610251
        !            65: C                                                                       00620251
        !            66: C                                                                       00630251
        !            67: C     INITIALIZATION SECTION.                                           00640251
        !            68: C                                                                       00650251
        !            69: C     INITIALIZE CONSTANTS                                              00660251
        !            70: C     ********************                                              00670251
        !            71: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER          00680251
        !            72:       I01 = 5                                                           00690251
        !            73: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER              00700251
        !            74:       I02 = 6                                                           00710251
        !            75: C     SYSTEM ENVIRONMENT SECTION                                        00720251
        !            76: C                                                                       00730251
        !            77:       I01 = 5                                                           00740251
        !            78: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      00750251
        !            79: C     (UNIT NUMBER FOR CARD READER).                                    00760251
        !            80: CX011      THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD00770251
        !            81: C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00780251
        !            82: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         00790251
        !            83: C                                                                       00800251
        !            84:       I02 = 6                                                           00810251
        !            85: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      00820251
        !            86: C     (UNIT NUMBER FOR PRINTER).                                        00830251
        !            87: CX021     THIS CARD IS PEPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD.00840251
        !            88: C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00850251
        !            89: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         00860251
        !            90: C                                                                       00870251
        !            91:       IVPASS = 0                                                        00880251
        !            92:       IVFAIL = 0                                                        00890251
        !            93:       IVDELE = 0                                                        00900251
        !            94:       ICZERO = 0                                                        00910251
        !            95: C                                                                       00920251
        !            96: C     WRITE OUT PAGE HEADERS                                            00930251
        !            97: C                                                                       00940251
        !            98:       WRITE (I02,90002)                                                 00950251
        !            99:       WRITE (I02,90006)                                                 00960251
        !           100:       WRITE (I02,90008)                                                 00970251
        !           101:       WRITE (I02,90004)                                                 00980251
        !           102:       WRITE (I02,90010)                                                 00990251
        !           103:       WRITE (I02,90004)                                                 01000251
        !           104:       WRITE (I02,90016)                                                 01010251
        !           105:       WRITE (I02,90001)                                                 01020251
        !           106:       WRITE (I02,90004)                                                 01030251
        !           107:       WRITE (I02,90012)                                                 01040251
        !           108:       WRITE (I02,90014)                                                 01050251
        !           109:       WRITE (I02,90004)                                                 01060251
        !           110: C                                                                       01070251
        !           111: C                                                                       01080251
        !           112: C     ****  FCVS PROGRAM 251  -  TEST 001  ****                         01090251
        !           113: C                                                                       01100251
        !           114: C        TEST 001 ASSIGNS A LOGICAL VALUE OF .TRUE. TO MVIN01 WHICH WAS 01110251
        !           115: C     SPECIFIED AS TYPE LOGICAL IN AN IMPLICIT STATEMENT.               01120251
        !           116: C                  IMPLICIT LOGICAL (M,N)                               01130251
        !           117: C                                                                       01140251
        !           118:       IVTNUM =   1                                                      01150251
        !           119:       IF (ICZERO) 30010, 0010, 30010                                    01160251
        !           120:  0010 CONTINUE                                                          01170251
        !           121:       IVCOMP = 0                                                        01180251
        !           122:       MVIN01 = .TRUE.                                                   01190251
        !           123:       IF ( MVIN01 )  IVCOMP = 1                                         01200251
        !           124:       IVCORR = 1                                                        01210251
        !           125: 40010 IF ( IVCOMP - 1 )  20010, 10010, 20010                            01220251
        !           126: 30010 IVDELE = IVDELE + 1                                               01230251
        !           127:       WRITE (I02,80000) IVTNUM                                          01240251
        !           128:       IF (ICZERO) 10010, 0021, 20010                                    01250251
        !           129: 10010 IVPASS = IVPASS + 1                                               01260251
        !           130:       WRITE (I02,80002) IVTNUM                                          01270251
        !           131:       GO TO 0021                                                        01280251
        !           132: 20010 IVFAIL = IVFAIL + 1                                               01290251
        !           133:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01300251
        !           134:  0021 CONTINUE                                                          01310251
        !           135: C                                                                       01320251
        !           136: C     ****  FCVS PROGRAM 251  -  TEST 002  ****                         01330251
        !           137: C                                                                       01340251
        !           138: C        TEST 002 ASSIGNS A LOGICAL VALUE OF .FALSE. TO NVIN01 WHICH    01350251
        !           139: C     WAS SPECIFIED AS TYPE LOGICAL IN AN IMPLICIT STATEMENT.           01360251
        !           140: C                  IMPLICIT LOGICAL (M,N)                               01370251
        !           141: C                                                                       01380251
        !           142:       IVTNUM =   2                                                      01390251
        !           143:       IF (ICZERO) 30020, 0020, 30020                                    01400251
        !           144:  0020 CONTINUE                                                          01410251
        !           145:       IVCOMP = 1                                                        01420251
        !           146:       LCON01 = .FALSE.                                                  01430251
        !           147:       NVIN01 = LCON01                                                   01440251
        !           148:       IF ( NVIN01 )  IVCOMP = 0                                         01450251
        !           149:       IVCORR = 1                                                        01460251
        !           150: 40020 IF ( IVCOMP - 1 )  20020, 10020, 20020                            01470251
        !           151: 30020 IVDELE = IVDELE + 1                                               01480251
        !           152:       WRITE (I02,80000) IVTNUM                                          01490251
        !           153:       IF (ICZERO) 10020, 0031, 20020                                    01500251
        !           154: 10020 IVPASS = IVPASS + 1                                               01510251
        !           155:       WRITE (I02,80002) IVTNUM                                          01520251
        !           156:       GO TO 0031                                                        01530251
        !           157: 20020 IVFAIL = IVFAIL + 1                                               01540251
        !           158:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01550251
        !           159:  0031 CONTINUE                                                          01560251
        !           160: C                                                                       01570251
        !           161: C     ****  FCVS PROGRAM 251  -  TEST 003  ****                         01580251
        !           162: C                                                                       01590251
        !           163: C        TEST 003 ASSIGNS AN INTEGER VALUE OF 4 TO MVTN01 WHICH         01600251
        !           164: C     WAS SPECIFIED AS TYPE INTEGER EXPLICITLY IN A TYPE STATEMENT.     01610251
        !           165: C                  INTEGER MVTN01                                       01620251
        !           166: C     THIS TEST IS TO DETERMINE WHETHER AN EXPLICIT INTEGER TYPE        01630251
        !           167: C     STATEMENT CAN OVERRIDE THE IMPLICIT STATEMENT WHICH WOULD         01640251
        !           168: C     SET THE TYPE AS LOGICAL.                                          01650251
        !           169: C                  IMPLICIT LOGICAL (M,N)                               01660251
        !           170: C                                                                       01670251
        !           171:       IVTNUM =   3                                                      01680251
        !           172:       IF (ICZERO) 30030, 0030, 30030                                    01690251
        !           173:  0030 CONTINUE                                                          01700251
        !           174:       RVCOMP = 10.0                                                     01710251
        !           175:       MVTN01 = 4                                                        01720251
        !           176:       RVCOMP = MVTN01/5                                                 01730251
        !           177:       RVCORR = 0.0                                                      01740251
        !           178: 40030 IF ( RVCOMP )  20030, 10030, 20030                                01750251
        !           179: 30030 IVDELE = IVDELE + 1                                               01760251
        !           180:       WRITE (I02,80000) IVTNUM                                          01770251
        !           181:       IF (ICZERO) 10030, 0041, 20030                                    01780251
        !           182: 10030 IVPASS = IVPASS + 1                                               01790251
        !           183:       WRITE (I02,80002) IVTNUM                                          01800251
        !           184:       GO TO 0041                                                        01810251
        !           185: 20030 IVFAIL = IVFAIL + 1                                               01820251
        !           186:       WRITE (I02,80012) IVTNUM, RVCOMP, RVCORR                          01830251
        !           187:  0041 CONTINUE                                                          01840251
        !           188: C                                                                       01850251
        !           189: C     ****  FCVS PROGRAM 251  -  TEST 004  ****                         01860251
        !           190: C                                                                       01870251
        !           191: C        TEST 004 ASSIGNS A REAL VALUE OF 4.0 TO NVTN01 WHICH           01880251
        !           192: C     WAS SPECIFIED AS TYPE REAL EXPLICITLY IN A TYPE STATEMENT.        01890251
        !           193: C                  REAL NVTN01                                          01900251
        !           194: C     THIS TEST IS TO DETERMINE WHETHER AN EXPLICIT REAL TYPE           01910251
        !           195: C     STATEMENT CAN OVERRIDE THE IMPLICIT STATEMENT WHICH WOULD         01920251
        !           196: C     SET THE TYPE AS LOGICAL.                                          01930251
        !           197: C                  IMPLICIT LOGICAL (M,N)                               01940251
        !           198: C                                                                       01950251
        !           199:       IVTNUM =   4                                                      01960251
        !           200:       IF (ICZERO) 30040, 0040, 30040                                    01970251
        !           201:  0040 CONTINUE                                                          01980251
        !           202:       RVCOMP = 10.0                                                     01990251
        !           203:       NVTN01 = 4.0                                                      02000251
        !           204:       RVCOMP = NVTN01/5                                                 02010251
        !           205:       RVCORR = 0.8                                                      02020251
        !           206: 40040 IF ( RVCOMP - 0.79995 )  20040, 10040, 40041                      02030251
        !           207: 40041 IF ( RVCOMP - 0.80005 )  10040, 10040, 20040                      02040251
        !           208: 30040 IVDELE = IVDELE + 1                                               02050251
        !           209:       WRITE (I02,80000) IVTNUM                                          02060251
        !           210:       IF (ICZERO) 10040, 0051, 20040                                    02070251
        !           211: 10040 IVPASS = IVPASS + 1                                               02080251
        !           212:       WRITE (I02,80002) IVTNUM                                          02090251
        !           213:       GO TO 0051                                                        02100251
        !           214: 20040 IVFAIL = IVFAIL + 1                                               02110251
        !           215:       WRITE (I02,80012) IVTNUM, RVCOMP, RVCORR                          02120251
        !           216:  0051 CONTINUE                                                          02130251
        !           217: C                                                                       02140251
        !           218: C     ****  FCVS PROGRAM 251  -  TEST 005  ****                         02150251
        !           219: C                                                                       02160251
        !           220: C        TEST 005 ASSIGNS A LOGICAL VALUE OF .TRUE. TO MVTN02 WHICH WAS 02170251
        !           221: C     SPECIFIED AS TYPE LOGICAL IN AN EXPLICIT TYPE STATEMENT AFTER ALSO02180251
        !           222: C     HAVING ITS FIRST LETTER M SPECIFIED AS TYPE LOGICAL IN AN         02190251
        !           223: C     IMPLICIT STATEMENT.                                               02200251
        !           224: C                  IMPLICIT LOGICAL (M,N)                               02210251
        !           225: C                  LOGICAL MVTN02                                       02220251
        !           226: C                                                                       02230251
        !           227:       IVTNUM =   5                                                      02240251
        !           228:       IF (ICZERO) 30050, 0050, 30050                                    02250251
        !           229:  0050 CONTINUE                                                          02260251
        !           230:       IVCOMP = 0                                                        02270251
        !           231:       LCON02 = .TRUE.                                                   02280251
        !           232:       MVTN02 = LCON02                                                   02290251
        !           233:       IF ( MVTN02 )  IVCOMP = 1                                         02300251
        !           234:       IVCORR = 1                                                        02310251
        !           235: 40050 IF ( IVCOMP - 1 )  20050, 10050, 20050                            02320251
        !           236: 30050 IVDELE = IVDELE + 1                                               02330251
        !           237:       WRITE (I02,80000) IVTNUM                                          02340251
        !           238:       IF (ICZERO) 10050, 0061, 20050                                    02350251
        !           239: 10050 IVPASS = IVPASS + 1                                               02360251
        !           240:       WRITE (I02,80002) IVTNUM                                          02370251
        !           241:       GO TO 0061                                                        02380251
        !           242: 20050 IVFAIL = IVFAIL + 1                                               02390251
        !           243:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02400251
        !           244:  0061 CONTINUE                                                          02410251
        !           245: C                                                                       02420251
        !           246: C     ****  FCVS PROGRAM 251  -  TEST 006  ****                         02430251
        !           247: C                                                                       02440251
        !           248: C        TEST 006 ASSIGNS A LOGICAL VALUE OF .FALSE. TO NVTN02 WHICH WAS02450251
        !           249: C     SPECIFIED AS TYPE LOGICAL IN AN EXPLICIT TYPE STATEMENT AFTER ALSO02460251
        !           250: C     HAVING ITS FIRST LETTER N SPECIFIED AS TYPE LOGICAL IN AN         02470251
        !           251: C     IMPLICIT STATEMENT.                                               02480251
        !           252: C                  IMPLICIT LOGICAL (M,N)                               02490251
        !           253: C                  LOGICAL NVTN02                                       02500251
        !           254: C                                                                       02510251
        !           255:       IVTNUM =   6                                                      02520251
        !           256:       IF (ICZERO) 30060, 0060, 30060                                    02530251
        !           257:  0060 CONTINUE                                                          02540251
        !           258:       IVCOMP = 1                                                        02550251
        !           259:       NVTN02 = .FALSE.                                                  02560251
        !           260:       IF ( NVTN02 )  IVCOMP = 0                                         02570251
        !           261:       IVCORR = 1                                                        02580251
        !           262: 40060 IF ( IVCOMP - 1 )  20060, 10060, 20060                            02590251
        !           263: 30060 IVDELE = IVDELE + 1                                               02600251
        !           264:       WRITE (I02,80000) IVTNUM                                          02610251
        !           265:       IF (ICZERO) 10060, 0071, 20060                                    02620251
        !           266: 10060 IVPASS = IVPASS + 1                                               02630251
        !           267:       WRITE (I02,80002) IVTNUM                                          02640251
        !           268:       GO TO 0071                                                        02650251
        !           269: 20060 IVFAIL = IVFAIL + 1                                               02660251
        !           270:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02670251
        !           271:  0071 CONTINUE                                                          02680251
        !           272: C                                                                       02690251
        !           273: C     ****  FCVS PROGRAM 251  -  TEST 007  ****                         02700251
        !           274: C                                                                       02710251
        !           275: C        TEST 007 ASSIGNS A LOGICAL VALUE OF .TRUE. TO THE ARRAY ELEMENT02720251
        !           276: C     MATN21(1,1) WHICH WAS SPECIFIED AS TYPE LOGICAL IN AN EXPLICIT    02730251
        !           277: C     TYPE STATEMENT AFTER ALSO HAVING ITS FIRST LETTER M SPECIFIED AS  02740251
        !           278: C     TYPE LOGICAL IN AN IMPLICIT STATEMENT.                            02750251
        !           279: C                  IMPLICIT LOGICAL (M,N)                               02760251
        !           280: C                  LOGICAL MATN21(3,3)                                  02770251
        !           281: C                                                                       02780251
        !           282:       IVTNUM =   7                                                      02790251
        !           283:       IF (ICZERO) 30070, 0070, 30070                                    02800251
        !           284:  0070 CONTINUE                                                          02810251
        !           285:       IVCOMP = 0                                                        02820251
        !           286:       MATN21(1,1) = .TRUE.                                              02830251
        !           287:       IF ( MATN21(1,1) )  IVCOMP = 1                                    02840251
        !           288:       IVCORR = 1                                                        02850251
        !           289: 40070 IF ( IVCOMP - 1 )  20070, 10070, 20070                            02860251
        !           290: 30070 IVDELE = IVDELE + 1                                               02870251
        !           291:       WRITE (I02,80000) IVTNUM                                          02880251
        !           292:       IF (ICZERO) 10070, 0081, 20070                                    02890251
        !           293: 10070 IVPASS = IVPASS + 1                                               02900251
        !           294:       WRITE (I02,80002) IVTNUM                                          02910251
        !           295:       GO TO 0081                                                        02920251
        !           296: 20070 IVFAIL = IVFAIL + 1                                               02930251
        !           297:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02940251
        !           298:  0081 CONTINUE                                                          02950251
        !           299: C                                                                       02960251
        !           300: C     ****  FCVS PROGRAM 251  -  TEST 008  ****                         02970251
        !           301: C                                                                       02980251
        !           302: C        TEST 008 ASSIGNS AN INTEGER VALUE OF 4 TO AVIN01 WHICH WAS     02990251
        !           303: C     SPECIFIED AS TYPE INTEGER IN AN IMPLICIT STATEMENT.               03000251
        !           304: C                  IMPLICIT INTEGER (A,B)                               03010251
        !           305: C                                                                       03020251
        !           306:       IVTNUM =   8                                                      03030251
        !           307:       IF (ICZERO) 30080, 0080, 30080                                    03040251
        !           308:  0080 CONTINUE                                                          03050251
        !           309:       RVCOMP = 10.0                                                     03060251
        !           310:       AVIN01 = 4                                                        03070251
        !           311:       RVCOMP = AVIN01/5                                                 03080251
        !           312:       RVCORR = 0.0                                                      03090251
        !           313: 40080 IF ( RVCOMP )  20080, 10080, 20080                                03100251
        !           314: 30080 IVDELE = IVDELE + 1                                               03110251
        !           315:       WRITE (I02,80000) IVTNUM                                          03120251
        !           316:       IF (ICZERO) 10080, 0091, 20080                                    03130251
        !           317: 10080 IVPASS = IVPASS + 1                                               03140251
        !           318:       WRITE (I02,80002) IVTNUM                                          03150251
        !           319:       GO TO 0091                                                        03160251
        !           320: 20080 IVFAIL = IVFAIL + 1                                               03170251
        !           321:       WRITE (I02,80012) IVTNUM, RVCOMP, RVCORR                          03180251
        !           322:  0091 CONTINUE                                                          03190251
        !           323: C                                                                       03200251
        !           324: C     ****  FCVS PROGRAM 251  -  TEST 009  ****                         03210251
        !           325: C                                                                       03220251
        !           326: C        TEST 009 ASSIGNS A LOGICAL VALUE OF .TRUE. TO AVTN01 WHICH WAS 03230251
        !           327: C     SPECIFIED AS TYPE LOGICAL EXPLICITLY IN A TYPE STATEMENT.         03240251
        !           328: C                  LOGICAL AVTN01                                       03250251
        !           329: C     THIS TEST IS TO DETERMINE WHETHER AN EXPLICIT LOGICAL TYPE        03260251
        !           330: C     STATEMENT CAN OVERRIDE THE IMPLICIT STATEMENT WHICH WOULD         03270251
        !           331: C     SET THE TYPE AS INTEGER.                                          03280251
        !           332: C                  IMPLICIT INTEGER (A,B)                               03290251
        !           333: C                                                                       03300251
        !           334:       IVTNUM =   9                                                      03310251
        !           335:       IF (ICZERO) 30090, 0090, 30090                                    03320251
        !           336:  0090 CONTINUE                                                          03330251
        !           337:       IVCOMP = 0                                                        03340251
        !           338:       AVTN01 = .TRUE.                                                   03350251
        !           339:       IF ( AVTN01 )  IVCOMP = 1                                         03360251
        !           340:       IVCORR = 1                                                        03370251
        !           341: 40090 IF ( IVCOMP - 1 )  20090, 10090, 20090                            03380251
        !           342: 30090 IVDELE = IVDELE + 1                                               03390251
        !           343:       WRITE (I02,80000) IVTNUM                                          03400251
        !           344:       IF (ICZERO) 10090, 0101, 20090                                    03410251
        !           345: 10090 IVPASS = IVPASS + 1                                               03420251
        !           346:       WRITE (I02,80002) IVTNUM                                          03430251
        !           347:       GO TO 0101                                                        03440251
        !           348: 20090 IVFAIL = IVFAIL + 1                                               03450251
        !           349:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03460251
        !           350:  0101 CONTINUE                                                          03470251
        !           351: C                                                                       03480251
        !           352: C     ****  FCVS PROGRAM 251  -  TEST 010  ****                         03490251
        !           353: C                                                                       03500251
        !           354: C        TEST 010 ASSIGNS A REAL VALUE OF 4.0 TO IVIN01 WHICH WAS       03510251
        !           355: C     SPECIFIED AS REAL IMPLICITLY IN AN IMPLICIT STATEMENT.            03520251
        !           356: C                  IMPLICIT REAL (I,J)                                  03530251
        !           357: C                                                                       03540251
        !           358:       IVTNUM =  10                                                      03550251
        !           359:       IF (ICZERO) 30100, 0100, 30100                                    03560251
        !           360:  0100 CONTINUE                                                          03570251
        !           361:       RVCOMP = 10.0                                                     03580251
        !           362:       IVIN01 = 4.0                                                      03590251
        !           363:       RVCOMP = IVIN01/5                                                 03600251
        !           364:       RVCORR = 0.8                                                      03610251
        !           365: 40100 IF ( RVCOMP - 0.79995 ) 20100, 10100, 40101                       03620251
        !           366: 40101 IF ( RVCOMP - 0.80005 ) 10100, 10100, 20100                       03630251
        !           367: 30100 IVDELE = IVDELE + 1                                               03640251
        !           368:       WRITE (I02,80000) IVTNUM                                          03650251
        !           369:       IF (ICZERO) 10100, 0111, 20100                                    03660251
        !           370: 10100 IVPASS = IVPASS + 1                                               03670251
        !           371:       WRITE (I02,80002) IVTNUM                                          03680251
        !           372:       GO TO 0111                                                        03690251
        !           373: 20100 IVFAIL = IVFAIL + 1                                               03700251
        !           374:       WRITE (I02,80012) IVTNUM, RVCOMP, RVCORR                          03710251
        !           375:  0111 CONTINUE                                                          03720251
        !           376: C                                                                       03730251
        !           377: C     ****  FCVS PROGRAM 251  -  TEST 011  ****                         03740251
        !           378: C                                                                       03750251
        !           379: C        TEST 011 ASSIGNS A LOGICAL VALUE OF .FALSE. TO IVTN01 WHICH WAS03760251
        !           380: C     SPECIFIED AS TYPE LOGICAL IN AN EXPLICIT TYPE STATEMENT.          03770251
        !           381: C                  LOGICAL IVTN01                                       03780251
        !           382: C     THIS TEST IS TO DETERMINE WHETHER AN EXPLICIT TYPE STATEMENT      03790251
        !           383: C     CAN OVERRIDE THE IMPLICIT STATEMENT WHICH WOULD SET THE TYPE      03800251
        !           384: C     AS REAL.                                                          03810251
        !           385: C                  IMPLICIT REAL (I,J)                                  03820251
        !           386: C                                                                       03830251
        !           387:       IVTNUM =  11                                                      03840251
        !           388:       IF (ICZERO) 30110, 0110, 30110                                    03850251
        !           389:  0110 CONTINUE                                                          03860251
        !           390:       IVCOMP = 1                                                        03870251
        !           391:       IVTN01 = .FALSE.                                                  03880251
        !           392:       IF ( IVTN01 )  IVCOMP = 0                                         03890251
        !           393:       IVCORR = 1                                                        03900251
        !           394: 40110 IF ( IVCOMP - 1 )  20110, 10110, 20110                            03910251
        !           395: 30110 IVDELE = IVDELE + 1                                               03920251
        !           396:       WRITE (I02,80000) IVTNUM                                          03930251
        !           397:       IF (ICZERO) 10110, 0121, 20110                                    03940251
        !           398: 10110 IVPASS = IVPASS + 1                                               03950251
        !           399:       WRITE (I02,80002) IVTNUM                                          03960251
        !           400:       GO TO 0121                                                        03970251
        !           401: 20110 IVFAIL = IVFAIL + 1                                               03980251
        !           402:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03990251
        !           403:  0121 CONTINUE                                                          04000251
        !           404: C                                                                       04010251
        !           405: C                                                                       04020251
        !           406: C        THE NEXT TWO TESTS CHECK THE RANGE OF LETTERS THAT             04030251
        !           407: C     ARE SET BY THE IMPLICIT STATEMENT AS FOLLOWS -                    04040251
        !           408: C     IMPLICIT LOGICAL ( E-H, O, P-Q,  S-T, X-Y ), INTEGER ( U-W )      04050251
        !           409: C                                                                       04060251
        !           410: C                                                                       04070251
        !           411: C                                                                       04080251
        !           412: C     ****  FCVS PROGRAM 251  -  TEST 012  ****                         04090251
        !           413: C                                                                       04100251
        !           414: C        TEST 012 ASSIGNS A LOGICAL VALUE OF .TRUE. TO A SERIES OF      04110251
        !           415: C     VARIABLES THAT BEGIN WITH THE FOLLOWING LETTERS -                 04120251
        !           416: C                                                                       04130251
        !           417: C        E  F  G  H  O  P  Q  S  T  X  Y                                04140251
        !           418: C                                                                       04150251
        !           419: C     VARIABLES THAT BEGIN WITH THESE LETTERS SHOULD BE IMPLICITLY TYPED04160251
        !           420: C     LOGICAL BECAUSE OF THE IMPLICIT STATEMENT USING BOTH THE RANGE AND04170251
        !           421: C     SINGLE LETTER SPECIFICATION FOR TYPE LOGICAL.  THE VARIABLE XVIN0104180251
        !           422: C     IS FIRST USED IN A LOGICAL IF STATEMENT.  THE TRUE BRANCH SHOULD  04190251
        !           423: C     BE TAKEN TO SET IVCOMP = 1.  THEN EACH OF THE VARIABLES SET TO    04200251
        !           424: C     .TRUE. ARE USED IN A SECOND LOGICAL IF STATEMENT WHICH IS ONE     04210251
        !           425: C     LARGE LOGICAL CONJUNCTION ( VARIABLE .AND. VARIABLE .AND. ... ).  04220251
        !           426: C     THE TRUE BRANCH SHOULD BE TAKEN TO INCREMENT THE VALUE OF IVCOMP  04230251
        !           427: C     TO A FINAL VALUE OF THREE (3).                                    04240251
        !           428: C                                                                       04250251
        !           429: C                                                                       04260251
        !           430:       IVTNUM =  12                                                      04270251
        !           431:       IF (ICZERO) 30120, 0120, 30120                                    04280251
        !           432:  0120 CONTINUE                                                          04290251
        !           433:       IVCOMP = 0                                                        04300251
        !           434:       IVCORR = 3                                                        04310251
        !           435:       EVIN01 = .TRUE.                                                   04320251
        !           436:       FVIN01 = .TRUE.                                                   04330251
        !           437:       GVIN01 = .TRUE.                                                   04340251
        !           438:       HVIN01 = .TRUE.                                                   04350251
        !           439:       OVIN01 = .TRUE.                                                   04360251
        !           440:       PVIN01 = .TRUE.                                                   04370251
        !           441:       QVIN01 = .TRUE.                                                   04380251
        !           442:       SVIN01 = .TRUE.                                                   04390251
        !           443:       TVIN01 = .TRUE.                                                   04400251
        !           444:       XVIN01 = .TRUE.                                                   04410251
        !           445:       YVIN01 = .TRUE.                                                   04420251
        !           446:       IF ( XVIN01 )  IVCOMP = 1                                         04430251
        !           447:       IF ( EVIN01 .AND. FVIN01 .AND. GVIN01 .AND. HVIN01 .AND. OVIN01   04440251
        !           448:      1.AND. PVIN01 .AND. QVIN01 .AND. SVIN01 .AND. TVIN01 .AND. XVIN01  04450251
        !           449:      2.AND. YVIN01 )  IVCOMP = IVCOMP + 2                               04460251
        !           450: 40120 IF ( IVCOMP - 3 ) 20120, 10120, 20120                             04470251
        !           451: 30120 IVDELE = IVDELE + 1                                               04480251
        !           452:       WRITE (I02,80000) IVTNUM                                          04490251
        !           453:       IF (ICZERO) 10120, 0131, 20120                                    04500251
        !           454: 10120 IVPASS = IVPASS + 1                                               04510251
        !           455:       WRITE (I02,80002) IVTNUM                                          04520251
        !           456:       GO TO 0131                                                        04530251
        !           457: 20120 IVFAIL = IVFAIL + 1                                               04540251
        !           458:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04550251
        !           459:  0131 CONTINUE                                                          04560251
        !           460: C                                                                       04570251
        !           461: C     ****  FCVS PROGRAM 251  -  TEST 013  ****                         04580251
        !           462: C                                                                       04590251
        !           463: C        TEST 013 ASSIGNS AN INTEGER VALUE OF 4 TO VVIN01 WHICH         04600251
        !           464: C     WAS SPECIFIED AS TYPE INTEGER IMPLICITLY USING THE RANGE OF       04610251
        !           465: C     LETTERS  U-W  IN THE IMPLICIT INTEGER SPECIFICATION STATEMENT.    04620251
        !           466: C     DIVISION IS USED TO DETERMINE WHETHER VVIN01 IS TYPE INTEGER.     04630251
        !           467: C                                                                       04640251
        !           468: C                                                                       04650251
        !           469:       IVTNUM =  13                                                      04660251
        !           470:       IF (ICZERO) 30130, 0130, 30130                                    04670251
        !           471:  0130 CONTINUE                                                          04680251
        !           472:       RVCOMP = 10.0                                                     04690251
        !           473:       VVIN01 = 4                                                        04700251
        !           474:       RVCOMP = VVIN01/5                                                 04710251
        !           475:       RVCORR = 0.0                                                      04720251
        !           476: 40130 IF ( RVCOMP )  20130, 10130, 20130                                04730251
        !           477: 30130 IVDELE = IVDELE + 1                                               04740251
        !           478:       WRITE (I02,80000) IVTNUM                                          04750251
        !           479:       IF (ICZERO) 10130, 0141, 20130                                    04760251
        !           480: 10130 IVPASS = IVPASS + 1                                               04770251
        !           481:       WRITE (I02,80002) IVTNUM                                          04780251
        !           482:       GO TO 0141                                                        04790251
        !           483: 20130 IVFAIL = IVFAIL + 1                                               04800251
        !           484:       WRITE (I02,80012) IVTNUM, RVCOMP, RVCORR                          04810251
        !           485:  0141 CONTINUE                                                          04820251
        !           486: C                                                                       04830251
        !           487: C                                                                       04840251
        !           488: C     WRITE OUT TEST SUMMARY                                            04850251
        !           489: C                                                                       04860251
        !           490:       WRITE (I02,90004)                                                 04870251
        !           491:       WRITE (I02,90014)                                                 04880251
        !           492:       WRITE (I02,90004)                                                 04890251
        !           493:       WRITE (I02,90000)                                                 04900251
        !           494:       WRITE (I02,90004)                                                 04910251
        !           495:       WRITE (I02,90020) IVFAIL                                          04920251
        !           496:       WRITE (I02,90022) IVPASS                                          04930251
        !           497:       WRITE (I02,90024) IVDELE                                          04940251
        !           498:       STOP                                                              04950251
        !           499: 90001 FORMAT (1H ,24X,5HFM251)                                          04960251
        !           500: 90000 FORMAT (1H ,20X,20HEND OF PROGRAM FM251)                          04970251
        !           501: C                                                                       04980251
        !           502: C     FORMATS FOR TEST DETAIL LINES                                     04990251
        !           503: C                                                                       05000251
        !           504: 80000 FORMAT (1H ,4X,I5,6X,7HDELETED)                                   05010251
        !           505: 80002 FORMAT (1H ,4X,I5,7X,4HPASS)                                      05020251
        !           506: 80010 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6)                         05030251
        !           507: 80012 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5)                    05040251
        !           508: 80018 FORMAT (1H ,4X,I5,7X,4HFAIL,2X,A14,1X,A14)                        05050251
        !           509: C                                                                       05060251
        !           510: C     FORMAT STATEMENTS FOR PAGE HEADERS                                05070251
        !           511: C                                                                       05080251
        !           512: 90002 FORMAT (1H1)                                                      05090251
        !           513: 90004 FORMAT (1H )                                                      05100251
        !           514: 90006 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM)            05110251
        !           515: 90008 FORMAT (1H ,21X,11HVERSION 1.0)                                   05120251
        !           516: 90010 FORMAT (1H ,8X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978)         05130251
        !           517: 90012 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL,5X,8HCOMPUTED,8X,7HCORRECT)  05140251
        !           518: 90014 FORMAT (1H ,5X,46H----------------------------------------------) 05150251
        !           519: 90016 FORMAT (1H ,18X,17HSUBSET LEVEL TEST)                             05160251
        !           520: C                                                                       05170251
        !           521: C     FORMAT STATEMENTS FOR RUN SUMMARY                                 05180251
        !           522: C                                                                       05190251
        !           523: 90020 FORMAT (1H ,19X,I5,13H TESTS FAILED)                              05200251
        !           524: 90022 FORMAT (1H ,19X,I5,13H TESTS PASSED)                              05210251
        !           525: 90024 FORMAT (1H ,19X,I5,14H TESTS DELETED)                             05220251
        !           526:       END                                                               05230251

unix.superglobalmegacorp.com

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