|
|
1.1 ! root 1: c comment section ! 2: c ! 3: c fm036 ! 4: c ! 5: c this routine tests arithmetic asignment statements of the ! 6: c form ! 7: c integer variable = arithmetic expression ! 8: c where the arithmetic expression is formed with the arithmetic ! 9: c operator / and integer constants. both positive and negative ! 10: c constants are used in the arithmetic expression. ! 11: c ! 12: c there are tests which require no truncation of the result ! 13: c and tests where the result must be truncated before being stored ! 14: c in the resultant integer variable. the standard states 'the value ! 15: c of an integer factor or term is the nearest integer whose ! 16: c magnitude does not exceed the magnitude of the mathematical value ! 17: c represented by that factor or term.' ! 18: c ! 19: c there are tests where the arithmetic expression contains ! 20: c (1) integer constant/integer constant ! 21: c no truncation required, ! 22: c (2) integer constant/integer constant ! 23: c truncation required. ! 24: c ! 25: c references ! 26: c american national standard programming language fortran, ! 27: c x3.9-1978 ! 28: c ! 29: c section 4.3, integer type ! 30: c section 4.3.1, integer constant ! 31: c section 6.1, arithmetic expressions ! 32: c section 6.6, evaluation of expressions ! 33: c section 10.1, arithmetic assignment statement ! 34: c ! 35: c ********************************************************** ! 36: c ! 37: c a compiler validation system for the fortran language ! 38: c based on specifications as defined in american national standard ! 39: c programming language fortran x3.9-1978, has been developed by the ! 40: c federal cobol compiler testing service. the fortran compiler ! 41: c validation system (fcvs) consists of audit routines, their related ! 42: c data, and an executive system. each audit routine is a fortran ! 43: c program, subprogram or function which includes tests of specific ! 44: c language elements and supporting procedures indicating the result ! 45: c of executing these tests. ! 46: c ! 47: c this particular program/subprogram/function contains features ! 48: c found only in the subset as defined in x3.9-1978. ! 49: c ! 50: c suggestions and comments should be forwarded to - ! 51: c ! 52: c department of the navy ! 53: c federal cobol compiler testing service ! 54: c washington, d.c. 20376 ! 55: c ! 56: c ********************************************************** ! 57: c ! 58: c ! 59: c ! 60: c initialization section ! 61: c ! 62: c initialize constants ! 63: c ************** ! 64: c i01 contains the logical unit number for the card reader. ! 65: i01 = 5 ! 66: c i02 contains the logical unit number for the printer. ! 67: i02 = 6 ! 68: c system environment section ! 69: c ! 70: cx010 this card is replaced by contents of fexec x-010 control card. ! 71: c the cx010 card is for overriding the program default i01 = 5 ! 72: c (unit number for card reader). ! 73: cx011 this card is replaced by contents of fexec x-011 control card. ! 74: c the cx011 card is for systems which require additional ! 75: c fortran statements for files associated with cx010 above. ! 76: c ! 77: cx020 this card is replaced by contents of fexec x-020 control card. ! 78: c the cx020 card is for overriding the program default i02 = 6 ! 79: c (unit number for printer). ! 80: cx021 this card is replaced by contents of fexec x-021 control card. ! 81: c the cx021 card is for systems which require additional ! 82: c fortran statements for files associated with cx020 above. ! 83: c ! 84: ivpass=0 ! 85: ivfail=0 ! 86: ivdele=0 ! 87: iczero=0 ! 88: c ! 89: c write page headers ! 90: write (i02,90000) ! 91: write (i02,90001) ! 92: write (i02,90002) ! 93: write (i02, 90002) ! 94: write (i02,90003) ! 95: write (i02,90002) ! 96: write (i02,90004) ! 97: write (i02,90002) ! 98: write (i02,90011) ! 99: write (i02,90002) ! 100: write (i02,90002) ! 101: write (i02,90005) ! 102: write (i02,90006) ! 103: write (i02,90002) ! 104: c ! 105: c test section ! 106: c arithmetic assignment statement ! 107: c ! 108: c test 462 through test 490 contain two integer constants and ! 109: c operator / in an arithmetic expression. the form tested is ! 110: c integer variable = integer constant/integer constant ! 111: c ! 112: c test 462 through test 469 - positive constants ! 113: c no truncation required ! 114: c ! 115: 4621 continue ! 116: ivtnum = 462 ! 117: c ! 118: c **** test 462 **** ! 119: c ! 120: if (iczero) 34620, 4620, 34620 ! 121: 4620 continue ! 122: ivcomp = 4/2 ! 123: go to 44620 ! 124: 34620 ivdele = ivdele + 1 ! 125: write (i02,80003) ivtnum ! 126: if (iczero) 44620, 4631, 44620 ! 127: 44620 if (ivcomp - 2) 24620,14620,24620 ! 128: 14620 ivpass = ivpass + 1 ! 129: write (i02,80001) ivtnum ! 130: go to 4631 ! 131: 24620 ivfail = ivfail + 1 ! 132: ivcorr = 2 ! 133: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 134: 4631 continue ! 135: ivtnum = 463 ! 136: c ! 137: c **** test 463 **** ! 138: c ! 139: if (iczero) 34630, 4630, 34630 ! 140: 4630 continue ! 141: ivcomp = 75 / 25 ! 142: go to 44630 ! 143: 34630 ivdele = ivdele + 1 ! 144: write (i02,80003) ivtnum ! 145: if (iczero) 44630, 4641, 44630 ! 146: 44630 if (ivcomp - 3) 24630,14630,24630 ! 147: 14630 ivpass = ivpass + 1 ! 148: write (i02,80001) ivtnum ! 149: go to 4641 ! 150: 24630 ivfail = ivfail + 1 ! 151: ivcorr = 3 ! 152: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 153: 4641 continue ! 154: ivtnum = 464 ! 155: c ! 156: c **** test 464 **** ! 157: c ! 158: if (iczero) 34640, 4640, 34640 ! 159: 4640 continue ! 160: ivcomp = 3575/143 ! 161: go to 44640 ! 162: 34640 ivdele = ivdele + 1 ! 163: write (i02,80003) ivtnum ! 164: if (iczero) 44640, 4651, 44640 ! 165: 44640 if (ivcomp - 25) 24640,14640,24640 ! 166: 14640 ivpass = ivpass + 1 ! 167: write (i02,80001) ivtnum ! 168: go to 4651 ! 169: 24640 ivfail = ivfail + 1 ! 170: ivcorr = 25 ! 171: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 172: 4651 continue ! 173: ivtnum = 465 ! 174: c ! 175: c **** test 465 **** ! 176: c ! 177: if (iczero) 34650, 4650, 34650 ! 178: 4650 continue ! 179: ivcomp = 3575/25 ! 180: go to 44650 ! 181: 34650 ivdele = ivdele + 1 ! 182: write (i02,80003) ivtnum ! 183: if (iczero) 44650, 4661, 44650 ! 184: 44650 if (ivcomp - 143) 24650,14650,24650 ! 185: 14650 ivpass = ivpass + 1 ! 186: write (i02,80001) ivtnum ! 187: go to 4661 ! 188: 24650 ivfail = ivfail + 1 ! 189: ivcorr = 143 ! 190: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 191: 4661 continue ! 192: ivtnum = 466 ! 193: c ! 194: c **** test 466 **** ! 195: c ! 196: if (iczero) 34660, 4660, 34660 ! 197: 4660 continue ! 198: ivcomp = 6170/1234 ! 199: go to 44660 ! 200: 34660 ivdele = ivdele + 1 ! 201: write (i02,80003) ivtnum ! 202: if (iczero) 44660, 4671, 44660 ! 203: 44660 if (ivcomp - 5) 24660,14660,24660 ! 204: 14660 ivpass = ivpass + 1 ! 205: write (i02,80001) ivtnum ! 206: go to 4671 ! 207: 24660 ivfail = ivfail + 1 ! 208: ivcorr = 5 ! 209: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 210: 4671 continue ! 211: ivtnum = 467 ! 212: c ! 213: c **** test 467 **** ! 214: c ! 215: if (iczero) 34670, 4670, 34670 ! 216: 4670 continue ! 217: ivcomp = 28600/8 ! 218: go to 44670 ! 219: 34670 ivdele = ivdele + 1 ! 220: write (i02,80003) ivtnum ! 221: if (iczero) 44670, 4681, 44670 ! 222: 44670 if (ivcomp - 3575) 24670,14670,24670 ! 223: 14670 ivpass = ivpass + 1 ! 224: write (i02,80001) ivtnum ! 225: go to 4681 ! 226: 24670 ivfail = ivfail + 1 ! 227: ivcorr = 3575 ! 228: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 229: 4681 continue ! 230: ivtnum = 468 ! 231: c ! 232: c **** test 468 **** ! 233: c ! 234: if (iczero) 34680, 4680, 34680 ! 235: 4680 continue ! 236: ivcomp = 32766/2 ! 237: go to 44680 ! 238: 34680 ivdele = ivdele + 1 ! 239: write (i02,80003) ivtnum ! 240: if (iczero) 44680, 4691, 44680 ! 241: 44680 if (ivcomp - 16383) 24680,14680,24680 ! 242: 14680 ivpass = ivpass + 1 ! 243: write (i02,80001) ivtnum ! 244: go to 4691 ! 245: 24680 ivfail = ivfail + 1 ! 246: ivcorr = 16383 ! 247: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 248: 4691 continue ! 249: ivtnum = 469 ! 250: c ! 251: c **** test 469 **** ! 252: c ! 253: if (iczero) 34690, 4690, 34690 ! 254: 4690 continue ! 255: ivcomp = 32767/1 ! 256: go to 44690 ! 257: 34690 ivdele = ivdele + 1 ! 258: write (i02,80003) ivtnum ! 259: if (iczero) 44690, 4701, 44690 ! 260: 44690 if (ivcomp - 32767) 24690,14690,24690 ! 261: 14690 ivpass = ivpass + 1 ! 262: write (i02,80001) ivtnum ! 263: go to 4701 ! 264: 24690 ivfail = ivfail + 1 ! 265: ivcorr = 32767 ! 266: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 267: c ! 268: c test 470 through test 478 - positive constants ! 269: c truncation required ! 270: c ! 271: 4701 continue ! 272: ivtnum = 470 ! 273: c ! 274: c **** test 470 **** ! 275: c ! 276: if (iczero) 34700, 4700, 34700 ! 277: 4700 continue ! 278: ivcomp = 5/2 ! 279: go to 44700 ! 280: 34700 ivdele = ivdele + 1 ! 281: write (i02,80003) ivtnum ! 282: if (iczero) 44700, 4711, 44700 ! 283: 44700 if (ivcomp - 2) 24700,14700,24700 ! 284: 14700 ivpass = ivpass + 1 ! 285: write (i02,80001) ivtnum ! 286: go to 4711 ! 287: 24700 ivfail = ivfail + 1 ! 288: ivcorr = 2 ! 289: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 290: 4711 continue ! 291: ivtnum = 471 ! 292: c ! 293: c **** test 471 **** ! 294: c ! 295: if (iczero) 34710, 4710, 34710 ! 296: 4710 continue ! 297: ivcomp = 2/3 ! 298: go to 44710 ! 299: 34710 ivdele = ivdele + 1 ! 300: write (i02,80003) ivtnum ! 301: if (iczero) 44710, 4721, 44710 ! 302: 44710 if (ivcomp - 0) 24710,14710,24710 ! 303: 14710 ivpass = ivpass + 1 ! 304: write (i02,80001) ivtnum ! 305: go to 4721 ! 306: 24710 ivfail = ivfail + 1 ! 307: ivcorr = 0 ! 308: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 309: 4721 continue ! 310: ivtnum = 472 ! 311: c ! 312: c **** test 472 **** ! 313: c ! 314: if (iczero) 34720, 4720, 34720 ! 315: 4720 continue ! 316: ivcomp = 80/15 ! 317: go to 44720 ! 318: 34720 ivdele = ivdele + 1 ! 319: write (i02,80003) ivtnum ! 320: if (iczero) 44720, 4731, 44720 ! 321: 44720 if (ivcomp - 5) 24720,14720,24720 ! 322: 14720 ivpass = ivpass + 1 ! 323: write (i02,80001) ivtnum ! 324: go to 4731 ! 325: 24720 ivfail = ivfail + 1 ! 326: ivcorr = 5 ! 327: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 328: 4731 continue ! 329: ivtnum = 473 ! 330: c ! 331: c **** test 473 **** ! 332: c ! 333: if (iczero) 34730, 4730, 34730 ! 334: 4730 continue ! 335: ivcomp = 959/120 ! 336: go to 44730 ! 337: 34730 ivdele = ivdele + 1 ! 338: write (i02,80003) ivtnum ! 339: if (iczero) 44730, 4741, 44730 ! 340: 44730 if (ivcomp - 7) 24730,14730,24730 ! 341: 14730 ivpass = ivpass + 1 ! 342: write (i02,80001) ivtnum ! 343: go to 4741 ! 344: 24730 ivfail = ivfail + 1 ! 345: ivcorr = 7 ! 346: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 347: 4741 continue ! 348: ivtnum = 474 ! 349: c ! 350: c **** test 474 **** ! 351: c ! 352: if (iczero) 34740, 4740, 34740 ! 353: 4740 continue ! 354: ivcomp = 959 / 12 ! 355: go to 44740 ! 356: 34740 ivdele = ivdele + 1 ! 357: write (i02,80003) ivtnum ! 358: if (iczero) 44740, 4751, 44740 ! 359: 44740 if (ivcomp - 79) 24740,14740,24740 ! 360: 14740 ivpass = ivpass + 1 ! 361: write (i02,80001) ivtnum ! 362: go to 4751 ! 363: 24740 ivfail = ivfail + 1 ! 364: ivcorr = 79 ! 365: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 366: 4751 continue ! 367: ivtnum = 475 ! 368: c ! 369: c **** test 475 **** ! 370: c ! 371: if (iczero) 34750, 4750, 34750 ! 372: 4750 continue ! 373: ivcomp = 959/6 ! 374: go to 44750 ! 375: 34750 ivdele = ivdele + 1 ! 376: write (i02,80003) ivtnum ! 377: if (iczero) 44750, 4761, 44750 ! 378: 44750 if (ivcomp - 159) 24750,14750,24750 ! 379: 14750 ivpass = ivpass + 1 ! 380: write (i02,80001) ivtnum ! 381: go to 4761 ! 382: 24750 ivfail = ivfail + 1 ! 383: ivcorr = 159 ! 384: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 385: 4761 continue ! 386: ivtnum = 476 ! 387: c ! 388: c **** test 476 **** ! 389: c ! 390: if (iczero) 34760, 4760, 34760 ! 391: 4760 continue ! 392: ivcomp = 28606/8 ! 393: go to 44760 ! 394: 34760 ivdele = ivdele + 1 ! 395: write (i02,80003) ivtnum ! 396: if (iczero) 44760, 4771, 44760 ! 397: 44760 if (ivcomp - 3575) 24760,14760,24760 ! 398: 14760 ivpass = ivpass + 1 ! 399: write (i02,80001) ivtnum ! 400: go to 4771 ! 401: 24760 ivfail = ivfail + 1 ! 402: ivcorr = 3575 ! 403: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 404: 4771 continue ! 405: ivtnum = 477 ! 406: c ! 407: c **** test 477 **** ! 408: c ! 409: if (iczero) 34770, 4770, 34770 ! 410: 4770 continue ! 411: ivcomp = 25603/2 ! 412: go to 44770 ! 413: 34770 ivdele = ivdele + 1 ! 414: write (i02,80003) ivtnum ! 415: if (iczero) 44770, 4781, 44770 ! 416: 44770 if (ivcomp - 12801) 24770,14770,24770 ! 417: 14770 ivpass = ivpass + 1 ! 418: write (i02,80001) ivtnum ! 419: go to 4781 ! 420: 24770 ivfail = ivfail + 1 ! 421: ivcorr = 12801 ! 422: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 423: 4781 continue ! 424: ivtnum = 478 ! 425: c ! 426: c **** test 478 **** ! 427: c ! 428: if (iczero) 34780, 4780, 34780 ! 429: 4780 continue ! 430: ivcomp = 25603/10354 ! 431: go to 44780 ! 432: 34780 ivdele = ivdele + 1 ! 433: write (i02,80003) ivtnum ! 434: if (iczero) 44780, 4791, 44780 ! 435: 44780 if (ivcomp - 2) 24780,14780,24780 ! 436: 14780 ivpass = ivpass + 1 ! 437: write (i02,80001) ivtnum ! 438: go to 4791 ! 439: 24780 ivfail = ivfail + 1 ! 440: ivcorr = 2 ! 441: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 442: c ! 443: c test 479 through test 482 - negative constants included ! 444: c no truncation required ! 445: c ! 446: 4791 continue ! 447: ivtnum = 479 ! 448: c ! 449: c **** test 479 **** ! 450: c ! 451: if (iczero) 34790, 4790, 34790 ! 452: 4790 continue ! 453: ivcomp = -4/2 ! 454: go to 44790 ! 455: 34790 ivdele = ivdele + 1 ! 456: write (i02,80003) ivtnum ! 457: if (iczero) 44790, 4801, 44790 ! 458: 44790 if (ivcomp + 2) 24790,14790,24790 ! 459: 14790 ivpass = ivpass + 1 ! 460: write (i02,80001) ivtnum ! 461: go to 4801 ! 462: 24790 ivfail = ivfail + 1 ! 463: ivcorr = -2 ! 464: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 465: 4801 continue ! 466: ivtnum = 480 ! 467: c ! 468: c **** test 480 **** ! 469: c ! 470: if (iczero) 34800, 4800, 34800 ! 471: 4800 continue ! 472: ivcomp = 75 / (-25) ! 473: go to 44800 ! 474: 34800 ivdele = ivdele + 1 ! 475: write (i02,80003) ivtnum ! 476: if (iczero) 44800, 4811, 44800 ! 477: 44800 if (ivcomp + 3) 24800,14800,24800 ! 478: 14800 ivpass = ivpass + 1 ! 479: write (i02,80001) ivtnum ! 480: go to 4811 ! 481: 24800 ivfail = ivfail + 1 ! 482: ivcorr = -3 ! 483: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 484: 4811 continue ! 485: ivtnum = 481 ! 486: c ! 487: c **** test 481 **** ! 488: c ! 489: if (iczero) 34810, 4810, 34810 ! 490: 4810 continue ! 491: ivcomp= (-6170) / (-1234) ! 492: go to 44810 ! 493: 34810 ivdele = ivdele + 1 ! 494: write (i02,80003) ivtnum ! 495: if (iczero) 44810, 4821, 44810 ! 496: 44810 if (ivcomp - 5) 24810,14810,24810 ! 497: 14810 ivpass = ivpass + 1 ! 498: write (i02,80001) ivtnum ! 499: go to 4821 ! 500: 24810 ivfail = ivfail + 1 ! 501: ivcorr = 5 ! 502: ! 503: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 504: 4821 continue ! 505: ivtnum = 482 ! 506: c ! 507: c **** test 482 **** ! 508: c ! 509: if (iczero) 34820, 4820, 34820 ! 510: 4820 continue ! 511: ivcomp = -32766/(-2) ! 512: go to 44820 ! 513: 34820 ivdele = ivdele + 1 ! 514: write (i02,80003) ivtnum ! 515: if (iczero) 44820, 4831, 44820 ! 516: 44820 if (ivcomp - 16383) 24820,14820,24820 ! 517: 14820 ivpass = ivpass + 1 ! 518: write (i02,80001) ivtnum ! 519: go to 4831 ! 520: 24820 ivfail = ivfail + 1 ! 521: ivcorr = 16383 ! 522: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 523: c ! 524: c test 483 through test 490 - negative constants included ! 525: c truncation required ! 526: c ! 527: 4831 continue ! 528: ivtnum = 483 ! 529: c ! 530: c **** test 483 **** ! 531: c ! 532: if (iczero) 34830, 4830, 34830 ! 533: 4830 continue ! 534: ivcomp = -5/2 ! 535: go to 44830 ! 536: 34830 ivdele = ivdele + 1 ! 537: write (i02,80003) ivtnum ! 538: if (iczero) 44830, 4841, 44830 ! 539: 44830 if (ivcomp +2) 24830,14830,24830 ! 540: 14830 ivpass = ivpass + 1 ! 541: write (i02,80001) ivtnum ! 542: go to 4841 ! 543: 24830 ivfail = ivfail + 1 ! 544: ivcorr = -2 ! 545: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 546: 4841 continue ! 547: ivtnum = 484 ! 548: c ! 549: c **** test 484 **** ! 550: c ! 551: if (iczero) 34840, 4840, 34840 ! 552: 4840 continue ! 553: ivcomp = -2/3 ! 554: go to 44840 ! 555: 34840 ivdele = ivdele + 1 ! 556: write (i02,80003) ivtnum ! 557: if (iczero) 44840, 4851, 44840 ! 558: 44840 if (ivcomp) 24840,14840,24840 ! 559: 14840 ivpass = ivpass + 1 ! 560: write (i02,80001) ivtnum ! 561: go to 4851 ! 562: 24840 ivfail = ivfail + 1 ! 563: ivcorr = 0 ! 564: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 565: 4851 continue ! 566: ivtnum = 485 ! 567: c ! 568: c **** test 485 **** ! 569: c ! 570: if (iczero) 34850, 4850, 34850 ! 571: 4850 continue ! 572: ivcomp = 80/(-15) ! 573: go to 44850 ! 574: 34850 ivdele = ivdele + 1 ! 575: write (i02,80003) ivtnum ! 576: if (iczero) 44850, 4861, 44850 ! 577: 44850 if (ivcomp +5) 24850,14850,24850 ! 578: 14850 ivpass = ivpass + 1 ! 579: write (i02,80001) ivtnum ! 580: go to 4861 ! 581: 24850 ivfail = ivfail + 1 ! 582: ivcorr = -5 ! 583: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 584: 4861 continue ! 585: ivtnum = 486 ! 586: c ! 587: c **** test 486 **** ! 588: c ! 589: if (iczero) 34860, 4860, 34860 ! 590: 4860 continue ! 591: ivcomp = -959/(-120) ! 592: go to 44860 ! 593: 34860 ivdele = ivdele + 1 ! 594: write (i02,80003) ivtnum ! 595: if (iczero) 44860, 4871, 44860 ! 596: 44860 if (ivcomp - 7) 24860,14860,24860 ! 597: 14860 ivpass = ivpass + 1 ! 598: write (i02,80001) ivtnum ! 599: go to 4871 ! 600: 24860 ivfail = ivfail + 1 ! 601: ivcorr = 7 ! 602: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 603: 4871 continue ! 604: ivtnum = 487 ! 605: c ! 606: c **** test 487 **** ! 607: c ! 608: if (iczero) 34870, 4870, 34870 ! 609: 4870 continue ! 610: ivcomp = -959/6 ! 611: go to 44870 ! 612: 34870 ivdele = ivdele + 1 ! 613: write (i02,80003) ivtnum ! 614: if (iczero) 44870, 4881, 44870 ! 615: 44870 if (ivcomp + 159) 24870,14870,24870 ! 616: 14870 ivpass = ivpass + 1 ! 617: write (i02,80001) ivtnum ! 618: go to 4881 ! 619: 24870 ivfail = ivfail + 1 ! 620: ivcorr = -159 ! 621: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 622: 4881 continue ! 623: ivtnum = 488 ! 624: c ! 625: c **** test 488 **** ! 626: c ! 627: if (iczero) 34880, 4880, 34880 ! 628: 4880 continue ! 629: ivcomp = -28606/(-8) ! 630: go to 44880 ! 631: 34880 ivdele = ivdele + 1 ! 632: write (i02,80003) ivtnum ! 633: if (iczero) 44880, 4891, 44880 ! 634: 44880 if (ivcomp - 3575) 24880,14880,24880 ! 635: 14880 ivpass = ivpass + 1 ! 636: write (i02,80001) ivtnum ! 637: go to 4891 ! 638: 24880 ivfail = ivfail + 1 ! 639: ivcorr = 3575 ! 640: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 641: 4891 continue ! 642: ivtnum = 489 ! 643: c ! 644: c **** test 489 **** ! 645: c ! 646: if (iczero) 34890, 4890, 34890 ! 647: 4890 continue ! 648: ivcomp = -25603/2 ! 649: go to 44890 ! 650: 34890 ivdele = ivdele + 1 ! 651: write (i02,80003) ivtnum ! 652: if (iczero) 44890, 4901, 44890 ! 653: 44890 if (ivcomp + 12801) 24890,14890,24890 ! 654: 14890 ivpass = ivpass + 1 ! 655: write (i02,80001) ivtnum ! 656: go to 4901 ! 657: 24890 ivfail = ivfail + 1 ! 658: ivcorr = -12801 ! 659: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 660: 4901 continue ! 661: ivtnum = 490 ! 662: c ! 663: c **** test 490 **** ! 664: c ! 665: if (iczero) 34900, 4900, 34900 ! 666: 4900 continue ! 667: ivcomp = -25603/(-10354) ! 668: go to 44900 ! 669: 34900 ivdele = ivdele + 1 ! 670: write (i02,80003) ivtnum ! 671: if (iczero) 44900, 4911, 44900 ! 672: 44900 if (ivcomp - 2) 24900,14900,24900 ! 673: 14900 ivpass = ivpass + 1 ! 674: write (i02,80001) ivtnum ! 675: go to 4911 ! 676: 24900 ivfail = ivfail + 1 ! 677: ivcorr = 2 ! 678: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 679: c ! 680: c **** end of tests **** ! 681: 4911 continue ! 682: c ! 683: c write page footings and run summaries ! 684: 99999 continue ! 685: write (i02,90002) ! 686: write (i02,90006) ! 687: write (i02,90002) ! 688: write (i02,90002) ! 689: write (i02,90007) ! 690: write (i02,90002) ! 691: write (i02,90008) ivfail ! 692: write (i02,90009) ivpass ! 693: write (i02,90010) ivdele ! 694: c ! 695: c ! 696: c terminate routine execution ! 697: stop ! 698: c ! 699: c format statements for page headers ! 700: 90000 format (1h1) ! 701: 90002 format (1h ) ! 702: 90001 format (1h ,10x,34hfortran compiler validation system) ! 703: 90003 format (1h ,21x,11hversion 1.0) ! 704: 90004 format (1h ,10x,38hfor official use only - copyright 1978) ! 705: 90005 format (1h ,5x,4htest,5x,9hpass/fail, 5x,8hcomputed,8x,7hcorrect) ! 706: 90006 format (1h ,5x,46h----------------------------------------------) ! 707: 90011 format (1h ,18x,17hsubset level test) ! 708: c ! 709: c format statements for run summaries ! 710: 90008 format (1h ,15x,i5,19h errors encountered) ! 711: 90009 format (1h ,15x,i5,13h tests passed) ! 712: 90010 format (1h ,15x,i5,14h tests deleted) ! 713: c ! 714: c format statements for test results ! 715: 80001 format (1h ,4x,i5,7x,4hpass) ! 716: 80002 format (1h ,4x,i5,7x,4hfail) ! 717: 80003 format (1h ,4x,i5,7x,7hdeleted) ! 718: 80004 format (1h ,4x,i5,7x,4hfail,10x,i6,9x,i6) ! 719: 80005 format (1h ,4x,i5,7x,4hfail,4x,e12.5,3x,e12.5) ! 720: c ! 721: 90007 format (1h ,20x,20hend of program fm036) ! 722: end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.