FM255.f Source File


Contents

Source Code


Source Code

      PROGRAM FM255                                                     00010255
C                                                                       00020255
C                                                                       00030255
C                                                                       00040255
C        THIS ROUTINE IS A TEST OF THE ELSE STATEMENT.  TESTS WITHIN    00050255
C     THIS ROUTINE ARE FOR THE SYNTAX OF THE BASIC ELSE STATEMENT AND   00060255
C     ELSE BLOCK STRUCTURES.  THE END IF STATEMENT IS USED IN ALL BLOCK 00070255
C     IF STRUCTURES FOR THE ROUTINES FM253, FM254, AND FM255.  FOR EACH 00080255
C     BLOCK IF STATEMENT, THERE MUST BE A CORRESPONDING END IF STATEMENT00090255
C     IN THE SAME PROGRAM UNIT.                                         00100255
C                                                                       00110255
C     REFERENCES                                                        00120255
C        AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN,       00130255
C             X3.9-1977                                                 00140255
C        SECTION 11.8,       ELSE STATEMENT                             00150255
C        SECTION 11.8.1,     ELSE BLOCK                                 00160255
C        SECTION 11.8.2,     EXECUTION OF AN ELSE STATEMENT             00170255
C        SECTION 11.9,       END IF STATEMENT                           00180255
C                                                                       00190255
C                                                                       00200255
C                                                                       00210255
C                                                                       00220255
C     ******************************************************************00230255
C         A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE         00240255
C     BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN STANDARD FORTRAN   00250255
C     X3.9-1978, HAS BEEN DEVELOPED BY THE DEPARTMENT OF THE NAVY.  THE 00260255
C     FORTRAN COMPILER VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT       00270255
C     ROUTINES, THEIR RELATED DATA, AND AN EXECUTIVE SYSTEM.  EACH AUDIT00280255
C     ROUTINE IS A FORTRAN PROGRAM OR SUBPROGRAM WHICH INCLUDES TESTS   00290255
C     OF SPECIFIC LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING00300255
C     THE RESULT OF EXECUTING THESE TESTS.                              00310255
C                                                                       00320255
C     THIS PARTICULAR PROGRAM OR SUBPROGRAM CONTAINS ONLY FEATURES      00330255
C     FOUND IN THE SUBSET LEVEL OF THE STANDARD.                        00340255
C                                                                       00350255
C           SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO             00360255
C              NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY           00370255
C                   SOFTWARE STANDARDS VALIDATION GROUP                 00380255
C                          BUILDING 225  RM A266                        00390255
C                         GAITHERSBURG, MD  20899                       00400255
C     ******************************************************************00410255
C                                                                       00420255
C                                                                       00430255
      IMPLICIT LOGICAL (L)                                              00440255
      IMPLICIT CHARACTER*14 (C)                                         00450255
C                                                                       00460255
C                                                                       00470255
C                                                                       00480255
C     INITIALIZATION SECTION.                                           00490255
C                                                                       00500255
C     INITIALIZE CONSTANTS                                              00510255
C     ********************                                              00520255
C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER          00530255
      I01 = 5                                                           00540255
C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER              00550255
      I02 = 6                                                           00560255
C     SYSTEM ENVIRONMENT SECTION                                        00570255
C                                                                       00580255
CX010     THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-010 CONTROL CARD.00590255
C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      00600255
C     (UNIT NUMBER FOR CARD READER).                                    00610255
CX011      THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD00620255
C     THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00630255
C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE.         00640255
C                                                                       00650255
CX020     THIS CARD IS PEPLACED BY CONTENTS OF FEXEC X-020 CONTROL CARD.00660255
C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6      00670255
C     (UNIT NUMBER FOR PRINTER).                                        00680255
CX021     THIS CARD IS PEPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD.00690255
C     THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL            00700255
C     FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE.         00710255
C                                                                       00720255
      IVPASS = 0                                                        00730255
      IVFAIL = 0                                                        00740255
      IVDELE = 0                                                        00750255
      ICZERO = 0                                                        00760255
C                                                                       00770255
C     WRITE OUT PAGE HEADERS                                            00780255
C                                                                       00790255
      WRITE (I02,90002)                                                 00800255
      WRITE (I02,90006)                                                 00810255
      WRITE (I02,90008)                                                 00820255
      WRITE (I02,90004)                                                 00830255
      WRITE (I02,90010)                                                 00840255
      WRITE (I02,90004)                                                 00850255
      WRITE (I02,90016)                                                 00860255
      WRITE (I02,90001)                                                 00870255
      WRITE (I02,90004)                                                 00880255
      WRITE (I02,90012)                                                 00890255
      WRITE (I02,90014)                                                 00900255
      WRITE (I02,90004)                                                 00910255
C                                                                       00920255
C                                                                       00930255
C                                                                       00940255
C        THE SYNTAX OF THE ELSE STATEMENTS IN THE TESTS TO FOLLOW IS    00950255
C                                                                       00960255
C        IF ( E1 )  THEN                                                00970255
C             IF-BLOCK                                                  00980255
C        ELSE                                                           00990255
C             ELSE-BLOCK                                                01000255
C        END IF                                                         01010255
C                                                                       01020255
C        THE NEXT TWO TESTS WILL USE THE FOLLOWING COMBINATIONS OF TRUE 01030255
C     AND FALSE FOR E1 AS SHOWN BELOW -                                 01040255
C        TEST NUMBER    1    2                                          01050255
C             E1        T    F                                          01060255
C                                                                       01070255
C                                                                       01080255
C                                                                       01090255
C     ****  FCVS PROGRAM 255  -  TEST 001  ****                         01100255
C                                                                       01110255
C        TEST 001 USES A VALUE OF .TRUE. FOR E1.  THE IF-BLOCK SHOULD BE01120255
C     EXECUTED.  THE ELSE-BLOCK SHOULD NOT BE EXECUTED.                 01130255
C                                                                       01140255
C                                                                       01150255
      IVTNUM =   1                                                      01160255
      IF (ICZERO) 30010, 0010, 30010                                    01170255
 0010 CONTINUE                                                          01180255
      IVCOMP = 1                                                        01190255
      IF ( .TRUE. )  THEN                                               01200255
           IVCOMP = IVCOMP * 2                                          01210255
      ELSE                                                              01220255
           IVCOMP = IVCOMP * 3                                          01230255
      END IF                                                            01240255
C                                                                       01250255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 2 = 1 * 2            ****01260255
C                                                                       01270255
      IVCORR = 2                                                        01280255
