|
|
1.1 ! root 1: c comment section ! 2: c ! 3: c fm044 ! 4: c ! 5: c this routine tests arithmetic assignments of the form ! 6: c integer var. = integer var. <op1> integer var. <op2> integer var. ! 7: c ! 8: c where <op1> and <op2> are arithmetic operators. ! 9: c ! 10: c references ! 11: c american national standard programming language fortran, ! 12: c x3.9-1978 ! 13: c ! 14: c section 4.3, integer type ! 15: c section 4.3.1, integer constant ! 16: c section 6.1, arithmetic expressions ! 17: c section 6.6, evaluation of expressions ! 18: c section 10.1, arithmetic assignment statement ! 19: c ! 20: c ! 21: c ********************************************************** ! 22: c ! 23: c a compiler validation system for the fortran language ! 24: c based on specifications as defined in american national standard ! 25: c programming language fortran x3.9-1978, has been developed by the ! 26: c federal cobol compiler testing service. the fortran compiler ! 27: c validation system (fcvs) consists of audit routines, their related ! 28: c data, and an executive system. each audit routine is a fortran ! 29: c program, subprogram or function which includes tests of specific ! 30: c language elements and supporting procedures indicating the result ! 31: c of executing these tests. ! 32: c ! 33: c this particular program/subprogram/function contains features ! 34: c found only in the subset as defined in x3.9-1978. ! 35: c ! 36: c suggestions and comments should be forwarded to - ! 37: c ! 38: c department of the navy ! 39: c federal cobol compiler testing service ! 40: c washington, d.c. 20376 ! 41: c ! 42: c ********************************************************** ! 43: c ! 44: c ! 45: c ! 46: c initialization section ! 47: c ! 48: c initialize constants ! 49: c ************** ! 50: c i01 contains the logical unit number for the card reader. ! 51: i01 = 5 ! 52: c i02 contains the logical unit number for the printer. ! 53: i02 = 6 ! 54: c system environment section ! 55: c ! 56: cx010 this card is replaced by contents of fexec x-010 control card. ! 57: c the cx010 card is for overriding the program default i01 = 5 ! 58: c (unit number for card reader). ! 59: cx011 this card is replaced by contents of fexec x-011 control card. ! 60: c the cx011 card is for systems which require additional ! 61: c fortran statements for files associated with cx010 above. ! 62: c ! 63: cx020 this card is replaced by contents of fexec x-020 control card. ! 64: c the cx020 card is for overriding the program default i02 = 6 ! 65: c (unit number for printer). ! 66: cx021 this card is replaced by contents of fexec x-021 control card. ! 67: c the cx021 card is for systems which require additional ! 68: c fortran statements for files associated with cx020 above. ! 69: c ! 70: ivpass=0 ! 71: ivfail=0 ! 72: ivdele=0 ! 73: iczero=0 ! 74: c ! 75: c write page headers ! 76: write (i02,90000) ! 77: write (i02,90001) ! 78: write (i02,90002) ! 79: write (i02, 90002) ! 80: write (i02,90003) ! 81: write (i02,90002) ! 82: write (i02,90004) ! 83: write (i02,90002) ! 84: write (i02,90011) ! 85: write (i02,90002) ! 86: write (i02,90002) ! 87: write (i02,90005) ! 88: write (i02,90006) ! 89: write (i02,90002) ! 90: c ! 91: c test section ! 92: c ! 93: c arithmetic assignment statement ! 94: c ! 95: c tests 719 through 730 test statements where <op1> is '/' and ! 96: c <op2> varies. ! 97: c ! 98: c tests 731 through 746 test statements where <op1> is '**' and ! 99: c <op2> varies. ! 100: c ! 101: c ! 102: c test 719 through 721 test '/' followed by '+'. ! 103: c ! 104: ivtnum = 719 ! 105: c ! 106: c **** test 719 **** ! 107: c ! 108: if (iczero) 37190, 7190, 37190 ! 109: 7190 continue ! 110: ivon01 = 108 ! 111: ivon02 = 9 ! 112: ivon03 = 3 ! 113: ivcomp = ivon01 / ivon02 + ivon03 ! 114: go to 47190 ! 115: 37190 ivdele = ivdele + 1 ! 116: write (i02,80003) ivtnum ! 117: if (iczero) 47190, 7201, 47190 ! 118: 47190 if (ivcomp - 15) 27190,17190,27190 ! 119: 17190 ivpass = ivpass + 1 ! 120: write (i02,80001) ivtnum ! 121: go to 7201 ! 122: 27190 ivfail = ivfail + 1 ! 123: ivcorr = 15 ! 124: write (i02,80004) ivtnum, ivcomp, ivcorr ! 125: 7201 continue ! 126: ivtnum = 720 ! 127: c ! 128: c **** test 720 **** ! 129: c ! 130: if (iczero) 37200, 7200, 37200 ! 131: 7200 continue ! 132: ivon01 = 108 ! 133: ivon02 = 9 ! 134: ivon03 = 3 ! 135: ivcomp = (ivon01 / ivon02) + ivon03 ! 136: go to 47200 ! 137: 37200 ivdele = ivdele + 1 ! 138: write (i02,80003) ivtnum ! 139: if (iczero) 47200, 7211, 47200 ! 140: 47200 if (ivcomp - 15) 27200,17200,27200 ! 141: 17200 ivpass = ivpass + 1 ! 142: write (i02,80001) ivtnum ! 143: go to 7211 ! 144: 27200 ivfail = ivfail + 1 ! 145: ivcorr = 15 ! 146: write (i02,80004) ivtnum, ivcomp, ivcorr ! 147: 7211 continue ! 148: ivtnum = 721 ! 149: c ! 150: c **** test 721 **** ! 151: c ! 152: if (iczero) 37210, 7210, 37210 ! 153: 7210 continue ! 154: ivon01 = 108 ! 155: ivon02 = 9 ! 156: ivon03 = 3 ! 157: ivcomp = ivon01 / (ivon02 + ivon03) ! 158: go to 47210 ! 159: 37210 ivdele = ivdele + 1 ! 160: write (i02,80003) ivtnum ! 161: if (iczero) 47210, 7221, 47210 ! 162: 47210 if (ivcomp - 9) 27210,17210,27210 ! 163: 17210 ivpass = ivpass + 1 ! 164: write (i02,80001) ivtnum ! 165: go to 7221 ! 166: 27210 ivfail = ivfail + 1 ! 167: ivcorr = 9 ! 168: write (i02,80004) ivtnum, ivcomp, ivcorr ! 169: 7221 continue ! 170: c ! 171: c test 722 through 724 test '/' followed by '-'. ! 172: c ! 173: ivtnum = 722 ! 174: c ! 175: c **** test 722 **** ! 176: c ! 177: if (iczero) 37220, 7220, 37220 ! 178: 7220 continue ! 179: ivon01 = 108 ! 180: ivon02 = 9 ! 181: ivon03 = 3 ! 182: ivcomp = ivon01 / ivon02 - ivon03 ! 183: go to 47220 ! 184: 37220 ivdele = ivdele + 1 ! 185: write (i02,80003) ivtnum ! 186: if (iczero) 47220, 7231, 47220 ! 187: 47220 if (ivcomp - 9) 27220,17220,27220 ! 188: 17220 ivpass = ivpass + 1 ! 189: write (i02,80001) ivtnum ! 190: go to 7231 ! 191: 27220 ivfail = ivfail + 1 ! 192: ivcorr = 9 ! 193: write (i02,80004) ivtnum, ivcomp, ivcorr ! 194: 7231 continue ! 195: ivtnum = 723 ! 196: c ! 197: c **** test 723 **** ! 198: c ! 199: if (iczero) 37230, 7230, 37230 ! 200: 7230 continue ! 201: ivon01 = 108 ! 202: ivon02 = 9 ! 203: ivon03 = 3 ! 204: ivcomp = (ivon01 / ivon02) - ivon03 ! 205: go to 47230 ! 206: 37230 ivdele = ivdele + 1 ! 207: write (i02,80003) ivtnum ! 208: if (iczero) 47230, 7241, 47230 ! 209: 47230 if (ivcomp - 9) 27230,17230,27230 ! 210: 17230 ivpass = ivpass + 1 ! 211: write (i02,80001) ivtnum ! 212: go to 7241 ! 213: 27230 ivfail = ivfail + 1 ! 214: ivcorr = 9 ! 215: write (i02,80004) ivtnum, ivcomp, ivcorr ! 216: 7241 continue ! 217: ivtnum = 724 ! 218: c ! 219: c **** test 724 **** ! 220: c ! 221: if (iczero) 37240, 7240, 37240 ! 222: 7240 continue ! 223: ivon01 = 108 ! 224: ivon02 = 9 ! 225: ivon03 = 3 ! 226: ivcomp = ivon01 / (ivon02 - ivon03) ! 227: go to 47240 ! 228: 37240 ivdele = ivdele + 1 ! 229: write (i02,80003) ivtnum ! 230: if (iczero) 47240, 7251, 47240 ! 231: 47240 if (ivcomp - 18) 27240,17240,27240 ! 232: 17240 ivpass = ivpass + 1 ! 233: write (i02,80001) ivtnum ! 234: go to 7251 ! 235: 27240 ivfail = ivfail + 1 ! 236: ivcorr = 18 ! 237: write (i02,80004) ivtnum, ivcomp, ivcorr ! 238: 7251 continue ! 239: c ! 240: c test 725 through 727 test '/' followed by '*'. ! 241: c ! 242: ivtnum = 725 ! 243: c ! 244: c **** test 725 **** ! 245: c ! 246: if (iczero) 37250, 7250, 37250 ! 247: 7250 continue ! 248: ivon01 = 108 ! 249: ivon02 = 9 ! 250: ivon03 = 3 ! 251: ivcomp = ivon01 / ivon02 * ivon03 ! 252: go to 47250 ! 253: 37250 ivdele = ivdele + 1 ! 254: write (i02,80003) ivtnum ! 255: if (iczero) 47250, 7261, 47250 ! 256: 47250 if (ivcomp - 36) 27250,17250,27250 ! 257: 17250 ivpass = ivpass + 1 ! 258: write (i02,80001) ivtnum ! 259: go to 7261 ! 260: 27250 ivfail = ivfail + 1 ! 261: ivcorr = 36 ! 262: write (i02,80004) ivtnum, ivcomp, ivcorr ! 263: 7261 continue ! 264: ivtnum = 726 ! 265: c ! 266: c **** test 726 **** ! 267: c ! 268: if (iczero) 37260, 7260, 37260 ! 269: 7260 continue ! 270: ivon01 = 108 ! 271: ivon02 = 9 ! 272: ivon03 = 3 ! 273: ivcomp = (ivon01 / ivon02) * ivon03 ! 274: go to 47260 ! 275: 37260 ivdele = ivdele + 1 ! 276: write (i02,80003) ivtnum ! 277: if (iczero) 47260, 7271, 47260 ! 278: 47260 if (ivcomp - 36) 27260,17260,27260 ! 279: 17260 ivpass = ivpass + 1 ! 280: write (i02,80001) ivtnum ! 281: go to 7271 ! 282: 27260 ivfail = ivfail + 1 ! 283: ivcorr = 36 ! 284: write (i02,80004) ivtnum, ivcomp, ivcorr ! 285: 7271 continue ! 286: ivtnum = 727 ! 287: c ! 288: c **** test 727 **** ! 289: c ! 290: if (iczero) 37270, 7270, 37270 ! 291: 7270 continue ! 292: ivon01 = 108 ! 293: ivon02 = 9 ! 294: ivon03 = 3 ! 295: ivcomp = ivon01 / (ivon02 * ivon03) ! 296: go to 47270 ! 297: 37270 ivdele = ivdele + 1 ! 298: write (i02,80003) ivtnum ! 299: if (iczero) 47270, 7281, 47270 ! 300: 47270 if (ivcomp - 4) 27270,17270,27270 ! 301: 17270 ivpass = ivpass + 1 ! 302: write (i02,80001) ivtnum ! 303: go to 7281 ! 304: 27270 ivfail = ivfail + 1 ! 305: ivcorr = 4 ! 306: write (i02,80004) ivtnum, ivcomp, ivcorr ! 307: 7281 continue ! 308: c ! 309: c test 728 through 730 test '/' followed by '**'. ! 310: c ! 311: ivtnum = 728 ! 312: c ! 313: c **** test 728 **** ! 314: c ! 315: if (iczero) 37280, 7280, 37280 ! 316: 7280 continue ! 317: ivon01 = 108 ! 318: ivon02 = 3 ! 319: ivon03 = 2 ! 320: ivcomp = ivon01 / ivon02 ** ivon03 ! 321: go to 47280 ! 322: 37280 ivdele = ivdele + 1 ! 323: write (i02,80003) ivtnum ! 324: if (iczero) 47280, 7291, 47280 ! 325: 47280 if (ivcomp - 12) 27280,17280,27280 ! 326: 17280 ivpass = ivpass + 1 ! 327: write (i02,80001) ivtnum ! 328: go to 7291 ! 329: 27280 ivfail = ivfail + 1 ! 330: ivcorr = 12 ! 331: write (i02,80004) ivtnum, ivcomp, ivcorr ! 332: 7291 continue ! 333: ivtnum = 729 ! 334: c ! 335: c **** test 729 **** ! 336: c ! 337: if (iczero) 37290, 7290, 37290 ! 338: 7290 continue ! 339: ivon01 = 108 ! 340: ivon02 = 3 ! 341: ivon03 = 2 ! 342: ivcomp = (ivon01 / ivon02) ** ivon03 ! 343: go to 47290 ! 344: 37290 ivdele = ivdele + 1 ! 345: write (i02,80003) ivtnum ! 346: if (iczero) 47290, 7301, 47290 ! 347: 47290 if (ivcomp - 1296) 27290,17290,27290 ! 348: 17290 ivpass = ivpass + 1 ! 349: write (i02,80001) ivtnum ! 350: go to 7301 ! 351: 27290 ivfail = ivfail + 1 ! 352: ivcorr = 1296 ! 353: write (i02,80004) ivtnum, ivcomp, ivcorr ! 354: 7301 continue ! 355: ivtnum = 730 ! 356: c ! 357: c **** test 730 **** ! 358: c ! 359: if (iczero) 37300, 7300, 37300 ! 360: 7300 continue ! 361: ivon01 = 108 ! 362: ivon02 = 3 ! 363: ivon03 = 2 ! 364: ivcomp = ivon01 / (ivon02 ** ivon03) ! 365: go to 47300 ! 366: 37300 ivdele = ivdele + 1 ! 367: write (i02,80003) ivtnum ! 368: if (iczero) 47300, 7311, 47300 ! 369: 47300 if (ivcomp - 12) 27300,17300,27300 ! 370: 17300 ivpass = ivpass + 1 ! 371: write (i02,80001) ivtnum ! 372: go to 7311 ! 373: 27300 ivfail = ivfail + 1 ! 374: ivcorr = 12 ! 375: write (i02,80004) ivtnum, ivcomp, ivcorr ! 376: 7311 continue ! 377: c ! 378: c test 731 through 733 test '**' followed by '+'. ! 379: c ! 380: ivtnum = 731 ! 381: c ! 382: c **** test 731 **** ! 383: c ! 384: if (iczero) 37310, 7310, 37310 ! 385: 7310 continue ! 386: ivon01 = 3 ! 387: ivon02 = 5 ! 388: ivon03 = 4 ! 389: ivcomp = ivon01 ** ivon02 + ivon03 ! 390: go to 47310 ! 391: 37310 ivdele = ivdele + 1 ! 392: write (i02,80003) ivtnum ! 393: if (iczero) 47310, 7321, 47310 ! 394: 47310 if (ivcomp - 247) 27310,17310,27310 ! 395: 17310 ivpass = ivpass + 1 ! 396: write (i02,80001) ivtnum ! 397: go to 7321 ! 398: 27310 ivfail = ivfail + 1 ! 399: ivcorr = 247 ! 400: write (i02,80004) ivtnum, ivcomp, ivcorr ! 401: 7321 continue ! 402: ivtnum = 732 ! 403: c ! 404: c **** test 732 **** ! 405: c ! 406: if (iczero) 37320, 7320, 37320 ! 407: 7320 continue ! 408: ivon01 = 3 ! 409: ivon02 = 5 ! 410: ivon03 = 4 ! 411: ivcomp = (ivon01 ** ivon02) + ivon03 ! 412: go to 47320 ! 413: 37320 ivdele = ivdele + 1 ! 414: write (i02,80003) ivtnum ! 415: if (iczero) 47320, 7331, 47320 ! 416: 47320 if (ivcomp - 247) 27320,17320,27320 ! 417: 17320 ivpass = ivpass + 1 ! 418: write (i02,80001) ivtnum ! 419: go to 7331 ! 420: 27320 ivfail = ivfail + 1 ! 421: ivcorr = 247 ! 422: write (i02,80004) ivtnum, ivcomp, ivcorr ! 423: 7331 continue ! 424: ivtnum = 733 ! 425: c ! 426: c **** test 733 **** ! 427: c ! 428: if (iczero) 37330, 7330, 37330 ! 429: 7330 continue ! 430: ivon01 = 3 ! 431: ivon02 = 5 ! 432: ivon03 = 4 ! 433: ivcomp = ivon01 ** (ivon02 + ivon03) ! 434: go to 47330 ! 435: 37330 ivdele = ivdele + 1 ! 436: write (i02,80003) ivtnum ! 437: if (iczero) 47330, 7341, 47330 ! 438: 47330 if (ivcomp - 19683) 27330,17330,27330 ! 439: 17330 ivpass = ivpass + 1 ! 440: write (i02,80001) ivtnum ! 441: go to 7341 ! 442: 27330 ivfail = ivfail + 1 ! 443: ivcorr = 19683 ! 444: write (i02,80004) ivtnum, ivcomp, ivcorr ! 445: 7341 continue ! 446: c ! 447: c test 734 through 736 test '**' followed by '-'. ! 448: c ! 449: ivtnum = 734 ! 450: c ! 451: c **** test 734 **** ! 452: c ! 453: if (iczero) 37340, 7340, 37340 ! 454: 7340 continue ! 455: ivon01 = 3 ! 456: ivon02 = 7 ! 457: ivon03 = 4 ! 458: ivcomp = ivon01 ** ivon02 - ivon03 ! 459: go to 47340 ! 460: 37340 ivdele = ivdele + 1 ! 461: write (i02,80003) ivtnum ! 462: if (iczero) 47340, 7351, 47340 ! 463: 47340 if (ivcomp - 2183) 27340,17340,27340 ! 464: 17340 ivpass = ivpass + 1 ! 465: write (i02,80001) ivtnum ! 466: go to 7351 ! 467: 27340 ivfail = ivfail + 1 ! 468: ivcorr = 2183 ! 469: write (i02,80004) ivtnum, ivcomp, ivcorr ! 470: 7351 continue ! 471: ivtnum = 735 ! 472: c ! 473: c **** test 735 **** ! 474: c ! 475: if (iczero) 37350, 7350, 37350 ! 476: 7350 continue ! 477: ivon01 = 3 ! 478: ivon02 = 7 ! 479: ivon03 = 4 ! 480: ivcomp = (ivon01 ** ivon02) - ivon03 ! 481: go to 47350 ! 482: 37350 ivdele = ivdele + 1 ! 483: write (i02,80003) ivtnum ! 484: if (iczero) 47350, 7361, 47350 ! 485: 47350 if (ivcomp - 2183) 27350,17350,27350 ! 486: 17350 ivpass = ivpass + 1 ! 487: write (i02,80001) ivtnum ! 488: go to 7361 ! 489: 27350 ivfail = ivfail + 1 ! 490: ivcorr = 2183 ! 491: write (i02,80004) ivtnum, ivcomp, ivcorr ! 492: 7361 continue ! 493: ivtnum = 736 ! 494: c ! 495: c **** test 736 **** ! 496: c ! 497: if (iczero) 37360, 7360, 37360 ! 498: 7360 continue ! 499: ivon01 = 3 ! 500: ivon02 = 7 ! 501: ivon03 = 4 ! 502: ivcomp = ivon01 ** (ivon02 - ivon03) ! 503: go to 47360 ! 504: 37360 ivdele = ivdele + 1 ! 505: write (i02,80003) ivtnum ! 506: if (iczero) 47360, 7371, 47360 ! 507: 47360 if (ivcomp - 27) 27360,17360,27360 ! 508: 17360 ivpass = ivpass + 1 ! 509: write (i02,80001) ivtnum ! 510: go to 7371 ! 511: 27360 ivfail = ivfail + 1 ! 512: ivcorr = 27 ! 513: write (i02,80004) ivtnum, ivcomp, ivcorr ! 514: 7371 continue ! 515: c ! 516: c test 737 through 739 test '**' followed by '*'. ! 517: c ! 518: ivtnum = 737 ! 519: c ! 520: c **** test 737 **** ! 521: c ! 522: if (iczero) 37370, 7370, 37370 ! 523: 7370 continue ! 524: ivon01 = 3 ! 525: ivon02 = 3 ! 526: ivon03 = 3 ! 527: ivcomp = ivon01 ** ivon02 * ivon03 ! 528: go to 47370 ! 529: 37370 ivdele = ivdele + 1 ! 530: write (i02,80003) ivtnum ! 531: if (iczero) 47370, 7381, 47370 ! 532: 47370 if (ivcomp - 81) 27370,17370,27370 ! 533: 17370 ivpass = ivpass + 1 ! 534: write (i02,80001) ivtnum ! 535: go to 7381 ! 536: 27370 ivfail = ivfail + 1 ! 537: ivcorr = 81 ! 538: write (i02,80004) ivtnum, ivcomp, ivcorr ! 539: 7381 continue ! 540: ivtnum = 738 ! 541: c ! 542: c **** test 738 **** ! 543: c ! 544: if (iczero) 37380, 7380, 37380 ! 545: 7380 continue ! 546: ivon01 = 3 ! 547: ivon02 = 3 ! 548: ivon03 = 3 ! 549: ivcomp = (ivon01 ** ivon02) * ivon03 ! 550: go to 47380 ! 551: 37380 ivdele = ivdele + 1 ! 552: write (i02,80003) ivtnum ! 553: if (iczero) 47380, 7391, 47380 ! 554: 47380 if (ivcomp - 81) 27380,17380,27380 ! 555: 17380 ivpass = ivpass + 1 ! 556: write (i02,80001) ivtnum ! 557: go to 7391 ! 558: 27380 ivfail = ivfail + 1 ! 559: ivcorr = 81 ! 560: write (i02,80004) ivtnum, ivcomp, ivcorr ! 561: 7391 continue ! 562: ivtnum = 739 ! 563: c ! 564: c **** test 739 **** ! 565: c ! 566: if (iczero) 37390, 7390, 37390 ! 567: 7390 continue ! 568: ivon01 = 3 ! 569: ivon02 = 3 ! 570: ivon03 = 3 ! 571: ivcomp = ivon01 ** (ivon02 * ivon03) ! 572: go to 47390 ! 573: 37390 ivdele = ivdele + 1 ! 574: write (i02,80003) ivtnum ! 575: if (iczero) 47390, 7401, 47390 ! 576: 47390 if (ivcomp - 19683) 27390,17390,27390 ! 577: 17390 ivpass = ivpass + 1 ! 578: write (i02,80001) ivtnum ! 579: go to 7401 ! 580: 27390 ivfail = ivfail + 1 ! 581: ivcorr = 19683 ! 582: write (i02,80004) ivtnum, ivcomp, ivcorr ! 583: 7401 continue ! 584: c ! 585: c test 740 through 742 test '**' followed by '/'. ! 586: c ! 587: ivtnum = 740 ! 588: c ! 589: c **** test 740 **** ! 590: c ! 591: if (iczero) 37400, 7400, 37400 ! 592: 7400 continue ! 593: ivon01 = 3 ! 594: ivon02 = 9 ! 595: ivon03 = 3 ! 596: ivcomp = ivon01 ** ivon02 / ivon03 ! 597: go to 47400 ! 598: 37400 ivdele = ivdele + 1 ! 599: write (i02,80003) ivtnum ! 600: if (iczero) 47400, 7411, 47400 ! 601: 47400 if (ivcomp - 6561) 27400,17400,27400 ! 602: 17400 ivpass = ivpass + 1 ! 603: write (i02,80001) ivtnum ! 604: go to 7411 ! 605: 27400 ivfail = ivfail + 1 ! 606: ivcorr = 6561 ! 607: write (i02,80004) ivtnum, ivcomp, ivcorr ! 608: 7411 continue ! 609: ivtnum = 741 ! 610: c ! 611: c **** test 741 **** ! 612: c ! 613: if (iczero) 37410, 7410, 37410 ! 614: 7410 continue ! 615: ivon01 = 3 ! 616: ivon02 = 9 ! 617: ivon03 = 3 ! 618: ivcomp = (ivon01 ** ivon02) / ivon03 ! 619: go to 47410 ! 620: 37410 ivdele = ivdele + 1 ! 621: write (i02,80003) ivtnum ! 622: if (iczero) 47410, 7421, 47410 ! 623: 47410 if (ivcomp - 6561) 27410,17410,27410 ! 624: 17410 ivpass = ivpass + 1 ! 625: write (i02,80001) ivtnum ! 626: go to 7421 ! 627: 27410 ivfail = ivfail + 1 ! 628: ivcorr = 6561 ! 629: write (i02,80004) ivtnum, ivcomp, ivcorr ! 630: 7421 continue ! 631: ivtnum = 742 ! 632: c **** test 742 **** ! 633: c ! 634: if (iczero) 37420, 7420, 37420 ! 635: 7420 continue ! 636: ivon01 = 3 ! 637: ivon02 = 9 ! 638: ivon03 = 3 ! 639: ivcomp = ivon01 ** (ivon02 / ivon03) ! 640: go to 47420 ! 641: 37420 ivdele = ivdele + 1 ! 642: write (i02,80003) ivtnum ! 643: if (iczero) 47420, 7431, 47420 ! 644: 47420 if (ivcomp - 27) 27420,17420,27420 ! 645: 17420 ivpass = ivpass + 1 ! 646: write (i02,80001) ivtnum ! 647: go to 7431 ! 648: 27420 ivfail = ivfail + 1 ! 649: ivcorr = 27 ! 650: write (i02,80004) ivtnum, ivcomp, ivcorr ! 651: 7431 continue ! 652: c ! 653: c test 743 through 746 test '**' followed by '**'. ! 654: c ! 655: ivtnum = 743 ! 656: c ! 657: c **** test 743 **** ! 658: c ! 659: if (iczero) 37430, 7430, 37430 ! 660: 7430 continue ! 661: ivon01 = 3 ! 662: ivon02 = 3 ! 663: ivon03 = 2 ! 664: ivcomp = (ivon01 ** ivon02) ** ivon03 ! 665: go to 47430 ! 666: 37430 ivdele = ivdele + 1 ! 667: write (i02,80003) ivtnum ! 668: if (iczero) 47430, 7441, 47430 ! 669: 47430 if (ivcomp - 729) 27430,17430,27430 ! 670: 17430 ivpass = ivpass + 1 ! 671: write (i02,80001) ivtnum ! 672: go to 7441 ! 673: 27430 ivfail = ivfail + 1 ! 674: ivcorr = 729 ! 675: write (i02,80004) ivtnum, ivcomp, ivcorr ! 676: 7441 continue ! 677: ivtnum = 744 ! 678: c ! 679: c **** test 744 **** ! 680: c ! 681: if (iczero) 37440, 7440, 37440 ! 682: 7440 continue ! 683: ivon01 = 3 ! 684: ivon02 = 3 ! 685: ivon03 = 2 ! 686: ivcomp = ivon01 ** (ivon02 ** ivon03) ! 687: go to 47440 ! 688: 37440 ivdele = ivdele + 1 ! 689: write (i02,80003) ivtnum ! 690: if (iczero) 47440, 7451, 47440 ! 691: 47440 if (ivcomp - 19683) 27440,17440,27440 ! 692: 17440 ivpass = ivpass + 1 ! 693: write (i02,80001) ivtnum ! 694: go to 7451 ! 695: 27440 ivfail = ivfail + 1 ! 696: ivcorr = 19683 ! 697: write (i02,80004) ivtnum, ivcomp, ivcorr ! 698: 7451 continue ! 699: ivtnum = 745 ! 700: c ! 701: c **** test 745 **** ! 702: c ! 703: if (iczero) 37450, 7450, 37450 ! 704: 7450 continue ! 705: ivon01 = -3 ! 706: ivon02 = 3 ! 707: ivon03 = 2 ! 708: ivcomp = (ivon01 ** ivon02) ** ivon03 ! 709: go to 47450 ! 710: 37450 ivdele = ivdele + 1 ! 711: write (i02,80003) ivtnum ! 712: if (iczero) 47450, 7461, 47450 ! 713: 47450 if (ivcomp - 729) 27450,17450,27450 ! 714: 17450 ivpass = ivpass + 1 ! 715: write (i02,80001) ivtnum ! 716: go to 7461 ! 717: 27450 ivfail = ivfail + 1 ! 718: ivcorr = 729 ! 719: write (i02,80004) ivtnum, ivcomp, ivcorr ! 720: 7461 continue ! 721: ivtnum = 746 ! 722: c ! 723: c **** test 746 **** ! 724: c ! 725: if (iczero) 37460, 7460, 37460 ! 726: 7460 continue ! 727: ivon01 = -3 ! 728: ivon02 = 3 ! 729: ivon03 = 2 ! 730: ivcomp = ivon01 ** (ivon02 ** ivon03) ! 731: go to 47460 ! 732: 37460 ivdele = ivdele + 1 ! 733: write (i02,80003) ivtnum ! 734: if (iczero) 47460, 7471, 47460 ! 735: 47460 if (ivcomp + 19683) 27460,17460,27460 ! 736: 17460 ivpass = ivpass + 1 ! 737: write (i02,80001) ivtnum ! 738: go to 7471 ! 739: 27460 ivfail = ivfail + 1 ! 740: ivcorr = -19683 ! 741: write (i02,80004) ivtnum, ivcomp, ivcorr ! 742: 7471 continue ! 743: c ! 744: c ! 745: c write page footings and run summaries ! 746: 99999 continue ! 747: write (i02,90002) ! 748: write (i02,90006) ! 749: write (i02,90002) ! 750: write (i02,90002) ! 751: write (i02,90007) ! 752: write (i02,90002) ! 753: write (i02,90008) ivfail ! 754: write (i02,90009) ivpass ! 755: write (i02,90010) ivdele ! 756: c ! 757: c ! 758: c terminate routine execution ! 759: stop ! 760: c ! 761: c format statements for page headers ! 762: 90000 format (1h1) ! 763: 90002 format (1h ) ! 764: 90001 format (1h ,10x,34hfortran compiler validation system) ! 765: 90003 format (1h ,21x,11hversion 1.0) ! 766: 90004 format (1h ,10x,38hfor official use only - copyright 1978) ! 767: 90005 format (1h ,5x,4htest,5x,9hpass/fail, 5x,8hcomputed,8x,7hcorrect) ! 768: 90006 format (1h ,5x,46h----------------------------------------------) ! 769: 90011 format (1h ,18x,17hsubset level test) ! 770: c ! 771: c format statements for run summaries ! 772: 90008 format (1h ,15x,i5,19h errors encountered) ! 773: 90009 format (1h ,15x,i5,13h tests passed) ! 774: 90010 format (1h ,15x,i5,14h tests deleted) ! 775: c ! 776: c format statements for test results ! 777: 80001 format (1h ,4x,i5,7x,4hpass) ! 778: 80002 format (1h ,4x,i5,7x,4hfail) ! 779: 80003 format (1h ,4x,i5,7x,7hdeleted) ! 780: 80004 format (1h ,4x,i5,7x,4hfail,10x,i6,9x,i6) ! 781: 80005 format (1h ,4x,i5,7x,4hfail,4x,e12.5,3x,e12.5) ! 782: c ! 783: 90007 format (1h ,20x,20hend of program fm044) ! 784: end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.