Annotation of 43BSDTahoe/usr.bin/f77/testf77/tests/fm035.f, revision 1.1.1.1

1.1       root        1: c     comment section
                      2: c
                      3: c     fm035
                      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 variables and integer constant.  some of the
                     10: c     tests use parentheses to group elements in the expression and to
                     11: c     allow the use of negative constants following the * operator.
                     12: c     the integer variables contain positive and negative values.
                     13: c
                     14: c     there are tests where the arithmetic expression contains
                     15: c         (1)  integer variable * integer variable
                     16: c         (2)  integer variable * integer variable * integer constant
                     17: c              integer variable * integer constant * integer variable
                     18: c              integer constant * integer variable * integer variable
                     19: c         (3)  same as (2) but with parentheses to group elements.
                     20: c
                     21: c      references
                     22: c        american national standard programming language fortran,
                     23: c              x3.9-1978
                     24: c
                     25: c        section 4.3, integer type
                     26: c        section 4.3.1, integer constant
                     27: c        section 6.1, arithmetic expressions
                     28: c        section 10.1, arithmetic assignment statement
                     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
                    100: c     test section
                    101: c
                    102: c         arithmetic assignment statement
                    103: c
                    104: c     test 430 through test 441 contain two integer variables and
                    105: c     operator * in an arithmetic expression.
                    106: c         the form is   iv = iv * iv
                    107: c
                    108: c     test 430 through test 433  -  two positive variables
                    109: c
                    110:  4301 continue
                    111:       ivtnum = 430
                    112: c
                    113: c      ****  test 430  ****
                    114: c
                    115:       if (iczero) 34300, 4300, 34300
                    116:  4300 continue
                    117:       ivon01 = 2
                    118:       ivon02 = 3
                    119:       ivcomp = ivon01 * ivon02
                    120:       go to 44300
                    121: 34300 ivdele = ivdele + 1
                    122:       write (i02,80003) ivtnum
                    123:       if (iczero) 44300, 4311, 44300
                    124: 44300 if (ivcomp - 6) 24300,14300,24300
                    125: 14300 ivpass = ivpass + 1
                    126:       write (i02,80001) ivtnum
                    127:       go to 4311
                    128: 24300 ivfail = ivfail + 1
                    129:       ivcorr = 6
                    130:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    131:  4311 continue
                    132:       ivtnum = 431
                    133: c
                    134: c      ****  test 431  ****
                    135: c
                    136:       if (iczero) 34310, 4310, 34310
                    137:  4310 continue
                    138:       ivon01 = 13
                    139:       ivon02 = 11
                    140:       ivcomp = ivon01 * ivon02
                    141:       go to 44310
                    142: 34310 ivdele = ivdele + 1
                    143:       write (i02,80003) ivtnum
                    144:       if (iczero) 44310, 4321, 44310
                    145: 44310 if (ivcomp - 143) 24310,14310,24310
                    146: 14310 ivpass = ivpass + 1
                    147:       write (i02,80001) ivtnum
                    148:       go to 4321
                    149: 24310 ivfail = ivfail + 1
                    150:       ivcorr = 143
                    151:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    152:  4321 continue
                    153:       ivtnum = 432
                    154: c
                    155: c      ****  test 432  ****
                    156: c
                    157:       if (iczero) 34320, 4320, 34320
                    158:  4320 continue
                    159:       ivon01 = 223
                    160:       ivon02 = 99
                    161:       ivcomp = ivon01 * ivon02
                    162:       go to 44320
                    163: 34320 ivdele = ivdele + 1
                    164:       write (i02,80003) ivtnum
                    165:       if (iczero) 44320, 4331, 44320
                    166: 44320 if (ivcomp - 22077) 24320,14320,24320
                    167: 14320 ivpass = ivpass + 1
                    168:       write (i02,80001) ivtnum
                    169:       go to 4331
                    170: 24320 ivfail = ivfail + 1
                    171:       ivcorr = 22077
                    172:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    173:  4331 continue
                    174:       ivtnum = 433
                    175: c
                    176: c      ****  test 433  ****
                    177: c
                    178:       if (iczero) 34330, 4330, 34330
                    179:  4330 continue
                    180:       ivon01 = 11235
                    181:       ivon02 = 2
                    182:       ivcomp = ivon01*ivon02
                    183:       go to 44330
                    184: 34330 ivdele = ivdele + 1
                    185:       write (i02,80003) ivtnum
                    186:       if (iczero) 44330, 4341, 44330
                    187: 44330 if (ivcomp - 22470) 24330,14330,24330
                    188: 14330 ivpass = ivpass + 1
                    189:       write (i02,80001) ivtnum
                    190:       go to 4341
                    191: 24330 ivfail = ivfail + 1
                    192:       ivcorr = 22470
                    193:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    194: c
                    195: c     test 434 through test 437
                    196: c          one negative variable, one positive variable
                    197: c
                    198:  4341 continue
                    199:       ivtnum = 434
                    200: c
                    201: c      ****  test 434  ****
                    202: c
                    203:       if (iczero) 34340, 4340, 34340
                    204:  4340 continue
                    205:       ivon01 = -2
                    206:       ivon02 = 3
                    207:       ivcomp = ivon01 * ivon02
                    208:       go to 44340
                    209: 34340 ivdele = ivdele + 1
                    210:       write (i02,80003) ivtnum
                    211:       if (iczero) 44340, 4351, 44340
                    212: 44340 if (ivcomp +6) 24340,14340,24340
                    213: 14340 ivpass = ivpass + 1
                    214:       write (i02,80001) ivtnum
                    215:       go to 4351
                    216: 24340 ivfail = ivfail + 1
                    217:       ivcorr = -6
                    218:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    219:  4351 continue
                    220:       ivtnum = 435
                    221: c
                    222: c      ****  test 435  ****
                    223: c
                    224:       if (iczero) 34350, 4350, 34350
                    225:  4350 continue
                    226:       ivon01 = -13
                    227:       ivon02 = +11
                    228:       ivcomp = ivon01*ivon02
                    229:       go to 44350
                    230: 34350 ivdele = ivdele + 1
                    231:       write (i02,80003) ivtnum
                    232:       if (iczero) 44350, 4361, 44350
                    233: 44350 if (ivcomp + 143) 24350,14350,24350
                    234: 14350 ivpass = ivpass + 1
                    235:       write (i02,80001) ivtnum
                    236:       go to 4361
                    237: 24350 ivfail = ivfail + 1
                    238:       ivcorr = -143
                    239:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    240:  4361 continue
                    241:       ivtnum = 436
                    242: c
                    243: c      ****  test 436  ****
                    244: c
                    245:       if (iczero) 34360, 4360, 34360
                    246:  4360 continue
                    247:       ivon01 = -223
                    248:       ivon02 = 99
                    249:       ivcomp = ivon01 * ivon02
                    250:       go to 44360
                    251: 34360 ivdele = ivdele + 1
                    252:       write (i02,80003) ivtnum
                    253:       if (iczero) 44360, 4371, 44360
                    254: 44360 if (ivcomp + 22077) 24360,14360,24360
                    255: 14360 ivpass = ivpass + 1
                    256:       write (i02,80001) ivtnum
                    257:       go to 4371
                    258: 24360 ivfail = ivfail + 1
                    259:       ivcorr = -22077
                    260:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    261:  4371 continue
                    262:       ivtnum = 437
                    263: c
                    264: c      ****  test 437  ****
                    265: c
                    266:       if (iczero) 34370, 4370, 34370
                    267:  4370 continue
                    268:       ivon01 = -11235
                    269:       ivon02 =  2
                    270:       ivcomp = ivon01 * ivon02
                    271:       go to 44370
                    272: 34370 ivdele = ivdele + 1
                    273:       write (i02,80003) ivtnum
                    274:       if (iczero) 44370, 4381, 44370
                    275: 44370 if (ivcomp + 22470) 24370,14370,24370
                    276: 14370 ivpass = ivpass + 1
                    277:       write (i02,80001) ivtnum
                    278:       go to 4381
                    279: 24370 ivfail = ivfail + 1
                    280:       ivcorr = -22470
                    281:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    282: c
                    283: c     test 438 through test 441  -  two negative variables
                    284:  4381 continue
                    285:       ivtnum = 438
                    286: c
                    287: c      ****  test 438  ****
                    288: c
                    289:       if (iczero) 34380, 4380, 34380
                    290:  4380 continue
                    291:       ivon01 = -2
                    292:       ivon02 = -3
                    293:       ivcomp = ivon01 * ivon02
                    294:       go to 44380
                    295: 34380 ivdele = ivdele + 1
                    296:       write (i02,80003) ivtnum
                    297:       if (iczero) 44380, 4391, 44380
                    298: 44380 if (ivcomp - 6) 24380,14380,24380
                    299: 14380 ivpass = ivpass + 1
                    300:       write (i02,80001) ivtnum
                    301:       go to 4391
                    302: 24380 ivfail = ivfail + 1
                    303:       ivcorr = 6
                    304:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    305:  4391 continue
                    306:       ivtnum = 439
                    307: c
                    308: c      ****  test 439  ****
                    309: c
                    310:       if (iczero) 34390, 4390, 34390
                    311:  4390 continue
                    312:       ivon01 = -13
                    313:       ivon02 = -11
                    314:       ivcomp = ivon01 * ivon02
                    315:       go to 44390
                    316: 34390 ivdele = ivdele + 1
                    317:       write (i02,80003) ivtnum
                    318:       if (iczero) 44390, 4401, 44390
                    319: 44390 if (ivcomp - 143) 24390,14390,24390
                    320: 14390 ivpass = ivpass + 1
                    321:       write (i02,80001) ivtnum
                    322:       go to 4401
                    323: 24390 ivfail = ivfail + 1
                    324:       ivcorr = 143
                    325:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    326:  4401 continue
                    327:       ivtnum = 440
                    328: c
                    329: c      ****  test 440  ****
                    330: c
                    331:       if (iczero) 34400, 4400, 34400
                    332:  4400 continue
                    333:       ivon01 = -223
                    334:       ivon02 = -99
                    335:       ivcomp = ivon01*ivon02
                    336:       go to 44400
                    337: 34400 ivdele = ivdele + 1
                    338:       write (i02,80003) ivtnum
                    339:       if (iczero) 44400, 4411, 44400
                    340: 44400 if (ivcomp - 22077) 24400,14400,24400
                    341: 14400 ivpass = ivpass + 1
                    342:       write (i02,80001) ivtnum
                    343:       go to 4411
                    344: 24400 ivfail = ivfail + 1
                    345:       ivcorr = 22077
                    346:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    347:  4411 continue
                    348:       ivtnum = 441
                    349: c
                    350: c      ****  test 441  ****
                    351: c
                    352:       if (iczero) 34410, 4410, 34410
                    353:  4410 continue
                    354:       ivon01 = -5461
                    355:       ivon02 = -6
                    356:       ivcomp = ivon01 * ivon02
                    357:       go to 44410
                    358: 34410 ivdele = ivdele + 1
                    359:       write (i02,80003) ivtnum
                    360:       if (iczero) 44410, 4421, 44410
                    361: 44410 if (ivcomp - 32766) 24410, 14410, 24410
                    362: 14410 ivpass = ivpass + 1
                    363:       write (i02,80001) ivtnum
                    364:       go to 4421
                    365: 24410 ivfail = ivfail + 1
                    366:       ivcorr = 32766
                    367:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    368: c
                    369: c     test 442 through test 445 contain signed integer variables and
                    370: c     operator * in an arithmetic expression.
                    371:  4421 continue
                    372:       ivtnum = 442
                    373: c
                    374: c      ****  test 442  ****
                    375: c        form is  iv = -iv*iv
                    376: c
                    377:       if (iczero) 34420, 4420, 34420
                    378:  4420 continue
                    379:       ivon01 = 2
                    380:       ivon02 = 3
                    381:       ivcomp = -ivon01 * ivon02
                    382:       go to 44420
                    383: 34420 ivdele = ivdele + 1
                    384:       write (i02,80003) ivtnum
                    385:       if (iczero) 44420, 4431, 44420
                    386: 44420 if (ivcomp + 6) 24420,14420,24420
                    387: 14420 ivpass = ivpass + 1
                    388:       write (i02,80001) ivtnum
                    389:       go to 4431
                    390: 24420 ivfail = ivfail + 1
                    391:       ivcorr = -6
                    392:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    393:  4431 continue
                    394:       ivtnum = 443
                    395: c
                    396: c      ****  test 443  ****
                    397: c        form is  iv = iv*(-iv)
                    398: c
                    399:       if (iczero) 34430, 4430, 34430
                    400:  4430 continue
                    401:       ivon01 = 2
                    402:       ivon02 = 3
                    403:       ivcomp = ivon01 * (-ivon02)
                    404:       go to 44430
                    405: 34430 ivdele = ivdele + 1
                    406:       write (i02,80003) ivtnum
                    407:       if (iczero) 44430, 4441, 44430
                    408: 44430 if (ivcomp +6) 24430,14430,24430
                    409: 14430 ivpass = ivpass + 1
                    410:       write (i02,80001) ivtnum
                    411:       go to 4441
                    412: 24430 ivfail = ivfail + 1
                    413:       ivcorr = -6
                    414:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    415:  4441 continue
                    416:       ivtnum = 444
                    417: c
                    418: c      ****  test 444  ****
                    419: c        form is  iv = (-iv)*(-iv)
                    420: c
                    421:       if (iczero) 34440, 4440, 34440
                    422:  4440 continue
                    423:       ivon01 = 2
                    424:       ivon02 = 3
                    425:       ivcomp = (-ivon01) * (-ivon02)
                    426:       go to 44440
                    427: 34440 ivdele = ivdele + 1
                    428:       write (i02,80003) ivtnum
                    429:       if (iczero) 44440, 4451, 44440
                    430: 44440 if (ivcomp - 6) 24440,14440,24440
                    431: 14440 ivpass = ivpass + 1
                    432:       write (i02,80001) ivtnum
                    433:       go to 4451
                    434: 24440 ivfail = ivfail + 1
                    435:       ivcorr =  6
                    436:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    437:  4451 continue
                    438:       ivtnum = 445
                    439: c
                    440: c      ****  test 445  ****
                    441: c        form is   iv = -iv * iv
                    442: c
                    443:       if (iczero) 34450, 4450, 34450
                    444:  4450 continue
                    445:       ivon01 = -11235
                    446:       ivon02 =  -2
                    447:       ivcomp = -ivon01 * ivon02
                    448:       go to 44450
                    449: 34450 ivdele = ivdele + 1
                    450:       write (i02,80003) ivtnum
                    451:       if (iczero) 44450, 4461, 44450
                    452: 44450 if (ivcomp + 22470) 24450,14450,24450
                    453: 14450 ivpass = ivpass + 1
                    454:       write (i02,80001) ivtnum
                    455:       go to 4461
                    456: 24450 ivfail = ivfail + 1
                    457:       ivcorr = -22470
                    458:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    459: c
                    460: c     test 446 through test 452 contain two integer variables, an
                    461: c     integer constant and operator * in an arithmetic expression.
                    462: c
                    463:  4461 continue
                    464:       ivtnum = 446
                    465: c
                    466: c      ****  test 446  ****
                    467: c
                    468:       if (iczero) 34460, 4460, 34460
                    469:  4460 continue
                    470:       ivon01 = 2
                    471:       ivon02 = 3
                    472:       ivcomp = ivon01 * ivon02 * 4
                    473:       go to 44460
                    474: 34460 ivdele = ivdele + 1
                    475:       write (i02,80003) ivtnum
                    476:       if (iczero) 44460, 4471, 44460
                    477: 44460 if (ivcomp -24) 24460,14460,24460
                    478: 14460 ivpass = ivpass + 1
                    479:       write (i02,80001) ivtnum
                    480:       go to 4471
                    481: 24460 ivfail = ivfail + 1
                    482:       ivcorr = 24
                    483:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    484:  4471 continue
                    485:       ivtnum = 447
                    486: c
                    487: c      ****  test 447  ****
                    488: c
                    489:       if (iczero) 34470, 4470, 34470
                    490:  4470 continue
                    491:       ivon01 = -2
                    492:       ivon02 = 3
                    493:       ivcomp = ivon01 * ivon02 * 4
                    494:       go to 44470
                    495: 34470 ivdele = ivdele + 1
                    496:       write (i02,80003) ivtnum
                    497:       if (iczero) 44470, 4481, 44470
                    498: 44470 if (ivcomp +24) 24470,14470,24470
                    499: 14470 ivpass = ivpass + 1
                    500:       write (i02,80001) ivtnum
                    501:       go to 4481
                    502: 24470 ivfail = ivfail + 1
                    503:       ivcorr = -24
                    504:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    505:  4481 continue
                    506:       ivtnum = 448
                    507: c
                    508: c      ****  test 448  ****
                    509: c
                    510:       if (iczero) 34480, 4480, 34480
                    511:  4480 continue
                    512:       ivon01 = -2
                    513:       ivon02 = 3
                    514:       ivcomp = ivon01 * ivon02 * (-4)
                    515:       go to 44480
                    516: 34480 ivdele = ivdele + 1
                    517:       write (i02,80003) ivtnum
                    518:       if (iczero) 44480, 4491, 44480
                    519: 44480 if (ivcomp -24) 24480,14480,24480
                    520: 14480 ivpass = ivpass + 1
                    521:       write (i02,80001) ivtnum
                    522:       go to 4491
                    523: 24480 ivfail = ivfail + 1
                    524:       ivcorr = 24
                    525:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    526:  4491 continue
                    527:       ivtnum = 449
                    528: c
                    529: c      ****  test 449  ****
                    530: c
                    531:       if (iczero) 34490, 4490, 34490
                    532:  4490 continue
                    533:       ivon01 = 51
                    534:       ivon03 = 13
                    535:       ivcomp = ivon01 * 23 * ivon03
                    536:       go to 44490
                    537: 34490 ivdele = ivdele + 1
                    538:       write (i02,80003) ivtnum
                    539:       if (iczero) 44490, 4501, 44490
                    540: 44490 if (ivcomp - 15249) 24490,14490,24490
                    541: 14490 ivpass = ivpass + 1
                    542:       write (i02,80001) ivtnum
                    543:       go to 4501
                    544: 24490 ivfail = ivfail + 1
                    545:       ivcorr = 15249
                    546:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    547:  4501 continue
                    548:       ivtnum = 450
                    549: c
                    550: c      ****  test 450  ****
                    551: c
                    552:       if (iczero) 34500, 4500, 34500
                    553:  4500 continue
                    554:       ivon02 = 2
                    555:       ivon03 = 5461
                    556:       ivcomp = 3 * ivon02 * ivon03
                    557:       go to 44500
                    558: 34500 ivdele = ivdele + 1
                    559:       write (i02,80003) ivtnum
                    560:       if (iczero) 44500, 4511, 44500
                    561: 44500 if (ivcomp -32766) 24500,14500,24500
                    562: 14500 ivpass = ivpass + 1
                    563:       write (i02,80001) ivtnum
                    564:       go to 4511
                    565: 24500 ivfail = ivfail + 1
                    566:       ivcorr = 32766
                    567:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    568:  4511 continue
                    569:       ivtnum = 451
                    570: c
                    571: c      ****  test 451  ****
                    572: c
                    573:       if (iczero) 34510, 4510, 34510
                    574:  4510 continue
                    575:       ivon01 = -51
                    576:       ivon03 = 13
                    577:       ivcomp = ivon01 * 23 * (-ivon03)
                    578:       go to 44510
                    579: 34510 ivdele = ivdele + 1
                    580:       write (i02,80003) ivtnum
                    581:       if (iczero) 44510, 4521, 44510
                    582: 44510 if (ivcomp - 15249) 24510,14510,24510
                    583: 14510 ivpass = ivpass + 1
                    584:       write (i02,80001) ivtnum
                    585:       go to 4521
                    586: 24510 ivfail = ivfail + 1
                    587:       ivcorr = 15249
                    588:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    589:  4521 continue
                    590:       ivtnum = 452
                    591: c
                    592: c      ****  test 452  ****
                    593: c
                    594:       if (iczero) 34520, 4520, 34520
                    595:  4520 continue
                    596:       ivon01 = -5461
                    597:       ivon03 = 2
                    598:       ivcomp = ivon01 * (-3) * ivon03
                    599:       go to 44520
                    600: 34520 ivdele = ivdele + 1
                    601:       write (i02,80003) ivtnum
                    602:       if (iczero) 44520, 4531, 44520
                    603: 44520 if (ivcomp - 32766) 24520,14520,24520
                    604: 14520 ivpass = ivpass + 1
                    605:       write (i02,80001) ivtnum
                    606:       go to 4531
                    607: 24520 ivfail = ivfail + 1
                    608:       ivcorr = 32766
                    609:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    610: c
                    611: c     test 453 through test 461 contain two integer variables and one
                    612: c     integer constant in an arithmetic expression.  parentheses are
                    613: c     used to group elements in the arithmetic expressions in these
                    614: c     tests.
                    615: c
                    616:  4531 continue
                    617:       ivtnum = 453
                    618: c
                    619: c      ****  test 453  ****
                    620: c
                    621:       if (iczero) 34530, 4530, 34530
                    622:  4530 continue
                    623:       ivon01 = 2
                    624:       ivon02 = 3
                    625:       ivcomp = ivon01 * (ivon02 * 4)
                    626:       go to 44530
                    627: 34530 ivdele = ivdele + 1
                    628:       write (i02,80003) ivtnum
                    629:       if (iczero) 44530, 4541, 44530
                    630: 44530 if (ivcomp - 24) 24530,14530,24530
                    631: 14530 ivpass = ivpass + 1
                    632:       write (i02,80001) ivtnum
                    633:       go to 4541
                    634: 24530 ivfail = ivfail + 1
                    635:       ivcorr = 24
                    636:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    637:  4541 continue
                    638:       ivtnum = 454
                    639: c
                    640: c      ****  test 454  ****
                    641: c
                    642:       if (iczero) 34540, 4540, 34540
                    643:  4540 continue
                    644:       ivon01 = 2
                    645:       ivon02 = 3
                    646:       ivcomp = (ivon01 * ivon02) * 4
                    647:       go to 44540
                    648: 34540 ivdele = ivdele + 1
                    649:       write (i02,80003) ivtnum
                    650:       if (iczero) 44540, 4551, 44540
                    651: 44540 if (ivcomp -24) 24540,14540,24540
                    652: 14540 ivpass = ivpass + 1
                    653:       write (i02,80001) ivtnum
                    654:       go to 4551
                    655: 24540 ivfail = ivfail + 1
                    656:       ivcorr = 24
                    657:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    658:  4551 continue
                    659:       ivtnum = 455
                    660: c
                    661: c      ****  test 455  ****
                    662: c
                    663:       if (iczero) 34550, 4550, 34550
                    664:  4550 continue
                    665:       ivon01 = -2
                    666:       ivon02 = 3
                    667:       ivcomp = ivon01 *(ivon02 * (-4))
                    668:       go to 44550
                    669: 34550 ivdele = ivdele + 1
                    670:       write (i02,80003) ivtnum
                    671:       if (iczero) 44550, 4561, 44550
                    672: 44550 if (ivcomp - 24) 24550,14550,24550
                    673: 14550 ivpass = ivpass + 1
                    674:       write (i02,80001) ivtnum
                    675:       go to 4561
                    676: 24550 ivfail = ivfail + 1
                    677:       ivcorr = 24
                    678:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    679:  4561 continue
                    680:       ivtnum = 456
                    681: c
                    682: c      ****  test 456  ****
                    683: c
                    684:       if (iczero) 34560, 4560, 34560
                    685:  4560 continue
                    686:       ivon01 = -2
                    687:       ivon02 = -3
                    688:       ivcomp = ivon01 * (ivon02 * 4)
                    689:       go to 44560
                    690: 34560 ivdele = ivdele + 1
                    691:       write (i02,80003) ivtnum
                    692:       if (iczero) 44560, 4571, 44560
                    693: 44560 if (ivcomp -24) 24560,14560,24560
                    694: 14560 ivpass = ivpass + 1
                    695:       write (i02,80001) ivtnum
                    696:       go to 4571
                    697: 24560 ivfail = ivfail + 1
                    698:       ivcorr = 24
                    699:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    700:  4571 continue
                    701:       ivtnum = 457
                    702: c
                    703: c      ****  test 457  ****
                    704: c
                    705:       if (iczero) 34570, 4570, 34570
                    706:  4570 continue
                    707:       ivon01 = -2
                    708:       ivon02 = -3
                    709:       ivcomp = (ivon01*ivon02) * (-4)
                    710:       go to 44570
                    711: 34570 ivdele = ivdele + 1
                    712:       write (i02,80003) ivtnum
                    713:       if (iczero) 44570, 4581, 44570
                    714: 44570 if (ivcomp +24) 24570,14570,24570
                    715: 14570 ivpass = ivpass + 1
                    716:       write (i02,80001) ivtnum
                    717:       go to 4581
                    718: 24570 ivfail = ivfail + 1
                    719:       ivcorr = -24
                    720:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    721:  4581 continue
                    722:       ivtnum = 458
                    723: c
                    724: c      ****  test 458  ****
                    725: c
                    726:       if (iczero) 34580, 4580, 34580
                    727:  4580 continue
                    728:       ivon01 = 23
                    729:       ivon03 = 13
                    730:       ivcomp = ivon01 * (51 * ivon03)
                    731:       go to 44580
                    732: 34580 ivdele = ivdele + 1
                    733:       write (i02,80003) ivtnum
                    734:       if (iczero) 44580, 4591, 44580
                    735: 44580 if (ivcomp -15249) 24580,14580,24580
                    736: 14580 ivpass = ivpass + 1
                    737:       write (i02,80001) ivtnum
                    738:       go to 4591
                    739: 24580 ivfail = ivfail + 1
                    740:       ivcorr = 15249
                    741:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    742:  4591 continue
                    743:       ivtnum = 459
                    744: c
                    745: c      ****  test 459  ****
                    746: c
                    747:       if (iczero) 34590, 4590, 34590
                    748:  4590 continue
                    749:       ivon02 = 51
                    750:       ivon03 = 13
                    751:       ivcomp = (23 * ivon02) * ivon03
                    752:       go to 44590
                    753: 34590 ivdele = ivdele + 1
                    754:       write (i02,80003) ivtnum
                    755:       if (iczero) 44590, 4601, 44590
                    756: 44590 if (ivcomp - 15249) 24590,14590,24590
                    757: 14590 ivpass = ivpass + 1
                    758:       write (i02,80001) ivtnum
                    759:       go to 4601
                    760: 24590 ivfail = ivfail + 1
                    761:       ivcorr = 15249
                    762:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    763:  4601 continue
                    764:       ivtnum = 460
                    765: c
                    766: c      ****  test 460  ****
                    767: c
                    768:       if (iczero) 34600, 4600, 34600
                    769:  4600 continue
                    770:       ivon01 = -23
                    771:       ivon03 = 13
                    772:       ivcomp = (ivon01 * (-51)) * (-ivon03)
                    773:       go to 44600
                    774: 34600 ivdele = ivdele + 1
                    775:       write (i02,80003) ivtnum
                    776:       if (iczero) 44600, 4611, 44600
                    777: 44600 if (ivcomp + 15249) 24600,14600,24600
                    778: 14600 ivpass = ivpass + 1
                    779:       write (i02,80001) ivtnum
                    780:       go to 4611
                    781: 24600 ivfail = ivfail + 1
                    782:       ivcorr = -15249
                    783:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    784:  4611 continue
                    785:       ivtnum = 461
                    786: c
                    787: c      ****  test 461  ****
                    788: c
                    789:       if (iczero) 34610, 4610, 34610
                    790:  4610 continue
                    791:       ivon02 = 51
                    792:       ivon03 = 13
                    793:       ivcomp = -23 * (ivon02*ivon03)
                    794:       go to 44610
                    795: 34610 ivdele = ivdele + 1
                    796:       write (i02,80003) ivtnum
                    797:       if (iczero) 44610, 4621, 44610
                    798: 44610 if (ivcomp + 15249) 24610,14610,24610
                    799: 14610 ivpass = ivpass + 1
                    800:       write (i02,80001) ivtnum
                    801:       go to 4621
                    802: 24610 ivfail = ivfail + 1
                    803:       ivcorr = -15249
                    804:       write (i02,80004) ivtnum, ivcomp ,ivcorr
                    805: c      ****    end of tests    ****
                    806:  4621 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 fm035)
                    847:       end

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.