40010 IF ( IVCOMP - 2 )  20010, 10010, 20010                            01290255
30010 IVDELE = IVDELE + 1                                               01300255
      WRITE (I02,80000) IVTNUM                                          01310255
      IF (ICZERO) 10010, 0021, 20010                                    01320255
10010 IVPASS = IVPASS + 1                                               01330255
      WRITE (I02,80002) IVTNUM                                          01340255
      GO TO 0021                                                        01350255
20010 IVFAIL = IVFAIL + 1                                               01360255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01370255
 0021 CONTINUE                                                          01380255
C                                                                       01390255
C     ****  FCVS PROGRAM 255  -  TEST 002  ****                         01400255
C                                                                       01410255
C        TEST 002 HAS E1 AS FALSE.  THE IF-BLOCK SHOULD NOT BE EXECUTED.01420255
C     THE ELSE-BLOCK SHOULD EXECUTE.                                    01430255
C                                                                       01440255
C                                                                       01450255
      IVTNUM =   2                                                      01460255
      IF (ICZERO) 30020, 0020, 30020                                    01470255
 0020 CONTINUE                                                          01480255
      IVCOMP = 1                                                        01490255
      LVON01 = .FALSE.                                                  01500255
      IF ( LVON01 )  THEN                                               01510255
           IVCOMP = IVCOMP * 2                                          01520255
      ELSE                                                              01530255
           IVCOMP = IVCOMP * 3                                          01540255
      END IF                                                            01550255
C                                                                       01560255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 3 = 1 * 3            ****01570255
C                                                                       01580255
      IVCORR = 3                                                        01590255
40020 IF ( IVCOMP - 3 )  20020, 10020, 20020                            01600255
30020 IVDELE = IVDELE + 1                                               01610255
      WRITE (I02,80000) IVTNUM                                          01620255
      IF (ICZERO) 10020, 0031, 20020                                    01630255
10020 IVPASS = IVPASS + 1                                               01640255
      WRITE (I02,80002) IVTNUM                                          01650255
      GO TO 0031                                                        01660255
20020 IVFAIL = IVFAIL + 1                                               01670255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01680255
 0031 CONTINUE                                                          01690255
C                                                                       01700255
C     ****  FCVS PROGRAM 255  -  TEST 003  ****                         01710255
C                                                                       01720255
C        TEST 003 HAS AN EMPTY ELSE-BLOCK.  SECTION 11.8.1 STATES THAT  01730255
C     AN ELSE-BLOCK MAY BE EMPTY.  IN THIS TEST THE VALUE OF E1 IS TRUE.01740255
C     THE IF-BLOCK SHOULD BE EXECUTED.                                  01750255
C                                                                       01760255
C                                                                       01770255
      IVTNUM =   3                                                      01780255
      IF (ICZERO) 30030, 0030, 30030                                    01790255
 0030 CONTINUE                                                          01800255
      IVCOMP = 1                                                        01810255
      LVON01 = .TRUE.                                                   01820255
      IF ( LVON01 )  THEN                                               01830255
           IVCOMP = IVCOMP * 2                                          01840255
      ELSE                                                              01850255
      END IF                                                            01860255
C                                                                       01870255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 2 = 1 * 2            ****01880255
C                                                                       01890255
      IVCORR = 2                                                        01900255
40030 IF ( IVCOMP - 2 )  20030, 10030, 20030                            01910255
30030 IVDELE = IVDELE + 1                                               01920255
      WRITE (I02,80000) IVTNUM                                          01930255
      IF (ICZERO) 10030, 0041, 20030                                    01940255
10030 IVPASS = IVPASS + 1                                               01950255
      WRITE (I02,80002) IVTNUM                                          01960255
      GO TO 0041                                                        01970255
20030 IVFAIL = IVFAIL + 1                                               01980255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          01990255
 0041 CONTINUE                                                          02000255
C                                                                       02010255
C     ****  FCVS PROGRAM 255  -  TEST 004  ****                         02020255
C                                                                       02030255
C        TEST 004 IS SIMILAR TO THE PREVIOUS TEST EXCEPT THAT THE VALUE 02040255
C     OF E1 IS FALSE.  THE IF-BLOCK SHOULD NOT BE EXECUTED.             02050255
C                                                                       02060255
C                                                                       02070255
      IVTNUM =   4                                                      02080255
      IF (ICZERO) 30040, 0040, 30040                                    02090255
 0040 CONTINUE                                                          02100255
      IVCOMP = 1                                                        02110255
      LVON01 = .FALSE.                                                  02120255
      IF ( LVON01 )  THEN                                               02130255
           IVCOMP = IVCOMP * 2                                          02140255
      ELSE                                                              02150255
      END IF                                                            02160255
      IVCORR = 1                                                        02170255
40040 IF ( IVCOMP - 1 )  20040, 10040, 20040                            02180255
30040 IVDELE = IVDELE + 1                                               02190255
      WRITE (I02,80000) IVTNUM                                          02200255
      IF (ICZERO) 10040, 0051, 20040                                    02210255
10040 IVPASS = IVPASS + 1                                               02220255
      WRITE (I02,80002) IVTNUM                                          02230255
      GO TO 0051                                                        02240255
20040 IVFAIL = IVFAIL + 1                                               02250255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02260255
 0051 CONTINUE                                                          02270255
C                                                                       02280255
C     ****  FCVS PROGRAM 255  -  TEST 005  ****                         02290255
C                                                                       02300255
C        TEST 005 USES AN ELSE STATEMENT IN AN IF-LEVEL OF 2.  THE      02310255
C     SYNTAX FOR THIS STRUCTURE IS SHOWN BELOW -                        02320255
C                                                                       02330255
C        IF ( E1 )  THEN                                                02340255
C             IF-BLOCK 1                                                02350255
C             IF ( E2 )  THEN                                           02360255
C                  IF-BLOCK 2                                           02370255
C             ELSE                                                      02380255
C                  ELSE-BLOCK 1                                         02390255
C             END IF                                                    02400255
C        ELSE                                                           02410255
C             ELSE-BLOCK 2                                              02420255
C        END IF                                                         02430255
C                                                                       02440255
C        IN THIS TEST THE VALUES FOR E1 AND E2 ARE BOTH TRUE.  IF-BLOCK 02450255
C     1 AND IF-BLOCK 2 SHOULD BE EXECUTED.  ELSE-BLOCKS 1 AND 2 SHOULD  02460255
C     NOT BE EXECUTED.                                                  02470255
C                                                                       02480255
C                                                                       02490255
      IVTNUM =   5                                                      02500255
      IF (ICZERO) 30050, 0050, 30050                                    02510255
 0050 CONTINUE                                                          02520255
      IVCOMP = 1                                                        02530255
      LVON01 = .TRUE.                                                   02540255
      LVON02 = .TRUE.                                                   02550255
      IF ( LVON01 )  THEN                                               02560255
           IVCOMP = IVCOMP * 2                                          02570255
           IF ( LVON02 )  THEN                                          02580255
                IVCOMP = IVCOMP * 3                                     02590255
           ELSE                                                         02600255
                IVCOMP = IVCOMP * 5                                     02610255
           END IF                                                       02620255
      ELSE                                                              02630255
      IVCOMP = IVCOMP * 7                                               02640255
      END IF                                                            02650255
