|
|
1.1 ! root 1: c comment section ! 2: c ! 3: c fm032 ! 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. some of the ! 10: c tests use parentheses to group elements in an arithmetic ! 11: c expression. ! 12: c ! 13: c there are tests where the arithmetic expression contains ! 14: c (1) integer var.= int. var. - int.var.-int.con ! 15: c = int. var. - int.con.-int.var ! 16: c = int. con. - int.var -int.var. ! 17: c (2) same forms as (1) but with parentheses to group elements ! 18: c in arithmetic expression. ! 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 330 through test 347 contain two integer variables, an ! 104: c integer constant and operator - in an arithmetic expression. the ! 105: c integer variables contain positive and negative values. ! 106: c ! 107: c test 330 through test 337 iv = iv -iv -ic ! 108: c ! 109: 3301 continue ! 110: ivtnum = 330 ! 111: c ! 112: c **** test 330 **** ! 113: c ! 114: if (iczero) 33300, 3300, 33300 ! 115: 3300 continue ! 116: ivon01 =9 ! 117: ivon02 =4 ! 118: ivcomp = ivon01-ivon02-2 ! 119: go to 43300 ! 120: 33300 ivdele = ivdele + 1 ! 121: write (i02,80003) ivtnum ! 122: if (iczero) 43300, 3311, 43300 ! 123: 43300 if (ivcomp-3) 23300,13300,23300 ! 124: 13300 ivpass = ivpass + 1 ! 125: write (i02,80001) ivtnum ! 126: go to 3311 ! 127: 23300 ivfail = ivfail + 1 ! 128: ivcorr= 3 ! 129: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 130: 3311 continue ! 131: ivtnum = 331 ! 132: c ! 133: c **** test 331 **** ! 134: c ! 135: if (iczero) 33310, 3310, 33310 ! 136: 3310 continue ! 137: ivon01 =-9 ! 138: ivon02 = 4 ! 139: ivcomp = ivon01-ivon02-2 ! 140: go to 43310 ! 141: 33310 ivdele = ivdele + 1 ! 142: write (i02,80003) ivtnum ! 143: if (iczero) 43310, 3321, 43310 ! 144: 43310 if (ivcomp +15) 23310,13310,23310 ! 145: 13310 ivpass = ivpass + 1 ! 146: write (i02,80001) ivtnum ! 147: go to 3321 ! 148: 23310 ivfail = ivfail + 1 ! 149: ivcorr = -15 ! 150: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 151: 3321 continue ! 152: ivtnum = 332 ! 153: c ! 154: c **** test 332 **** ! 155: c ! 156: if (iczero) 33320, 3320, 33320 ! 157: 3320 continue ! 158: ivon01 =9 ! 159: ivon02 =-4 ! 160: ivcomp =ivon01-ivon02-2 ! 161: go to 43320 ! 162: 33320 ivdele = ivdele + 1 ! 163: write (i02,80003) ivtnum ! 164: if (iczero) 43320, 3331, 43320 ! 165: 43320 if (ivcomp-11) 23320,13320,23320 ! 166: 13320 ivpass = ivpass + 1 ! 167: write (i02,80001) ivtnum ! 168: go to 3331 ! 169: 23320 ivfail = ivfail + 1 ! 170: ivcorr = 11 ! 171: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 172: 3331 continue ! 173: ivtnum = 333 ! 174: c ! 175: c **** test 333 **** ! 176: c ! 177: if (iczero) 33330, 3330, 33330 ! 178: 3330 continue ! 179: ivon01 =57 ! 180: ivon02 =25 ! 181: ivcomp=ivon01-ivon02-22 ! 182: go to 43330 ! 183: 33330 ivdele = ivdele + 1 ! 184: write (i02,80003) ivtnum ! 185: if (iczero) 43330, 3341, 43330 ! 186: 43330 if (ivcomp -10) 23330,13330,23330 ! 187: 13330 ivpass = ivpass + 1 ! 188: write (i02,80001) ivtnum ! 189: go to 3341 ! 190: 23330 ivfail = ivfail + 1 ! 191: ivcorr = 10 ! 192: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 193: 3341 continue ! 194: ivtnum = 334 ! 195: c ! 196: c **** test 334 **** ! 197: c ! 198: if (iczero) 33340, 3340, 33340 ! 199: 3340 continue ! 200: ivon01 = 101 ! 201: ivon02 = 683 ! 202: ivcomp = ivon01 - ivon02 - 156 ! 203: go to 43340 ! 204: 33340 ivdele = ivdele + 1 ! 205: write (i02,80003) ivtnum ! 206: if (iczero) 43340, 3351, 43340 ! 207: 43340 if (ivcomp +738) 23340,13340,23340 ! 208: 13340 ivpass = ivpass + 1 ! 209: write (i02,80001) ivtnum ! 210: go to 3351 ! 211: 23340 ivfail = ivfail + 1 ! 212: ivcorr = -738 ! 213: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 214: 3351 continue ! 215: ivtnum = 335 ! 216: c ! 217: c **** test 335 **** ! 218: c ! 219: if (iczero) 33350, 3350, 33350 ! 220: 3350 continue ! 221: ivon01=8542 ! 222: ivon02=1122 ! 223: ivcomp=ivon01-ivon02-1289 ! 224: go to 43350 ! 225: 33350 ivdele = ivdele + 1 ! 226: write (i02,80003) ivtnum ! 227: if (iczero) 43350, 3361, 43350 ! 228: 43350 if (ivcomp -6131) 23350,13350,23350 ! 229: 13350 ivpass = ivpass + 1 ! 230: write (i02,80001) ivtnum ! 231: go to 3361 ! 232: 23350 ivfail = ivfail + 1 ! 233: ivcorr = 6131 ! 234: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 235: 3361 continue ! 236: ivtnum = 336 ! 237: c ! 238: c **** test 336 **** ! 239: c ! 240: if (iczero) 33360, 3360, 33360 ! 241: 3360 continue ! 242: ivon01 = 31333 ! 243: ivon02 = 11111 ! 244: ivcomp = ivon01-ivon02-10111 ! 245: go to 43360 ! 246: 33360 ivdele = ivdele + 1 ! 247: write (i02,80003) ivtnum ! 248: if (iczero) 43360, 3371, 43360 ! 249: 43360 if (ivcomp -10111) 23360,13360,23360 ! 250: 13360 ivpass = ivpass + 1 ! 251: write (i02,80001) ivtnum ! 252: go to 3371 ! 253: 23360 ivfail = ivfail + 1 ! 254: ivcorr = 10111 ! 255: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 256: 3371 continue ! 257: ivtnum = 337 ! 258: c ! 259: c **** test 337 **** ! 260: c ! 261: if (iczero) 33370, 3370, 33370 ! 262: 3370 continue ! 263: ivon01 = -31444 ! 264: ivon02 = +1001 ! 265: ivcomp = ivon01-ivon02-300 ! 266: go to 43370 ! 267: 33370 ivdele = ivdele + 1 ! 268: write (i02,80003) ivtnum ! 269: if (iczero) 43370, 3381, 43370 ! 270: 43370 if (ivcomp +32745) 23370,13370,23370 ! 271: 13370 ivpass = ivpass + 1 ! 272: write (i02,80001) ivtnum ! 273: go to 3381 ! 274: 23370 ivfail = ivfail + 1 ! 275: ivcorr = -32745 ! 276: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 277: c ! 278: c test 338 through test 343 iv=iv-ic-iv ! 279: c ! 280: 3381 continue ! 281: ivtnum = 338 ! 282: c ! 283: c **** test 338 **** ! 284: c ! 285: if (iczero) 33380, 3380, 33380 ! 286: 3380 continue ! 287: ivon01 =9 ! 288: ivon03 =2 ! 289: ivcomp = ivon01-4-ivon03 ! 290: go to 43380 ! 291: 33380 ivdele = ivdele + 1 ! 292: write (i02,80003) ivtnum ! 293: if (iczero) 43380, 3391, 43380 ! 294: 43380 if (ivcomp -3) 23380,13380,23380 ! 295: 13380 ivpass = ivpass + 1 ! 296: write (i02,80001) ivtnum ! 297: go to 3391 ! 298: 23380 ivfail = ivfail + 1 ! 299: ivcorr = 3 ! 300: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 301: 3391 continue ! 302: ivtnum = 339 ! 303: c ! 304: c **** test 339 **** ! 305: c ! 306: if (iczero) 33390, 3390, 33390 ! 307: 3390 continue ! 308: ivon01 = -9 ! 309: ivon03 = 2 ! 310: ivcomp = ivon01-4-ivon03 ! 311: go to 43390 ! 312: 33390 ivdele = ivdele + 1 ! 313: write (i02,80003) ivtnum ! 314: if (iczero) 43390, 3401, 43390 ! 315: 43390 if (ivcomp+15) 23390,13390,23390 ! 316: 13390 ivpass = ivpass + 1 ! 317: write (i02,80001) ivtnum ! 318: go to 3401 ! 319: 23390 ivfail = ivfail + 1 ! 320: ivcorr = -15 ! 321: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 322: 3401 continue ! 323: ivtnum = 340 ! 324: c ! 325: c **** test 340 **** ! 326: c ! 327: if (iczero) 33400, 3400, 33400 ! 328: 3400 continue ! 329: ivon01 = 9 ! 330: ivon03 =-2 ! 331: ivcomp =ivon01-4-ivon03 ! 332: go to 43400 ! 333: 33400 ivdele = ivdele + 1 ! 334: write (i02,80003) ivtnum ! 335: if (iczero) 43400, 3411, 43400 ! 336: 43400 if (ivcomp-7) 23400,13400,23400 ! 337: 13400 ivpass = ivpass + 1 ! 338: write (i02,80001) ivtnum ! 339: go to 3411 ! 340: 23400 ivfail = ivfail + 1 ! 341: ivcorr=7 ! 342: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 343: 3411 continue ! 344: ivtnum = 341 ! 345: c ! 346: c **** test 341 **** ! 347: c ! 348: if (iczero) 33410, 3410, 33410 ! 349: 3410 continue ! 350: ivon01=-57 ! 351: ivon03=22 ! 352: ivcomp=ivon01-25-ivon03 ! 353: go to 43410 ! 354: 33410 ivdele = ivdele + 1 ! 355: write (i02,80003) ivtnum ! 356: if (iczero) 43410, 3421, 43410 ! 357: 43410 if (ivcomp+104) 23410,13410,23410 ! 358: 13410 ivpass = ivpass + 1 ! 359: write (i02,80001) ivtnum ! 360: go to 3421 ! 361: 23410 ivfail = ivfail + 1 ! 362: ivcorr = -104 ! 363: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 364: 3421 continue ! 365: ivtnum = 342 ! 366: c ! 367: c **** test 342 **** ! 368: c ! 369: if (iczero) 33420, 3420, 33420 ! 370: 3420 continue ! 371: ivon01=8542 ! 372: ivon03=3 ! 373: ivcomp=ivon01-125-ivon03 ! 374: go to 43420 ! 375: 33420 ivdele = ivdele + 1 ! 376: write (i02,80003) ivtnum ! 377: if (iczero) 43420, 3431, 43420 ! 378: 43420 if (ivcomp-8414) 23420,13420,23420 ! 379: 13420 ivpass = ivpass + 1 ! 380: write (i02,80001) ivtnum ! 381: go to 3431 ! 382: 23420 ivfail = ivfail + 1 ! 383: ivcorr = 8414 ! 384: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 385: 3431 continue ! 386: ivtnum = 343 ! 387: c ! 388: c **** test 343 **** ! 389: c ! 390: if (iczero) 33430, 3430, 33430 ! 391: 3430 continue ! 392: ivon01 = -32111 ! 393: ivon03 = -111 ! 394: ivcomp = ivon01-111-ivon03 ! 395: go to 43430 ! 396: 33430 ivdele = ivdele + 1 ! 397: write (i02,80003) ivtnum ! 398: if (iczero) 43430, 3441, 43430 ! 399: 43430 if (ivcomp + 32111) 23430,13430,23430 ! 400: 13430 ivpass = ivpass + 1 ! 401: write (i02,80001) ivtnum ! 402: go to 3441 ! 403: 23430 ivfail = ivfail + 1 ! 404: ivcorr = -32111 ! 405: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 406: c ! 407: c test 344 through test 347 iv=ic-iv-iv ! 408: c ! 409: 3441 continue ! 410: ivtnum = 344 ! 411: c ! 412: c **** test 344 **** ! 413: c ! 414: if (iczero) 33440, 3440, 33440 ! 415: 3440 continue ! 416: ivon02=4 ! 417: ivon03=2 ! 418: ivcomp=9-ivon02-ivon03 ! 419: go to 43440 ! 420: 33440 ivdele = ivdele + 1 ! 421: write (i02,80003) ivtnum ! 422: if (iczero) 43440, 3451, 43440 ! 423: 43440 if (ivcomp -3) 23440,13440,23440 ! 424: 13440 ivpass = ivpass + 1 ! 425: write (i02,80001) ivtnum ! 426: go to 3451 ! 427: 23440 ivfail = ivfail + 1 ! 428: ivcorr = 3 ! 429: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 430: 3451 continue ! 431: ivtnum = 345 ! 432: c ! 433: c **** test 345 **** ! 434: c ! 435: if (iczero) 33450, 3450, 33450 ! 436: 3450 continue ! 437: ivon02=-4 ! 438: ivon03= 2 ! 439: ivcomp= 9-ivon02-ivon03 ! 440: go to 43450 ! 441: 33450 ivdele = ivdele + 1 ! 442: write (i02,80003) ivtnum ! 443: if (iczero) 43450, 3461, 43450 ! 444: 43450 if (ivcomp -11) 23450,13450,23450 ! 445: 13450 ivpass = ivpass + 1 ! 446: write (i02,80001) ivtnum ! 447: go to 3461 ! 448: 23450 ivfail = ivfail + 1 ! 449: ivcorr =11 ! 450: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 451: 3461 continue ! 452: ivtnum = 346 ! 453: c ! 454: c **** test 346 **** ! 455: c ! 456: if (iczero) 33460, 3460, 33460 ! 457: 3460 continue ! 458: ivon02 = 683 ! 459: ivon03 = 156 ! 460: ivcomp = 101 -ivon02-ivon03 ! 461: go to 43460 ! 462: 33460 ivdele = ivdele + 1 ! 463: write (i02,80003) ivtnum ! 464: if (iczero) 43460, 3471, 43460 ! 465: 43460 if (ivcomp +738) 23460,13460,23460 ! 466: 13460 ivpass = ivpass + 1 ! 467: write (i02,80001) ivtnum ! 468: go to 3471 ! 469: 23460 ivfail = ivfail + 1 ! 470: ivcorr = -738 ! 471: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 472: 3471 continue ! 473: ivtnum = 347 ! 474: c ! 475: c **** test 347 **** ! 476: c ! 477: if (iczero) 33470, 3470, 33470 ! 478: 3470 continue ! 479: ivon02 = 15687 ! 480: ivon03 = 387 ! 481: ivcomp = 8542-ivon02-ivon03 ! 482: go to 43470 ! 483: 33470 ivdele = ivdele + 1 ! 484: write (i02,80003) ivtnum ! 485: if (iczero) 43470, 3481, 43470 ! 486: 43470 if (ivcomp + 7532) 23470,13470,23470 ! 487: 13470 ivpass = ivpass + 1 ! 488: write (i02,80001) ivtnum ! 489: go to 3481 ! 490: 23470 ivfail = ivfail + 1 ! 491: ivcorr = -7532 ! 492: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 493: c ! 494: c test 348 through test 359 contain two integer variables, an ! 495: c integer constant and operator - in an arithmetic expression. ! 496: c parentheses are used to group the elements in the arithmetic ! 497: c expression. the integer variables contain positive and negative ! 498: c values. ! 499: c ! 500: 3481 continue ! 501: ivtnum = 348 ! 502: c ! 503: c **** test 348 **** ! 504: c ! 505: if (iczero) 33480, 3480, 33480 ! 506: 3480 continue ! 507: ivon01= 9 ! 508: ivon02= 4 ! 509: ivcomp=(ivon01-ivon02)-2 ! 510: go to 43480 ! 511: 33480 ivdele = ivdele + 1 ! 512: write (i02,80003) ivtnum ! 513: if (iczero) 43480, 3491, 43480 ! 514: 43480 if (ivcomp - 3) 23480,13480,23480 ! 515: 13480 ivpass = ivpass + 1 ! 516: write (i02,80001) ivtnum ! 517: go to 3491 ! 518: 23480 ivfail = ivfail + 1 ! 519: ivcorr = 3 ! 520: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 521: 3491 continue ! 522: ivtnum = 349 ! 523: c ! 524: c **** test 349 **** ! 525: c ! 526: if (iczero) 33490, 3490, 33490 ! 527: 3490 continue ! 528: ivon01=9 ! 529: ivon02=4 ! 530: ivcomp=ivon01-(ivon02-2) ! 531: go to 43490 ! 532: 33490 ivdele = ivdele + 1 ! 533: write (i02,80003) ivtnum ! 534: if (iczero) 43490, 3501, 43490 ! 535: 43490 if (ivcomp -7) 23490,13490,23490 ! 536: 13490 ivpass = ivpass + 1 ! 537: write (i02,80001) ivtnum ! 538: go to 3501 ! 539: 23490 ivfail = ivfail + 1 ! 540: ivcorr=7 ! 541: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 542: 3501 continue ! 543: ivtnum = 350 ! 544: c ! 545: c **** test 350 **** ! 546: c ! 547: if (iczero) 33500, 3500, 33500 ! 548: 3500 continue ! 549: ivon01 = 9 ! 550: ivon02 = -4 ! 551: ivcomp = (ivon01-ivon02) -2 ! 552: go to 43500 ! 553: 33500 ivdele = ivdele + 1 ! 554: write (i02,80003) ivtnum ! 555: if (iczero) 43500, 3511, 43500 ! 556: 43500 if (ivcomp -11) 23500,13500,23500 ! 557: 13500 ivpass = ivpass + 1 ! 558: write (i02,80001) ivtnum ! 559: go to 3511 ! 560: 23500 ivfail = ivfail + 1 ! 561: ivcorr = 11 ! 562: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 563: 3511 continue ! 564: ivtnum = 351 ! 565: c ! 566: c **** test 351 **** ! 567: c ! 568: if (iczero) 33510, 3510, 33510 ! 569: 3510 continue ! 570: ivon01 = 9 ! 571: ivon02 = -4 ! 572: ivcomp = ivon01-(ivon02-2) ! 573: go to 43510 ! 574: 33510 ivdele = ivdele + 1 ! 575: write (i02,80003) ivtnum ! 576: if (iczero) 43510, 3521, 43510 ! 577: 43510 if (ivcomp - 15) 23510,13510,23510 ! 578: 13510 ivpass = ivpass + 1 ! 579: write (i02,80001) ivtnum ! 580: go to 3521 ! 581: 23510 ivfail = ivfail + 1 ! 582: ivcorr = 15 ! 583: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 584: 3521 continue ! 585: ivtnum = 352 ! 586: c ! 587: c **** test 352 **** ! 588: c ! 589: if (iczero) 33520, 3520, 33520 ! 590: 3520 continue ! 591: ivon01 = 683 ! 592: ivon03 = 156 ! 593: ivcomp = (ivon01-101)-ivon03 ! 594: go to 43520 ! 595: 33520 ivdele = ivdele + 1 ! 596: write (i02,80003) ivtnum ! 597: if (iczero) 43520, 3531, 43520 ! 598: 43520 if (ivcomp - 426) 23520,13520,23520 ! 599: 13520 ivpass = ivpass + 1 ! 600: write (i02,80001) ivtnum ! 601: go to 3531 ! 602: 23520 ivfail = ivfail + 1 ! 603: ivcorr = 426 ! 604: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 605: 3531 continue ! 606: ivtnum = 353 ! 607: c ! 608: c **** test 353 **** ! 609: c ! 610: if (iczero) 33530, 3530, 33530 ! 611: 3530 continue ! 612: ivon01 = 683 ! 613: ivon03 = 156 ! 614: ivcomp = ivon01 -(101-ivon03) ! 615: go to 43530 ! 616: 33530 ivdele = ivdele + 1 ! 617: write (i02,80003) ivtnum ! 618: if (iczero) 43530, 3541, 43530 ! 619: 43530 if (ivcomp -738) 23530,13530,23530 ! 620: 13530 ivpass = ivpass + 1 ! 621: write (i02,80001) ivtnum ! 622: go to 3541 ! 623: 23530 ivfail = ivfail + 1 ! 624: ivcorr = 738 ! 625: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 626: 3541 continue ! 627: ivtnum = 354 ! 628: c ! 629: c **** test 354 **** ! 630: c ! 631: if (iczero) 33540, 3540, 33540 ! 632: 3540 continue ! 633: ivon01 = 683 ! 634: ivon03 =-156 ! 635: ivcomp = ivon01 -(101-ivon03) ! 636: go to 43540 ! 637: 33540 ivdele = ivdele + 1 ! 638: write (i02,80003) ivtnum ! 639: if (iczero) 43540, 3551, 43540 ! 640: 43540 if (ivcomp -426) 23540,13540,23540 ! 641: 13540 ivpass = ivpass + 1 ! 642: write (i02,80001) ivtnum ! 643: go to 3551 ! 644: 23540 ivfail = ivfail + 1 ! 645: ivcorr = 426 ! 646: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 647: 3551 continue ! 648: ivtnum = 355 ! 649: c ! 650: c **** test 355 **** ! 651: c ! 652: if (iczero) 33550, 3550, 33550 ! 653: 3550 continue ! 654: ivon01 = -683 ! 655: ivon03 = -156 ! 656: ivcomp = (ivon01-101)-ivon03 ! 657: go to 43550 ! 658: 33550 ivdele = ivdele + 1 ! 659: write (i02,80003) ivtnum ! 660: if (iczero) 43550, 3561, 43550 ! 661: 43550 if (ivcomp +628) 23550,13550,23550 ! 662: 13550 ivpass = ivpass + 1 ! 663: write (i02,80001) ivtnum ! 664: go to 3561 ! 665: 23550 ivfail = ivfail + 1 ! 666: ivcorr = -628 ! 667: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 668: 3561 continue ! 669: ivtnum = 356 ! 670: c ! 671: c **** test 356 **** ! 672: c ! 673: if (iczero) 33560, 3560, 33560 ! 674: 3560 continue ! 675: ivon02 = 15687 ! 676: ivon03 = 387 ! 677: ivcomp = (8542-ivon02)-ivon03 ! 678: go to 43560 ! 679: 33560 ivdele = ivdele + 1 ! 680: write (i02,80003) ivtnum ! 681: if (iczero) 43560, 3571, 43560 ! 682: 43560 if (ivcomp +7532) 23560,13560,23560 ! 683: 13560 ivpass = ivpass + 1 ! 684: write (i02,80001) ivtnum ! 685: go to 3571 ! 686: 23560 ivfail = ivfail + 1 ! 687: ivcorr = -7532 ! 688: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 689: 3571 continue ! 690: ivtnum = 357 ! 691: c ! 692: c **** test 357 **** ! 693: c ! 694: if (iczero) 33570, 3570, 33570 ! 695: 3570 continue ! 696: ivon02= 15687 ! 697: ivon03= 387 ! 698: ivcomp= 8542-(ivon02-ivon03) ! 699: go to 43570 ! 700: 33570 ivdele = ivdele + 1 ! 701: write (i02,80003) ivtnum ! 702: if (iczero) 43570, 3581, 43570 ! 703: 43570 if (ivcomp + 6758) 23570,13570,23570 ! 704: 13570 ivpass = ivpass + 1 ! 705: write (i02,80001) ivtnum ! 706: go to 3581 ! 707: 23570 ivfail = ivfail + 1 ! 708: ivcorr = -6758 ! 709: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 710: 3581 continue ! 711: ivtnum = 358 ! 712: c ! 713: c **** test 358 **** ! 714: c ! 715: if (iczero) 33580, 3580, 33580 ! 716: 3580 continue ! 717: ivon02 = -15687 ! 718: ivon03 = 387 ! 719: ivcomp =(8542-ivon02)-ivon03 ! 720: go to 43580 ! 721: 33580 ivdele = ivdele + 1 ! 722: write (i02,80003) ivtnum ! 723: if (iczero) 43580, 3591, 43580 ! 724: 43580 if (ivcomp - 23842) 23580,13580,23580 ! 725: 13580 ivpass = ivpass + 1 ! 726: write (i02,80001) ivtnum ! 727: go to 3591 ! 728: 23580 ivfail = ivfail + 1 ! 729: ivcorr =23842 ! 730: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 731: 3591 continue ! 732: ivtnum = 359 ! 733: c ! 734: c **** test 359 **** ! 735: c ! 736: if (iczero) 33590, 3590, 33590 ! 737: 3590 continue ! 738: ivon02 = -15687 ! 739: ivon03 = 387 ! 740: ivcomp = 8542-(ivon02-ivon03) ! 741: go to 43590 ! 742: 33590 ivdele = ivdele + 1 ! 743: write (i02,80003) ivtnum ! 744: if (iczero) 43590, 3601, 43590 ! 745: 43590 if (ivcomp - 24616) 23590,13590,23590 ! 746: 13590 ivpass = ivpass + 1 ! 747: write (i02,80001) ivtnum ! 748: go to 3601 ! 749: 23590 ivfail = ivfail + 1 ! 750: ivcorr = 24616 ! 751: write (i02,80004) ivtnum, ivcomp ,ivcorr ! 752: c **** end of tests **** ! 753: 3601 continue ! 754: c ! 755: c write page footings and run summaries ! 756: 99999 continue ! 757: write (i02,90002) ! 758: write (i02,90006) ! 759: write (i02,90002) ! 760: write (i02,90002) ! 761: write (i02,90007) ! 762: write (i02,90002) ! 763: write (i02,90008) ivfail ! 764: write (i02,90009) ivpass ! 765: write (i02,90010) ivdele ! 766: c ! 767: c ! 768: c terminate routine execution ! 769: stop ! 770: c ! 771: c format statements for page headers ! 772: 90000 format (1h1) ! 773: 90002 format (1h ) ! 774: 90001 format (1h ,10x,34hfortran compiler validation system) ! 775: 90003 format (1h ,21x,11hversion 1.0) ! 776: 90004 format (1h ,10x,38hfor official use only - copyright 1978) ! 777: 90005 format (1h ,5x,4htest,5x,9hpass/fail, 5x,8hcomputed,8x,7hcorrect) ! 778: 90006 format (1h ,5x,46h----------------------------------------------) ! 779: 90011 format (1h ,18x,17hsubset level test) ! 780: c ! 781: c format statements for run summaries ! 782: 90008 format (1h ,15x,i5,19h errors encountered) ! 783: 90009 format (1h ,15x,i5,13h tests passed) ! 784: 90010 format (1h ,15x,i5,14h tests deleted) ! 785: c ! 786: c format statements for test results ! 787: 80001 format (1h ,4x,i5,7x,4hpass) ! 788: 80002 format (1h ,4x,i5,7x,4hfail) ! 789: 80003 format (1h ,4x,i5,7x,7hdeleted) ! 790: 80004 format (1h ,4x,i5,7x,4hfail,10x,i6,9x,i6) ! 791: 80005 format (1h ,4x,i5,7x,4hfail,4x,e12.5,3x,e12.5) ! 792: c ! 793: 90007 format (1h ,20x,20hend of program fm032) ! 794: end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.