|
|
1.1 ! root 1: c comment section. ! 2: c ! 3: c fm030 ! 4: c ! 5: c this routine tests arithmetic assignment 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 -, integer constants and integer variables. ! 10: c some of the tests use parentheses to group elements in the ! 11: c arithmetic expression. ! 12: c ! 13: c there are tests where the arithmetic expression contains ! 14: c (1) integer constant - integer constant ! 15: c (2) integer constant - integer constant - integer constant ! 16: c (3) same as (2) but with parentheses to group elements ! 17: c (4) integer variable - integer constant ! 18: c integer constant - integer variable ! 19: c ! 20: c references ! 21: c american national standard programming language fortran, ! 22: c x3.9-1978 ! 23: c ! 24: c section 4.3, integer type ! 25: c section 4.3.1, integer constant ! 26: c section 6.1, arithmetic expressions ! 27: c section 10.1, arithmetic assignment statement ! 28: c ! 29: c ! 30: c ********************************************************** ! 31: c ! 32: c a compiler validation system for the fortran language ! 33: c based on specifications as defined in american national standard ! 34: c programming language fortran x3.9-1978, has been developed by the ! 35: c federal cobol compiler testing service. the fortran compiler ! 36: c validation system (fcvs) consists of audit routines, their related ! 37: c data, and an executive system. each audit routine is a fortran ! 38: c program, subprogram or function which includes tests of specific ! 39: c language elements and supporting procedures indicating the result ! 40: c of executing these tests. ! 41: c ! 42: c this particular program/subprogram/function contains features ! 43: c found only in the subset as defined in x3.9-1978. ! 44: c ! 45: c suggestions and comments should be forwarded to - ! 46: c ! 47: c department of the navy ! 48: c federal cobol compiler testing service ! 49: c washington, d.c. 20376 ! 50: c ! 51: c ********************************************************** ! 52: c ! 53: c ! 54: c ! 55: c initialization section ! 56: c ! 57: c initialize constants ! 58: c ************** ! 59: c i01 contains the logical unit number for the card reader. ! 60: i01 = 5 ! 61: c i02 contains the logical unit number for the printer. ! 62: i02 = 6 ! 63: c system environment section ! 64: c ! 65: cx010 this card is replaced by contents of fexec x-010 control card. ! 66: c the cx010 card is for overriding the program default i01 = 5 ! 67: c (unit number for card reader). ! 68: cx011 this card is replaced by contents of fexec x-011 control card. ! 69: c the cx011 card is for systems which require additional ! 70: c fortran statements for files associated with cx010 above. ! 71: c ! 72: cx020 this card is replaced by contents of fexec x-020 control card. ! 73: c the cx020 card is for overriding the program default i02 = 6 ! 74: c (unit number for printer). ! 75: cx021 this card is replaced by contents of fexec x-021 control card. ! 76: c the cx021 card is for systems which require additional ! 77: c fortran statements for files associated with cx020 above. ! 78: c ! 79: ivpass=0 ! 80: ivfail=0 ! 81: ivdele=0 ! 82: iczero=0 ! 83: c ! 84: c write page headers ! 85: write (i02,90000) ! 86: write (i02,90001) ! 87: write (i02,90002) ! 88: write (i02, 90002) ! 89: write (i02,90003) ! 90: write (i02,90002) ! 91: write (i02,90004) ! 92: write (i02,90002) ! 93: write (i02,90011) ! 94: write (i02,90002) ! 95: write (i02,90002) ! 96: write (i02,90005) ! 97: write (i02,90006) ! 98: write (i02,90002) ! 99: c test section ! 100: c ! 101: c arithmetic assignment statement ! 102: c ! 103: c test 265 through test 270 contain two integer constants and ! 104: c operator - in an arithmetic expression. the form tested is ! 105: c integer variable = integer constant - integer constant ! 106: c ! 107: 2651 continue ! 108: ivtnum = 265 ! 109: c ! 110: c **** test 265 **** ! 111: c ! 112: if (iczero) 32650, 2650, 32650 ! 113: 2650 continue ! 114: ivcomp = 3-2 ! 115: go to 42650 ! 116: 32650 ivdele = ivdele + 1 ! 117: write (i02,80003) ivtnum ! 118: if (iczero) 42650, 2661, 42650 ! 119: 42650 if (ivcomp - 1) 22650,12650,22650 ! 120: 12650 ivpass = ivpass + 1 ! 121: write (i02,80001) ivtnum ! 122: go to 2661 ! 123: 22650 ivfail = ivfail + 1 ! 124: ivcorr = 1 ! 125: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 126: 2661 continue ! 127: ivtnum = 266 ! 128: c ! 129: c **** test 266 **** ! 130: c ! 131: if (iczero) 32660, 2660, 32660 ! 132: 2660 continue ! 133: ivcomp = 51 - 52 ! 134: go to 42660 ! 135: 32660 ivdele = ivdele + 1 ! 136: write (i02,80003) ivtnum ! 137: if (iczero) 42660, 2671, 42660 ! 138: 42660 if (ivcomp +1) 22660,12660,22660 ! 139: 12660 ivpass = ivpass + 1 ! 140: write (i02,80001) ivtnum ! 141: go to 2671 ! 142: 22660 ivfail = ivfail + 1 ! 143: ivcorr = -1 ! 144: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 145: 2671 continue ! 146: ivtnum = 267 ! 147: c ! 148: c **** test 267 *** ! 149: c ! 150: if (iczero) 32670, 2670, 32670 ! 151: 2670 continue ! 152: ivcomp = 865 - 189 ! 153: go to 42670 ! 154: 32670 ivdele = ivdele + 1 ! 155: write (i02,80003) ivtnum ! 156: if (iczero) 42670, 2681, 42670 ! 157: 42670 if (ivcomp -676) 22670,12670,22670 ! 158: 12670 ivpass = ivpass + 1 ! 159: write (i02,80001) ivtnum ! 160: go to 2681 ! 161: 22670 ivfail = ivfail + 1 ! 162: ivcorr = 676 ! 163: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 164: 2681 continue ! 165: ivtnum = 268 ! 166: c ! 167: c **** test 268 **** ! 168: c ! 169: if (iczero) 32680, 2680, 32680 ! 170: 2680 continue ! 171: ivcomp =1358-9359 ! 172: go to 42680 ! 173: 32680 ivdele = ivdele + 1 ! 174: write (i02,80003) ivtnum ! 175: if (iczero) 42680, 2691, 42680 ! 176: 42680 if (ivcomp+8001) 22680,12680,22680 ! 177: 12680 ivpass = ivpass + 1 ! 178: write (i02,80001) ivtnum ! 179: go to 2691 ! 180: 22680 ivfail = ivfail + 1 ! 181: ivcorr = -8001 ! 182: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 183: 2691 continue ! 184: ivtnum = 269 ! 185: c ! 186: c **** test 269 **** ! 187: c ! 188: if (iczero) 32690, 2690, 32690 ! 189: 2690 continue ! 190: ivcomp =21113-10001 ! 191: go to 42690 ! 192: 32690 ivdele = ivdele + 1 ! 193: write (i02,80003) ivtnum ! 194: if (iczero) 42690, 2701, 42690 ! 195: 42690 if (ivcomp-11112) 22690,12690,22690 ! 196: 12690 ivpass = ivpass + 1 ! 197: write (i02,80001) ivtnum ! 198: go to 2701 ! 199: 22690 ivfail = ivfail + 1 ! 200: ivcorr=11112 ! 201: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 202: 2701 continue ! 203: ivtnum = 270 ! 204: c ! 205: c **** test 270 **** ! 206: c ! 207: if (iczero) 32700, 2700, 32700 ! 208: 2700 continue ! 209: ivcomp = 32767-1 ! 210: go to 42700 ! 211: 32700 ivdele = ivdele + 1 ! 212: write (i02,80003) ivtnum ! 213: if (iczero) 42700, 2711, 42700 ! 214: 42700 if (ivcomp -32766) 22700,12700,22700 ! 215: 12700 ivpass = ivpass + 1 ! 216: write (i02,80001) ivtnum ! 217: go to 2711 ! 218: 22700 ivfail = ivfail + 1 ! 219: ivcorr = 32766 ! 220: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 221: c ! 222: c test 271 through test 274 contain three integer constants ! 223: c and operator - in an arithmetic expression. the form tested is ! 224: c iv = ic - ic - ic ! 225: c ! 226: 2711 continue ! 227: ivtnum = 271 ! 228: c ! 229: c **** test 271 **** ! 230: c ! 231: if (iczero) 32710, 2710, 32710 ! 232: 2710 continue ! 233: ivcomp=9-4-3 ! 234: go to 42710 ! 235: 32710 ivdele = ivdele + 1 ! 236: write (i02,80003) ivtnum ! 237: if (iczero) 42710, 2721, 42710 ! 238: 42710 if (ivcomp -2) 22710,12710,22710 ! 239: 12710 ivpass = ivpass + 1 ! 240: write (i02,80001) ivtnum ! 241: go to 2721 ! 242: 22710 ivfail = ivfail + 1 ! 243: ivcorr =2 ! 244: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 245: 2721 continue ! 246: ivtnum = 272 ! 247: c ! 248: c **** test 272 **** ! 249: c ! 250: if (iczero) 32720, 2720, 32720 ! 251: 2720 continue ! 252: ivcomp = 51-52-53 ! 253: go to 42720 ! 254: 32720 ivdele = ivdele + 1 ! 255: write (i02,80003) ivtnum ! 256: if (iczero) 42720, 2731, 42720 ! 257: 42720 if (ivcomp +54) 22720,12720,22720 ! 258: 12720 ivpass = ivpass + 1 ! 259: write (i02,80001) ivtnum ! 260: go to 2731 ! 261: 22720 ivfail = ivfail + 1 ! 262: ivcorr = -54 ! 263: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 264: 2731 continue ! 265: ivtnum = 273 ! 266: c ! 267: c **** test 273 **** ! 268: c ! 269: if (iczero) 32730, 2730, 32730 ! 270: 2730 continue ! 271: ivcomp = 966 -676 -189 ! 272: go to 42730 ! 273: 32730 ivdele = ivdele + 1 ! 274: write (i02,80003) ivtnum ! 275: if (iczero) 42730, 2741, 42730 ! 276: 42730 if (ivcomp -101) 22730,12730,22730 ! 277: 12730 ivpass = ivpass + 1 ! 278: write (i02,80001) ivtnum ! 279: go to 2741 ! 280: 22730 ivfail = ivfail + 1 ! 281: ivcorr = 101 ! 282: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 283: 2741 continue ! 284: ivtnum = 274 ! 285: c ! 286: c **** test 274 **** ! 287: c ! 288: if (iczero) 32740, 2740, 32740 ! 289: 2740 continue ! 290: ivcomp = 1358-8001-2188 ! 291: go to 42740 ! 292: 32740 ivdele = ivdele + 1 ! 293: write (i02,80003) ivtnum ! 294: if (iczero) 42740, 2751, 42740 ! 295: 42740 if (ivcomp + 8831) 22740,12740,22740 ! 296: 12740 ivpass = ivpass + 1 ! 297: write (i02,80001) ivtnum ! 298: go to 2751 ! 299: 22740 ivfail = ivfail + 1 ! 300: ivcorr = -8831 ! 301: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 302: c ! 303: c test 275 through test 282 are the same as tests 271-274 except ! 304: c parentheses are used to group the constants. ! 305: c ! 306: 2751 continue ! 307: ivtnum = 275 ! 308: c ! 309: c **** test 275 **** ! 310: c ! 311: if (iczero) 32750, 2750, 32750 ! 312: 2750 continue ! 313: ivcomp =(9-4)-3 ! 314: go to 42750 ! 315: 32750 ivdele = ivdele + 1 ! 316: write (i02,80003) ivtnum ! 317: if (iczero) 42750, 2761, 42750 ! 318: 42750 if (ivcomp -2) 22750,12750,22750 ! 319: 12750 ivpass = ivpass + 1 ! 320: write (i02,80001) ivtnum ! 321: go to 2761 ! 322: 22750 ivfail = ivfail + 1 ! 323: ivcorr = 2 ! 324: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 325: 2761 continue ! 326: ivtnum = 276 ! 327: c ! 328: c **** test 276 **** ! 329: c ! 330: if (iczero) 32760, 2760, 32760 ! 331: 2760 continue ! 332: ivcomp =9-(4-3) ! 333: go to 42760 ! 334: 32760 ivdele = ivdele + 1 ! 335: write (i02,80003) ivtnum ! 336: if (iczero) 42760, 2771, 42760 ! 337: 42760 if (ivcomp -8) 22760,12760,22760 ! 338: 12760 ivpass = ivpass + 1 ! 339: write (i02,80001) ivtnum ! 340: go to 2771 ! 341: 22760 ivfail = ivfail + 1 ! 342: ivcorr =8 ! 343: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 344: 2771 continue ! 345: ivtnum = 277 ! 346: c ! 347: c **** test 277 **** ! 348: c ! 349: if (iczero) 32770, 2770, 32770 ! 350: 2770 continue ! 351: ivcomp =(51-52)-53 ! 352: go to 42770 ! 353: 32770 ivdele = ivdele + 1 ! 354: write (i02,80003) ivtnum ! 355: if (iczero) 42770, 2781, 42770 ! 356: 42770 if (ivcomp +54) 22770,12770,22770 ! 357: 12770 ivpass = ivpass + 1 ! 358: write (i02,80001) ivtnum ! 359: go to 2781 ! 360: 22770 ivfail = ivfail + 1 ! 361: ivcorr = -54 ! 362: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 363: 2781 continue ! 364: ivtnum = 278 ! 365: c ! 366: c **** test 278 **** ! 367: c ! 368: if (iczero) 32780, 2780, 32780 ! 369: 2780 continue ! 370: ivcomp=51-(52-53) ! 371: go to 42780 ! 372: 32780 ivdele = ivdele + 1 ! 373: write (i02,80003) ivtnum ! 374: if (iczero) 42780, 2791, 42780 ! 375: 42780 if (ivcomp-52) 22780,12780,22780 ! 376: 12780 ivpass = ivpass + 1 ! 377: write (i02,80001) ivtnum ! 378: go to 2791 ! 379: 22780 ivfail = ivfail + 1 ! 380: ivcorr = 52 ! 381: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 382: 2791 continue ! 383: ivtnum = 279 ! 384: c ! 385: c **** test 279 **** ! 386: c ! 387: if (iczero) 32790, 2790, 32790 ! 388: 2790 continue ! 389: ivcomp =(966-676)-189 ! 390: go to 42790 ! 391: 32790 ivdele = ivdele + 1 ! 392: write (i02,80003) ivtnum ! 393: if (iczero) 42790, 2801, 42790 ! 394: 42790 if (ivcomp - 101) 22790,12790,22790 ! 395: 12790 ivpass = ivpass + 1 ! 396: write (i02,80001) ivtnum ! 397: go to 2801 ! 398: 22790 ivfail = ivfail + 1 ! 399: ivcorr = 101 ! 400: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 401: 2801 continue ! 402: ivtnum = 280 ! 403: c ! 404: c **** test 280 **** ! 405: c ! 406: if (iczero) 32800, 2800, 32800 ! 407: 2800 continue ! 408: ivcomp =966-(676-189) ! 409: go to 42800 ! 410: 32800 ivdele = ivdele + 1 ! 411: write (i02,80003) ivtnum ! 412: if (iczero) 42800, 2811, 42800 ! 413: 42800 if (ivcomp - 479) 22800,12800,22800 ! 414: 12800 ivpass = ivpass + 1 ! 415: write (i02,80001) ivtnum ! 416: go to 2811 ! 417: 22800 ivfail = ivfail + 1 ! 418: ivcorr = 479 ! 419: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 420: 2811 continue ! 421: ivtnum = 281 ! 422: c ! 423: c **** test 281 **** ! 424: c ! 425: if (iczero) 32810, 2810, 32810 ! 426: 2810 continue ! 427: ivcomp = (1358-8001)-2188 ! 428: go to 42810 ! 429: 32810 ivdele = ivdele + 1 ! 430: write (i02,80003) ivtnum ! 431: if (iczero) 42810, 2821, 42810 ! 432: 42810 if (ivcomp + 8831) 22810,12810,22810 ! 433: 12810 ivpass = ivpass + 1 ! 434: write (i02,80001) ivtnum ! 435: go to 2821 ! 436: 22810 ivfail = ivfail + 1 ! 437: ivcorr = -8831 ! 438: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 439: 2821 continue ! 440: ivtnum = 282 ! 441: c ! 442: c **** test 282 **** ! 443: c ! 444: if (iczero) 32820, 2820, 32820 ! 445: 2820 continue ! 446: ivcomp = 1358-(8001-2188) ! 447: go to 42820 ! 448: 32820 ivdele = ivdele + 1 ! 449: write (i02,80003) ivtnum ! 450: if (iczero) 42820, 2831, 42820 ! 451: 42820 if (ivcomp + 4455) 22820,12820,22820 ! 452: 12820 ivpass = ivpass + 1 ! 453: write (i02,80001) ivtnum ! 454: go to 2831 ! 455: 22820 ivfail = ivfail + 1 ! 456: ivcorr = -4455 ! 457: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 458: c ! 459: c test 283 through test 299 contain integer variable, integer ! 460: c constant and operator - in arithmetic expression. the integer ! 461: c variable contains both positive and negative values. ! 462: c the forms tested are ! 463: c integer variable = integer variable - integer constant ! 464: c integer variable = integer constant - integer variable ! 465: c ! 466: 2831 continue ! 467: ivtnum = 283 ! 468: c ! 469: c **** test 283 **** ! 470: c ! 471: if (iczero) 32830, 2830, 32830 ! 472: 2830 continue ! 473: ivon01 = 3 ! 474: ivcomp = ivon01 - 2 ! 475: go to 42830 ! 476: 32830 ivdele = ivdele + 1 ! 477: write (i02,80003) ivtnum ! 478: if (iczero) 42830, 2841, 42830 ! 479: 42830 if (ivcomp - 1) 22830,12830,22830 ! 480: 12830 ivpass = ivpass + 1 ! 481: write (i02,80001) ivtnum ! 482: go to 2841 ! 483: 22830 ivfail = ivfail + 1 ! 484: ivcorr = 1 ! 485: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 486: 2841 continue ! 487: ivtnum = 284 ! 488: c ! 489: c **** test 284 **** ! 490: c ! 491: if (iczero) 32840, 2840, 32840 ! 492: 2840 continue ! 493: ivon01 = 2 ! 494: ivcomp = ivon01 -3 ! 495: go to 42840 ! 496: 32840 ivdele = ivdele + 1 ! 497: write (i02,80003) ivtnum ! 498: if (iczero) 42840, 2851, 42840 ! 499: 42840 if (ivcomp +1) 22840,12840,22840 ! 500: 12840 ivpass = ivpass + 1 ! 501: write (i02,80001) ivtnum ! 502: go to 2851 ! 503: 22840 ivfail = ivfail + 1 ! 504: ivcorr = -1 ! 505: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 506: 2851 continue ! 507: ivtnum = 285 ! 508: c ! 509: c **** test 285 **** ! 510: c ! 511: if (iczero) 32850, 2850, 32850 ! 512: 2850 continue ! 513: ivon01 =-3 ! 514: ivcomp = ivon01 -2 ! 515: go to 42850 ! 516: 32850 ivdele = ivdele + 1 ! 517: write (i02,80003) ivtnum ! 518: if (iczero) 42850, 2861, 42850 ! 519: 42850 if (ivcomp +5) 22850,12850,22850 ! 520: 12850 ivpass = ivpass + 1 ! 521: write (i02,80001) ivtnum ! 522: go to 2861 ! 523: 22850 ivfail = ivfail + 1 ! 524: ivcorr =-5 ! 525: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 526: 2861 continue ! 527: ivtnum = 286 ! 528: c ! 529: c **** test 286 **** ! 530: c ! 531: if (iczero) 32860, 2860, 32860 ! 532: 2860 continue ! 533: ivon02 =2 ! 534: ivcomp = 3 - ivon02 ! 535: go to 42860 ! 536: 32860 ivdele = ivdele + 1 ! 537: write (i02,80003) ivtnum ! 538: if (iczero) 42860, 2871, 42860 ! 539: 42860 if (ivcomp -1) 22860,12860,22860 ! 540: 12860 ivpass = ivpass + 1 ! 541: write (i02,80001) ivtnum ! 542: go to 2871 ! 543: 22860 ivfail = ivfail + 1 ! 544: ivcorr = 1 ! 545: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 546: 2871 continue ! 547: ivtnum = 287 ! 548: c ! 549: c **** test 287 **** ! 550: c ! 551: if (iczero) 32870, 2870, 32870 ! 552: 2870 continue ! 553: ivon02 =3 ! 554: ivcomp = 2 -ivon02 ! 555: go to 42870 ! 556: 32870 ivdele = ivdele + 1 ! 557: write (i02,80003) ivtnum ! 558: if (iczero) 42870, 2881, 42870 ! 559: 42870 if (ivcomp +1) 22870,12870,22870 ! 560: 12870 ivpass = ivpass + 1 ! 561: write (i02,80001) ivtnum ! 562: go to 2881 ! 563: 22870 ivfail = ivfail + 1 ! 564: ivcorr =-1 ! 565: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 566: 2881 continue ! 567: ivtnum = 288 ! 568: c ! 569: c **** test 288 **** ! 570: c ! 571: if (iczero) 32880, 2880, 32880 ! 572: 2880 continue ! 573: ivon02 = -2 ! 574: ivcomp = 3 - ivon02 ! 575: go to 42880 ! 576: 32880 ivdele = ivdele + 1 ! 577: write (i02,80003) ivtnum ! 578: if (iczero) 42880, 2891, 42880 ! 579: 42880 if (ivcomp -5) 22880,12880,22880 ! 580: 12880 ivpass = ivpass + 1 ! 581: write (i02,80001) ivtnum ! 582: go to 2891 ! 583: 22880 ivfail = ivfail + 1 ! 584: ivcorr =5 ! 585: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 586: 2891 continue ! 587: ivtnum = 289 ! 588: c ! 589: c **** test 289 **** ! 590: c ! 591: if (iczero) 32890, 2890, 32890 ! 592: 2890 continue ! 593: ivon01 =51 ! 594: ivcomp = ivon01 - 52 ! 595: go to 42890 ! 596: 32890 ivdele = ivdele + 1 ! 597: write (i02,80003) ivtnum ! 598: if (iczero) 42890, 2901, 42890 ! 599: 42890 if (ivcomp + 1) 22890,12890,22890 ! 600: 12890 ivpass = ivpass + 1 ! 601: write (i02,80001) ivtnum ! 602: go to 2901 ! 603: 22890 ivfail = ivfail + 1 ! 604: ivcorr = -1 ! 605: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 606: 2901 continue ! 607: ivtnum = 290 ! 608: c ! 609: c **** test 290 **** ! 610: c ! 611: if (iczero) 32900, 2900, 32900 ! 612: 2900 continue ! 613: ivon01 =51 ! 614: ivcomp = ivon01 -51 ! 615: go to 42900 ! 616: 32900 ivdele = ivdele + 1 ! 617: write (i02,80003) ivtnum ! 618: if (iczero) 42900, 2911, 42900 ! 619: 42900 if (ivcomp) 22900,12900,22900 ! 620: 12900 ivpass = ivpass + 1 ! 621: write (i02,80001) ivtnum ! 622: go to 2911 ! 623: 22900 ivfail = ivfail + 1 ! 624: ivcorr =0 ! 625: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 626: 2911 continue ! 627: ivtnum = 291 ! 628: c ! 629: c **** test 291 **** ! 630: c ! 631: if (iczero) 32910, 2910, 32910 ! 632: 2910 continue ! 633: ivon01 =53 ! 634: ivcomp =ivon01 -52 ! 635: go to 42910 ! 636: 32910 ivdele = ivdele + 1 ! 637: write (i02,80003) ivtnum ! 638: if (iczero) 42910, 2921, 42910 ! 639: 42910 if (ivcomp -1) 22910,12910,22910 ! 640: 12910 ivpass = ivpass + 1 ! 641: write (i02,80001) ivtnum ! 642: go to 2921 ! 643: 22910 ivfail = ivfail + 1 ! 644: ivcorr = 1 ! 645: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 646: 2921 continue ! 647: ivtnum = 292 ! 648: c ! 649: c **** test 292 **** ! 650: c ! 651: if (iczero) 32920, 2920, 32920 ! 652: 2920 continue ! 653: ivon02 = 676 ! 654: ivcomp = 189 - ivon02 ! 655: go to 42920 ! 656: 32920 ivdele = ivdele + 1 ! 657: write (i02,80003) ivtnum ! 658: if (iczero) 42920, 2931, 42920 ! 659: 42920 if (ivcomp + 487) 22920,12920,22920 ! 660: 12920 ivpass = ivpass + 1 ! 661: write (i02,80001) ivtnum ! 662: go to 2931 ! 663: 22920 ivfail = ivfail + 1 ! 664: ivcorr = -487 ! 665: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 666: 2931 continue ! 667: ivtnum = 293 ! 668: c ! 669: c **** test 293 **** ! 670: c ! 671: if (iczero) 32930, 2930, 32930 ! 672: 2930 continue ! 673: ivon02 = -676 ! 674: ivcomp = 189 - ivon02 ! 675: go to 42930 ! 676: 32930 ivdele = ivdele + 1 ! 677: write (i02,80003) ivtnum ! 678: if (iczero) 42930, 2941, 42930 ! 679: 42930 if (ivcomp - 865) 22930,12930,22930 ! 680: 12930 ivpass = ivpass + 1 ! 681: write (i02,80001) ivtnum ! 682: go to 2941 ! 683: 22930 ivfail = ivfail + 1 ! 684: ivcorr = 865 ! 685: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 686: 2941 continue ! 687: ivtnum = 294 ! 688: c ! 689: c **** test 294 **** ! 690: c ! 691: if (iczero) 32940, 2940, 32940 ! 692: 2940 continue ! 693: ivon01 = 1358 ! 694: ivcomp = ivon01 - 8001 ! 695: go to 42940 ! 696: 32940 ivdele = ivdele + 1 ! 697: write (i02,80003) ivtnum ! 698: if (iczero) 42940, 2951, 42940 ! 699: 42940 if (ivcomp + 6643) 22940,12940,22940 ! 700: 12940 ivpass = ivpass + 1 ! 701: write (i02,80001) ivtnum ! 702: go to 2951 ! 703: 22940 ivfail = ivfail + 1 ! 704: ivcorr = -6643 ! 705: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 706: 2951 continue ! 707: ivtnum = 295 ! 708: c ! 709: c **** test 295 **** ! 710: c ! 711: if (iczero) 32950, 2950, 32950 ! 712: 2950 continue ! 713: ivon01 = -1358 ! 714: ivcomp = ivon01 - 8001 ! 715: go to 42950 ! 716: 32950 ivdele = ivdele + 1 ! 717: write (i02,80003) ivtnum ! 718: if (iczero) 42950, 2961, 42950 ! 719: 42950 if (ivcomp + 9359) 22950,12950,22950 ! 720: 12950 ivpass = ivpass + 1 ! 721: write (i02,80001) ivtnum ! 722: go to 2961 ! 723: 22950 ivfail = ivfail + 1 ! 724: ivcorr = -9359 ! 725: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 726: 2961 continue ! 727: ivtnum = 296 ! 728: c ! 729: c **** test 296 **** ! 730: c ! 731: if (iczero) 32960, 2960, 32960 ! 732: 2960 continue ! 733: ivon01 = 15 ! 734: ivcomp = ivon01 - 32752 ! 735: go to 42960 ! 736: 32960 ivdele = ivdele + 1 ! 737: write (i02,80003) ivtnum ! 738: if (iczero) 42960, 2971, 42960 ! 739: 42960 if (ivcomp + 32737) 22960,12960,22960 ! 740: 12960 ivpass = ivpass + 1 ! 741: write (i02,80001) ivtnum ! 742: go to 2971 ! 743: 22960 ivfail = ivfail + 1 ! 744: ivcorr = -32737 ! 745: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 746: 2971 continue ! 747: ivtnum = 297 ! 748: c ! 749: c **** test 297 **** ! 750: c ! 751: if (iczero) 32970, 2970, 32970 ! 752: 2970 continue ! 753: ivon01 =-32751 ! 754: ivcomp = ivon01 - 15 ! 755: go to 42970 ! 756: 32970 ivdele = ivdele + 1 ! 757: write (i02,80003) ivtnum ! 758: if (iczero) 42970, 2981, 42970 ! 759: 42970 if (ivcomp + 32766) 22970,12970,22970 ! 760: 12970 ivpass = ivpass + 1 ! 761: write (i02,80001) ivtnum ! 762: go to 2981 ! 763: 22970 ivfail = ivfail + 1 ! 764: ivcorr = -32766 ! 765: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 766: 2981 continue ! 767: ivtnum = 298 ! 768: c ! 769: c **** test 298 **** ! 770: c ! 771: if (iczero) 32980, 2980, 32980 ! 772: 2980 continue ! 773: ivon02 = -32752 ! 774: ivcomp = 15 - ivon02 ! 775: go to 42980 ! 776: 32980 ivdele = ivdele + 1 ! 777: write (i02,80003) ivtnum ! 778: if (iczero) 42980, 2991, 42980 ! 779: 42980 if (ivcomp - 32767) 22980,12980,22980 ! 780: 12980 ivpass = ivpass + 1 ! 781: write (i02,80001) ivtnum ! 782: go to 2991 ! 783: 22980 ivfail = ivfail + 1 ! 784: ivcorr = 32767 ! 785: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 786: 2991 continue ! 787: ivtnum = 299 ! 788: c ! 789: c **** test 299 **** ! 790: c ! 791: if (iczero) 32990, 2990, 32990 ! 792: 2990 continue ! 793: ivon02 = 15 ! 794: ivcomp = 32752 - ivon02 ! 795: go to 42990 ! 796: 32990 ivdele = ivdele + 1 ! 797: write (i02,80003) ivtnum ! 798: if (iczero) 42990, 3001, 42990 ! 799: 42990 if (ivcomp - 32737) 22990,12990,22990 ! 800: 12990 ivpass = ivpass + 1 ! 801: write (i02,80001) ivtnum ! 802: go to 3001 ! 803: 22990 ivfail = ivfail + 1 ! 804: ivcorr = 32737 ! 805: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 806: 3001 continue ! 807: c ! 808: c write page footings and run summaries ! 809: 99999 continue ! 810: write (i02,90002) ! 811: write (i02,90006) ! 812: write (i02,90002) ! 813: write (i02,90002) ! 814: write (i02,90007) ! 815: write (i02,90002) ! 816: write (i02,90008) ivfail ! 817: write (i02,90009) ivpass ! 818: write (i02,90010) ivdele ! 819: c ! 820: c ! 821: c terminate routine execution ! 822: stop ! 823: c ! 824: c format statements for page headers ! 825: 90000 format (1h1) ! 826: 90002 format (1h ) ! 827: 90001 format (1h ,10x,34hfortran compiler validation system) ! 828: 90003 format (1h ,21x,11hversion 1.0) ! 829: 90004 format (1h ,10x,38hfor official use only - copyright 1978) ! 830: 90005 format (1h ,5x,4htest,5x,9hpass/fail, 5x,8hcomputed,8x,7hcorrect) ! 831: 90006 format (1h ,5x,46h----------------------------------------------) ! 832: 90011 format (1h ,18x,17hsubset level test) ! 833: c ! 834: c format statements for run summaries ! 835: 90008 format (1h ,15x,i5,19h errors encountered) ! 836: 90009 format (1h ,15x,i5,13h tests passed) ! 837: 90010 format (1h ,15x,i5,14h tests deleted) ! 838: c ! 839: c format statements for test results ! 840: 80001 format (1h ,4x,i5,7x,4hpass) ! 841: 80002 format (1h ,4x,i5,7x,4hfail) ! 842: 80003 format (1h ,4x,i5,7x,7hdeleted) ! 843: 80004 format (1h ,4x,i5,7x,4hfail,10x,i6,9x,i6) ! 844: 80005 format (1h ,4x,i5,7x,4hfail,4x,e12.5,3x,e12.5) ! 845: c ! 846: 90007 format (1h ,20x,20hend of program fm030) ! 847: end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.