Annotation of 43BSDTahoe/usr.bin/f77/testf77/tests/fm040.f, revision 1.1

1.1     ! root        1: c     comment section
        !             2: c
        !             3: c     fm040
        !             4: c
        !             5: c         this routine tests arithmetic assignment statements of the
        !             6: c         form      integer variable = arithmetic expression
        !             7: c     where the arithmetic expression is formed with the arithmetic
        !             8: c     operator /, integer variables and an integer constant.  both
        !             9: c     positive and negative values are used for the integer variables
        !            10: c     and the integer constant.
        !            11: c
        !            12: c         there are tests which require no truncation of the result and
        !            13: c     tests where the result must be truncated before being stored in
        !            14: c     the resultant integer variable.  some of the tests use parens
        !            15: c     to group elements in the arithmetic expression.
        !            16: c
        !            17: c         there are tests where the arithmetic expression contains
        !            18: c             (1) integer variable/integer variable
        !            19: c             (2) integer variable/integer variable/integer constant
        !            20: c                 integer variable/integer constant/integer variable
        !            21: c                 integer constant/integer variable/integer variable
        !            22: c             (3) same as (2) but with parentheses to group elements
        !            23: c                   in the arithmetic expression.
        !            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
        !           107: c         arithmetic assignment statement
        !           108: c
        !           109: c     test 582 through test 597 contain arithmetic assignment statements
        !           110: c     of the form       integer variable=integer variable/integer var.
        !           111: c
        !           112: c     test 582 through test 585 - positive values
        !           113: c                   no truncation required
        !           114: c
        !           115:  5821 continue
        !           116:       ivtnum = 582
        !           117: c
        !           118: c      ****  test 582  ****
        !           119: c
        !           120:       if (iczero) 35820, 5820, 35820
        !           121:  5820 continue
        !           122:       ivon01 = 4
        !           123:       ivon02 = 2
        !           124:       ivcomp = ivon01 / ivon02
        !           125:       go to 45820
        !           126: 35820 ivdele = ivdele + 1
        !           127:       write (i02,80003) ivtnum
        !           128:       if (iczero) 45820, 5831, 45820
        !           129: 45820 if (ivcomp -2) 25820,15820,25820
        !           130: 15820 ivpass = ivpass + 1
        !           131:       write (i02,80001) ivtnum
        !           132:       go to 5831
        !           133: 25820 ivfail = ivfail + 1
        !           134:       ivcorr = 2
        !           135:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           136:  5831 continue
        !           137:       ivtnum = 583
        !           138: c
        !           139: c      ****  test 583  ****
        !           140: c
        !           141:       if (iczero) 35830, 5830, 35830
        !           142:  5830 continue
        !           143:       ivon01 = 3575
        !           144:       ivon02 = 25
        !           145:       ivcomp = ivon01/ivon02
        !           146:       go to 45830
        !           147: 35830 ivdele = ivdele + 1
        !           148:       write (i02,80003) ivtnum
        !           149:       if (iczero) 45830, 5841, 45830
        !           150: 45830 if (ivcomp - 143) 25830,15830,25830
        !           151: 15830 ivpass = ivpass + 1
        !           152:       write (i02,80001) ivtnum
        !           153:       go to 5841
        !           154: 25830 ivfail = ivfail + 1
        !           155:       ivcorr = 143
        !           156:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           157:  5841 continue
        !           158:       ivtnum = 584
        !           159: c
        !           160: c      ****  test 584  ****
        !           161: c
        !           162:       if (iczero) 35840, 5840, 35840
        !           163:  5840 continue
        !           164:       ivon01 = 6170
        !           165:       ivon02 = 1234
        !           166:       ivcomp = ivon01/ivon02
        !           167:       go to 45840
        !           168: 35840 ivdele = ivdele + 1
        !           169:       write (i02,80003) ivtnum
        !           170:       if (iczero) 45840, 5851, 45840
        !           171: 45840 if (ivcomp - 5) 25840,15840,25840
        !           172: 15840 ivpass = ivpass + 1
        !           173:       write (i02,80001) ivtnum
        !           174:       go to 5851
        !           175: 25840 ivfail = ivfail + 1
        !           176:       ivcorr = 5
        !           177:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           178:  5851 continue
        !           179:       ivtnum = 585
        !           180: c
        !           181: c      ****  test 585  ****
        !           182: c
        !           183:       if (iczero) 35850, 5850, 35850
        !           184:  5850 continue
        !           185:       ivon01 = 32767
        !           186:       ivon02 = 1
        !           187:       ivcomp = ivon01/ivon02
        !           188:       go to 45850
        !           189: 35850 ivdele = ivdele + 1
        !           190:       write (i02,80003) ivtnum
        !           191:       if (iczero) 45850, 5861, 45850
        !           192: 45850 if (ivcomp - 32767) 25850,15850,25850
        !           193: 15850 ivpass = ivpass + 1
        !           194:       write (i02,80001) ivtnum
        !           195:       go to 5861
        !           196: 25850 ivfail = ivfail + 1
        !           197:       ivcorr = 32767
        !           198:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           199: c
        !           200: c     test 586 through test 589  -  positive values
        !           201: c                   truncation of result required
        !           202: c
        !           203:  5861 continue
        !           204:       ivtnum = 586
        !           205: c
        !           206: c      ****  test 586  ****
        !           207: c
        !           208:       if (iczero) 35860, 5860, 35860
        !           209:  5860 continue
        !           210:       ivon01 = 2
        !           211:       ivon02 = 3
        !           212:       ivcomp = ivon01/ivon02
        !           213:       go to 45860
        !           214: 35860 ivdele = ivdele + 1
        !           215:       write (i02,80003) ivtnum
        !           216:       if (iczero) 45860, 5871, 45860
        !           217: 45860 if (ivcomp) 25860,15860,25860
        !           218: 15860 ivpass = ivpass + 1
        !           219:       write (i02,80001) ivtnum
        !           220:       go to 5871
        !           221: 25860 ivfail = ivfail + 1
        !           222:       ivcorr = 0
        !           223:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           224:  5871 continue
        !           225:       ivtnum = 587
        !           226: c
        !           227: c      ****  test 587  ****
        !           228: c
        !           229:       if (iczero) 35870, 5870, 35870
        !           230:  5870 continue
        !           231:       ivon01 = 959
        !           232:       ivon02 = 120
        !           233:       ivcomp = ivon01/ivon02
        !           234:       go to 45870
        !           235: 35870 ivdele = ivdele + 1
        !           236:       write (i02,80003) ivtnum
        !           237:       if (iczero) 45870, 5881, 45870
        !           238: 45870 if (ivcomp - 7) 25870,15870,25870
        !           239: 15870 ivpass = ivpass + 1
        !           240:       write (i02,80001) ivtnum
        !           241:       go to 5881
        !           242: 25870 ivfail = ivfail + 1
        !           243:       ivcorr = 7
        !           244:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           245:  5881 continue
        !           246:       ivtnum = 588
        !           247: c
        !           248: c      ****  test 588  ****
        !           249: c
        !           250:       if (iczero) 35880, 5880, 35880
        !           251:  5880 continue
        !           252:       ivon01 = 26606
        !           253:       ivon02 = 8
        !           254:       ivcomp = ivon01/ivon02
        !           255:       go to 45880
        !           256: 35880 ivdele = ivdele + 1
        !           257:       write (i02,80003) ivtnum
        !           258:       if (iczero) 45880, 5891, 45880
        !           259: 45880 if (ivcomp - 3325) 25880,15880,25880
        !           260: 15880 ivpass = ivpass + 1
        !           261:       write (i02,80001) ivtnum
        !           262:       go to 5891
        !           263: 25880 ivfail = ivfail + 1
        !           264:       ivcorr = 3325
        !           265:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           266:  5891 continue
        !           267:       ivtnum = 589
        !           268: c
        !           269: c      ****  test 589  ****
        !           270: c
        !           271:       if (iczero) 35890, 5890, 35890
        !           272:  5890 continue
        !           273:       ivon01 = 25603
        !           274:       ivon02 = 10354
        !           275:       ivcomp = ivon01/ivon02
        !           276:       go to 45890
        !           277: 35890 ivdele = ivdele + 1
        !           278:       write (i02,80003) ivtnum
        !           279:       if (iczero) 45890, 5901, 45890
        !           280: 45890 if (ivcomp - 2) 25890,15890,25890
        !           281: 15890 ivpass = ivpass + 1
        !           282:       write (i02,80001) ivtnum
        !           283:       go to 5901
        !           284: 25890 ivfail = ivfail + 1
        !           285:       ivcorr = 2
        !           286:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           287: c
        !           288: c     test 590 through test 593  - negative values included
        !           289: c               no truncation required
        !           290: c
        !           291:  5901 continue
        !           292:       ivtnum = 590
        !           293: c
        !           294: c      ****  test 590  ****
        !           295: c
        !           296:       if (iczero) 35900, 5900, 35900
        !           297:  5900 continue
        !           298:       ivon01 = 75
        !           299:       ivon02 = -25
        !           300:       ivcomp = ivon01/ivon02
        !           301:       go to 45900
        !           302: 35900 ivdele = ivdele + 1
        !           303:       write (i02,80003) ivtnum
        !           304:       if (iczero) 45900, 5911, 45900
        !           305: 45900 if (ivcomp + 3) 25900,15900,25900
        !           306: 15900 ivpass = ivpass + 1
        !           307:       write (i02,80001) ivtnum
        !           308:       go to 5911
        !           309: 25900 ivfail = ivfail + 1
        !           310:       ivcorr = -3
        !           311:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           312:  5911 continue
        !           313:       ivtnum = 591
        !           314: c
        !           315: c      ****  test 591  ****
        !           316: c
        !           317:       if (iczero) 35910, 5910, 35910
        !           318:  5910 continue
        !           319:       ivon01 = -6170
        !           320:       ivon02 = -1234
        !           321:       ivcomp = ivon01/ivon02
        !           322:       go to 45910
        !           323: 35910 ivdele = ivdele + 1
        !           324:       write (i02,80003) ivtnum
        !           325:       if (iczero) 45910, 5921, 45910
        !           326: 45910 if (ivcomp -5) 25910,15910,25910
        !           327: 15910 ivpass = ivpass + 1
        !           328:       write (i02,80001) ivtnum
        !           329:       go to 5921
        !           330: 25910 ivfail = ivfail + 1
        !           331:       ivcorr = 5
        !           332:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           333:  5921 continue
        !           334:       ivtnum = 592
        !           335: c
        !           336: c      ****  test 592  ****
        !           337: c
        !           338:       if (iczero) 35920, 5920, 35920
        !           339:  5920 continue
        !           340:       ivon01 = 32766
        !           341:       ivon02 = -2
        !           342:       ivcomp =-ivon01/ivon02
        !           343:       go to 45920
        !           344: 35920 ivdele = ivdele + 1
        !           345:       write (i02,80003) ivtnum
        !           346:       if (iczero) 45920, 5931, 45920
        !           347: 45920 if (ivcomp - 16383) 25920,15920,25920
        !           348: 15920 ivpass = ivpass + 1
        !           349:       write (i02,80001) ivtnum
        !           350:       go to 5931
        !           351: 25920 ivfail = ivfail + 1
        !           352:       ivcorr = 16383
        !           353:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           354:  5931 continue
        !           355:       ivtnum = 593
        !           356: c
        !           357: c      ****  test 593  ****
        !           358: c
        !           359:       if (iczero) 35930, 5930, 35930
        !           360:  5930 continue
        !           361:       ivon01 = 4
        !           362:       ivon02 = 2
        !           363:       ivcomp = ivon01/(-ivon02)
        !           364:       go to 45930
        !           365: 35930 ivdele = ivdele + 1
        !           366:       write (i02,80003) ivtnum
        !           367:       if (iczero) 45930, 5941, 45930
        !           368: 45930 if (ivcomp + 2) 25930,15930,25930
        !           369: 15930 ivpass = ivpass + 1
        !           370:       write (i02,80001) ivtnum
        !           371:       go to 5941
        !           372: 25930 ivfail = ivfail + 1
        !           373:       ivcorr = -2
        !           374:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           375: c
        !           376: c     test 594 through test 597  -  negative values included
        !           377: c                      truncation of result required
        !           378: c
        !           379:  5941 continue
        !           380:       ivtnum = 594
        !           381: c
        !           382: c      ****  test 594  ****
        !           383: c
        !           384:       if (iczero) 35940, 5940, 35940
        !           385:  5940 continue
        !           386:       ivon01 = -5
        !           387:       ivon02 = 2
        !           388:       ivcomp = ivon01/ivon02
        !           389:       go to 45940
        !           390: 35940 ivdele = ivdele + 1
        !           391:       write (i02,80003) ivtnum
        !           392:       if (iczero) 45940, 5951, 45940
        !           393: 45940 if (ivcomp + 2) 25940,15940,25940
        !           394: 15940 ivpass = ivpass + 1
        !           395:       write (i02,80001) ivtnum
        !           396:       go to 5951
        !           397: 25940 ivfail = ivfail + 1
        !           398:       ivcorr = -2
        !           399:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           400:  5951 continue
        !           401:       ivtnum = 595
        !           402: c
        !           403: c      ****  test 595  ****
        !           404: c
        !           405:       if (iczero) 35950, 5950, 35950
        !           406:  5950 continue
        !           407:       ivon01 = -25603
        !           408:       ivon02 = -10354
        !           409:       ivcomp = ivon01/ivon02
        !           410:       go to 45950
        !           411: 35950 ivdele = ivdele + 1
        !           412:       write (i02,80003) ivtnum
        !           413:       if (iczero) 45950, 5961, 45950
        !           414: 45950 if (ivcomp -2) 25950,15950,25950
        !           415: 15950 ivpass = ivpass + 1
        !           416:       write (i02,80001) ivtnum
        !           417:       go to 5961
        !           418: 25950 ivfail = ivfail + 1
        !           419:       ivcorr =2
        !           420:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           421:  5961 continue
        !           422:       ivtnum = 596
        !           423: c
        !           424: c      ****  test 596  ****
        !           425: c
        !           426:       if (iczero) 35960, 5960, 35960
        !           427:  5960 continue
        !           428:       ivon01 = 25603
        !           429:       ivon02 = 10354
        !           430:       ivcomp = -ivon01/ivon02
        !           431:       go to 45960
        !           432: 35960 ivdele = ivdele + 1
        !           433:       write (i02,80003) ivtnum
        !           434:       if (iczero) 45960, 5971, 45960
        !           435: 45960 if (ivcomp +2) 25960,15960,25960
        !           436: 15960 ivpass = ivpass + 1
        !           437:       write (i02,80001) ivtnum
        !           438:       go to 5971
        !           439: 25960 ivfail = ivfail + 1
        !           440:       ivcorr = -2
        !           441:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           442:  5971 continue
        !           443:       ivtnum = 597
        !           444: c
        !           445: c      ****  test 597  ****
        !           446: c
        !           447:       if (iczero) 35970, 5970, 35970
        !           448:  5970 continue
        !           449:       ivon01 = 25603
        !           450:       ivon02 = -2
        !           451:       ivcomp = -(ivon01/ivon02)
        !           452:       go to 45970
        !           453: 35970 ivdele = ivdele + 1
        !           454:       write (i02,80003) ivtnum
        !           455:       if (iczero) 45970, 5981, 45970
        !           456: 45970 if (ivcomp - 12801) 25970,15970,25970
        !           457: 15970 ivpass = ivpass + 1
        !           458:       write (i02,80001) ivtnum
        !           459:       go to 5981
        !           460: 25970 ivfail = ivfail + 1
        !           461:       ivcorr = 12801
        !           462:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           463: c
        !           464: c     test 598 through test 614 contain two integer variables, an
        !           465: c     integer constant and operator / in an arithmetic expression.
        !           466: c
        !           467: c         test 598 through test 603  -  no parens to group elements but
        !           468: c                   there are parens surrounding negative constants
        !           469: c
        !           470: c     test 598 and test 599  -  iv = iv/iv/ic.
        !           471: c
        !           472:  5981 continue
        !           473:       ivtnum = 598
        !           474: c
        !           475: c      ****  test 598  ****
        !           476: c
        !           477:       if (iczero) 35980, 5980, 35980
        !           478:  5980 continue
        !           479:       ivon01 = 32766
        !           480:       ivon02 = 2
        !           481:       ivcomp = ivon01/ivon02/3
        !           482:       go to 45980
        !           483: 35980 ivdele = ivdele + 1
        !           484:       write (i02,80003) ivtnum
        !           485:       if (iczero) 45980, 5991, 45980
        !           486: 45980 if (ivcomp - 5461) 25980,15980,25980
        !           487: 15980 ivpass = ivpass + 1
        !           488:       write (i02,80001) ivtnum
        !           489:       go to 5991
        !           490: 25980 ivfail = ivfail + 1
        !           491:       ivcorr = 5461
        !           492:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           493:  5991 continue
        !           494:       ivtnum = 599
        !           495: c
        !           496: c      ****  test 599  ****
        !           497: c
        !           498:       if (iczero) 35990, 5990, 35990
        !           499:  5990 continue
        !           500:       ivon01 = 7151
        !           501:       ivon02 = 3
        !           502:       ivcomp = ivon01/ivon02/10
        !           503:       go to 45990
        !           504: 35990 ivdele = ivdele + 1
        !           505:       write (i02,80003) ivtnum
        !           506:       if (iczero) 45990, 6001, 45990
        !           507: 45990 if (ivcomp -238) 25990,15990,25990
        !           508: 15990 ivpass = ivpass + 1
        !           509:       write (i02,80001) ivtnum
        !           510:       go to 6001
        !           511: 25990 ivfail = ivfail + 1
        !           512:       ivcorr = 238
        !           513:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           514: c
        !           515: c     test 600 and test 601   -  iv= iv/ic/iv.
        !           516: c
        !           517:  6001 continue
        !           518:       ivtnum = 600
        !           519: c
        !           520: c      ****  test 600  ****
        !           521: c
        !           522:       if (iczero) 36000, 6000, 36000
        !           523:  6000 continue
        !           524:       ivon01 = -7150
        !           525:       ivon03 = -25
        !           526:       ivcomp = ivon01/(-2)/ivon03
        !           527:       go to 46000
        !           528: 36000 ivdele = ivdele + 1
        !           529:       write (i02,80003) ivtnum
        !           530:       if (iczero) 46000, 6011, 46000
        !           531: 46000 if (ivcomp + 143)  26000,16000,26000
        !           532: 16000 ivpass = ivpass + 1
        !           533:       write (i02,80001) ivtnum
        !           534:       go to 6011
        !           535: 26000 ivfail = ivfail + 1
        !           536:       ivcorr = -143
        !           537:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           538:  6011 continue
        !           539:       ivtnum = 601
        !           540: c
        !           541: c      ****  test 601  ****
        !           542: c
        !           543:       if (iczero) 36010, 6010, 36010
        !           544:  6010 continue
        !           545:       ivon01 = 32767
        !           546:       ivon03 = -1
        !           547:       ivcomp = ivon01/2/ivon03
        !           548:       go to 46010
        !           549: 36010 ivdele = ivdele + 1
        !           550:       write (i02,80003) ivtnum
        !           551:       if (iczero) 46010, 6021, 46010
        !           552: 46010 if (ivcomp + 16383) 26010,16010,26010
        !           553: 16010 ivpass = ivpass + 1
        !           554:       write (i02,80001) ivtnum
        !           555:       go to 6021
        !           556: 26010 ivfail = ivfail + 1
        !           557:       ivcorr = -16383
        !           558:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           559:  6021 continue
        !           560:       ivtnum = 602
        !           561: c
        !           562: c      ****  test 602  ****
        !           563: c
        !           564: c     test 602 and test 603   -  iv=ic/iv/iv
        !           565: c
        !           566: c
        !           567:       if (iczero) 36020, 6020, 36020
        !           568:  6020 continue
        !           569:       ivon02 = 13
        !           570:       ivon03 = 51
        !           571:       ivcomp = 15249/ivon02/ivon03
        !           572:       go to 46020
        !           573: 36020 ivdele = ivdele + 1
        !           574:       write (i02,80003) ivtnum
        !           575:       if (iczero) 46020, 6031, 46020
        !           576: 46020 if (ivcomp - 23) 26020,16020,26020
        !           577: 16020 ivpass = ivpass + 1
        !           578:       write (i02,80001) ivtnum
        !           579:       go to 6031
        !           580: 26020 ivfail = ivfail + 1
        !           581:       ivcorr = 23
        !           582:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           583:  6031 continue
        !           584:       ivtnum = 603
        !           585: c
        !           586: c      ****  test 603  ****
        !           587: c
        !           588:       if (iczero) 36030, 6030, 36030
        !           589:  6030 continue
        !           590:       ivon02 = -13
        !           591:       ivon03 = -51
        !           592:       ivcomp = -15249/ivon02/ivon03
        !           593:       go to 46030
        !           594: 36030 ivdele = ivdele + 1
        !           595:       write (i02,80003) ivtnum
        !           596:       if (iczero) 46030, 6041, 46030
        !           597: 46030 if (ivcomp +23) 26030,16030,26030
        !           598: 16030 ivpass = ivpass + 1
        !           599:       write (i02,80001) ivtnum
        !           600:       go to 6041
        !           601: 26030 ivfail = ivfail + 1
        !           602:       ivcorr = -23
        !           603:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           604: c
        !           605: c     test 604 through test 614  - parentheses are used to group
        !           606: c     elements in the arithmetic expressions.
        !           607: c
        !           608: c     test 604 and test 605  -  iv=(iv/iv)/ic.
        !           609: c
        !           610:  6041 continue
        !           611:       ivtnum = 604
        !           612: c
        !           613: c      ****  test 604  ****
        !           614: c
        !           615:       if (iczero) 36040, 6040, 36040
        !           616:  6040 continue
        !           617:       ivon01 = 32766
        !           618:       ivon02 = 2
        !           619:       ivcomp =(ivon01/ivon02)/3
        !           620:       go to 46040
        !           621: 36040 ivdele = ivdele + 1
        !           622:       write (i02,80003) ivtnum
        !           623:       if (iczero) 46040, 6051, 46040
        !           624: 46040 if (ivcomp -5461) 26040,16040,26040
        !           625: 16040 ivpass = ivpass + 1
        !           626:       write (i02,80001) ivtnum
        !           627:       go to 6051
        !           628: 26040 ivfail = ivfail + 1
        !           629:       ivcorr = 5461
        !           630:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           631:  6051 continue
        !           632:       ivtnum = 605
        !           633: c
        !           634: c      ****  test 605  ****
        !           635: c
        !           636:       if (iczero) 36050, 6050, 36050
        !           637:  6050 continue
        !           638:       ivon01 = 7151
        !           639:       ivon02 =  3
        !           640:       ivcomp = (ivon01/ivon02)/10
        !           641:       go to 46050
        !           642: 36050 ivdele = ivdele + 1
        !           643:       write (i02,80003) ivtnum
        !           644:       if (iczero) 46050, 6061, 46050
        !           645: 46050 if (ivcomp - 238) 26050,16050,26050
        !           646: 16050 ivpass = ivpass + 1
        !           647:       write (i02,80001) ivtnum
        !           648:       go to 6061
        !           649: 26050 ivfail = ivfail + 1
        !           650:       ivcorr = 238
        !           651:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           652: c
        !           653: c     test 606 and test 607  -  iv=iv/(iv/ic).
        !           654: c
        !           655:  6061 continue
        !           656:       ivtnum = 606
        !           657: c
        !           658: c      ****  test 606  ****
        !           659: c
        !           660:       if (iczero) 36060, 6060, 36060
        !           661:  6060 continue
        !           662:       ivon01 = -7154
        !           663:       ivon02 =  26
        !           664:       ivcomp = ivon01/(ivon02/5)
        !           665:       go to 46060
        !           666: 36060 ivdele = ivdele + 1
        !           667:       write (i02,80003) ivtnum
        !           668:       if (iczero) 46060, 6071, 46060
        !           669: 46060 if (ivcomp + 1430) 26060,16060,26060
        !           670: 16060 ivpass = ivpass + 1
        !           671:       write (i02,80001) ivtnum
        !           672:       go to 6071
        !           673: 26060 ivfail = ivfail + 1
        !           674:       ivcorr = -1430
        !           675:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           676:  6071 continue
        !           677:       ivtnum = 607
        !           678: c
        !           679: c      ****  test 607  ****
        !           680: c
        !           681:       if (iczero) 36070, 6070, 36070
        !           682:  6070 continue
        !           683:       ivon01 = 29
        !           684:       ivon02 = -5
        !           685:       ivcomp = ivon01/(ivon02/2)
        !           686:       go to 46070
        !           687: 36070 ivdele = ivdele + 1
        !           688:       write (i02,80003) ivtnum
        !           689:       if (iczero) 46070, 6081, 46070
        !           690: 46070 if (ivcomp + 14) 26070,16070,26070
        !           691: 16070 ivpass = ivpass + 1
        !           692:       write (i02,80001) ivtnum
        !           693:       go to 6081
        !           694: 26070 ivfail = ivfail + 1
        !           695:       ivcorr = -14
        !           696:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           697: c
        !           698: c     test 608 and test 609  -  iv = (iv/ic)/iv.
        !           699: c
        !           700:  6081 continue
        !           701:       ivtnum = 608
        !           702: c
        !           703: c      ****  test 608  ****
        !           704: c
        !           705:       if (iczero) 36080, 6080, 36080
        !           706:  6080 continue
        !           707:       ivon01 = 24
        !           708:       ivon03 =  3
        !           709:       ivcomp = (ivon01/3)/ivon03
        !           710:       go to 46080
        !           711: 36080 ivdele = ivdele + 1
        !           712:       write (i02,80003) ivtnum
        !           713:       if (iczero) 46080, 6091, 46080
        !           714: 46080 if (ivcomp -2) 26080,16080,26080
        !           715: 16080 ivpass = ivpass + 1
        !           716:       write (i02,80001) ivtnum
        !           717:       go to 6091
        !           718: 26080 ivfail = ivfail + 1
        !           719:       ivcorr = 2
        !           720:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           721:  6091 continue
        !           722:       ivtnum = 609
        !           723: c
        !           724: c      ****  test 609  ****
        !           725: c
        !           726:       if (iczero) 36090, 6090, 36090
        !           727:  6090 continue
        !           728:       ivon01 = 7151
        !           729:       ivon03 = 10
        !           730:       ivcomp = (ivon01/(-3))/ivon03
        !           731:       go to 46090
        !           732: 36090 ivdele = ivdele + 1
        !           733:       write (i02,80003) ivtnum
        !           734:       if (iczero) 46090, 6101, 46090
        !           735: 46090 if (ivcomp + 238) 26090,16090,26090
        !           736: 16090 ivpass = ivpass + 1
        !           737:       write (i02,80001) ivtnum
        !           738:       go to 6101
        !           739: 26090 ivfail = ivfail + 1
        !           740:       ivcorr = -238
        !           741:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           742: c
        !           743: c     test 610 and test 611  -  iv=iv(ic/iv)
        !           744: c
        !           745:  6101 continue
        !           746:       ivtnum = 610
        !           747: c
        !           748: c      ****  test 610  ****
        !           749: c
        !           750:       if (iczero) 36100, 6100, 36100
        !           751:  6100 continue
        !           752:       ivon01 = -7154
        !           753:       ivon03 = -5
        !           754:       ivcomp = ivon01/((-26)/ivon03)
        !           755:       go to 46100
        !           756: 36100 ivdele = ivdele + 1
        !           757:       write (i02,80003) ivtnum
        !           758:       if (iczero) 46100, 6111, 46100
        !           759: 46100 if (ivcomp + 1430) 26100,16100,26100
        !           760: 16100 ivpass = ivpass + 1
        !           761:       write (i02,80001) ivtnum
        !           762:       go to 6111
        !           763: 26100 ivfail = ivfail + 1
        !           764:       ivcorr = -1430
        !           765:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           766:  6111 continue
        !           767:       ivtnum = 611
        !           768: c
        !           769: c      ****  test 611  ****
        !           770: c
        !           771:       if (iczero) 36110, 6110, 36110
        !           772:  6110 continue
        !           773:       ivon01 = 7150
        !           774:       ivon03 = 5
        !           775:       ivcomp = ivon01/((+25)/ivon03)
        !           776:       go to 46110
        !           777: 36110 ivdele = ivdele + 1
        !           778:       write (i02,80003) ivtnum
        !           779:       if (iczero) 46110, 6121, 46110
        !           780: 46110 if (ivcomp -1430) 26110,16110,26110
        !           781: 16110 ivpass = ivpass + 1
        !           782:       write (i02,80001) ivtnum
        !           783:       go to 6121
        !           784: 26110 ivfail = ivfail + 1
        !           785:       ivcorr = 1430
        !           786:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           787:  6121 continue
        !           788:       ivtnum = 612
        !           789: c
        !           790: c      ****  test 612  ****
        !           791: c     test 612  -  iv= (ic/iv)/iv
        !           792: c
        !           793:       if (iczero) 36120, 6120, 36120
        !           794:  6120 continue
        !           795:       ivon02 = -3
        !           796:       ivon03 = -10
        !           797:       ivcomp = (-7154/ivon02)/ivon03
        !           798:       go to 46120
        !           799: 36120 ivdele = ivdele + 1
        !           800:       write (i02,80003) ivtnum
        !           801:       if (iczero) 46120, 6131, 46120
        !           802: 46120 if (ivcomp + 238) 26120,16120,26120
        !           803: 16120 ivpass = ivpass + 1
        !           804:       write (i02,80001) ivtnum
        !           805:       go to 6131
        !           806: 26120 ivfail = ivfail + 1
        !           807:       ivcorr = -238
        !           808:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           809: c
        !           810: c     test 613 and test 614  -  iv=ic/(iv/iv)
        !           811: c
        !           812:  6131 continue
        !           813:       ivtnum = 613
        !           814: c
        !           815: c      ****  test 613  ****
        !           816: c
        !           817:       if (iczero) 36130, 6130, 36130
        !           818:  6130 continue
        !           819:       ivon02 = 8
        !           820:       ivon03 = 4
        !           821:       ivcomp = 24/(ivon02/ivon03)
        !           822:       go to 46130
        !           823: 36130 ivdele = ivdele + 1
        !           824:       write (i02,80003) ivtnum
        !           825:       if (iczero) 46130, 6141, 46130
        !           826: 46130 if (ivcomp - 12) 26130,16130,26130
        !           827: 16130 ivpass = ivpass + 1
        !           828:       write (i02,80001) ivtnum
        !           829:       go to 6141
        !           830: 26130 ivfail = ivfail + 1
        !           831:       ivcorr = 12
        !           832:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           833:  6141 continue
        !           834:       ivtnum = 614
        !           835: c
        !           836: c      ****  test 614  ****
        !           837: c
        !           838:       if (iczero) 36140, 6140, 36140
        !           839:  6140 continue
        !           840:       ivon02 = 25
        !           841:       ivon03 = 5
        !           842:       ivcomp = 7150/(-(ivon02/ivon03))
        !           843:       go to 46140
        !           844: 36140 ivdele = ivdele + 1
        !           845:       write (i02,80003) ivtnum
        !           846:       if (iczero) 46140, 6151, 46140
        !           847: 46140 if (ivcomp + 1430) 26140,16140,26140
        !           848: 16140 ivpass = ivpass + 1
        !           849:       write (i02,80001) ivtnum
        !           850:       go to 6151
        !           851: 26140 ivfail = ivfail + 1
        !           852:       ivcorr = -1430
        !           853:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           854: c      ****    end of tests    ****
        !           855:  6151 continue
        !           856: c
        !           857: c     write page footings and run summaries
        !           858: 99999 continue
        !           859:       write (i02,90002)
        !           860:       write (i02,90006)
        !           861:       write (i02,90002)
        !           862:       write (i02,90002)
        !           863:       write (i02,90007)
        !           864:       write (i02,90002)
        !           865:       write (i02,90008)  ivfail
        !           866:       write (i02,90009) ivpass
        !           867:       write (i02,90010) ivdele
        !           868: c
        !           869: c
        !           870: c     terminate routine execution
        !           871:       stop
        !           872: c
        !           873: c     format statements for page headers
        !           874: 90000 format (1h1)
        !           875: 90002 format (1h )
        !           876: 90001 format (1h ,10x,34hfortran compiler validation system)
        !           877: 90003 format (1h ,21x,11hversion 1.0)
        !           878: 90004 format (1h ,10x,38hfor official use only - copyright 1978)
        !           879: 90005 format (1h ,5x,4htest,5x,9hpass/fail, 5x,8hcomputed,8x,7hcorrect)
        !           880: 90006 format (1h ,5x,46h----------------------------------------------)
        !           881: 90011 format (1h ,18x,17hsubset level test)
        !           882: c
        !           883: c     format statements for run summaries
        !           884: 90008 format (1h ,15x,i5,19h errors encountered)
        !           885: 90009 format (1h ,15x,i5,13h tests passed)
        !           886: 90010 format (1h ,15x,i5,14h tests deleted)
        !           887: c
        !           888: c     format statements for test results
        !           889: 80001 format (1h ,4x,i5,7x,4hpass)
        !           890: 80002 format (1h ,4x,i5,7x,4hfail)
        !           891: 80003 format (1h ,4x,i5,7x,7hdeleted)
        !           892: 80004 format (1h ,4x,i5,7x,4hfail,10x,i6,9x,i6)
        !           893: 80005 format (1h ,4x,i5,7x,4hfail,4x,e12.5,3x,e12.5)
        !           894: c
        !           895: 90007 format (1h ,20x,20hend of program fm040)
        !           896:       end

unix.superglobalmegacorp.com

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