C                                                                       02660255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 6 = 1 * 2 * 3            02670255
C                                                                       02680255
      IVCORR = 6                                                        02690255
40050 IF ( IVCOMP - 6 )  20050, 10050, 20050                            02700255
30050 IVDELE = IVDELE + 1                                               02710255
      WRITE (I02,80000) IVTNUM                                          02720255
      IF (ICZERO) 10050, 0061, 20050                                    02730255
10050 IVPASS = IVPASS + 1                                               02740255
      WRITE (I02,80002) IVTNUM                                          02750255
      GO TO 0061                                                        02760255
20050 IVFAIL = IVFAIL + 1                                               02770255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          02780255
 0061 CONTINUE                                                          02790255
C                                                                       02800255
C     ****  FCVS PROGRAM 255  -  TEST 006  ****                         02810255
C                                                                       02820255
C        TEST 006 IS SIMILAR TO THE PREVIOUS TEST EXCEPT THAT E1 IS TRUE02830255
C     AND E2 IS FALSE.  IF-BLOCK 1 AND ELSE-BLOCK 1 SHOULD BE EXECUTED. 02840255
C                                                                       02850255
C                                                                       02860255
      IVTNUM =   6                                                      02870255
      IF (ICZERO) 30060, 0060, 30060                                    02880255
 0060 CONTINUE                                                          02890255
      IVCOMP = 1                                                        02900255
      LVON01 = .TRUE.                                                   02910255
      LVON02 = .FALSE.                                                  02920255
      IF ( LVON01 )  THEN                                               02930255
           IVCOMP = IVCOMP * 2                                          02940255
           IF ( LVON02 )  THEN                                          02950255
                IVCOMP = IVCOMP * 3                                     02960255
           ELSE                                                         02970255
                IVCOMP = IVCOMP * 5                                     02980255
           END IF                                                       02990255
      ELSE                                                              03000255
           IVCOMP = IVCOMP * 7                                          03010255
      END IF                                                            03020255
C                                                                       03030255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 10 = 1 * 2 * 5       ****03040255
C                                                                       03050255
      IVCORR = 10                                                       03060255
40060 IF ( IVCOMP - 10 )  20060, 10060, 20060                           03070255
30060 IVDELE = IVDELE + 1                                               03080255
      WRITE (I02,80000) IVTNUM                                          03090255
      IF (ICZERO) 10060, 0071, 20060                                    03100255
10060 IVPASS = IVPASS + 1                                               03110255
      WRITE (I02,80002) IVTNUM                                          03120255
      GO TO 0071                                                        03130255
20060 IVFAIL = IVFAIL + 1                                               03140255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03150255
 0071 CONTINUE                                                          03160255
C                                                                       03170255
C     ****  FCVS PROGRAM 255  -  TEST 007  ****                         03180255
C                                                                       03190255
C        TEST 007 AGAIN USES THE SAME STRUCTURE AS THE PREVIOUS TWO     03200255
C     TESTS.  IN THIS TEST E1 IS FALSE AND E2 IS TRUE.  ONLY ELSE-BLOCK 03210255
C     2 SHOULD BE EXECUTED.                                             03220255
C                                                                       03230255
C                                                                       03240255
      IVTNUM =   7                                                      03250255
      IF (ICZERO) 30070, 0070, 30070                                    03260255
 0070 CONTINUE                                                          03270255
      IVCOMP = 1                                                        03280255
      LVON01 = .FALSE.                                                  03290255
      LVON02 = .TRUE.                                                   03300255
      IF ( LVON01 )  THEN                                               03310255
           IVCOMP = IVCOMP * 2                                          03320255
           IF ( LVON02 )  THEN                                          03330255
                IVCOMP = IVCOMP * 3                                     03340255
           ELSE                                                         03350255
                IVCOMP = IVCOMP * 5                                     03360255
           END IF                                                       03370255
      ELSE                                                              03380255
           IVCOMP = IVCOMP * 7                                          03390255
      END IF                                                            03400255
C                                                                       03410255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 7 = 1 * 7            ****03420255
C                                                                       03430255
      IVCORR = 7                                                        03440255
40070 IF ( IVCOMP - 7 )  20070, 10070, 20070                            03450255
30070 IVDELE = IVDELE + 1                                               03460255
      WRITE (I02,80000) IVTNUM                                          03470255
      IF (ICZERO) 10070, 0081, 20070                                    03480255
10070 IVPASS = IVPASS + 1                                               03490255
      WRITE (I02,80002) IVTNUM                                          03500255
      GO TO 0081                                                        03510255
20070 IVFAIL = IVFAIL + 1                                               03520255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          03530255
 0081 CONTINUE                                                          03540255
