|
|
1.1 ! root 1: C***********************************************************************00010359 ! 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 00020359 ! 6: C***** FM359 XSIGN - (161) 00030359 ! 7: C***** 00040359 ! 8: C***********************************************************************00050359 ! 9: C***** GENERAL PURPOSE SUBSET REF00060359 ! 10: C***** TEST INTRINSIC FUNCTION - SIGN, ISIGN - (TRANSFER 15.3 00070359 ! 11: C***** OF SIGN - SIGN OF A2 TIMES ABS(A1) ) (TABLE 5)00080359 ! 12: C***** 00090359 ! 13: CBB** ********************** BBCCOMNT **********************************00100359 ! 14: C**** 00110359 ! 15: C**** 1978 FORTRAN COMPILER VALIDATION SYSTEM 00120359 ! 16: C**** VERSION 2.0 00130359 ! 17: C**** 00140359 ! 18: C**** 00150359 ! 19: C**** SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO 00160359 ! 20: C**** GENERAL SERVICES ADMINISTRATION 00170359 ! 21: C**** FEDERAL SOFTWARE TESTING CENTER 00180359 ! 22: C**** 5203 LEESBURG PIKE, SUITE 1100 00190359 ! 23: C**** FALLS CHURCH, VA. 22041 00200359 ! 24: C**** 00210359 ! 25: C**** (703) 756-6153 00220359 ! 26: C**** 00230359 ! 27: CBE** ********************** BBCCOMNT **********************************00240359 ! 28: CBB** ********************** BBCINITA **********************************00250359 ! 29: C**** SPECIFICATION STATEMENTS 00260359 ! 30: C**** 00270359 ! 31: CHARACTER ZVERS*13, ZVERSD*17, ZDATE*17, ZPROG*5, ZCOMPL*20, 00280359 ! 32: 1 ZNAME*20, ZTAPE*10, ZPROJ*13, REMRKS*31, ZTAPED*13 00290359 ! 33: CBE** ********************** BBCINITA **********************************00300359 ! 34: CBB** ********************** BBCINITB **********************************00310359 ! 35: C**** INITIALIZE SECTION 00320359 ! 36: DATA ZVERS, ZVERSD, ZDATE 00330359 ! 37: 1 /'VERSION 2.0 ', '82/08/02*18.33.46', '*NO DATE*TIME'/ 00340359 ! 38: DATA ZCOMPL, ZNAME, ZTAPE 00350359 ! 39: 1 /'*NONE SPECIFIED*', '*NO COMPANY NAME*', '*NO TAPE*'/ 00360359 ! 40: DATA ZPROJ, ZTAPED, ZPROG 00370359 ! 41: 1 /'*NO PROJECT*', '*NO TAPE DATE', 'XXXXX'/ 00380359 ! 42: DATA REMRKS /' '/ 00390359 ! 43: C**** THE FOLLOWING 9 COMMENT LINES (CZ01, CZ02, ...) CAN BE REPLACED 00400359 ! 44: C**** FOR IDENTIFYING THE TEST ENVIRONMENT 00410359 ! 45: C**** 00420359 ! 46: CZ01 ZVERS = 'VERSION OF THE COMPILER VALIDATION SYSTEM' 00430359 ! 47: CZ02 ZVERSD = 'CREATION DATE/TIME OF THE COMPILER VALIDATION SYSTEM' 00440359 ! 48: CZ03 ZPROG = 'PROGRAM NAME' 00450359 ! 49: ZDATE = '07-Nov-85 ' *RP ! 50: ZCOMPL = 'CCI 5.2 ' *RP ! 51: ZPROJ = 'TC-85- -410' *RP ! 52: ZNAME = ' ' *RP ! 53: ZTAPE = ' ' *RP ! 54: ZTAPED = '850703 ' *RP ! 55: C 00520359 ! 56: IVPASS = 0 00530359 ! 57: IVFAIL = 0 00540359 ! 58: IVDELE = 0 00550359 ! 59: IVINSP = 0 00560359 ! 60: IVTOTL = 0 00570359 ! 61: IVTOTN = 0 00580359 ! 62: ICZERO = 0 00590359 ! 63: C 00600359 ! 64: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00610359 ! 65: I01 = 05 00620359 ! 66: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00630359 ! 67: I02 = 06 00640359 ! 68: C 00650359 ! 69: I01 = 5 00660359 ! 70: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00670359 ! 71: CX011 REPLACED BY FEXEC X-011 CONTROL CARD. CX011 IS FOR SYSTEMS 00680359 ! 72: C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX010. 00690359 ! 73: C 00700359 ! 74: I02 = 6 00710359 ! 75: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02= 6 00720359 ! 76: CX021 REPLACED BY FEXEC X-021 CONTROL CARD. CX021 IS FOR SYSTEMS 00730359 ! 77: C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX020. 00740359 ! 78: C 00750359 ! 79: CBE** ********************** BBCINITB **********************************00760359 ! 80: NUVI = I02 00770359 ! 81: IVTOTL = 22 00780359 ! 82: ZPROG = 'FM359' 00790359 ! 83: CBB** ********************** BBCHED0A **********************************00800359 ! 84: C**** 00810359 ! 85: C**** WRITE REPORT TITLE 00820359 ! 86: C**** 00830359 ! 87: WRITE (I02, 90002) 00840359 ! 88: WRITE (I02, 90006) 00850359 ! 89: WRITE (I02, 90007) 00860359 ! 90: WRITE (I02, 90008) ZVERS, ZVERSD 00870359 ! 91: WRITE (I02, 90009) ZPROG, ZPROG 00880359 ! 92: WRITE (I02, 90010) ZDATE, ZCOMPL 00890359 ! 93: CBE** ********************** BBCHED0A **********************************00900359 ! 94: C***** 00910359 ! 95: C***** HEADER FOR SEGMENT 161 00920359 ! 96: WRITE (NUVI,16101) 00930359 ! 97: 16101 FORMAT(1H , // 2X,36HXSIGN - (161) INTRINSIC FUNCTIONS-- //12X,00940359 ! 98: 1 30HSIGN, ISIGN (TRANSFER OF SIGN)// 00950359 ! 99: 2 2X,19HSUBSET REF. - 15.3 ) 00960359 ! 100: CBB** ********************** BBCHED0B **********************************00970359 ! 101: C**** WRITE DETAIL REPORT HEADERS 00980359 ! 102: C**** 00990359 ! 103: WRITE (I02,90004) 01000359 ! 104: WRITE (I02,90004) 01010359 ! 105: WRITE (I02,90013) 01020359 ! 106: WRITE (I02,90014) 01030359 ! 107: WRITE (I02,90015) IVTOTL 01040359 ! 108: CBE** ********************** BBCHED0B **********************************01050359 ! 109: C***** 01060359 ! 110: C***** TEST OF SIGN 01070359 ! 111: C***** 01080359 ! 112: WRITE(NUVI, 16102) 01090359 ! 113: 16102 FORMAT (/ 8X, 12HTEST OF SIGN) 01100359 ! 114: CT001* TEST 1 BOTH VALUES ZERO 01110359 ! 115: IVTNUM = 1 01120359 ! 116: RFBVS = 0.0 01130359 ! 117: RFAVS = SIGN(RFBVS, RFBVS) 01140359 ! 118: IF (RFAVS + 0.00005) 20010, 10010, 40010 01150359 ! 119: 40010 IF (RFAVS - 0.00005) 10010, 10010, 20010 01160359 ! 120: 10010 IVPASS = IVPASS + 1 01170359 ! 121: WRITE (NUVI, 80002) IVTNUM 01180359 ! 122: GO TO 0011 01190359 ! 123: 20010 IVFAIL = IVFAIL + 1 01200359 ! 124: RVCORR = 0.0 01210359 ! 125: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 01220359 ! 126: 0011 CONTINUE 01230359 ! 127: CT002* TEST 2 FIRST VALUE POSITIVE, SECOND ZERO 01240359 ! 128: IVTNUM = 2 01250359 ! 129: RFBVS = 1.5 01260359 ! 130: RFDVS = 0.0 01270359 ! 131: RFAVS = SIGN(RFBVS, RFDVS) 01280359 ! 132: IF (RFAVS - 1.4999) 20020, 10020, 40020 01290359 ! 133: 40020 IF (RFAVS - 1.5001) 10020, 10020, 20020 01300359 ! 134: 10020 IVPASS = IVPASS + 1 01310359 ! 135: WRITE (NUVI, 80002) IVTNUM 01320359 ! 136: GO TO 0021 01330359 ! 137: 20020 IVFAIL = IVFAIL + 1 01340359 ! 138: RVCORR = 1.5 01350359 ! 139: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 01360359 ! 140: 0021 CONTINUE 01370359 ! 141: CT003* TEST 3 FIRST VALUE NEGATIVE, SECOND ZERO 01380359 ! 142: IVTNUM = 3 01390359 ! 143: RFBVS = -1.5 01400359 ! 144: RFDVS = 0.0 01410359 ! 145: RFAVS = SIGN(RFBVS, RFDVS) 01420359 ! 146: IF (RFAVS - 1.4999) 20030, 10030, 40030 01430359 ! 147: 40030 IF (RFAVS - 1.5001) 10030, 10030, 20030 01440359 ! 148: 10030 IVPASS = IVPASS + 1 01450359 ! 149: WRITE (NUVI, 80002) IVTNUM 01460359 ! 150: GO TO 0031 01470359 ! 151: 20030 IVFAIL = IVFAIL + 1 01480359 ! 152: RVCORR = 1.5 01490359 ! 153: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 01500359 ! 154: 0031 CONTINUE 01510359 ! 155: CT004* TEST 4 FIRST VALUE ZERO, SECOND POSITIVE 01520359 ! 156: IVTNUM = 4 01530359 ! 157: RFBVS = 0.0 01540359 ! 158: RFDVS = 2.5 01550359 ! 159: RFAVS = SIGN(RFBVS, RFDVS) 01560359 ! 160: IF (RFAVS + 0.00005) 20040, 10040, 40040 01570359 ! 161: 40040 IF (RFAVS - 0.00005) 10040, 10040, 20040 01580359 ! 162: 10040 IVPASS = IVPASS + 1 01590359 ! 163: WRITE (NUVI, 80002) IVTNUM 01600359 ! 164: GO TO 0041 01610359 ! 165: 20040 IVFAIL = IVFAIL + 1 01620359 ! 166: RVCORR = 0.0 01630359 ! 167: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 01640359 ! 168: 0041 CONTINUE 01650359 ! 169: CT005* TEST 5 BOTH VALUES POSITIVE 01660359 ! 170: IVTNUM = 5 01670359 ! 171: RFBVS = 1.5 01680359 ! 172: RFDVS = 2.5 01690359 ! 173: RFAVS = SIGN(RFBVS, RFDVS) 01700359 ! 174: IF (RFAVS - 1.4999) 20050, 10050, 40050 01710359 ! 175: 40050 IF (RFAVS - 1.5001) 10050, 10050, 20050 01720359 ! 176: 10050 IVPASS = IVPASS + 1 01730359 ! 177: WRITE (NUVI, 80002) IVTNUM 01740359 ! 178: GO TO 0051 01750359 ! 179: 20050 IVFAIL = IVFAIL + 1 01760359 ! 180: RVCORR = 1.5 01770359 ! 181: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 01780359 ! 182: 0051 CONTINUE 01790359 ! 183: CT006* TEST 6 FIRST VALUE NEGATIVE, SECOND POSITIVE 01800359 ! 184: IVTNUM = 6 01810359 ! 185: RFBVS = -1.5 01820359 ! 186: RFDVS = 2.5 01830359 ! 187: RFAVS = SIGN(RFBVS, RFDVS) 01840359 ! 188: IF (RFAVS - 1.4999) 20060, 10060, 40060 01850359 ! 189: 40060 IF (RFAVS - 1.5001) 10060, 10060, 20060 01860359 ! 190: 10060 IVPASS = IVPASS + 1 01870359 ! 191: WRITE (NUVI, 80002) IVTNUM 01880359 ! 192: GO TO 0061 01890359 ! 193: 20060 IVFAIL = IVFAIL + 1 01900359 ! 194: RVCORR = 1.5 01910359 ! 195: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 01920359 ! 196: 0061 CONTINUE 01930359 ! 197: CT007* TEST 7 FIRST VALUE ZERO, SECOND NEGATIVE 01940359 ! 198: IVTNUM = 7 01950359 ! 199: RFBVS = 0.0 01960359 ! 200: RFDVS = -2.5 01970359 ! 201: RFAVS = SIGN(RFBVS, RFDVS) 01980359 ! 202: IF (RFAVS + 0.00005) 20070, 10070, 40070 01990359 ! 203: 40070 IF (RFAVS - 0.00005) 10070, 10070, 20070 02000359 ! 204: 10070 IVPASS = IVPASS + 1 02010359 ! 205: WRITE (NUVI, 80002) IVTNUM 02020359 ! 206: GO TO 0071 02030359 ! 207: 20070 IVFAIL = IVFAIL + 1 02040359 ! 208: RVCORR = 0.0 02050359 ! 209: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 02060359 ! 210: 0071 CONTINUE 02070359 ! 211: CT008* TEST 8 BOTH VALUES NEGATIVE 02080359 ! 212: IVTNUM = 8 02090359 ! 213: RFBVS = -1.5 02100359 ! 214: RFDVS = -2.5 02110359 ! 215: RFAVS = SIGN(RFBVS, RFDVS) 02120359 ! 216: IF (RFAVS + 1.5001) 20080, 10080, 40080 02130359 ! 217: 40080 IF (RFAVS + 1.4999) 10080, 10080, 20080 02140359 ! 218: 10080 IVPASS = IVPASS + 1 02150359 ! 219: WRITE (NUVI, 80002) IVTNUM 02160359 ! 220: GO TO 0081 02170359 ! 221: 20080 IVFAIL = IVFAIL + 1 02180359 ! 222: RVCORR = -1.5 02190359 ! 223: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 02200359 ! 224: 0081 CONTINUE 02210359 ! 225: CT009* TEST 9 FIRST VALUE POSITIVE, SECOND NEGATIVE 02220359 ! 226: IVTNUM = 9 02230359 ! 227: RFBVS = 1.5 02240359 ! 228: RFDVS = -2.5 02250359 ! 229: RFAVS = SIGN(RFBVS, RFDVS) 02260359 ! 230: IF (RFAVS + 1.5001) 20090, 10090, 40090 02270359 ! 231: 40090 IF (RFAVS + 1.4999) 10090, 10090, 20090 02280359 ! 232: 10090 IVPASS = IVPASS + 1 02290359 ! 233: WRITE (NUVI, 80002) IVTNUM 02300359 ! 234: GO TO 0091 02310359 ! 235: 20090 IVFAIL = IVFAIL + 1 02320359 ! 236: RVCORR = -1.5 02330359 ! 237: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 02340359 ! 238: 0091 CONTINUE 02350359 ! 239: CT010* TEST 10 BOTH VALUES ZERO, 1ST ZERO PRECEDED BY A MINUS SIGN 02360359 ! 240: IVTNUM = 10 02370359 ! 241: RFDVS = 0.0 02380359 ! 242: RFEVS = 0.0 02390359 ! 243: RFAVS = SIGN(-RFDVS, RFEVS) 02400359 ! 244: IF (RFAVS + 0.0005) 20100, 10100, 40100 02410359 ! 245: 40100 IF (RFAVS - 0.00005) 10100, 10100, 20100 02420359 ! 246: 10100 IVPASS = IVPASS + 1 02430359 ! 247: WRITE (NUVI, 80002) IVTNUM 02440359 ! 248: GO TO 0101 02450359 ! 249: 20100 IVFAIL = IVFAIL + 1 02460359 ! 250: RVCORR = 0.0 02470359 ! 251: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 02480359 ! 252: 0101 CONTINUE 02490359 ! 253: CT011* TEST 11 ARITHMETIC EXPRESSIONS PRESENTED TO SIGN 02500359 ! 254: IVTNUM = 11 02510359 ! 255: RFDVS = 1.5 02520359 ! 256: RFEVS = 2.0 02530359 ! 257: RFAVS = SIGN(RFDVS + RFEVS, RFDVS - RFEVS) 02540359 ! 258: IF (RFAVS + 3.5002) 20110, 10110, 40110 02550359 ! 259: 40110 IF (RFAVS + 3.4998) 10110, 10110, 20110 02560359 ! 260: 10110 IVPASS = IVPASS + 1 02570359 ! 261: WRITE (NUVI, 80002) IVTNUM 02580359 ! 262: GO TO 0111 02590359 ! 263: 20110 IVFAIL = IVFAIL + 1 02600359 ! 264: RVCORR = -3.5 02610359 ! 265: WRITE (NUVI, 80012) IVTNUM, RFAVS, RVCORR 02620359 ! 266: 0111 CONTINUE 02630359 ! 267: C***** 02640359 ! 268: C***** TEST OF ISIGN 02650359 ! 269: C***** 02660359 ! 270: WRITE(NUVI, 16104) 02670359 ! 271: 16104 FORMAT (/ 8X, 13HTEST OF ISIGN) 02680359 ! 272: C***** 02690359 ! 273: CT012* TEST 12 BOTH VALUES ZERO 02700359 ! 274: IVTNUM = 12 02710359 ! 275: IFBVI = 0 02720359 ! 276: IFDVI = 0 02730359 ! 277: IFAVI = ISIGN(IFBVI, IFDVI) 02740359 ! 278: IF (IFAVI - 0) 20120, 10120, 20120 02750359 ! 279: 10120 IVPASS = IVPASS + 1 02760359 ! 280: WRITE (NUVI, 80002) IVTNUM 02770359 ! 281: GO TO 0121 02780359 ! 282: 20120 IVFAIL = IVFAIL + 1 02790359 ! 283: IVCORR = 0 02800359 ! 284: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 02810359 ! 285: 0121 CONTINUE 02820359 ! 286: CT013* TEST 13 FIRST VALUE POSITIVE, SECOND ZERO 02830359 ! 287: IVTNUM = 13 02840359 ! 288: IFBVI = 2 02850359 ! 289: IFDVI = 0 02860359 ! 290: IFAVI = ISIGN(IFBVI, IFDVI) 02870359 ! 291: IF (IFAVI - 2) 20130, 10130, 20130 02880359 ! 292: 10130 IVPASS = IVPASS + 1 02890359 ! 293: WRITE (NUVI, 80002) IVTNUM 02900359 ! 294: GO TO 0131 02910359 ! 295: 20130 IVFAIL = IVFAIL + 1 02920359 ! 296: IVCORR = 2 02930359 ! 297: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 02940359 ! 298: 0131 CONTINUE 02950359 ! 299: CT014* TEST 14 FIRST VALUE NEGATIVE, SECOND ZERO 02960359 ! 300: IVTNUM = 14 02970359 ! 301: IFBVI = -2 02980359 ! 302: IFDVI = 0 02990359 ! 303: IFAVI = ISIGN(IFBVI, IFDVI) 03000359 ! 304: IF (IFAVI - 2) 20140, 10140, 20140 03010359 ! 305: 10140 IVPASS = IVPASS + 1 03020359 ! 306: WRITE (NUVI, 80002) IVTNUM 03030359 ! 307: GO TO 0141 03040359 ! 308: 20140 IVFAIL = IVFAIL + 1 03050359 ! 309: IVCORR = 2 03060359 ! 310: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 03070359 ! 311: 0141 CONTINUE 03080359 ! 312: CT015* TEST 15 FIRST VALUE ZERO, SECOND POSITIVE 03090359 ! 313: IVTNUM = 15 03100359 ! 314: IFBVI = 0 03110359 ! 315: IFDVI = 5 03120359 ! 316: IFAVI = ISIGN(IFBVI, IFDVI) 03130359 ! 317: IF (IFAVI - 0) 20150, 10150, 20150 03140359 ! 318: 10150 IVPASS = IVPASS + 1 03150359 ! 319: WRITE (NUVI, 80002) IVTNUM 03160359 ! 320: GO TO 0151 03170359 ! 321: 20150 IVFAIL = IVFAIL + 1 03180359 ! 322: IVCORR = 0 03190359 ! 323: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 03200359 ! 324: 0151 CONTINUE 03210359 ! 325: CT016* TEST 16 BOTH VALUES POSITIVE 03220359 ! 326: IVTNUM = 16 03230359 ! 327: IFBVI = 2 03240359 ! 328: IFDVI = 5 03250359 ! 329: IFAVI = ISIGN(IFBVI, IFDVI) 03260359 ! 330: IF (IFAVI - 2) 20160, 10160, 20160 03270359 ! 331: 10160 IVPASS = IVPASS + 1 03280359 ! 332: WRITE (NUVI, 80002) IVTNUM 03290359 ! 333: GO TO 0161 03300359 ! 334: 20160 IVFAIL = IVFAIL + 1 03310359 ! 335: IVCORR = 2 03320359 ! 336: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 03330359 ! 337: 0161 CONTINUE 03340359 ! 338: CT017* TEST 17 FIRST VALUE NEGATIVE, SECOND POSITIVE 03350359 ! 339: IVTNUM = 17 03360359 ! 340: IFBVI = -2 03370359 ! 341: IFDVI = 5 03380359 ! 342: IFAVI = ISIGN(IFBVI, IFDVI) 03390359 ! 343: IF (IFAVI - 2) 20170, 10170, 20170 03400359 ! 344: 10170 IVPASS = IVPASS + 1 03410359 ! 345: WRITE (NUVI, 80002) IVTNUM 03420359 ! 346: GO TO 0171 03430359 ! 347: 20170 IVFAIL = IVFAIL + 1 03440359 ! 348: IVCORR = 2 03450359 ! 349: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 03460359 ! 350: 0171 CONTINUE 03470359 ! 351: CT018* TEST 18 FIRST VALUE ZERO, SECOND NEGATIVE 03480359 ! 352: IVTNUM = 18 03490359 ! 353: IFBVI = 0 03500359 ! 354: IFDVI = -5 03510359 ! 355: IFAVI = ISIGN(IFBVI, IFDVI) 03520359 ! 356: IF (IFAVI - 0) 20180, 10180, 20180 03530359 ! 357: 10180 IVPASS = IVPASS + 1 03540359 ! 358: WRITE (NUVI, 80002) IVTNUM 03550359 ! 359: GO TO 0181 03560359 ! 360: 20180 IVFAIL = IVFAIL + 1 03570359 ! 361: IVCORR = 0 03580359 ! 362: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 03590359 ! 363: 0181 CONTINUE 03600359 ! 364: CT019* TEST 19 BOTH VALUES NEGATIVE 03610359 ! 365: IVTNUM = 19 03620359 ! 366: IFBVI = -2 03630359 ! 367: IFDVI = -5 03640359 ! 368: IFAVI = ISIGN(IFBVI, IFDVI) 03650359 ! 369: IF (IFAVI + 2) 20190, 10190, 20190 03660359 ! 370: 10190 IVPASS = IVPASS + 1 03670359 ! 371: WRITE (NUVI, 80002) IVTNUM 03680359 ! 372: GO TO 0191 03690359 ! 373: 20190 IVFAIL = IVFAIL + 1 03700359 ! 374: IVCORR = -2 03710359 ! 375: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 03720359 ! 376: 0191 CONTINUE 03730359 ! 377: CT020* TEST 20 FIRST VALUE POSITIVE, SECOND NEGATIVE 03740359 ! 378: IVTNUM = 20 03750359 ! 379: IFBVI = 2 03760359 ! 380: IFDVI = -5 03770359 ! 381: IFAVI = ISIGN(IFBVI, IFDVI) 03780359 ! 382: IF (IFAVI + 2) 20200, 10200, 20200 03790359 ! 383: 10200 IVPASS = IVPASS + 1 03800359 ! 384: WRITE (NUVI, 80002) IVTNUM 03810359 ! 385: GO TO 0201 03820359 ! 386: 20200 IVFAIL = IVFAIL + 1 03830359 ! 387: IVCORR = -2 03840359 ! 388: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 03850359 ! 389: 0201 CONTINUE 03860359 ! 390: CT021* TEST 21 BOTH VALUES ZERO, 1ST ZERO PRECEDED BY A MINUS SIGN 03870359 ! 391: IVTNUM = 21 03880359 ! 392: IFDVI = 0 03890359 ! 393: IFEVI = 0 03900359 ! 394: IFAVI = ISIGN(-IFDVI, IFEVI) 03910359 ! 395: IF (IFAVI - 0) 20210, 10210, 20210 03920359 ! 396: 10210 IVPASS = IVPASS + 1 03930359 ! 397: WRITE (NUVI, 80002) IVTNUM 03940359 ! 398: GO TO 0211 03950359 ! 399: 20210 IVFAIL = IVFAIL + 1 03960359 ! 400: IVCORR = 0 03970359 ! 401: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 03980359 ! 402: 0211 CONTINUE 03990359 ! 403: CT022* TEST 22 ARITHMETIC EXPRESSIONS PRESENTED TO ISIGN 04000359 ! 404: IVTNUM = 22 04010359 ! 405: IFDVI = 2 04020359 ! 406: IFEVI = 3 04030359 ! 407: IFAVI = ISIGN(IFDVI + IFEVI, IFDVI - IFEVI) 04040359 ! 408: IF (IFAVI + 5) 20220, 10220, 20220 04050359 ! 409: 10220 IVPASS = IVPASS + 1 04060359 ! 410: WRITE (NUVI, 80002) IVTNUM 04070359 ! 411: GO TO 0221 04080359 ! 412: 20220 IVFAIL = IVFAIL + 1 04090359 ! 413: IVCORR = -5 04100359 ! 414: WRITE (NUVI, 80010) IVTNUM, IFAVI, IVCORR 04110359 ! 415: 0221 CONTINUE 04120359 ! 416: C***** 04130359 ! 417: CBB** ********************** BBCSUM0 **********************************04140359 ! 418: C**** WRITE OUT TEST SUMMARY 04150359 ! 419: C**** 04160359 ! 420: IVTOTN = IVPASS + IVFAIL + IVDELE + IVINSP 04170359 ! 421: WRITE (I02, 90004) 04180359 ! 422: WRITE (I02, 90014) 04190359 ! 423: WRITE (I02, 90004) 04200359 ! 424: WRITE (I02, 90020) IVPASS 04210359 ! 425: WRITE (I02, 90022) IVFAIL 04220359 ! 426: WRITE (I02, 90024) IVDELE 04230359 ! 427: WRITE (I02, 90026) IVINSP 04240359 ! 428: WRITE (I02, 90028) IVTOTN, IVTOTL 04250359 ! 429: CBE** ********************** BBCSUM0 **********************************04260359 ! 430: CBB** ********************** BBCFOOT0 **********************************04270359 ! 431: C**** WRITE OUT REPORT FOOTINGS 04280359 ! 432: C**** 04290359 ! 433: WRITE (I02,90016) ZPROG, ZPROG 04300359 ! 434: WRITE (I02,90018) ZPROJ, ZNAME, ZTAPE, ZTAPED 04310359 ! 435: WRITE (I02,90019) 04320359 ! 436: CBE** ********************** BBCFOOT0 **********************************04330359 ! 437: CBB** ********************** BBCFMT0A **********************************04340359 ! 438: C**** FORMATS FOR TEST DETAIL LINES 04350359 ! 439: C**** 04360359 ! 440: 80000 FORMAT (1H ,2X,I3,4X,7HDELETED,32X,A31) 04370359 ! 441: 80002 FORMAT (1H ,2X,I3,4X,7H PASS ,32X,A31) 04380359 ! 442: 80004 FORMAT (1H ,2X,I3,4X,7HINSPECT,32X,A31) 04390359 ! 443: 80008 FORMAT (1H ,2X,I3,4X,7H FAIL ,32X,A31) 04400359 ! 444: 80010 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,15X,10HCOMPUTED= , 04410359 ! 445: 1I6,/,1H ,15X,10HCORRECT= ,I6) 04420359 ! 446: 80012 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 04430359 ! 447: 1E12.5,/,1H ,16X,10HCORRECT= ,E12.5) 04440359 ! 448: 80018 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 04450359 ! 449: 1A21,/,1H ,16X,10HCORRECT= ,A21) 04460359 ! 450: 80020 FORMAT (1H ,16X,10HCOMPUTED= ,A21,1X,A31) 04470359 ! 451: 80022 FORMAT (1H ,16X,10HCORRECT= ,A21,1X,A31) 04480359 ! 452: 80024 FORMAT (1H ,16X,10HCOMPUTED= ,I6,16X,A31) 04490359 ! 453: 80026 FORMAT (1H ,16X,10HCORRECT= ,I6,16X,A31) 04500359 ! 454: 80028 FORMAT (1H ,16X,10HCOMPUTED= ,E12.5,10X,A31) 04510359 ! 455: 80030 FORMAT (1H ,16X,10HCORRECT= ,E12.5,10X,A31) 04520359 ! 456: 80050 FORMAT (1H ,48X,A31) 04530359 ! 457: CBE** ********************** BBCFMT0A **********************************04540359 ! 458: CBB** ********************** BBCFMT0B **********************************04550359 ! 459: C**** FORMAT STATEMENTS FOR PAGE HEADERS 04560359 ! 460: C**** 04570359 ! 461: 90002 FORMAT (1H1) 04580359 ! 462: 90004 FORMAT (1H ) 04590359 ! 463: 90006 FORMAT (1H ,20X,31HFEDERAL SOFTWARE TESTING CENTER) 04600359 ! 464: 90007 FORMAT (1H ,19X,34HFORTRAN COMPILER VALIDATION SYSTEM) 04610359 ! 465: 90008 FORMAT (1H ,21X,A13,A17) 04620359 ! 466: 90009 FORMAT (1H ,/,2H *,A5,6HBEGIN*,12X,15HTEST RESULTS - ,A5,/) 04630359 ! 467: 90010 FORMAT (1H ,8X,16HTEST DATE*TIME= ,A17,15H - COMPILER= ,A20) 04640359 ! 468: 90013 FORMAT (1H ,8H TEST ,10HPASS/FAIL ,6X,17HDISPLAYED RESULTS, 04650359 ! 469: 1 7X,7HREMARKS,24X) 04660359 ! 470: 90014 FORMAT (1H ,46H----------------------------------------------, 04670359 ! 471: 1 33H---------------------------------) 04680359 ! 472: 90015 FORMAT (1H ,48X,17HTHIS PROGRAM HAS ,I3,6H TESTS,/) 04690359 ! 473: C**** 04700359 ! 474: C**** FORMAT STATEMENTS FOR REPORT FOOTINGS 04710359 ! 475: C**** 04720359 ! 476: 90016 FORMAT (1H ,/,2H *,A5,4HEND*,14X,14HEND OF TEST - ,A5,/) 04730359 ! 477: 90018 FORMAT (1H ,A13,13X,A20,7H * ,A10,1H/, 04740359 ! 478: 1 A13) 04750359 ! 479: 90019 FORMAT (1H ,26HFOR OFFICIAL USE ONLY ,35X,15HCOPYRIGHT 1982) 04760359 ! 480: C**** 04770359 ! 481: C**** FORMAT STATEMENTS FOR RUN SUMMARY 04780359 ! 482: C**** 04790359 ! 483: 90020 FORMAT (1H ,21X,I5,13H TESTS PASSED) 04800359 ! 484: 90022 FORMAT (1H ,21X,I5,13H TESTS FAILED) 04810359 ! 485: 90024 FORMAT (1H ,21X,I5,14H TESTS DELETED) 04820359 ! 486: 90026 FORMAT (1H ,21X,I5,25H TESTS REQUIRE INSPECTION) 04830359 ! 487: 90028 FORMAT (1H ,21X,I5,4H OF ,I3,15H TESTS EXECUTED) 04840359 ! 488: CBE** ********************** BBCFMT0B **********************************04850359 ! 489: C***** 04860359 ! 490: C***** END OF TEST SEGMENT 161 04870359 ! 491: STOP 04880359 ! 492: END 04890359 ! 493: 04900359
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.