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

1.1     ! root        1: C     COMMENT SECTION                                                   00010001
        !             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                                                                       00020001
        !             6: C     FM001                                                             00030001
        !             7: C                                                                       00040001
        !             8: C         THIS ROUTINE CONTAINS THE BOILERPLATE SOURCE CODING WHICH     00050001
        !             9: C     IS USED TO PRINT THE REPORT HEADINGS AND RUN SUMMARIES FOR EACH   00060001
        !            10: C     OF THE ELEMENTARY ROUTINES.                                       00070001
        !            11: C                                                                       00080001
        !            12: C         THREE TESTS ARE INCLUDED WHICH CONTAIN THE PROCEDURES FOR     00090001
        !            13: C         TESTING THE LANGUAGE FEATURES AND DELETING TESTS.             00100001
        !            14: C                                                                       00110001
        !            15: C         TEST 1 CHECKS THE PASS PROCEDURE                              00120001
        !            16: C         TEST 2 CHECKS THE FAIL PROCEDURE                              00130001
        !            17: C         TEST 3 CHECKS THE DELETE PROCEDURE                            00140001
        !            18: C                                                                       00150001
        !            19: C         IF THIS ROUTINE DOES NOT EXECUTE CORRECTLY, THEN NO OTHER     00160001
        !            20: C     ROUTINES WILL BE RUN.  THERE IS NO USE IN TRYING TO VALIDATE A    00170001
        !            21: C     FORTRAN COMPILER WHICH CANNOT HANDLE SUCH BASIC STATEMENTS.       00180001
        !            22: C                                                                       00190001
        !            23: C      **********************************************************       00200001
        !            24: C                                                                       00210001
        !            25: C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00220001
        !            26: C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN NATIONAL STANDARD  00230001
        !            27: C     PROGRAMMING LANGUAGE FORTRAN X3.9-1978, HAS BEEN DEVELOPED BY THE 00240001
        !            28: C     FEDERAL COBOL COMPILER TESTING SERVICE.  THE FORTRAN COMPILER     00250001
        !            29: C     VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT ROUTINES, THEIR RELATED00260001
        !            30: C     DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT ROUTINE IS A FORTRAN   00270001
        !            31: C     PROGRAM, SUBPROGRAM OR FUNCTION WHICH INCLUDES TESTS OF SPECIFIC  00280001
        !            32: C     LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING THE RESULT 00290001
        !            33: C     OF EXECUTING THESE TESTS.                                         00300001
        !            34: C                                                                       00310001
        !            35: C         THIS PARTICULAR PROGRAM/SUBPROGRAM/FUNCTION CONTAINS FEATURES 00320001
        !            36: C     FOUND ONLY IN THE SUBSET AS DEFINED IN X3.9-1978.                 00330001
        !            37: C                                                                       00340001
        !            38: C         SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO -             00350001
        !            39: C                                                                       00360001
        !            40: C                  DEPARTMENT OF THE NAVY                               00370001
        !            41: C                  FEDERAL COBOL COMPILER TESTING SERVICE               00380001
        !            42: C                  WASHINGTON, D.C.  20376                              00390001
        !            43: C                                                                       00400001
        !            44: C      **********************************************************       00410001
        !            45: C                                                                       00420001
        !            46: C                                                                       00430001
        !            47: C                                                                       00440001
        !            48: C     INITIALIZATION SECTION                                            00450001
        !            49: C                                                                       00460001
        !            50: C     INITIALIZE CONSTANTS                                              00470001
        !            51: C      **************                                                   00480001
        !            52: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER.         00490001
        !            53:       I01 = 5                                                           00500001
        !            54: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER.             00510001
        !            55:       I02 = 6                                                           00520001
        !            56: C     SYSTEM ENVIRONMENT SECTION                                        00530001
        !            57: C                                                                       00540001
        !            58:       I01 = 5                                                           00550001
        !            59: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      00560001
        !            60: C     (UNIT NUMBER FOR CARD READER).                                    00570001
        !            61: CX011    THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD. 00580001
        !            62: C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00590001
        !            63: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         00600001
        !            64: C                                                                       00610001
        !            65:       I02 = 6                                                           00620001
        !            66: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      00630001
        !            67: C     (UNIT NUMBER FOR PRINTER).                                        00640001
        !            68: CX021    THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD. 00650001
        !            69: C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00660001
        !            70: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         00670001
        !            71: C                                                                       00680001
        !            72:       IVPASS=0                                                          00690001
        !            73:       IVFAIL=0                                                          00700001
        !            74:       IVDELE=0                                                          00710001
        !            75:       ICZERO=0                                                          00720001
        !            76: C                                                                       00730001
        !            77: C     WRITE PAGE HEADERS                                                00740001
        !            78:       WRITE (I02,90000)                                                 00750001
        !            79:       WRITE (I02,90001)                                                 00760001
        !            80:       WRITE (I02,90002)                                                 00770001
        !            81:       WRITE (I02, 90002)                                                00780001
        !            82:       WRITE (I02,90003)                                                 00790001
        !            83:       WRITE (I02,90002)                                                 00800001
        !            84:       WRITE (I02,90004)                                                 00810001
        !            85:       WRITE (I02,90002)                                                 00820001
        !            86:       WRITE (I02,90011)                                                 00830001
        !            87:       WRITE (I02,90002)                                                 00840001
        !            88:       WRITE (I02,90002)                                                 00850001
        !            89:       WRITE (I02,90005)                                                 00860001
        !            90:       WRITE (I02,90006)                                                 00870001
        !            91:       WRITE (I02,90002)                                                 00880001
        !            92: C     TEST SECTION                                                      00890001
        !            93: C                                                                       00900001
        !            94:    11 CONTINUE                                                          00910001
        !            95: C                                                                       00920001
        !            96: C      ****  TEST 001  ****                                             00930001
        !            97: C     TEST 001  -  BASIC PROCEDURE FOR CODING TESTS                     00940001
        !            98: C           ALSO CHECKS CONTINUE STATEMENT WHICH SHOULD NOT HAVE        00950001
        !            99: C           ANY AFFECT ON EXECUTION SEQUENCE                            00960001
        !           100: C                                                                       00970001
        !           101:       IF (ICZERO) 30010, 10, 30010                                      00980001
        !           102:    10 CONTINUE                                                          00990001
        !           103:       IVTNUM=1                                                          01000001
        !           104:       GO TO 40010                                                       01010001
        !           105: 30010 IVDELE=IVDELE+1                                                   01020001
        !           106:       WRITE (I02,80003) IVTNUM                                          01030001
        !           107:       IF (ICZERO) 40010, 21, 40010                                      01040001
        !           108: 40010 IF (IVTNUM - 1) 20010, 10010, 20010                               01050001
        !           109: 10010 IVPASS=IVPASS+1                                                   01060001
        !           110:       WRITE (I02,80001) IVTNUM                                          01070001
        !           111:       GO TO 21                                                          01080001
        !           112: 20010 IVFAIL=IVFAIL+1                                                   01090001
        !           113:       IVCOMP=IVTNUM                                                     01100001
        !           114:       IVCORR=1                                                          01110001
        !           115:       WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR                          01120001
        !           116:    21 CONTINUE                                                          01130001
        !           117: C                                                                       01140001
        !           118: C      ****  TEST 002  ****                                             01150001
        !           119: C     TEST - 002    FORCE FAIL CODE TO BE EXECUTED                      01160001
        !           120: C                                                                       01170001
        !           121:       IF (ICZERO) 30020,20,30020                                        01180001
        !           122:    20 CONTINUE                                                          01190001
        !           123:       IVTNUM=2                                                          01200001
        !           124:       GO TO 40020                                                       01210001
        !           125: 30020 IVDELE=IVDELE+1                                                   01220001
        !           126:       WRITE (I02,80003) IVTNUM                                          01230001
        !           127:       IF (ICZERO) 40020,31,40020                                        01240001
        !           128: 40020 IF (IVTNUM-1) 20020, 10020, 20020                                 01250001
        !           129: 10020 IVPASS=IVPASS+1                                                   01260001
        !           130:       WRITE (I02,80001) IVTNUM                                          01270001
        !           131:       GO TO 31                                                          01280001
        !           132: 20020 IVFAIL=IVFAIL+1                                                   01290001
        !           133:       IVCOMP=IVTNUM                                                     01300001
        !           134:       IVCORR=2                                                          01310001
        !           135:       WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR                          01320001
        !           136:    31 CONTINUE                                                          01330001
        !           137: C                                                                       01340001
        !           138: C      ****  TEST 003  ****                                             01350001
        !           139: C     TEST 003 - DELETE PROCEDURE TESTED                                01360001
        !           140: C                                                                       01370001
        !           141:       IF (ICZERO) 30030,30,30030                                        01380001
        !           142:    30 CONTINUE                                                          01390001
        !           143: C     IVTNUM=5000                                                       01400001
        !           144: C     GO TO 40030                                                       01410001
        !           145: 30030 IVDELE=IVDELE+1                                                   01420001
        !           146:       IVTNUM=3                                                          01430001
        !           147:       WRITE (I02,80003) IVTNUM                                          01440001
        !           148:       IF (ICZERO) 40030,99999,40030                                     01450001
        !           149: 40030 IF (IVTNUM - 5000) 20030,10030,20030                              01460001
        !           150: 10030 IVPASS=IVPASS +1                                                  01470001
        !           151:       WRITE (I02,80001) IVTNUM                                          01480001
        !           152:       GO TO 99999                                                       01490001
        !           153: 20030 IVFAIL=IVFAIL+1                                                   01500001
        !           154:       IVCOMP=IVTNUM                                                     01510001
        !           155:       IVCORR=5000                                                       01520001
        !           156:       WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR                          01530001
        !           157: C                                                                       01540001
        !           158: C     WRITE PAGE FOOTINGS AND RUN SUMMARIES                             01550001
        !           159: 99999 CONTINUE                                                          01560001
        !           160:       WRITE (I02,90002)                                                 01570001
        !           161:       WRITE (I02,90006)                                                 01580001
        !           162:       WRITE (I02,90002)                                                 01590001
        !           163:       WRITE (I02,90002)                                                 01600001
        !           164:       WRITE (I02,90007)                                                 01610001
        !           165:       WRITE (I02,90002)                                                 01620001
        !           166:       WRITE (I02,90008)  IVFAIL                                         01630001
        !           167:       WRITE (I02,90009) IVPASS                                          01640001
        !           168:       WRITE (I02,90010) IVDELE                                          01650001
        !           169: C                                                                       01660001
        !           170: C                                                                       01670001
        !           171: C     SPECIAL OUTPUT STATEMENTS FOR THIS ROUTINE                        01680001
        !           172:       WRITE (I02,90000)                                                 01690001
        !           173:       WRITE (I02,90002)                                                 01700001
        !           174:       WRITE (I02,80031)                                                 01710001
        !           175:       WRITE (I02,90002)                                                 01720001
        !           176:       WRITE (I02,80010)                                                 01730001
        !           177:       WRITE (I02,80020)                                                 01740001
        !           178:       WRITE (I02,80030)                                                 01750001
        !           179:       WRITE (I02,80032)                                                 01760001
        !           180: C                                                                       01770001
        !           181: C     TERMINATE ROUTINE EXECUTION                                       01780001
        !           182:       STOP                                                              01790001
        !           183: C                                                                       01800001
        !           184: C     FORMAT STATEMENTS FOR PAGE HEADERS                                01810001
        !           185: 90000 FORMAT (1H1)                                                      01820001
        !           186: 90002 FORMAT (1H )                                                      01830001
        !           187: 90001 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM)            01840001
        !           188: 90003 FORMAT (1H ,21X,11HVERSION 1.0)                                   01850001
        !           189: 90004 FORMAT (1H ,10X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978)        01860001
        !           190: 90005 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL, 5X,8HCOMPUTED,8X,7HCORRECT) 01870001
        !           191: 90006 FORMAT (1H ,5X,46H----------------------------------------------) 01880001
        !           192: 90011 FORMAT (1H ,18X,17HSUBSET LEVEL TEST)                             01890001
        !           193: C                                                                       01900001
        !           194: C     FORMAT STATEMENTS FOR RUN SUMMARIES                               01910001
        !           195: 90008 FORMAT (1H ,15X,I5,19H ERRORS ENCOUNTERED)                        01920001
        !           196: 90009 FORMAT (1H ,15X,I5,13H TESTS PASSED)                              01930001
        !           197: 90010 FORMAT (1H ,15X,I5,14H TESTS DELETED)                             01940001
        !           198: C                                                                       01950001
        !           199: C     FORMAT STATEMENTS FOR TEST RESULTS                                01960001
        !           200: 80001 FORMAT (1H ,4X,I5,7X,4HPASS)                                      01970001
        !           201: 80002 FORMAT (1H ,4X,I5,7X,4HFAIL)                                      01980001
        !           202: 80003 FORMAT (1H ,4X,I5,7X,7HDELETED)                                   01990001
        !           203: 80004 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6)                         02000001
        !           204: 80005 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5)                    02010001
        !           205: C                                                                       02020001
        !           206: C     FORMATS FOR CURRENT ROUTINE                                       02030001
        !           207: 80031 FORMAT (1H ,10X,39HTHE PROGRAM FM001 EXECUTED CORRECTLY IF)       02040001
        !           208: 80010 FORMAT (1H ,15X,13HTEST 1 PASSED)                                 02050001
        !           209: 80020 FORMAT (1H ,15X,42HTEST 2 FAILED WITH COMPUTED AND CORRECT =2)    02060001
        !           210: 80030 FORMAT (1H ,15X,18HTEST 3 WAS DELETED)                            02070001
        !           211: 80032 FORMAT (1H ,15X,34HTHE RUN SUMMARY TOTALS ALL EQUAL 1)            02080001
        !           212: 90007 FORMAT (1H ,20X,20HEND OF PROGRAM FM001)                          02090001
        !           213:       END                                                               02100001

unix.superglobalmegacorp.com

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