C                                                                       03550255
C                                                                       03560255
C        THE FOLLOWING TESTS USE A BLOCK IF STRUCTURE OF IF-LEVEL 3.    03570255
C     THE STRUCTURE AS SHOWN BELOW CONTAINS THE IF-THEN, ELSE IF-THEN,  03580255
C     AND ELSE STRUCTURES.                                              03590255
C                                                                       03600255
C        IF ( E1 )  THEN                                                03610255
C             IF-BLOCK 1                                                03620255
C             IF ( E2 )  THEN                                           03630255
C                  IF-BLOCK 2                                           03640255
C                  IF ( E3 )  THEN                                      03650255
C                       IF-BLOCK 3                                      03660255
C                  ELSE IF ( E4 )  THEN                                 03670255
C                       ELSE IF-BLOCK 1                                 03680255
C                  ELSE IF ( E5 )  THEN                                 03690255
C                       ELSE IF-BLOCK 2                                 03700255
C                  ELSE                                                 03710255
C                       ELSE-BLOCK 1                                    03720255
C                  END IF                                               03730255
C                  MORE IF-BLOCK 2                                      03740255
C             ELSE IF ( E6 )  THEN                                      03750255
C                  ELSE IF-BLOCK 3                                      03760255
C             ELSE                                                      03770255
C                  ELSE-BLOCK 2                                         03780255
C             END IF                                                    03790255
C             MORE IF-BLOCK 1                                           03800255
C        ELSE IF ( E7 )  THEN                                           03810255
C             ELSE IF-BLOCK 4                                           03820255
C        ELSE                                                           03830255
C             ELSE-BLOCK 3                                              03840255
C        END IF                                                         03850255
C                                                                       03860255
C        THE TRUE AND FALSE VALUES FOR THE VARIOUS LOGICAL EXPRESSIONS  03870255
C     USED IN THE TESTS TO FOLLOW ARE SHOWN BELOW -                     03880255
C                                                                       03890255
C        TEST NUMBER    8    9   10   11   12   13   14   15            03900255
C             E1        T    T    T    T    T    T    F    F            03910255
C             E2        T    T    T    T    F    F    F    F            03920255
C             E3        T    F    F    F    F    F    F    F            03930255
C             E4        T    F    F    T    F    F    F    F            03940255
C             E5        T    F    T    F    F    F    F    F            03950255
C             E6        T    F    F    F    T    F    F    F            03960255
C             E7        T    F    F    F    F    F    T    F            03970255
C                                                                       03980255
C                                                                       03990255
C                                                                       04000255
C     ****  FCVS PROGRAM 255  -  TEST 008  ****                         04010255
C                                                                       04020255
C        TEST 008 SHOULD EXECUTE IF-BLOCKS 1, 2, AND 3.  IT SHOULD ALSO 04030255
C     EXECUTE MORE IF-BLOCKS 2 AND 1.                                   04040255
C                                                                       04050255
C                                                                       04060255
      IVTNUM =   8                                                      04070255
      IF (ICZERO) 30080, 0080, 30080                                    04080255
 0080 CONTINUE                                                          04090255
      IVCOMP = 1                                                        04100255
      LVON01 = .TRUE.                                                   04110255
      LVON02 = .TRUE.                                                   04120255
      LVON03 = .TRUE.                                                   04130255
      LVON04 = .TRUE.                                                   04140255
      LVON05 = .TRUE.                                                   04150255
      LVON06 = .TRUE.                                                   04160255
      LVON07 = .TRUE.                                                   04170255
      IF ( LVON01 )  THEN                                               04180255
           IVCOMP = IVCOMP * 2                                          04190255
           IF ( LVON02 )  THEN                                          04200255
                IVCOMP = IVCOMP * 3                                     04210255
                IF ( LVON03 )  THEN                                     04220255
                     IVCOMP = IVCOMP * 5                                04230255
                ELSE IF ( LVON04 )  THEN                                04240255
                     IVCOMP = IVCOMP * 7                                04250255
                ELSE IF ( LVON05 )  THEN                                04260255
                     IVCOMP = IVCOMP * 11                               04270255
                ELSE                                                    04280255
                     IVCOMP = IVCOMP * 13                               04290255
                END IF                                                  04300255
                IVCOMP = IVCOMP * 17                                    04310255
           ELSE IF ( LVON06 )  THEN                                     04320255
                IVCOMP = IVCOMP * 19                                    04330255
           ELSE                                                         04340255
                IVCOMP = IVCOMP * 23                                    04350255
           END IF                                                       04360255
           IVCOMP = IVCOMP * 29                                         04370255
      ELSE IF ( LVON07 )  THEN                                          04380255
           IVCOMP = IVCOMP * 31                                         04390255
      ELSE                                                              04400255
           GO TO 0082                                                   04410255
      END IF                                                            04420255
      GO TO 0083                                                        04430255
 0082 IVCOMP = IVCOMP * 37                                              04440255
 0083 CONTINUE                                                          04450255
C                                                                       04460255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 14790 = 1 * 2 * 3 * 5 *  04470255
C                                                      17 * 29      ****04480255
C                                                                       04490255
      IVCORR = 14790                                                    04500255
40080 IF ( IVCOMP - 14790 )  20080, 10080, 20080                        04510255
30080 IVDELE = IVDELE + 1                                               04520255
      WRITE (I02,80000) IVTNUM                                          04530255
      IF (ICZERO) 10080, 0091, 20080                                    04540255
10080 IVPASS = IVPASS + 1                                               04550255
      WRITE (I02,80002) IVTNUM                                          04560255
      GO TO 0091                                                        04570255
20080 IVFAIL = IVFAIL + 1                                               04580255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          04590255
 0091 CONTINUE                                                          04600255
C                                                                       04610255
C     ****  FCVS PROGRAM 255  -  TEST 009  ****                         04620255
C                                                                       04630255
C        TEST 009 SHOULD EXECUTE IF-BLOCKS 1 AND 2.  IT SHOULD ALSO     04640255
C     EXECUTE ELSE-BLOCK 1, PLUS MORE IF-BLOCKS 2 AND 1.                04650255
C                                                                       04660255
C                                                                       04670255
      IVTNUM =   9                                                      04680255
      IF (ICZERO) 30090, 0090, 30090                                    04690255
 0090 CONTINUE                                                          04700255
      IVCOMP = 1                                                        04710255
      LVON01 = .TRUE.                                                   04720255
      LVON02 = .TRUE.                                                   04730255
      LVON03 = .FALSE.                                                  04740255
      LVON04 = .FALSE.                                                  04750255
      LVON05 = .FALSE.                                                  04760255
      LVON06 = .FALSE.                                                  04770255
      LVON07 = .FALSE.                                                  04780255
      IF ( LVON01 )  THEN                                               04790255
           IVCOMP = IVCOMP * 2                                          04800255
           IF ( LVON02 )  THEN                                          04810255
                IVCOMP = IVCOMP * 3                                     04820255
                IF ( LVON03 )  THEN                                     04830255
                     IVCOMP = IVCOMP * 13                               04840255
                ELSE IF ( LVON04 )  THEN                                04850255
                     IVCOMP = IVCOMP * 17                               04860255
                ELSE IF ( LVON05 )  THEN                                04870255
                     IVCOMP = IVCOMP * 11                               04880255
                ELSE                                                    04890255
                     IVCOMP = IVCOMP * 5                                04900255
                END IF                                                  04910255
                IVCOMP = IVCOMP * 7                                     04920255
           ELSE IF ( LVON06 )  THEN                                     04930255
                IVCOMP = IVCOMP * 19                                    04940255
           ELSE                                                         04950255
                IVCOMP = IVCOMP * 23                                    04960255
           END IF                                                       04970255
           IVCOMP = IVCOMP * 29                                         04980255
      ELSE IF ( LVON07 )  THEN                                          04990255
           IVCOMP = IVCOMP * 31                                         05000255
      ELSE                                                              05010255
           IF ( .TRUE. )  GO TO 0092                                    05020255
      END IF                                                            05030255
      GO TO 0093                                                        05040255
 0092 IVCOMP = IVCOMP * 37                                              05050255
 0093 CONTINUE                                                          05060255
