|
|
1.1 ! root 1: C COMMENT SECTION 00010045 ! 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 00020045 ! 6: C FM045 00030045 ! 7: C 00040045 ! 8: C THIS ROUTINE TESTS ARITHMETIC ASSIGNMENTS USING INTEGER 00050045 ! 9: C VARIABLES CONNECTED BY A SERIES OF ARITHMETIC OPERATORS. 00060045 ! 10: C DIFFERENT COMBINATIONS OF PARENTHETICAL NOTATION ARE EXERCIZED. 00070045 ! 11: C 00080045 ! 12: C 00090045 ! 13: C REFERENCES 00100045 ! 14: C AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN, 00110045 ! 15: C X3.9-1978 00120045 ! 16: C 00130045 ! 17: C SECTION 4.3, INTEGER TYPE 00140045 ! 18: C SECTION 4.3.1, INTEGER CONSTANT 00150045 ! 19: C SECTION 6.1, ARITHMETIC EXPRESSIONS 00160045 ! 20: C SECTION 6.6, EVALUATION OF EXPRESSIONS 00170045 ! 21: C SECTION 10.1, ARITHMETIC ASSIGNMENT STATEMENT 00180045 ! 22: C 00190045 ! 23: C 00200045 ! 24: C 00210045 ! 25: C ********************************************************** 00220045 ! 26: C 00230045 ! 27: C A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE 00240045 ! 28: C BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN NATIONAL STANDARD 00250045 ! 29: C PROGRAMMING LANGUAGE FORTRAN X3.9-1978, HAS BEEN DEVELOPED BY THE 00260045 ! 30: C FEDERAL COBOL COMPILER TESTING SERVICE. THE FORTRAN COMPILER 00270045 ! 31: C VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT ROUTINES, THEIR RELATED00280045 ! 32: C DATA, AND AN EXECUTIVE SYSTEM. EACH AUDIT ROUTINE IS A FORTRAN 00290045 ! 33: C PROGRAM, SUBPROGRAM OR FUNCTION WHICH INCLUDES TESTS OF SPECIFIC 00300045 ! 34: C LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING THE RESULT 00310045 ! 35: C OF EXECUTING THESE TESTS. 00320045 ! 36: C 00330045 ! 37: C THIS PARTICULAR PROGRAM/SUBPROGRAM/FUNCTION CONTAINS FEATURES 00340045 ! 38: C FOUND ONLY IN THE SUBSET AS DEFINED IN X3.9-1978. 00350045 ! 39: C 00360045 ! 40: C SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO - 00370045 ! 41: C 00380045 ! 42: C DEPARTMENT OF THE NAVY 00390045 ! 43: C FEDERAL COBOL COMPILER TESTING SERVICE 00400045 ! 44: C WASHINGTON, D.C. 20376 00410045 ! 45: C 00420045 ! 46: C ********************************************************** 00430045 ! 47: C 00440045 ! 48: C 00450045 ! 49: C 00460045 ! 50: C INITIALIZATION SECTION 00470045 ! 51: C 00480045 ! 52: C INITIALIZE CONSTANTS 00490045 ! 53: C ************** 00500045 ! 54: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00510045 ! 55: I01 = 5 00520045 ! 56: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00530045 ! 57: I02 = 6 00540045 ! 58: C SYSTEM ENVIRONMENT SECTION 00550045 ! 59: C 00560045 ! 60: I01 = 5 00570045 ! 61: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00580045 ! 62: C (UNIT NUMBER FOR CARD READER). 00590045 ! 63: CX011 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD. 00600045 ! 64: C THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 00610045 ! 65: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE. 00620045 ! 66: C 00630045 ! 67: I02 = 6 00640045 ! 68: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6 00650045 ! 69: C (UNIT NUMBER FOR PRINTER). 00660045 ! 70: CX021 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD. 00670045 ! 71: C THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 00680045 ! 72: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE. 00690045 ! 73: C 00700045 ! 74: IVPASS=0 00710045 ! 75: IVFAIL=0 00720045 ! 76: IVDELE=0 00730045 ! 77: ICZERO=0 00740045 ! 78: C 00750045 ! 79: C WRITE PAGE HEADERS 00760045 ! 80: WRITE (I02,90000) 00770045 ! 81: WRITE (I02,90001) 00780045 ! 82: WRITE (I02,90002) 00790045 ! 83: WRITE (I02, 90002) 00800045 ! 84: WRITE (I02,90003) 00810045 ! 85: WRITE (I02,90002) 00820045 ! 86: WRITE (I02,90004) 00830045 ! 87: WRITE (I02,90002) 00840045 ! 88: WRITE (I02,90011) 00850045 ! 89: WRITE (I02,90002) 00860045 ! 90: WRITE (I02,90002) 00870045 ! 91: WRITE (I02,90005) 00880045 ! 92: WRITE (I02,90006) 00890045 ! 93: WRITE (I02,90002) 00900045 ! 94: C 00910045 ! 95: C 00920045 ! 96: C TEST SECTION 00930045 ! 97: C 00940045 ! 98: C ARITHMETIC ASSIGNMENT STATEMENT 00950045 ! 99: C 00960045 ! 100: C 00970045 ! 101: C TESTS 747 THROUGH 755 USE THE SAME STRING OF VARIABLES AND 00980045 ! 102: C OPERATORS, BUT USE DIFFERENT COMBINATIONS OF PARENTHETICAL 00990045 ! 103: C NOTATION TO ALTER PRIORITIES IN ORDER OF EVALUATION. 01000045 ! 104: C 01010045 ! 105: C TESTS 756 THROUGH 759 CHECK THE CAPABILITY TO ENCLOSE THE ENTIRE 01020045 ! 106: C RIGHT HAND SIDE OF AN ASSIGNMENT STATEMENT IN PARENTHESES OR SETS 01030045 ! 107: C OF NESTED PARENTHESES. 01040045 ! 108: C 01050045 ! 109: C 01060045 ! 110: C 01070045 ! 111: C 01080045 ! 112: C 01090045 ! 113: C 01100045 ! 114: C 01110045 ! 115: IVTNUM = 747 01120045 ! 116: C 01130045 ! 117: C **** TEST 747 **** 01140045 ! 118: C 01150045 ! 119: IF (ICZERO) 37470, 7470, 37470 01160045 ! 120: 7470 CONTINUE 01170045 ! 121: IVON01 = 15 01180045 ! 122: IVON02 = 9 01190045 ! 123: IVON03 = 4 01200045 ! 124: IVON04 = 18 01210045 ! 125: IVON05 = 6 01220045 ! 126: IVON06 = 2 01230045 ! 127: IVCOMP = IVON01 + IVON02 - IVON03 * IVON04 / IVON05 ** IVON06 01240045 ! 128: GO TO 47470 01250045 ! 129: 37470 IVDELE = IVDELE + 1 01260045 ! 130: WRITE (I02,80003) IVTNUM 01270045 ! 131: IF (ICZERO) 47470, 7481, 47470 01280045 ! 132: 47470 IF (IVCOMP - 22) 27470,17470,27470 01290045 ! 133: 17470 IVPASS = IVPASS + 1 01300045 ! 134: WRITE (I02,80001) IVTNUM 01310045 ! 135: GO TO 7481 01320045 ! 136: 27470 IVFAIL = IVFAIL + 1 01330045 ! 137: IVCORR = 22 01340045 ! 138: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 01350045 ! 139: 7481 CONTINUE 01360045 ! 140: IVTNUM = 748 01370045 ! 141: C 01380045 ! 142: C **** TEST 748 **** 01390045 ! 143: C 01400045 ! 144: IF (ICZERO) 37480, 7480, 37480 01410045 ! 145: 7480 CONTINUE 01420045 ! 146: IVON01 = 15 01430045 ! 147: IVON02 = 9 01440045 ! 148: IVON03 = 4 01450045 ! 149: IVON04 = 18 01460045 ! 150: IVON05 = 6 01470045 ! 151: IVON06 = 2 01480045 ! 152: IVCOMP = ((((IVON01 + IVON02) - IVON03) * IVON04) / IVON05) 01490045 ! 153: * ** IVON06 01500045 ! 154: GO TO 47480 01510045 ! 155: 37480 IVDELE = IVDELE + 1 01520045 ! 156: WRITE (I02,80003) IVTNUM 01530045 ! 157: IF (ICZERO) 47480, 7491, 47480 01540045 ! 158: 47480 IF (IVCOMP - 3600) 27480,17480,27480 01550045 ! 159: 17480 IVPASS = IVPASS + 1 01560045 ! 160: WRITE (I02,80001) IVTNUM 01570045 ! 161: GO TO 7491 01580045 ! 162: 27480 IVFAIL = IVFAIL + 1 01590045 ! 163: IVCORR = 3600 01600045 ! 164: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 01610045 ! 165: 7491 CONTINUE 01620045 ! 166: IVTNUM = 749 01630045 ! 167: C 01640045 ! 168: C **** TEST 749 **** 01650045 ! 169: C 01660045 ! 170: IF (ICZERO) 37490, 7490, 37490 01670045 ! 171: 7490 CONTINUE 01680045 ! 172: IVON01 = 15 01690045 ! 173: IVON02 = 9 01700045 ! 174: IVON03 = 4 01710045 ! 175: IVON04 = 36 01720045 ! 176: IVON05 = 6 01730045 ! 177: IVON06 = 2 01740045 ! 178: IVCOMP = (IVON01 + IVON02 - IVON03) * (IVON04 / IVON05 ** IVON06) 01750045 ! 179: GO TO 47490 01760045 ! 180: 37490 IVDELE = IVDELE + 1 01770045 ! 181: WRITE (I02,80003) IVTNUM 01780045 ! 182: IF (ICZERO) 47490, 7501, 47490 01790045 ! 183: 47490 IF (IVCOMP - 20) 27490,17490,27490 01800045 ! 184: 17490 IVPASS = IVPASS + 1 01810045 ! 185: WRITE (I02,80001) IVTNUM 01820045 ! 186: GO TO 7501 01830045 ! 187: 27490 IVFAIL = IVFAIL + 1 01840045 ! 188: IVCORR = 20 01850045 ! 189: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 01860045 ! 190: 7501 CONTINUE 01870045 ! 191: IVTNUM = 750 01880045 ! 192: C 01890045 ! 193: C **** TEST 750 **** 01900045 ! 194: C 01910045 ! 195: IF (ICZERO) 37500, 7500, 37500 01920045 ! 196: 7500 CONTINUE 01930045 ! 197: IVON01 = 15 01940045 ! 198: IVON02 = 9 01950045 ! 199: IVON03 = 4 01960045 ! 200: IVON04 = 36 01970045 ! 201: IVON05 = 6 01980045 ! 202: IVON06 = 2 01990045 ! 203: IVCOMP = (IVON01 + IVON02) - (IVON03 * IVON04) / (IVON05 ** 02000045 ! 204: * IVON06) 02010045 ! 205: GO TO 47500 02020045 ! 206: 37500 IVDELE = IVDELE + 1 02030045 ! 207: WRITE (I02,80003) IVTNUM 02040045 ! 208: IF (ICZERO) 47500, 7511, 47500 02050045 ! 209: 47500 IF (IVCOMP - 20) 27500,17500,27500 02060045 ! 210: 17500 IVPASS = IVPASS + 1 02070045 ! 211: WRITE (I02,80001) IVTNUM 02080045 ! 212: GO TO 7511 02090045 ! 213: 27500 IVFAIL = IVFAIL + 1 02100045 ! 214: IVCORR = 20 02110045 ! 215: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 02120045 ! 216: 7511 CONTINUE 02130045 ! 217: IVTNUM = 751 02140045 ! 218: C 02150045 ! 219: C **** TEST 751 **** 02160045 ! 220: C 02170045 ! 221: IF (ICZERO) 37510, 7510, 37510 02180045 ! 222: 7510 CONTINUE 02190045 ! 223: IVON01 = 15 02200045 ! 224: IVON02 = 9 02210045 ! 225: IVON03 = 4 02220045 ! 226: IVON04 = 36 02230045 ! 227: IVON05 = 6 02240045 ! 228: IVON06 = 2 02250045 ! 229: IVCOMP = ((IVON01 + IVON02) - (IVON03 * IVON04)) / (IVON05 ** 02260045 ! 230: * IVON06) 02270045 ! 231: GO TO 47510 02280045 ! 232: 37510 IVDELE = IVDELE + 1 02290045 ! 233: WRITE (I02,80003) IVTNUM 02300045 ! 234: IF (ICZERO) 47510, 7521, 47510 02310045 ! 235: 47510 IF (IVCOMP + 3) 27510,17510,27510 02320045 ! 236: 17510 IVPASS = IVPASS + 1 02330045 ! 237: WRITE (I02,80001) IVTNUM 02340045 ! 238: GO TO 7521 02350045 ! 239: 27510 IVFAIL = IVFAIL + 1 02360045 ! 240: IVCORR = -3 02370045 ! 241: C ACTUAL ANSWER IS -3.333333... TRUNCATION IS NECESSARY 02380045 ! 242: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 02390045 ! 243: 7521 CONTINUE 02400045 ! 244: IVTNUM = 752 02410045 ! 245: C 02420045 ! 246: C **** TEST 752 **** 02430045 ! 247: C 02440045 ! 248: IF (ICZERO) 37520, 7520, 37520 02450045 ! 249: 7520 CONTINUE 02460045 ! 250: IVON01 = 15 02470045 ! 251: IVON02 = 9 02480045 ! 252: IVON03 = 4 02490045 ! 253: IVON04 = 36 02500045 ! 254: IVON05 = 6 02510045 ! 255: IVON06 = 2 02520045 ! 256: IVCOMP = (IVON01 + IVON02) - (IVON03 * IVON04 / IVON05) ** IVON06 02530045 ! 257: GO TO 47520 02540045 ! 258: 37520 IVDELE = IVDELE + 1 02550045 ! 259: WRITE (I02,80003) IVTNUM 02560045 ! 260: IF (ICZERO) 47520, 7531, 47520 02570045 ! 261: 47520 IF (IVCOMP + 552) 27520,17520,27520 02580045 ! 262: 17520 IVPASS = IVPASS + 1 02590045 ! 263: WRITE (I02,80001) IVTNUM 02600045 ! 264: GO TO 7531 02610045 ! 265: 27520 IVFAIL = IVFAIL + 1 02620045 ! 266: IVCORR = -552 02630045 ! 267: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 02640045 ! 268: 7531 CONTINUE 02650045 ! 269: IVTNUM = 753 02660045 ! 270: C 02670045 ! 271: C **** TEST 753 **** 02680045 ! 272: C 02690045 ! 273: IF (ICZERO) 37530, 7530, 37530 02700045 ! 274: 7530 CONTINUE 02710045 ! 275: IVON01 = 15 02720045 ! 276: IVON02 = 9 02730045 ! 277: IVON03 = 4 02740045 ! 278: IVON04 = 36 02750045 ! 279: IVON05 = 6 02760045 ! 280: IVON06 = 2 02770045 ! 281: IVCOMP = IVON01 + (IVON02 - IVON03 * IVON04) / IVON05 ** IVON06 02780045 ! 282: GO TO 47530 02790045 ! 283: 37530 IVDELE = IVDELE + 1 02800045 ! 284: WRITE (I02,80003) IVTNUM 02810045 ! 285: IF (ICZERO) 47530, 7541, 47530 02820045 ! 286: 47530 IF (IVCOMP - 12) 27530,17530,27530 02830045 ! 287: 17530 IVPASS = IVPASS + 1 02840045 ! 288: WRITE (I02,80001) IVTNUM 02850045 ! 289: GO TO 7541 02860045 ! 290: 27530 IVFAIL = IVFAIL + 1 02870045 ! 291: IVCORR = 12 02880045 ! 292: C ACTUAL ANSWER IS 11.25 TRUNCATION IS NECESSARY 02890045 ! 293: C DURING AN INTERMEDIATE STEP 02900045 ! 294: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 02910045 ! 295: 7541 CONTINUE 02920045 ! 296: IVTNUM = 754 02930045 ! 297: C 02940045 ! 298: C **** TEST 754 **** 02950045 ! 299: C 02960045 ! 300: IF (ICZERO) 37540, 7540, 37540 02970045 ! 301: 7540 CONTINUE 02980045 ! 302: IVON01 = 15 02990045 ! 303: IVON02 = 9 03000045 ! 304: IVON03 = 4 03010045 ! 305: IVON04 = 36 03020045 ! 306: IVON05 = 6 03030045 ! 307: IVON06 = 2 03040045 ! 308: IVCOMP = IVON01 + (IVON02 - IVON03) * (IVON04 / IVON05) ** IVON06 03050045 ! 309: GO TO 47540 03060045 ! 310: 37540 IVDELE = IVDELE + 1 03070045 ! 311: WRITE (I02,80003) IVTNUM 03080045 ! 312: IF (ICZERO) 47540, 7551, 47540 03090045 ! 313: 47540 IF (IVCOMP - 195) 27540,17540,27540 03100045 ! 314: 17540 IVPASS = IVPASS + 1 03110045 ! 315: WRITE (I02,80001) IVTNUM 03120045 ! 316: GO TO 7551 03130045 ! 317: 27540 IVFAIL = IVFAIL + 1 03140045 ! 318: IVCORR = 195 03150045 ! 319: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 03160045 ! 320: 7551 CONTINUE 03170045 ! 321: IVTNUM = 755 03180045 ! 322: C 03190045 ! 323: C **** TEST 755 **** 03200045 ! 324: C 03210045 ! 325: IF (ICZERO) 37550, 7550, 37550 03220045 ! 326: 7550 CONTINUE 03230045 ! 327: IVON01 = 15 03240045 ! 328: IVON02 = 9 03250045 ! 329: IVON03 = 4 03260045 ! 330: IVON04 = 36 03270045 ! 331: IVON05 = 6 03280045 ! 332: IVON06 = 2 03290045 ! 333: IVCOMP = ((IVON01 + (IVON02 - IVON03) * IVON04) / IVON05) ** 03300045 ! 334: * IVON06 03310045 ! 335: GO TO 47550 03320045 ! 336: 37550 IVDELE = IVDELE + 1 03330045 ! 337: WRITE (I02,80003) IVTNUM 03340045 ! 338: IF (ICZERO) 47550, 7561, 47550 03350045 ! 339: 47550 IF (IVCOMP - 1024) 27550,17550,27550 03360045 ! 340: 17550 IVPASS = IVPASS + 1 03370045 ! 341: WRITE (I02,80001) IVTNUM 03380045 ! 342: GO TO 7561 03390045 ! 343: 27550 IVFAIL = IVFAIL + 1 03400045 ! 344: IVCORR = 1024 03410045 ! 345: C ACTUAL ANSWER IS 1056.25 TRUNCATION IS NECESSARY 03420045 ! 346: C DURING AN INTERMEDIATE STEP 03430045 ! 347: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 03440045 ! 348: 7561 CONTINUE 03450045 ! 349: IVTNUM = 756 03460045 ! 350: C 03470045 ! 351: C **** TEST 756 **** 03480045 ! 352: C SINGLE PARENTHESES 03490045 ! 353: C 03500045 ! 354: IF (ICZERO) 37560, 7560, 37560 03510045 ! 355: 7560 CONTINUE 03520045 ! 356: IVON01 = 13 03530045 ! 357: IVON02 = 37 03540045 ! 358: IVCOMP = (IVON01 + IVON02) 03550045 ! 359: GO TO 47560 03560045 ! 360: 37560 IVDELE = IVDELE + 1 03570045 ! 361: WRITE (I02,80003) IVTNUM 03580045 ! 362: IF (ICZERO) 47560, 7571, 47560 03590045 ! 363: 47560 IF (IVCOMP - 50) 27560,17560,27560 03600045 ! 364: 17560 IVPASS = IVPASS + 1 03610045 ! 365: WRITE (I02,80001) IVTNUM 03620045 ! 366: GO TO 7571 03630045 ! 367: 27560 IVFAIL = IVFAIL + 1 03640045 ! 368: IVCORR = 50 03650045 ! 369: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 03660045 ! 370: 7571 CONTINUE 03670045 ! 371: IVTNUM = 757 03680045 ! 372: C 03690045 ! 373: C **** TEST 757 **** 03700045 ! 374: C NESTED PARENTHESES (TWO SETS) 03710045 ! 375: C 03720045 ! 376: IF (ICZERO) 37570, 7570, 37570 03730045 ! 377: 7570 CONTINUE 03740045 ! 378: IVON01 = 13 03750045 ! 379: IVON02 = 37 03760045 ! 380: IVCOMP = ((IVON01 - IVON02)) 03770045 ! 381: GO TO 47570 03780045 ! 382: 37570 IVDELE = IVDELE + 1 03790045 ! 383: WRITE (I02,80003) IVTNUM 03800045 ! 384: IF (ICZERO) 47570, 7581, 47570 03810045 ! 385: 47570 IF (IVCOMP + 24) 27570,17570,27570 03820045 ! 386: 17570 IVPASS = IVPASS + 1 03830045 ! 387: WRITE (I02,80001) IVTNUM 03840045 ! 388: GO TO 7581 03850045 ! 389: 27570 IVFAIL = IVFAIL + 1 03860045 ! 390: IVCORR = -24 03870045 ! 391: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 03880045 ! 392: 7581 CONTINUE 03890045 ! 393: IVTNUM = 758 03900045 ! 394: C 03910045 ! 395: C **** TEST 758 **** 03920045 ! 396: C NESTED PARENTHESES (21 SETS - SAME LINE) 03930045 ! 397: C 03940045 ! 398: IF (ICZERO) 37580, 7580, 37580 03950045 ! 399: 7580 CONTINUE 03960045 ! 400: IVON01 = 13 03970045 ! 401: IVON02 = 37 03980045 ! 402: IVCOMP = (((((((((((((((((((((IVON01 * IVON02)))))))))))))))))))))03990045 ! 403: GO TO 47580 04000045 ! 404: 37580 IVDELE = IVDELE + 1 04010045 ! 405: WRITE (I02,80003) IVTNUM 04020045 ! 406: IF (ICZERO) 47580, 7591, 47580 04030045 ! 407: 47580 IF (IVCOMP - 481) 27580,17580,27580 04040045 ! 408: 17580 IVPASS = IVPASS + 1 04050045 ! 409: WRITE (I02,80001) IVTNUM 04060045 ! 410: GO TO 7591 04070045 ! 411: 27580 IVFAIL = IVFAIL + 1 04080045 ! 412: IVCORR = 481 04090045 ! 413: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 04100045 ! 414: 7591 CONTINUE 04110045 ! 415: IVTNUM = 759 04120045 ! 416: C 04130045 ! 417: C **** TEST 759 **** 04140045 ! 418: C NESTED PARENTHESES (57 SETS - MULTIPLE LINES) 04150045 ! 419: C 04160045 ! 420: IF (ICZERO) 37590, 7590, 37590 04170045 ! 421: 7590 CONTINUE 04180045 ! 422: IVON01 = 13 04190045 ! 423: IVON02 = 37 04200045 ! 424: IVCOMP = (((((((((((((((((((((((((((((((((((((((((((((((((((((((((04210045 ! 425: * IVON01 / IVON02 04220045 ! 426: * )))))))))))))))))))))))))))))))))))))))))))))))))))))))))04230045 ! 427: GO TO 47590 04240045 ! 428: 37590 IVDELE = IVDELE + 1 04250045 ! 429: WRITE (I02,80003) IVTNUM 04260045 ! 430: IF (ICZERO) 47590, 7601, 47590 04270045 ! 431: 47590 IF (IVCOMP) 27590,17590,27590 04280045 ! 432: 17590 IVPASS = IVPASS + 1 04290045 ! 433: WRITE (I02,80001) IVTNUM 04300045 ! 434: GO TO 7601 04310045 ! 435: 27590 IVFAIL = IVFAIL + 1 04320045 ! 436: IVCORR = 0 04330045 ! 437: WRITE (I02,80004) IVTNUM, IVCOMP, IVCORR 04340045 ! 438: 7601 CONTINUE 04350045 ! 439: C 04360045 ! 440: C WRITE PAGE FOOTINGS AND RUN SUMMARIES 04370045 ! 441: 99999 CONTINUE 04380045 ! 442: WRITE (I02,90002) 04390045 ! 443: WRITE (I02,90006) 04400045 ! 444: WRITE (I02,90002) 04410045 ! 445: WRITE (I02,90002) 04420045 ! 446: WRITE (I02,90007) 04430045 ! 447: WRITE (I02,90002) 04440045 ! 448: WRITE (I02,90008) IVFAIL 04450045 ! 449: WRITE (I02,90009) IVPASS 04460045 ! 450: WRITE (I02,90010) IVDELE 04470045 ! 451: C 04480045 ! 452: C 04490045 ! 453: C TERMINATE ROUTINE EXECUTION 04500045 ! 454: STOP 04510045 ! 455: C 04520045 ! 456: C FORMAT STATEMENTS FOR PAGE HEADERS 04530045 ! 457: 90000 FORMAT (1H1) 04540045 ! 458: 90002 FORMAT (1H ) 04550045 ! 459: 90001 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM) 04560045 ! 460: 90003 FORMAT (1H ,21X,11HVERSION 1.0) 04570045 ! 461: 90004 FORMAT (1H ,10X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978) 04580045 ! 462: 90005 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL, 5X,8HCOMPUTED,8X,7HCORRECT) 04590045 ! 463: 90006 FORMAT (1H ,5X,46H----------------------------------------------) 04600045 ! 464: 90011 FORMAT (1H ,18X,17HSUBSET LEVEL TEST) 04610045 ! 465: C 04620045 ! 466: C FORMAT STATEMENTS FOR RUN SUMMARIES 04630045 ! 467: 90008 FORMAT (1H ,15X,I5,19H ERRORS ENCOUNTERED) 04640045 ! 468: 90009 FORMAT (1H ,15X,I5,13H TESTS PASSED) 04650045 ! 469: 90010 FORMAT (1H ,15X,I5,14H TESTS DELETED) 04660045 ! 470: C 04670045 ! 471: C FORMAT STATEMENTS FOR TEST RESULTS 04680045 ! 472: 80001 FORMAT (1H ,4X,I5,7X,4HPASS) 04690045 ! 473: 80002 FORMAT (1H ,4X,I5,7X,4HFAIL) 04700045 ! 474: 80003 FORMAT (1H ,4X,I5,7X,7HDELETED) 04710045 ! 475: 80004 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6) 04720045 ! 476: 80005 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5) 04730045 ! 477: C 04740045 ! 478: 90007 FORMAT (1H ,20X,20HEND OF PROGRAM FM045) 04750045 ! 479: END 04760045
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.