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

1.1     ! root        1:       PROGRAM FM257                                                     00010257
        !             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                                                                       00020257
        !             6: C                                                                       00030257
        !             7: C                                                                       00040257
        !             8: C        THIS ROUTINE IS A TEST OF THE PAUSE AND STOP STATEMENTS.  THESE00050257
        !             9: C     STATEMENTS CAN NOW BE FOLLOWED BY A STRING OF NOT MORE THAN FIVE  00060257
        !            10: C     DIGITS, OR A CHARACTER CONSTANT.                                  00070257
        !            11: C                                                                       00080257
        !            12: C     REFERENCES                                                        00090257
        !            13: C     REFERENCES                                                        00100257
        !            14: C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00110257
        !            15: C             X3.9-1978                                                 00120257
        !            16: C        SECTION 11.12,      STOP STATEMENT                             00130257
        !            17: C        SECTION 11.13,      PAUSE STATEMENT                            00140257
        !            18: C                                                                       00150257
        !            19: C        FM015 - TESTS THE STOP AND PAUSE STATEMENTS USING AN OCTAL     00160257
        !            20: C                DIGIT STRING OF LENGTH FROM ONE TO FIVE.               00170257
        !            21: C                                                                       00180257
        !            22: C                                                                       00190257
        !            23: C                                                                       00200257
        !            24: C     ******************************************************************00210257
        !            25: C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00220257
        !            26: C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN STANDARD FORTRAN   00230257
        !            27: C     X3.9-1978, HAS BEEN DEVELOPED BY THE DEPARTMENT OF THE NAVY.  THE 00240257
        !            28: C     FORTRAN COMPILER VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT       00250257
        !            29: C     ROUTINES, THEIR RELATED DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT00260257
        !            30: C     ROUTINE IS A FORTRAN PROGRAM OR SUBPROGRAM WHICH INCLUDES TESTS   00270257
        !            31: C     OF SPECIFIC LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING00280257
        !            32: C     THE RESULT OF EXECUTING THESE TESTS.                              00290257
        !            33: C                                                                       00300257
        !            34: C     THIS PARTICULAR PROGRAM OR SUBPROGRAM CONTAINS ONLY FEATURES      00310257
        !            35: C     FOUND IN THE SUBSET LEVEL OF THE STANDARD.                        00320257
        !            36: C                                                                       00330257
        !            37: C           SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO             00340257
        !            38: C                    DEPARTMENT OF THE NAVY                             00350257
        !            39: C                    FEDERAL COBOL COMPILER TESTING SERVICE             00360257
        !            40: C                    WASHINGTON, D.C.   20376                           00370257
        !            41: C                                                                       00380257
        !            42: C     ******************************************************************00390257
        !            43: C                                                                       00400257
        !            44: C                                                                       00410257
        !            45:       IMPLICIT LOGICAL (L)                                              00420257
        !            46:       IMPLICIT CHARACTER*14 (C)                                         00430257
        !            47: C                                                                       00440257
        !            48: C                                                                       00450257
        !            49: C                                                                       00460257
        !            50: C     INITIALIZATION SECTION.                                           00470257
        !            51: C                                                                       00480257
        !            52: C     INITIALIZE CONSTANTS                                              00490257
        !            53: C     ********************                                              00500257
        !            54: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER          00510257
        !            55:       I01 = 5                                                           00520257
        !            56: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER              00530257
        !            57:       I02 = 6                                                           00540257
        !            58: C     SYSTEM ENVIRONMENT SECTION                                        00550257
        !            59: C                                                                       00560257
        !            60:       I01 = 5                                                           00570257
        !            61: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      00580257
        !            62: C     (UNIT NUMBER FOR CARD READER).                                    00590257
        !            63: CX011      THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD00600257
        !            64: C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00610257
        !            65: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         00620257
        !            66: C                                                                       00630257
        !            67:       I02 = 6                                                           00640257
        !            68: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      00650257
        !            69: C     (UNIT NUMBER FOR PRINTER).                                        00660257
        !            70: CX021     THIS CARD IS PEPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD.00670257
        !            71: C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00680257
        !            72: C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         00690257
        !            73: C                                                                       00700257
        !            74:       IVPASS = 0                                                        00710257
        !            75:       IVFAIL = 0                                                        00720257
        !            76:       IVDELE = 0                                                        00730257
        !            77:       ICZERO = 0                                                        00740257
        !            78: C                                                                       00750257
        !            79: C     WRITE OUT PAGE HEADERS                                            00760257
        !            80: C                                                                       00770257
        !            81:       WRITE (I02,90002)                                                 00780257
        !            82:       WRITE (I02,90006)                                                 00790257
        !            83:       WRITE (I02,90008)                                                 00800257
        !            84:       WRITE (I02,90004)                                                 00810257
        !            85:       WRITE (I02,90010)                                                 00820257
        !            86:       WRITE (I02,90004)                                                 00830257
        !            87:       WRITE (I02,90016)                                                 00840257
        !            88:       WRITE (I02,90001)                                                 00850257
        !            89:       WRITE (I02,90004)                                                 00860257
        !            90:       WRITE (I02,90012)                                                 00870257
        !            91:       WRITE (I02,90014)                                                 00880257
        !            92:       WRITE (I02,90004)                                                 00890257
        !            93: C                                                                       00900257
        !            94: C                                                                       00910257
        !            95: C                                                                       00920257
        !            96: C        THE FOLLOWING SERIES OF TESTS CHECK THE VARIOUS FORMS OF THE   00930257
        !            97: C     PAUSE STATEMENT.  IN EACH CASE THE WORD PAUSE (FOLLOWED BY A      00940257
        !            98: C     STRING OF CHARACTERS AS NOTED IN EACH TEST DESCRIPTION), SHOULD BE00950257
        !            99: C     DISPLAYED ON THE OPERATORS CONSOLE.  FOR EACH TEST THE OPERATOR   00960257
        !           100: C     NEED ONLY DO WHATEVER IS NESSARY TO TELL THE SYSTEM TO CONTINUE   00970257
        !           101: C     THE EXECUTION OF THE ROUTINE.  THE STRING FORMS ARE AS DESCRIBED  00980257
        !           102: C     IN SECTION 11.13.                                                 00990257
        !           103: C                                                                       01000257
        !           104: C                                                                       01010257
        !           105: C                                                                       01020257
        !           106: C     ****  FCVS PROGRAM 257  -  TEST 001  ****                         01030257
        !           107: C                                                                       01040257
        !           108: C        TEST 001 CHECKS THE PAUSE STATEMENT THAT IS NOT FOLLOWED BY    01050257
        !           109: C     A STRING OF ANYTHING EXCEPT BLANKS.  ONLY THE WORD PAUSE SHOULD   01060257
        !           110: C     BE DISPLAYED.                                                     01070257
        !           111: C                                                                       01080257
        !           112: C                                                                       01090257
        !           113:       IVTNUM =   1                                                      01100257
        !           114:       IF (ICZERO) 30010, 0010, 30010                                    01110257
        !           115:  0010 CONTINUE                                                          01120257
        !           116:       PAUSE                                                             01130257
        !           117: C                                                                       01140257
        !           118: C     ***** THESE CARDS INITIALIZE IVCOMP AND IVCORR FOR THE NEXT       01150257
        !           119: C           FIVE TESTS EVEN THOUGH THEY ONLY APPEAR IN THE FAIL CODE    01160257
        !           120: C           OF THE BOILERPLATE.*****                                    01170257
        !           121:       IVCOMP = 1                                                        01180257
        !           122:       IVCORR = 1                                                        01190257
        !           123: C                                                                       01200257
        !           124: C                                                                       01210257
        !           125: 40010 IF ( ICZERO )  20010, 10010, 20010                                01220257
        !           126: 30010 IVDELE = IVDELE + 1                                               01230257
        !           127:       WRITE (I02,80000) IVTNUM                                          01240257
        !           128:       IF (ICZERO) 10010, 0021, 20010                                    01250257
        !           129: 10010 IVPASS = IVPASS + 1                                               01260257
        !           130:       WRITE (I02,80002) IVTNUM                                          01270257
        !           131:       GO TO 0021                                                        01280257
        !           132: 20010 IVFAIL = IVFAIL + 1                                               01290257
        !           133:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01300257
        !           134:  0021 CONTINUE                                                          01310257
        !           135: C                                                                       01320257
        !           136: C     ****  FCVS PROGRAM 257  -  TEST 002  ****                         01330257
        !           137: C                                                                       01340257
        !           138: C        TEST 002 SHOULD DISPLAY THE WORD PAUSE FOLLOWED BY A SINGLE    01350257
        !           139: C     CHARACTER ZERO (0).                                               01360257
        !           140: C                                                                       01370257
        !           141: C                                                                       01380257
        !           142:       IVTNUM =   2                                                      01390257
        !           143:       IF (ICZERO) 30020, 0020, 30020                                    01400257
        !           144:  0020 CONTINUE                                                          01410257
        !           145:       PAUSE 0                                                           01420257
        !           146: 40020 IF ( ICZERO )  20020, 10020, 20020                                01430257
        !           147: 30020 IVDELE = IVDELE + 1                                               01440257
        !           148:       WRITE (I02,80000) IVTNUM                                          01450257
        !           149:       IF (ICZERO) 10020, 0031, 20020                                    01460257
        !           150: 10020 IVPASS = IVPASS + 1                                               01470257
        !           151:       WRITE (I02,80002) IVTNUM                                          01480257
        !           152:       GO TO 0031                                                        01490257
        !           153: 20020 IVFAIL = IVFAIL + 1                                               01500257
        !           154:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01510257
        !           155:  0031 CONTINUE                                                          01520257
        !           156: C                                                                       01530257
        !           157: C     ****  FCVS PROGRAM 257  -  TEST 003  ****                         01540257
        !           158: C                                                                       01550257
        !           159: C        TEST 003 SHOULD DISPLAY THE WORD PAUSE FOLLOWED BY A STRING OF 01560257
        !           160: C     FIVE ZEROS (00000).                                               01570257
        !           161: C                                                                       01580257
        !           162: C                                                                       01590257
        !           163:       IVTNUM =   3                                                      01600257
        !           164:       IF (ICZERO) 30030, 0030, 30030                                    01610257
        !           165:  0030 CONTINUE                                                          01620257
        !           166:       PAUSE 00000                                                       01630257
        !           167: 40030 IF ( ICZERO )  20030, 10030, 20030                                01640257
        !           168: 30030 IVDELE = IVDELE + 1                                               01650257
        !           169:       WRITE (I02,80000) IVTNUM                                          01660257
        !           170:       IF (ICZERO) 10030, 0041, 20030                                    01670257
        !           171: 10030 IVPASS = IVPASS + 1                                               01680257
        !           172:       WRITE (I02,80002) IVTNUM                                          01690257
        !           173:       GO TO 0041                                                        01700257
        !           174: 20030 IVFAIL = IVFAIL + 1                                               01710257
        !           175:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01720257
        !           176:  0041 CONTINUE                                                          01730257
        !           177: C                                                                       01740257
        !           178: C     ****  FCVS PROGRAM 257  -  TEST 004  ****                         01750257
        !           179: C                                                                       01760257
        !           180: C        TEST 004 SHOULD DISPLAY THE WORD PAUSE FOLLOWED BY THE STRING  01770257
        !           181: C     OF FIVE CHARACTERS  19283.                                        01780257
        !           182: C                                                                       01790257
        !           183: C                                                                       01800257
        !           184:       IVTNUM =   4                                                      01810257
        !           185:       IF (ICZERO) 30040, 0040, 30040                                    01820257
        !           186:  0040 CONTINUE                                                          01830257
        !           187:       PAUSE  19283                                                      01840257
        !           188: 40040 IF ( ICZERO )  20040, 10040, 20040                                01850257
        !           189: 30040 IVDELE = IVDELE + 1                                               01860257
        !           190:       WRITE (I02,80000) IVTNUM                                          01870257
        !           191:       IF (ICZERO) 10040, 0051, 20040                                    01880257
        !           192: 10040 IVPASS = IVPASS + 1                                               01890257
        !           193:       WRITE (I02,80002) IVTNUM                                          01900257
        !           194:       GO TO 0051                                                        01910257
        !           195: 20040 IVFAIL = IVFAIL + 1                                               01920257
        !           196:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01930257
        !           197:  0051 CONTINUE                                                          01940257
        !           198: C                                                                       01950257
        !           199: C     ****  FCVS PROGRAM 257  -  TEST 005  ****                         01960257
        !           200: C                                                                       01970257
        !           201: C        TEST 005 SHOULD DISPLAY THE WORD PAUSE FOLLOWED BY THE STRING  01980257
        !           202: C     OF FOUR NINES  (9999).                                            01990257
        !           203: C                                                                       02000257
        !           204: C                                                                       02010257
        !           205:       IVTNUM =   5                                                      02020257
        !           206:       IF (ICZERO) 30050, 0050, 30050                                    02030257
        !           207:  0050 CONTINUE                                                          02040257
        !           208:       PAUSE 9999                                                        02050257
        !           209: 40050 IF ( ICZERO )  20050, 10050, 20050                                02060257
        !           210: 30050 IVDELE = IVDELE + 1                                               02070257
        !           211:       WRITE (I02,80000) IVTNUM                                          02080257
        !           212:       IF (ICZERO) 10050, 0061, 20050                                    02090257
        !           213: 10050 IVPASS = IVPASS + 1                                               02100257
        !           214:       WRITE (I02,80002) IVTNUM                                          02110257
        !           215:       GO TO 0061                                                        02120257
        !           216: 20050 IVFAIL = IVFAIL + 1                                               02130257
        !           217:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02140257
        !           218:  0061 CONTINUE                                                          02150257
        !           219: C                                                                       02160257
        !           220: C     ****  FCVS PROGRAM 257  -  TEST 006  ****                         02170257
        !           221: C                                                                       02180257
        !           222: C        TEST 006 IS FOR THE STOP STATEMENT - SECTION 11.12.            02190257
        !           223: C     SINCE THE STOP STATEMENT CAN ONLY BE EXECUTED ONCE IN A PROGRAM   02200257
        !           224: C     UNIT, VARIOUS FORMATS OF THE STOP STATEMENT WILL BE CHECKED FOR   02210257
        !           225: C     SYNTAX ONLY BY THE USE OF A COMPUTED GO TO STATEMENT.             02220257
        !           226: C                                                                       02230257
        !           227: C        ONCE THE STOP STATEMENT HAS BEEN EXECUTED, THEN THE ROUTINE    02240257
        !           228: C     FM257 SHOULD NO LONGER EXECUTE.  ANY CONTINUATION IS CONSIDERED AS02250257
        !           229: C     A FAILURE OF THIS TEST.                                           02260257
        !           230: C                                                                       02270257
        !           231: C                                                                       02280257
        !           232:       IVTNUM =   6                                                      02290257
        !           233:       IF (ICZERO) 30060, 0060, 30060                                    02300257
        !           234:  0060 CONTINUE                                                          02310257
        !           235:       IVON01 = 6                                                        02320257
        !           236:       GO TO ( 0062, 0063, 0064, 0065, 0066, 0067, 40060 ), IVON01       02330257
        !           237: C                                                                       02340257
        !           238:  0062 STOP 0                                                            02350257
        !           239:  0063 STOP 00000                                                        02360257
        !           240:  0064 STOP 12345                                                        02370257
        !           241:  0065 STOP 9999                                                         02380257
        !           242:  0066 STOP 'IMA 1'                                                      02390257
        !           243:  0067 STOP 'P ASS'                                                      02400257
        !           244: C                                                                       02410257
        !           245: C        **** THE TEST FAILS IF IT GOES BEYOND THE STOP STATEMENTS  ****02420257
        !           246: C                                                                       02430257
        !           247: 40060 IF ( ICZERO )  10060, 20060, 10060                                02440257
        !           248: C     ***** NOTE THAT THE NORMAL PASS-10060 AND FAIL-20060 LABELS       02450257
        !           249: C           ARE REVERSED BECAUSE IF THE LOGIC EXECUTES THIS STATEMENT   02460257
        !           250: C           THEN THE STOP STATEMENT FAILS TO EXECUTE CORRECTLY. *****   02470257
        !           251: 30060 IVDELE = IVDELE + 1                                               02480257
        !           252:       WRITE (I02,80000) IVTNUM                                          02490257
        !           253:       IF (ICZERO) 10060, 0071, 20060                                    02500257
        !           254: 10060 IVPASS = IVPASS + 1                                               02510257
        !           255:       WRITE (I02,80002) IVTNUM                                          02520257
        !           256:       GO TO 0071                                                        02530257
        !           257: 20060 IVFAIL = IVFAIL + 1                                               02540257
        !           258:       WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02550257
        !           259:  0071 CONTINUE                                                          02560257
        !           260: C                                                                       02570257
        !           261: C                                                                       02580257
        !           262: C     WRITE OUT TEST SUMMARY                                            02590257
        !           263: C                                                                       02600257
        !           264:       WRITE (I02,90004)                                                 02610257
        !           265:       WRITE (I02,90014)                                                 02620257
        !           266:       WRITE (I02,90004)                                                 02630257
        !           267:       WRITE (I02,90000)                                                 02640257
        !           268:       WRITE (I02,90004)                                                 02650257
        !           269:       WRITE (I02,90020) IVFAIL                                          02660257
        !           270:       WRITE (I02,90022) IVPASS                                          02670257
        !           271:       WRITE (I02,90024) IVDELE                                          02680257
        !           272:       STOP                                                              02690257
        !           273: 90001 FORMAT (1H ,24X,5HFM257)                                          02700257
        !           274: 90000 FORMAT (1H ,20X,20HEND OF PROGRAM FM257)                          02710257
        !           275: C                                                                       02720257
        !           276: C     FORMATS FOR TEST DETAIL LINES                                     02730257
        !           277: C                                                                       02740257
        !           278: 80000 FORMAT (1H ,4X,I5,6X,7HDELETED)                                   02750257
        !           279: 80002 FORMAT (1H ,4X,I5,7X,4HPASS)                                      02760257
        !           280: 80010 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6)                         02770257
        !           281: 80012 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5)                    02780257
        !           282: 80018 FORMAT (1H ,4X,I5,7X,4HFAIL,2X,A14,1X,A14)                        02790257
        !           283: C                                                                       02800257
        !           284: C     FORMAT STATEMENTS FOR PAGE HEADERS                                02810257
        !           285: C                                                                       02820257
        !           286: 90002 FORMAT (1H1)                                                      02830257
        !           287: 90004 FORMAT (1H )                                                      02840257
        !           288: 90006 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM)            02850257
        !           289: 90008 FORMAT (1H ,21X,11HVERSION 1.0)                                   02860257
        !           290: 90010 FORMAT (1H ,8X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978)         02870257
        !           291: 90012 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL,5X,8HCOMPUTED,8X,7HCORRECT)  02880257
        !           292: 90014 FORMAT (1H ,5X,46H----------------------------------------------) 02890257
        !           293: 90016 FORMAT (1H ,18X,17HSUBSET LEVEL TEST)                             02900257
        !           294: C                                                                       02910257
        !           295: C     FORMAT STATEMENTS FOR RUN SUMMARY                                 02920257
        !           296: C                                                                       02930257
        !           297: 90020 FORMAT (1H ,19X,I5,13H TESTS FAILED)                              02940257
        !           298: 90022 FORMAT (1H ,19X,I5,13H TESTS PASSED)                              02950257
        !           299: 90024 FORMAT (1H ,19X,I5,14H TESTS DELETED)                             02960257
        !           300:       END                                                               02970257

unix.superglobalmegacorp.com

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