C                                                                       05070255
C        **** THE ORDER OF THE PRIME INTEGER MULTIPLIERS HAS BEEN       05080255
C     CHANGED TO KEEP THE IVCOMP RESULT SMALLER THAN 32767          ****05090255
C                                                                       05100255
C                                                                       05110255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 6090 = 1 * 2 * 3 * 5 * 7 05120255
C                                                     * 29          ****05130255
C                                                                       05140255
      IVCORR = 6090                                                     05150255
40090 IF ( IVCOMP - 6090 )  20090, 10090, 20090                         05160255
30090 IVDELE = IVDELE + 1                                               05170255
      WRITE (I02,80000) IVTNUM                                          05180255
      IF (ICZERO) 10090, 0101, 20090                                    05190255
10090 IVPASS = IVPASS + 1                                               05200255
      WRITE (I02,80002) IVTNUM                                          05210255
      GO TO 0101                                                        05220255
20090 IVFAIL = IVFAIL + 1                                               05230255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05240255
 0101 CONTINUE                                                          05250255
C                                                                       05260255
C     ****  FCVS PROGRAM 255  -  TEST 010  ****                         05270255
C                                                                       05280255
C        TEST 010 SHOULD EXECUTE IF-BLOCKS 1 AND 2.  IT SHOULD ALSO     05290255
C     EXECUTE ELSE IF-BLOCK 2, PLUS MORE IF-BLOCKS 2 AND 1.             05300255
C                                                                       05310255
C                                                                       05320255
      IVTNUM =  10                                                      05330255
      IF (ICZERO) 30100, 0100, 30100                                    05340255
 0100 CONTINUE                                                          05350255
      IVCOMP = 1                                                        05360255
      LVON01 = .TRUE.                                                   05370255
      LVON02 = .TRUE.                                                   05380255
      LVON03 = .FALSE.                                                  05390255
      LVON04 = .FALSE.                                                  05400255
      LVON05 = .TRUE.                                                   05410255
      LVON06 = .FALSE.                                                  05420255
      LVON07 = .FALSE.                                                  05430255
      IF ( LVON01 )  THEN                                               05440255
           IVCOMP = IVCOMP * 2                                          05450255
           IF ( LVON02 )  THEN                                          05460255
                IVCOMP = IVCOMP * 3                                     05470255
                IF ( LVON03 )  THEN                                     05480255
                     IVCOMP = IVCOMP * 5                                05490255
                ELSE IF ( LVON04 )  THEN                                05500255
                     IVCOMP = IVCOMP * 7                                05510255
                ELSE IF ( LVON05 )  THEN                                05520255
                     IVCOMP = IVCOMP * 11                               05530255
                ELSE                                                    05540255
                     IVCOMP = IVCOMP * 13                               05550255
                END IF                                                  05560255
                IVCOMP = IVCOMP * 17                                    05570255
           ELSE IF ( LVON06 )  THEN                                     05580255
                IVCOMP = IVCOMP * 19                                    05590255
           ELSE                                                         05600255
                IVCOMP = IVCOMP * 23                                    05610255
           END IF                                                       05620255
           IVCOMP = IVCOMP * 29                                         05630255
      ELSE IF ( LVON07 )  THEN                                          05640255
           IVCOMP = IVCOMP * 31                                         05650255
      ELSE                                                              05660255
           ICON01 = 1                                                   05670255
           IF ( ICON01 )  0103, 0102, 0103                              05680255
      END IF                                                            05690255
      GO TO 0103                                                        05700255
 0102 IVCOMP = IVCOMP * 37                                              05710255
 0103 CONTINUE                                                          05720255
C                                                                       05730255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 32538 = 1 * 2 * 3 * 11 * 05740255
C                                                      17 * 29      ****05750255
C                                                                       05760255
      IVCORR = 32538                                                    05770255
40100 IF ( IVCOMP - 32538 )  20100, 10100, 20100                        05780255
30100 IVDELE = IVDELE + 1                                               05790255
      WRITE (I02,80000) IVTNUM                                          05800255
      IF (ICZERO) 10100, 0111, 20100                                    05810255
10100 IVPASS = IVPASS + 1                                               05820255
      WRITE (I02,80002) IVTNUM                                          05830255
      GO TO 0111                                                        05840255
20100 IVFAIL = IVFAIL + 1                                               05850255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          05860255
 0111 CONTINUE                                                          05870255
C                                                                       05880255
C     ****  FCVS PROGRAM 255  -  TEST 011  ****                         05890255
C                                                                       05900255
C        TEST 011 SHOULD EXECUTE IF-BLOCKS 1 AND 2.  IT SHOULD ALSO     05910255
C     EXECUTE ELSE IF-BLOCK 1, PLUS MORE IF-BLOCKS 2 AND 1.             05920255
C                                                                       05930255
C                                                                       05940255
      IVTNUM =  11                                                      05950255
      IF (ICZERO) 30110, 0110, 30110                                    05960255
 0110 CONTINUE                                                          05970255
      IVCOMP = 1                                                        05980255
      LVON01 = .TRUE.                                                   05990255
      LVON02 = .TRUE.                                                   06000255
      LVON03 = .FALSE.                                                  06010255
      LVON04 = .TRUE.                                                   06020255
      LVON05 = .FALSE.                                                  06030255
      LVON06 = .FALSE.                                                  06040255
      LVON07 = .FALSE.                                                  06050255
      IF ( LVON01 )  THEN                                               06060255
           IVCOMP = IVCOMP * 2                                          06070255
           IF ( LVON02 )  THEN                                          06080255
                IVCOMP = IVCOMP * 3                                     06090255
                IF ( LVON03 )  THEN                                     06100255
                     IVCOMP = IVCOMP * 5                                06110255
                ELSE IF ( LVON04 )  THEN                                06120255
                     IVCOMP = IVCOMP * 7                                06130255
                ELSE IF ( LVON05 )  THEN                                06140255
                     IVCOMP = IVCOMP * 11                               06150255
                ELSE                                                    06160255
                     IVCOMP = IVCOMP * 13                               06170255
                END IF                                                  06180255
                IVCOMP = IVCOMP * 17                                    06190255
           ELSE IF ( LVON06 )  THEN                                     06200255
                IVCOMP = IVCOMP * 19                                    06210255
           ELSE                                                         06220255
                IVCOMP = IVCOMP * 23                                    06230255
           END IF                                                       06240255
           IVCOMP = IVCOMP * 29                                         06250255
      ELSE IF ( LVON07 )  THEN                                          06260255
           IVCOMP = IVCOMP * 31                                         06270255
      ELSE                                                              06280255
           ASSIGN 0112 TO I                                             06290255
           GO TO I, ( 0113, 0112)                                       06300255
      END IF                                                            06310255
      GO TO 0113                                                        06320255
 0112 IVCOMP = IVCOMP * 37                                              06330255
 0113 CONTINUE                                                          06340255
