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

1.1       root        1: C***********************************************************************00010353
                      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*****  FORTRAN 77                                                      00020353
                      6: C*****   FM353               XINT - (150)                               00030353
                      7: C*****                                                                  00040353
                      8: C***********************************************************************00050353
                      9: C*****  GENERAL PURPOSE                                       SUBSET REF00060353
                     10: C*****    TEST INTRINSIC FUNCTION - IFIX - (CONVERSION FROM      15.3   00070353
                     11: C*****    REAL TO INTEGER)                                     (TABLE 5)00080353
                     12: C*****    TEST INTRINSIC FUNCTION - INT - (TRUNCATION -- SIGN           00090353
                     13: C*****    OF A * LARGEST INTEGER LE ABS(A) )                            00100353
                     14: C*****                                                                  00110353
                     15: C*****                                                                  00120353
                     16: CBB** ********************** BBCCOMNT **********************************00130353
                     17: C****                                                                   00140353
                     18: C****            1978 FORTRAN COMPILER VALIDATION SYSTEM                00150353
                     19: C****                          VERSION 2.0                              00160353
                     20: C****                                                                   00170353
                     21: C****                                                                   00180353
                     22: C****           SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO         00190353
                     23: C****                   GENERAL SERVICES ADMINISTRATION                 00200353
                     24: C****                   FEDERAL SOFTWARE TESTING CENTER                 00210353
                     25: C****                   5203 LEESBURG PIKE, SUITE 1100                  00220353
                     26: C****                      FALLS CHURCH, VA. 22041                      00230353
                     27: C****                                                                   00240353
                     28: C****                          (703) 756-6153                           00250353
                     29: C****                                                                   00260353
                     30: CBE** ********************** BBCCOMNT **********************************00270353
                     31: CBB** ********************** BBCINITA **********************************00280353
                     32: C**** SPECIFICATION STATEMENTS                                          00290353
                     33: C****                                                                   00300353
                     34:       CHARACTER ZVERS*13, ZVERSD*17, ZDATE*17, ZPROG*5, ZCOMPL*20,      00310353
                     35:      1          ZNAME*20, ZTAPE*10, ZPROJ*13, REMRKS*31, ZTAPED*13      00320353
                     36: CBE** ********************** BBCINITA **********************************00330353
                     37: CBB** ********************** BBCINITB **********************************00340353
                     38: C**** INITIALIZE SECTION                                                00350353
                     39:       DATA  ZVERS,                  ZVERSD,             ZDATE           00360353
                     40:      1      /'VERSION 2.0  ',  '82/08/02*18.33.46',  '*NO DATE*TIME'/   00370353
                     41:       DATA       ZCOMPL,             ZNAME,             ZTAPE           00380353
                     42:      1      /'*NONE SPECIFIED*', '*NO COMPANY NAME*', '*NO TAPE*'/      00390353
                     43:       DATA       ZPROJ,           ZTAPED,         ZPROG                 00400353
                     44:      1      /'*NO PROJECT*',   '*NO TAPE DATE',  'XXXXX'/               00410353
                     45:       DATA   REMRKS /'                               '/                 00420353
                     46: C**** THE FOLLOWING 9 COMMENT LINES (CZ01, CZ02, ...) CAN BE REPLACED   00430353
                     47: C**** FOR IDENTIFYING THE TEST ENVIRONMENT                              00440353
                     48: C****                                                                   00450353
                     49: CZ01  ZVERS  = 'VERSION OF THE COMPILER VALIDATION SYSTEM'              00460353
                     50: CZ02  ZVERSD = 'CREATION DATE/TIME OF THE COMPILER VALIDATION SYSTEM'   00470353
                     51: CZ03  ZPROG  = 'PROGRAM NAME'                                           00480353
                     52:       ZDATE  = '07-Nov-85        '                                           *RP
                     53:       ZCOMPL = 'CCI 5.2             '                                        *RP
                     54:       ZPROJ  = 'TC-85-   -410'                                               *RP
                     55:       ZNAME  = '                    '                                        *RP
                     56:       ZTAPE  = '          '                                                  *RP
                     57:       ZTAPED = '850703       '                                               *RP
                     58: C                                                                       00550353
                     59:       IVPASS = 0                                                        00560353
                     60:       IVFAIL = 0                                                        00570353
                     61:       IVDELE = 0                                                        00580353
                     62:       IVINSP = 0                                                        00590353
                     63:       IVTOTL = 0                                                        00600353
                     64:       IVTOTN = 0                                                        00610353
                     65:       ICZERO = 0                                                        00620353
                     66: C                                                                       00630353
                     67: C     I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER.         00640353
                     68:       I01 = 05                                                          00650353
                     69: C     I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER.             00660353
                     70:       I02 = 06                                                          00670353
                     71: C                                                                       00680353
                     72:       I01 = 5                                                           00690353
                     73: C     THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5      00700353
                     74: CX011   REPLACED BY FEXEC X-011 CONTROL CARD.  CX011 IS FOR SYSTEMS     00710353
                     75: C     REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX010.  00720353
                     76: C                                                                       00730353
                     77:       I02 = 6                                                           00740353
                     78: C     THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02= 6       00750353
                     79: CX021   REPLACED BY FEXEC X-021 CONTROL CARD.  CX021 IS FOR SYSTEMS     00760353
                     80: C     REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX020.  00770353
                     81: C                                                                       00780353
                     82: CBE** ********************** BBCINITB **********************************00790353
                     83:       NUVI = I02                                                        00800353
                     84:         IVTOTL = 14                                                     00810353
                     85:       ZPROG='FM353'                                                     00820353
                     86: CBB** ********************** BBCHED0A **********************************00830353
                     87: C****                                                                   00840353
                     88: C**** WRITE REPORT TITLE                                                00850353
                     89: C****                                                                   00860353
                     90:       WRITE (I02, 90002)                                                00870353
                     91:       WRITE (I02, 90006)                                                00880353
                     92:       WRITE (I02, 90007)                                                00890353
                     93:       WRITE (I02, 90008)  ZVERS, ZVERSD                                 00900353
                     94:       WRITE (I02, 90009)  ZPROG, ZPROG                                  00910353
                     95:       WRITE (I02, 90010)  ZDATE, ZCOMPL                                 00920353
                     96: CBE** ********************** BBCHED0A **********************************00930353
                     97: C*****                                                                  00940353
                     98: C*****    HEADER FOR SEGMENT 150                                        00950353
                     99:         WRITE (NUVI,15001)                                              00960353
                    100: 15001   FORMAT  (1H ,/ 2X,34HXINT - (150) INTRINSIC FUNCTIONS-- /17X,   00970353
                    101:      1           28H IFIX, INT (TYPE CONVERSION)/ 2X,                   00980353
                    102:      2           18HSUBSET REF. - 15.3)                                 00990353
                    103: C*****                                                                  01000353
                    104: CBB** ********************** BBCHED0B **********************************01010353
                    105: C**** WRITE DETAIL REPORT HEADERS                                       01020353
                    106: C****                                                                   01030353
                    107:       WRITE (I02,90004)                                                 01040353
                    108:       WRITE (I02,90004)                                                 01050353
                    109:       WRITE (I02,90013)                                                 01060353
                    110:       WRITE (I02,90014)                                                 01070353
                    111:       WRITE (I02,90015) IVTOTL                                          01080353
                    112: CBE** ********************** BBCHED0B **********************************01090353
                    113: 15003   FORMAT(1X,2X,I3,4X,7HINSPECT,5X, I5, 5X, I5)                    01100353
                    114: 15004   FORMAT( /48X,30H BELOW ANSWERS SHOULD BE ZERO /49X,             01110353
                    115:      1        25HFOR TEST SEGMENT TO PASS )                             01120353
                    116: 15005   FORMAT (49X,26H- EACH TEST HAS TWO PARTS.)                      01130353
                    117:         WRITE (NUVI, 15005)                                             01140353
                    118:         WRITE(NUVI, 15004)                                              01150353
                    119:         WRITE(NUVI,15002)                                               01160353
                    120: 15002   FORMAT (23X, 5H IFIX, 5X,  5H INT )                             01170353
                    121: C*****                                                                  01180353
                    122: CT001*    TEST   1                                       THE VALUE ZERO 01190353
                    123:         IVTNUM =   1                                                    01200353
                    124:         RACVS = 0.0                                                     01210353
                    125:         IAAVI = IFIX(RACVS)                                             01220353
                    126:         IABVI = INT(RACVS)                                              01230353
                    127:         IADVI = IAAVI - 0                                               01240353
                    128:         IAEVI = IABVI - 0                                               01250353
                    129:         WRITE(NUVI,15003)  IVTNUM,IADVI, IAEVI                          01260353
                    130: CT002*    TEST   2                                     A VALUE IN (0,1) 01270353
                    131:         IVTNUM =   2                                                    01280353
                    132:         RACVS = 0.375                                                   01290353
                    133:         IAAVI = IFIX(RACVS)                                             01300353
                    134:         IABVI = INT(RACVS)                                              01310353
                    135:         IADVI = IAAVI - 0                                               01320353
                    136:         IAEVI = IABVI - 0                                               01330353
                    137:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         01340353
                    138: CT003*    TEST   3                                        THE VALUE ONE 01350353
                    139:         IVTNUM =   3                                                    01360353
                    140:         RACVS = 1.00001                                                 01370353
                    141:         IAAVI = IFIX(RACVS)                                             01380353
                    142:         IABVI = INT(RACVS)                                              01390353
                    143:         IADVI = IAAVI - 1                                               01400353
                    144:         IAEVI = IABVI - 1                                               01410353
                    145:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         01420353
                    146: CT004*    TEST   4                  AN INTEGRAL VALUE OTHER THAN 0 OR 1 01430353
                    147:         IVTNUM =   4                                                    01440353
                    148:         RACVS = 6.00001                                                 01450353
                    149:         IAAVI = IFIX(RACVS)                                             01460353
                    150:         IABVI = INT(RACVS)                                              01470353
                    151:         IADVI = IAAVI - 6                                               01480353
                    152:         IAEVI = IABVI - 6                                               01490353
                    153:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         01500353
                    154: CT005*    TEST   5                                   A VALUE IN (X,X+1) 01510353
                    155:         IVTNUM =   5                                                    01520353
                    156:         RACVS = 3.75                                                    01530353
                    157:         IAAVI = IFIX(RACVS)                                             01540353
                    158:         IABVI = INT(RACVS)                                              01550353
                    159:         IADVI = IAAVI - 3                                               01560353
                    160:         IAEVI = IABVI - 3                                               01570353
                    161:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         01580353
                    162: CT006*    TEST   6             A NEGATIVE VALUE WITH MAGNITUDE IN (0,1) 01590353
                    163:         IVTNUM =   6                                                    01600353
                    164:         RACVS = -0.375                                                  01610353
                    165:         IAAVI = IFIX(RACVS)                                             01620353
                    166:         IABVI = INT(RACVS)                                              01630353
                    167:         IADVI = IAAVI - 0                                               01640353
                    168:         IAEVI = IABVI - 0                                               01650353
                    169:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         01660353
                    170: CT007*    TEST   7                                         THE VALUE -1 01670353
                    171:         IVTNUM =   7                                                    01680353
                    172:         RACVS = -1.00001                                                01690353
                    173:         IAAVI = IFIX(RACVS)                                             01700353
                    174:         IABVI = INT(RACVS)                                              01710353
                    175:         IADVI = IAAVI + 1                                               01720353
                    176:         IAEVI = IABVI + 1                                               01730353
                    177:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         01740353
                    178: CT008*    TEST   8                            A NEGATIVE INTEGRAL VALUE 01750353
                    179:         IVTNUM =   8                                                    01760353
                    180:         RACVS = -6.00001                                                01770353
                    181:         IAAVI = IFIX(RACVS)                                             01780353
                    182:         IABVI = INT(RACVS)                                              01790353
                    183:         IADVI = IAAVI + 6                                               01800353
                    184:         IAEVI = IABVI + 6                                               01810353
                    185:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         01820353
                    186: CT009*    TEST   9           A NEGATIVE VALUE WITH MAGNITUDE IN (X,X+1) 01830353
                    187:         IVTNUM =   9                                                    01840353
                    188:         RACVS = -3.75                                                   01850353
                    189:         IAAVI = IFIX(RACVS)                                             01860353
                    190:         IABVI = INT(RACVS)                                              01870353
                    191:         IADVI = IAAVI + 3                                               01880353
                    192:         IAEVI = IABVI + 3                                               01890353
                    193:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         01900353
                    194: CT010*    TEST  10                      ZERO PREFIXED WITH A MINUS SIGN 01910353
                    195:         IVTNUM =  10                                                    01920353
                    196:         RACVS = 0                                                       01930353
                    197:         IAAVI = IFIX(-RACVS)                                            01940353
                    198:         IABVI = INT(-RACVS)                                             01950353
                    199:         IADVI = IAAVI - 0                                               01960353
                    200:         IAEVI = IABVI - 0                                               01970353
                    201:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         01980353
                    202: CT011*    TEST 011           IFIX, INT USED IN AN ARITHMETIC EXPRESSION 01990353
                    203:         IVTNUM = 011                                                    02000353
                    204:         RAAVS = 3.75                                                    02010353
                    205:         IAFVI = 3                                                       02020353
                    206:         IAAVI = 25 + IAFVI * IFIX(RAAVS)                                02030353
                    207:         IABVI = 25 + IAFVI * INT(RAAVS)                                 02040353
                    208:         IADVI = IAAVI - 34                                              02050353
                    209:         IAEVI = IABVI - 34                                              02060353
                    210:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         02070353
                    211: CT012*    TEST  12      AN ARITHMETIC EXPRESSION PRESENTED TO IFIX, INT 02080353
                    212:         IVTNUM =  12                                                    02090353
                    213:         RAAVS = 25.5                                                    02100353
                    214:         RABVS = 12.25                                                   02110353
                    215:         IAAVI = IFIX(RAAVS - RABVS)                                     02120353
                    216:         IABVI = INT(RAAVS - RABVS)                                      02130353
                    217:         IADVI = IAAVI - 13                                              02140353
                    218:         IAEVI = IABVI - 13                                              02150353
                    219:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         02160353
                    220: CT013*    TEST  13        COMPARE AUTOMATIC TYPE CONVERSION TO EXPLICIT 02170353
                    221:         IVTNUM =  13                                                    02180353
                    222:         RAAVS = 11.75                                                   02190353
                    223:         RABVS = 12.625                                                  02200353
                    224:         IAAVI = IFIX(RAAVS + RABVS)                                     02210353
                    225:         IABVI = INT(RAAVS + RABVS)                                      02220353
                    226:         IACVI = RAAVS + RABVS                                           02230353
                    227:         IADVI = IAAVI - IACVI                                           02240353
                    228:         IAEVI = IABVI - IACVI                                           02250353
                    229:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         02260353
                    230: CT014*    TEST  14                            ARGUMENT OF LOW MAGNITUDE 02270353
                    231:         IVTNUM =  14                                                    02280353
                    232:         RACVS = -3.05923E-33                                            02290353
                    233:         IAAVI = IFIX(RACVS)                                             02300353
                    234:         IABVI = INT(RACVS)                                              02310353
                    235:         IADVI = IAAVI - 0                                               02320353
                    236:         IAEVI = IABVI - 0                                               02330353
                    237:         WRITE(NUVI,15003)  IVTNUM, IADVI, IAEVI                         02340353
                    238: C*****                                                                  02350353
                    239: C*****                                                                  02360353
                    240:         IVINSP = 14                                                     02370353
                    241: CBB** ********************** BBCSUM0  **********************************02380353
                    242: C**** WRITE OUT TEST SUMMARY                                            02390353
                    243: C****                                                                   02400353
                    244:       IVTOTN = IVPASS + IVFAIL + IVDELE + IVINSP                        02410353
                    245:       WRITE (I02, 90004)                                                02420353
                    246:       WRITE (I02, 90014)                                                02430353
                    247:       WRITE (I02, 90004)                                                02440353
                    248:       WRITE (I02, 90020) IVPASS                                         02450353
                    249:       WRITE (I02, 90022) IVFAIL                                         02460353
                    250:       WRITE (I02, 90024) IVDELE                                         02470353
                    251:       WRITE (I02, 90026) IVINSP                                         02480353
                    252:       WRITE (I02, 90028) IVTOTN, IVTOTL                                 02490353
                    253: CBE** ********************** BBCSUM0  **********************************02500353
                    254: CBB** ********************** BBCFOOT0 **********************************02510353
                    255: C**** WRITE OUT REPORT FOOTINGS                                         02520353
                    256: C****                                                                   02530353
                    257:       WRITE (I02,90016) ZPROG, ZPROG                                    02540353
                    258:       WRITE (I02,90018) ZPROJ, ZNAME, ZTAPE, ZTAPED                     02550353
                    259:       WRITE (I02,90019)                                                 02560353
                    260: CBE** ********************** BBCFOOT0 **********************************02570353
                    261: CBB** ********************** BBCFMT0A **********************************02580353
                    262: C**** FORMATS FOR TEST DETAIL LINES                                     02590353
                    263: C****                                                                   02600353
                    264: 80000 FORMAT (1H ,2X,I3,4X,7HDELETED,32X,A31)                           02610353
                    265: 80002 FORMAT (1H ,2X,I3,4X,7H PASS  ,32X,A31)                           02620353
                    266: 80004 FORMAT (1H ,2X,I3,4X,7HINSPECT,32X,A31)                           02630353
                    267: 80008 FORMAT (1H ,2X,I3,4X,7H FAIL  ,32X,A31)                           02640353
                    268: 80010 FORMAT (1H ,2X,I3,4X,7H FAIL  ,/,1H ,15X,10HCOMPUTED= ,           02650353
                    269:      1I6,/,1H ,15X,10HCORRECT=  ,I6)                                    02660353
                    270: 80012 FORMAT (1H ,2X,I3,4X,7H FAIL  ,/,1H ,16X,10HCOMPUTED= ,           02670353
                    271:      1E12.5,/,1H ,16X,10HCORRECT=  ,E12.5)                              02680353
                    272: 80018 FORMAT (1H ,2X,I3,4X,7H FAIL  ,/,1H ,16X,10HCOMPUTED= ,           02690353
                    273:      1A21,/,1H ,16X,10HCORRECT=  ,A21)                                  02700353
                    274: 80020 FORMAT (1H ,16X,10HCOMPUTED= ,A21,1X,A31)                         02710353
                    275: 80022 FORMAT (1H ,16X,10HCORRECT=  ,A21,1X,A31)                         02720353
                    276: 80024 FORMAT (1H ,16X,10HCOMPUTED= ,I6,16X,A31)                         02730353
                    277: 80026 FORMAT (1H ,16X,10HCORRECT=  ,I6,16X,A31)                         02740353
                    278: 80028 FORMAT (1H ,16X,10HCOMPUTED= ,E12.5,10X,A31)                      02750353
                    279: 80030 FORMAT (1H ,16X,10HCORRECT=  ,E12.5,10X,A31)                      02760353
                    280: 80050 FORMAT (1H ,48X,A31)                                              02770353
                    281: CBE** ********************** BBCFMT0A **********************************02780353
                    282: CBB** ********************** BBCFMT0B **********************************02790353
                    283: C**** FORMAT STATEMENTS FOR PAGE HEADERS                                02800353
                    284: C****                                                                   02810353
                    285: 90002 FORMAT (1H1)                                                      02820353
                    286: 90004 FORMAT (1H )                                                      02830353
                    287: 90006 FORMAT (1H ,20X,31HFEDERAL SOFTWARE TESTING CENTER)               02840353
                    288: 90007 FORMAT (1H ,19X,34HFORTRAN COMPILER VALIDATION SYSTEM)            02850353
                    289: 90008 FORMAT (1H ,21X,A13,A17)                                          02860353
                    290: 90009 FORMAT (1H ,/,2H *,A5,6HBEGIN*,12X,15HTEST RESULTS - ,A5,/)       02870353
                    291: 90010 FORMAT (1H ,8X,16HTEST DATE*TIME= ,A17,15H  -  COMPILER= ,A20)    02880353
                    292: 90013 FORMAT (1H ,8H TEST   ,10HPASS/FAIL ,6X,17HDISPLAYED RESULTS,     02890353
                    293:      1       7X,7HREMARKS,24X)                                          02900353
                    294: 90014 FORMAT (1H ,46H----------------------------------------------,    02910353
                    295:      1        33H---------------------------------)                     02920353
                    296: 90015 FORMAT (1H ,48X,17HTHIS PROGRAM HAS ,I3,6H TESTS,/)               02930353
                    297: C****                                                                   02940353
                    298: C**** FORMAT STATEMENTS FOR REPORT FOOTINGS                             02950353
                    299: C****                                                                   02960353
                    300: 90016 FORMAT (1H ,/,2H *,A5,4HEND*,14X,14HEND OF TEST - ,A5,/)          02970353
                    301: 90018 FORMAT (1H ,A13,13X,A20,7H   *   ,A10,1H/,                        02980353
                    302:      1        A13)                                                      02990353
                    303: 90019 FORMAT (1H ,26HFOR OFFICIAL USE ONLY     ,35X,15HCOPYRIGHT  1982) 03000353
                    304: C****                                                                   03010353
                    305: C**** FORMAT STATEMENTS FOR RUN SUMMARY                                 03020353
                    306: C****                                                                   03030353
                    307: 90020 FORMAT (1H ,21X,I5,13H TESTS PASSED)                              03040353
                    308: 90022 FORMAT (1H ,21X,I5,13H TESTS FAILED)                              03050353
                    309: 90024 FORMAT (1H ,21X,I5,14H TESTS DELETED)                             03060353
                    310: 90026 FORMAT (1H ,21X,I5,25H TESTS REQUIRE INSPECTION)                  03070353
                    311: 90028 FORMAT (1H ,21X,I5,4H OF ,I3,15H TESTS EXECUTED)                  03080353
                    312: CBE** ********************** BBCFMT0B **********************************03090353
                    313: C*****                                                                  03100353
                    314: C*****    END OF TEST SEGMENT 150                                       03110353
                    315:         STOP                                                            03120353
                    316:         END                                                             03130353
                    317:                                                                         03140353

unix.superglobalmegacorp.com

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