C                                                                       06350255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 20706 = 1 * 2 * 3 * 7 *  06360255
C                                                      17 * 29      ****06370255
C                                                                       06380255
      IVCORR = 20706                                                    06390255
40110 IF ( IVCOMP - 20706 )  20110, 10110, 20110                        06400255
30110 IVDELE = IVDELE + 1                                               06410255
      WRITE (I02,80000) IVTNUM                                          06420255
      IF (ICZERO) 10110, 0121, 20110                                    06430255
10110 IVPASS = IVPASS + 1                                               06440255
      WRITE (I02,80002) IVTNUM                                          06450255
      GO TO 0121                                                        06460255
20110 IVFAIL = IVFAIL + 1                                               06470255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          06480255
 0121 CONTINUE                                                          06490255
C                                                                       06500255
C     ****  FCVS PROGRAM 255  -  TEST 012  ****                         06510255
C                                                                       06520255
C        TEST 012 SHOULD EXECUTE IF-BLOCK 1, ELSE IF-BLOCK 3, AND MORE  06530255
C     IF-BLOCK 1.                                                       06540255
C                                                                       06550255
C                                                                       06560255
      IVTNUM =  12                                                      06570255
      IF (ICZERO) 30120, 0120, 30120                                    06580255
 0120 CONTINUE                                                          06590255
      IVCOMP = 1                                                        06600255
      LVON01 = .TRUE.                                                   06610255
      LVON02 = .FALSE.                                                  06620255
      LVON03 = .FALSE.                                                  06630255
      LVON04 = .FALSE.                                                  06640255
      LVON05 = .FALSE.                                                  06650255
      LVON06 = .TRUE.                                                   06660255
      LVON07 = .FALSE.                                                  06670255
      IF ( LVON01 )  THEN                                               06680255
           IVCOMP = IVCOMP * 2                                          06690255
           IF ( LVON02 )  THEN                                          06700255
                IVCOMP = IVCOMP * 3                                     06710255
                IF ( LVON03 )  THEN                                     06720255
                     IVCOMP = IVCOMP * 5                                06730255
                ELSE IF ( LVON04 )  THEN                                06740255
                     IVCOMP = IVCOMP * 7                                06750255
                ELSE IF ( LVON05 )  THEN                                06760255
                     IVCOMP = IVCOMP * 11                               06770255
                ELSE                                                    06780255
                     IVCOMP = IVCOMP * 13                               06790255
                END IF                                                  06800255
                IVCOMP = IVCOMP * 17                                    06810255
           ELSE IF ( LVON06 )  THEN                                     06820255
                IVCOMP = IVCOMP * 19                                    06830255
           ELSE                                                         06840255
                IVCOMP = IVCOMP * 23                                    06850255
           END IF                                                       06860255
           IVCOMP = IVCOMP * 29                                         06870255
      ELSE IF ( LVON07 )  THEN                                          06880255
           IVCOMP = IVCOMP * 31                                         06890255
      ELSE                                                              06900255
           I = 2                                                        06910255
           GO TO ( 0123, 0122 ), I                                      06920255
      END IF                                                            06930255
      GO TO 0123                                                        06940255
 0122 IVCOMP = IVCOMP * 37                                              06950255
 0123 CONTINUE                                                          06960255
C                                                                       06970255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 1102 = 1 * 2 * 19 * 29   06980255
C                                                                       06990255
      IVCORR = 1102                                                     07000255
40120 IF ( IVCOMP - 1102 )  20120, 10120, 20120                         07010255
30120 IVDELE = IVDELE + 1                                               07020255
      WRITE (I02,80000) IVTNUM                                          07030255
      IF (ICZERO) 10120, 0131, 20120                                    07040255
10120 IVPASS = IVPASS + 1                                               07050255
      WRITE (I02,80002) IVTNUM                                          07060255
      GO TO 0131                                                        07070255
20120 IVFAIL = IVFAIL + 1                                               07080255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          07090255
 0131 CONTINUE                                                          07100255
C                                                                       07110255
C     ****  FCVS PROGRAM 255  -  TEST 013  ****                         07120255
C                                                                       07130255
C        TEST 013 SHOULD EXECUTE IF-BLOCK 1, ELSE-BLOCK 2, AND MORE     07140255
C     IF-BLOCK 1.                                                       07150255
C                                                                       07160255
C                                                                       07170255
      IVTNUM =  13                                                      07180255
      IF (ICZERO) 30130, 0130, 30130                                    07190255
 0130 CONTINUE                                                          07200255
      IVCOMP = 1                                                        07210255
      LVON01 = .TRUE.                                                   07220255
      LVON02 = .FALSE.                                                  07230255
      LVON03 = .FALSE.                                                  07240255
      LVON04 = .FALSE.                                                  07250255
      LVON05 = .FALSE.                                                  07260255
      LVON06 = .FALSE.                                                  07270255
      LVON07 = .FALSE.                                                  07280255
      IF ( LVON01 )  THEN                                               07290255
           IVCOMP = IVCOMP * 2                                          07300255
           IF ( LVON02 )  THEN                                          07310255
                IVCOMP = IVCOMP * 3                                     07320255
                IF ( LVON03 )  THEN                                     07330255
                     IVCOMP = IVCOMP * 5                                07340255
                ELSE IF ( LVON04 )  THEN                                07350255
                     IVCOMP = IVCOMP * 7                                07360255
                ELSE IF ( LVON05 )  THEN                                07370255
                     IVCOMP = IVCOMP * 11                               07380255
                ELSE                                                    07390255
                     IVCOMP = IVCOMP * 13                               07400255
                END IF                                                  07410255
                IVCOMP = IVCOMP * 17                                    07420255
           ELSE IF ( LVON06 )  THEN                                     07430255
                IVCOMP = IVCOMP * 19                                    07440255
           ELSE                                                         07450255
                IVCOMP = IVCOMP * 23                                    07460255
           END IF                                                       07470255
           IVCOMP = IVCOMP * 29                                         07480255
      ELSE IF ( LVON07 )  THEN                                          07490255
           IVCOMP = IVCOMP * 31                                         07500255
      ELSE                                                              07510255
           GO TO 0132                                                   07520255
      END IF                                                            07530255
      GO TO 0133                                                        07540255
 0132 IVCOMP = IVCOMP * 37                                              07550255
 0133 CONTINUE                                                          07560255
C                                                                       07570255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 1334 = 1 * 2 * 23 * 29   07580255
C                                                                       07590255
      IVCORR = 1334                                                     07600255
40130 IF ( IVCOMP - 1334 )  20130, 10130, 20130                         07610255
30130 IVDELE = IVDELE + 1                                               07620255
      WRITE (I02,80000) IVTNUM                                          07630255
      IF (ICZERO) 10130, 0141, 20130                                    07640255
10130 IVPASS = IVPASS + 1                                               07650255
      WRITE (I02,80002) IVTNUM                                          07660255
      GO TO 0141                                                        07670255
20130 IVFAIL = IVFAIL + 1                                               07680255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          07690255
 0141 CONTINUE                                                          07700255
C                                                                       07710255
C     ****  FCVS PROGRAM 255  -  TEST 014  ****                         07720255
C                                                                       07730255
C        TEST 014 SHOULD ONLY EXECUTE ELSE IF-BLOCK 4.                  07740255
C                                                                       07750255
C                                                                       07760255
      IVTNUM =  14                                                      07770255
      IF (ICZERO) 30140, 0140, 30140                                    07780255
 0140 CONTINUE                                                          07790255
      IVCOMP = 1                                                        07800255
      LVON01 = .FALSE.                                                  07810255
      LVON02 = .FALSE.                                                  07820255
      LVON03 = .FALSE.                                                  07830255
      LVON04 = .FALSE.                                                  07840255
      LVON05 = .FALSE.                                                  07850255
      LVON06 = .FALSE.                                                  07860255
      LVON07 = .TRUE.                                                   07870255
      IF ( LVON01 )  THEN                                               07880255
           IVCOMP = IVCOMP * 2                                          07890255
           IF ( LVON02 )  THEN                                          07900255
                IVCOMP = IVCOMP * 3                                     07910255
                IF ( LVON03 )  THEN                                     07920255
                     IVCOMP = IVCOMP * 5                                07930255
                ELSE IF ( LVON04 )  THEN                                07940255
                     IVCOMP = IVCOMP * 7                                07950255
                ELSE IF ( LVON05 )  THEN                                07960255
                     IVCOMP = IVCOMP * 11                               07970255
                ELSE                                                    07980255
                     IVCOMP = IVCOMP * 13                               07990255
                END IF                                                  08000255
                IVCOMP = IVCOMP * 17                                    08010255
           ELSE IF ( LVON06 )  THEN                                     08020255
                IVCOMP = IVCOMP * 19                                    08030255
           ELSE                                                         08040255
                IVCOMP = IVCOMP * 23                                    08050255
           END IF                                                       08060255
           IVCOMP = IVCOMP * 29                                         08070255
      ELSE IF ( LVON07 )  THEN                                          08080255
           IVCOMP = IVCOMP * 31                                         08090255
      ELSE                                                              08100255
           IF ( .NOT. .FALSE. )  GO TO 0142                             08110255
      END IF                                                            08120255
      GO TO 0143                                                        08130255
 0142 IVCOMP = IVCOMP * 37                                              08140255
 0143 CONTINUE                                                          08150255
C                                                                       08160255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 31 = 1 * 31          ****08170255
C                                                                       08180255
      IVCORR = 31                                                       08190255
40140 IF ( IVCOMP - 31 )  20140, 10140, 20140                           08200255
30140 IVDELE = IVDELE + 1                                               08210255
      WRITE (I02,80000) IVTNUM                                          08220255
      IF (ICZERO) 10140, 0151, 20140                                    08230255
10140 IVPASS = IVPASS + 1                                               08240255
      WRITE (I02,80002) IVTNUM                                          08250255
      GO TO 0151                                                        08260255
20140 IVFAIL = IVFAIL + 1                                               08270255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          08280255
 0151 CONTINUE                                                          08290255
C                                                                       08300255
C     ****  FCVS PROGRAM 255  -  TEST 015  ****                         08310255
C                                                                       08320255
C        TEST 015 SHOULD ONLY EXECUTE THE LOGIC IN ELSE-BLOCK 3.  THIS  08330255
C     LOGIC CONSISTS OF AN ARITHMETIC IF STATEMENT WHICH SHOULD TAKE    08340255
C     THE EXPRESSION EQUAL TO ZERO BRANCH TO STATEMENT 0152.            08350255
C                                                                       08360255
C                                                                       08370255
      IVTNUM =  15                                                      08380255
      IF (ICZERO) 30150, 0150, 30150                                    08390255
 0150 CONTINUE                                                          08400255
      IVCOMP = 1                                                        08410255
      LVON01 = .FALSE.                                                  08420255
      LVON02 = .FALSE.                                                  08430255
      LVON03 = .FALSE.                                                  08440255
      LVON04 = .FALSE.                                                  08450255
      LVON05 = .FALSE.                                                  08460255
      LVON06 = .FALSE.                                                  08470255
      LVON07 = .FALSE.                                                  08480255
      IF ( LVON01 )  THEN                                               08490255
           IVCOMP = IVCOMP * 2                                          08500255
           IF ( LVON02 )  THEN                                          08510255
                IVCOMP = IVCOMP * 3                                     08520255
                IF ( LVON03 )  THEN                                     08530255
                     IVCOMP = IVCOMP * 5                                08540255
                ELSE IF ( LVON04 )  THEN                                08550255
                     IVCOMP = IVCOMP * 7                                08560255
                ELSE IF ( LVON05 )  THEN                                08570255
                     IVCOMP = IVCOMP * 11                               08580255
                ELSE                                                    08590255
                     IVCOMP = IVCOMP * 13                               08600255
                END IF                                                  08610255
                IVCOMP = IVCOMP * 17                                    08620255
           ELSE IF ( LVON06 )  THEN                                     08630255
                IVCOMP = IVCOMP * 19                                    08640255
           ELSE                                                         08650255
                IVCOMP = IVCOMP * 23                                    08660255
           END IF                                                       08670255
           IVCOMP = IVCOMP * 29                                         08680255
      ELSE IF ( LVON07 )  THEN                                          08690255
           IVCOMP = IVCOMP * 31                                         08700255
      ELSE                                                              08710255
           ICON01 = 1                                                   08720255
           IF ( ICON01 - 1 )  0153, 0152, 0153                          08730255
      END IF                                                            08740255
      GO TO 0153                                                        08750255
 0152 IVCOMP = IVCOMP * 37                                              08760255
 0153 CONTINUE                                                          08770255
C                                                                       08780255
C        **** IVCOMP IS DETERMINED BY IVCOMP = 37 = 1 * 37          ****08790255
C                                                                       08800255
      IVCORR = 37                                                       08810255
40150 IF ( IVCOMP - 37 )  20150, 10150, 20150                           08820255
30150 IVDELE = IVDELE + 1                                               08830255
      WRITE (I02,80000) IVTNUM                                          08840255
      IF (ICZERO) 10150, 0161, 20150                                    08850255
10150 IVPASS = IVPASS + 1                                               08860255
      WRITE (I02,80002) IVTNUM                                          08870255
      GO TO 0161                                                        08880255
20150 IVFAIL = IVFAIL + 1                                               08890255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          08900255
 0161 CONTINUE                                                          08910255
C                                                                       08920255
C     ****  FCVS PROGRAM 255  -  TEST 016  ****                         08930255
C                                                                       08940255
C        TEST 016 IS A TEST OF THE END IF STATEMENT.   SECTION 11.9     08950255
C     PERMITS TRANSFER OF CONTROL FROM ANYWHERE TO AN END IF STATEMENT. 08960255
C     ALSO ACCORDING TO SECTION 11.9 - EXECUTION OF AN END IF STATEMENT 08970255
C     HAS NO EFFECT.                                                    08980255
C                                                                       08990255
C                                                                       09000255
      IVTNUM =  16                                                      09010255
      IF (ICZERO) 30160, 0160, 30160                                    09020255
 0160 CONTINUE                                                          09030255
      IVCOMP = 1                                                        09040255
      LVON01 = .TRUE.                                                   09050255
      IF ( ICZERO )  0163, 0162, 0163                                   09060255
 0162 GO TO 0164                                                        09070255
 0163 IF ( LVON01 )  THEN                                               09080255
           IVCOMP = IVCOMP * 2                                          09090255
      ELSE                                                              09100255
           IVCOMP = IVCOMP * 3                                          09110255
 0164 END IF                                                            09120255
C                                                                       09130255
C        **** IVCOMP SHOULD REMAIN SET TO ONE (1).                  ****09140255
C                                                                       09150255
      IVCORR = 1                                                        09160255
40160 IF ( IVCOMP - 1 )  20160, 10160, 20160                            09170255
30160 IVDELE = IVDELE + 1                                               09180255
      WRITE (I02,80000) IVTNUM                                          09190255
      IF (ICZERO) 10160, 0171, 20160                                    09200255
10160 IVPASS = IVPASS + 1                                               09210255
      WRITE (I02,80002) IVTNUM                                          09220255
      GO TO 0171                                                        09230255
20160 IVFAIL = IVFAIL + 1                                               09240255
      WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR                          09250255
 0171 CONTINUE                                                          09260255
C                                                                       09270255
C                                                                       09280255
C     WRITE OUT TEST SUMMARY                                            09290255
C                                                                       09300255
      WRITE (I02,90004)                                                 09310255
      WRITE (I02,90014)                                                 09320255
      WRITE (I02,90004)                                                 09330255
      WRITE (I02,90000)                                                 09340255
      WRITE (I02,90004)                                                 09350255
      WRITE (I02,90020) IVFAIL                                          09360255
      WRITE (I02,90022) IVPASS                                          09370255
      WRITE (I02,90024) IVDELE                                          09380255
      STOP                                                              09390255
90001 FORMAT (" ",24X,"FM255")                                          09400255
90000 FORMAT (" ",20X,"END OF PROGRAM FM255" )                          09410255
C                                                                       09420255
C     FORMATS FOR TEST DETAIL LINES                                     09430255
C                                                                       09440255
80000 FORMAT (" ",4X,I5,6X,"DELETED")                                   09450255
80002 FORMAT (" ",4X,I5,7X,"PASS")                                      09460255
80010 FORMAT (" ",4X,I5,7X,"FAIL",10X,I6,9X,I6)                         09470255
80012 FORMAT (" ",4X,I5,7X,"FAIL",4X,E12.5,3X,E12.5)                    09480255
80018 FORMAT (" ",4X,I5,7X,"FAIL",2X,A14,1X,A14)                        09490255
C                                                                       09500255
C     FORMAT STATEMENTS FOR PAGE HEADERS                                09510255
C                                                                       09520255
90002 FORMAT ("1")                                                      09530255
90004 FORMAT (" ")                                                      09540255
90006 FORMAT (" ",10X,"FORTRAN COMPILER VALIDATION SYSTEM" )            09550255
90008 FORMAT (" ",21X,"VERSION 2.1" )                                   09560255
90010 FORMAT (" ",8X,"FOR OFFICIAL USE ONLY - COPYRIGHT 1978" )         09570255
90012 FORMAT (" ",5X,"TEST",5X,"PASS/FAIL",5X,"COMPUTED",8X,"CORRECT")  09580255
90014 FORMAT (" ",5X,"----------------------------------------------" ) 09590255
90016 FORMAT (" ",18X,"SUBSET LEVEL TEST" )                             09600255
C                                                                       09610255
C     FORMAT STATEMENTS FOR RUN SUMMARY                                 09620255
C                                                                       09630255
90020 FORMAT (" ",19X,I5," TESTS FAILED" )                              09640255
90022 FORMAT (" ",19X,I5," TESTS PASSED" )                              09650255
90024 FORMAT (" ",19X,I5," TESTS DELETED" )                             09660255
      END                                                               09670255