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

1.1     ! root        1: c     comment section
        !             2: c
        !             3: c     fm037
        !             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 three integer
        !             9: c     constants and the arithmetic operator /.  both positive and nega-
        !            10: c     tive constants are used in the arithmetic expression.
        !            11: c
        !            12: c         there are tests which require no truncation of the result
        !            13: c     and tests where the result must be truncated before being stored
        !            14: c     in the resultant integer variable.  the standard states 'the value
        !            15: c     of an integer factor or term is the nearest integer whose magni-
        !            16: c     tude does not exceed the magnitude of the mathematical value
        !            17: c     represented by that factor or term.  the associative and commuta-
        !            18: c     tive laws do not apply in the evaluation of integer terms con-
        !            19: c     taining division, hence the evaluation of such terms must effec-
        !            20: c     tively proceed from left to right.'
        !            21: c
        !            22: c         there are tests where the arithmetic expression contains
        !            23: c             (1)  integer constant/integer constant/integer constant
        !            24: c                      no truncation required
        !            25: c             (2)  integer constant/integer constant/integer constant
        !            26: c                      truncation required
        !            27: c
        !            28: c      references
        !            29: c        american national standard programming language fortran,
        !            30: c              x3.9-1978
        !            31: c
        !            32: c        section 4.3, integer type
        !            33: c        section 4.3.1, integer constant
        !            34: c        section 6.1, arithmetic expressions
        !            35: c        section 6.6, evaluation of expressions
        !            36: c        section 10.1, arithmetic assignment statement
        !            37: c
        !            38: c      **********************************************************
        !            39: c
        !            40: c         a compiler validation system for the fortran language
        !            41: c     based on specifications as defined in american national standard
        !            42: c     programming language fortran x3.9-1978, has been developed by the
        !            43: c     federal cobol compiler testing service.  the fortran compiler
        !            44: c     validation system (fcvs) consists of audit routines, their related
        !            45: c     data, and an executive system.  each audit routine is a fortran
        !            46: c     program, subprogram or function which includes tests of specific
        !            47: c     language elements and supporting procedures indicating the result
        !            48: c     of executing these tests.
        !            49: c
        !            50: c         this particular program/subprogram/function contains features
        !            51: c     found only in the subset as defined in x3.9-1978.
        !            52: c
        !            53: c         suggestions and comments should be forwarded to -
        !            54: c
        !            55: c                  department of the navy
        !            56: c                  federal cobol compiler testing service
        !            57: c                  washington, d.c.  20376
        !            58: c
        !            59: c      **********************************************************
        !            60: c
        !            61: c
        !            62: c
        !            63: c     initialization section
        !            64: c
        !            65: c     initialize constants
        !            66: c      **************
        !            67: c     i01 contains the logical unit number for the card reader.
        !            68:       i01 = 5
        !            69: c     i02 contains the logical unit number for the printer.
        !            70:       i02 = 6
        !            71: c     system environment section
        !            72: c
        !            73: cx010    this card is replaced by contents of fexec x-010 control card.
        !            74: c     the cx010 card is for overriding the program default i01 = 5
        !            75: c     (unit number for card reader).
        !            76: cx011    this card is replaced by contents of fexec x-011 control card.
        !            77: c     the cx011 card is for systems which require additional
        !            78: c     fortran statements for files associated with cx010 above.
        !            79: c
        !            80: cx020    this card is replaced by contents of fexec x-020 control card.
        !            81: c     the cx020 card is for overriding the program default i02 = 6
        !            82: c     (unit number for printer).
        !            83: cx021    this card is replaced by contents of fexec x-021 control card.
        !            84: c     the cx021 card is for systems which require additional
        !            85: c     fortran statements for files associated with cx020 above.
        !            86: c
        !            87:       ivpass=0
        !            88:       ivfail=0
        !            89:       ivdele=0
        !            90:       iczero=0
        !            91: c
        !            92: c     write page headers
        !            93:       write (i02,90000)
        !            94:       write (i02,90001)
        !            95:       write (i02,90002)
        !            96:       write (i02, 90002)
        !            97:       write (i02,90003)
        !            98:       write (i02,90002)
        !            99:       write (i02,90004)
        !           100:       write (i02,90002)
        !           101:       write (i02,90011)
        !           102:       write (i02,90002)
        !           103:       write (i02,90002)
        !           104:       write (i02,90005)
        !           105:       write (i02,90006)
        !           106:       write (i02,90002)
        !           107: c
        !           108: c     test section
        !           109: c
        !           110: c         arithmetic assignment statement
        !           111: c
        !           112: c     test 491 through test 519 contain three integer constants and
        !           113: c     operator / in an arithmetic expression.  the form tested is
        !           114: c         integer variable = integer constant/integer constant/int.con.
        !           115: c
        !           116: c
        !           117: c     test 491 through test 496 - positive integer constants
        !           118: c                       no truncation required
        !           119: c
        !           120:  4911 continue
        !           121:       ivtnum = 491
        !           122: c
        !           123: c      ****  test 491  ****
        !           124: c
        !           125:       if (iczero) 34910, 4910, 34910
        !           126:  4910 continue
        !           127:       ivcomp = 24/3/4
        !           128:       go to 44910
        !           129: 34910 ivdele = ivdele + 1
        !           130:       write (i02,80003) ivtnum
        !           131:       if (iczero) 44910, 4921, 44910
        !           132: 44910 if (ivcomp - 2) 24910,14910,24910
        !           133: 14910 ivpass = ivpass + 1
        !           134:       write (i02,80001) ivtnum
        !           135:       go to 4921
        !           136: 24910 ivfail = ivfail + 1
        !           137:       ivcorr = 2
        !           138:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           139:  4921 continue
        !           140:       ivtnum = 492
        !           141: c
        !           142: c      ****  test 492  ****
        !           143: c
        !           144:       if (iczero) 34920, 4920, 34920
        !           145:  4920 continue
        !           146:       ivcomp = 330/3/2
        !           147:       go to 44920
        !           148: 34920 ivdele = ivdele + 1
        !           149:       write (i02,80003) ivtnum
        !           150:       if (iczero) 44920, 4931, 44920
        !           151: 44920 if (ivcomp - 55) 24920,14920,24920
        !           152: 14920 ivpass = ivpass + 1
        !           153:       write (i02,80001) ivtnum
        !           154:       go to 4931
        !           155: 24920 ivfail = ivfail + 1
        !           156:       ivcorr = 55
        !           157:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           158:  4931 continue
        !           159:       ivtnum = 493
        !           160: c
        !           161: c      ****  test 493  ****
        !           162: c
        !           163:       if (iczero) 34930, 4930, 34930
        !           164:  4930 continue
        !           165:       ivcomp = 15249/13/51
        !           166:       go to 44930
        !           167: 34930 ivdele = ivdele + 1
        !           168:       write (i02,80003) ivtnum
        !           169:       if (iczero) 44930, 4941, 44930
        !           170: 44930 if (ivcomp - 23) 24930,14930,24930
        !           171: 14930 ivpass = ivpass + 1
        !           172:       write (i02,80001) ivtnum
        !           173:       go to 4941
        !           174: 24930 ivfail = ivfail + 1
        !           175:       ivcorr = 23
        !           176:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           177:  4941 continue
        !           178:       ivtnum = 494
        !           179: c
        !           180: c      ****  test 494  ****
        !           181: c
        !           182:       if (iczero) 34940, 4940, 34940
        !           183:  4940 continue
        !           184:       ivcomp = 7150/2/25
        !           185:       go to 44940
        !           186: 34940 ivdele = ivdele + 1
        !           187:       write (i02,80003) ivtnum
        !           188:       if (iczero) 44940, 4951, 44940
        !           189: 44940 if (ivcomp - 143) 24940,14940,24940
        !           190: 14940 ivpass = ivpass + 1
        !           191:       write (i02,80001) ivtnum
        !           192:       go to 4951
        !           193: 24940 ivfail = ivfail + 1
        !           194:       ivcorr = 143
        !           195:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           196:  4951 continue
        !           197:       ivtnum = 495
        !           198: c
        !           199: c      ****  test 495  ****
        !           200: c
        !           201:       if (iczero) 34950, 4950, 34950
        !           202:  4950 continue
        !           203:       ivcomp = 32766/2/3
        !           204:       go to 44950
        !           205: 34950 ivdele = ivdele + 1
        !           206:       write (i02,80003) ivtnum
        !           207:       if (iczero) 44950, 4961, 44950
        !           208: 44950 if (ivcomp - 5461) 24950,14950,24950
        !           209: 14950 ivpass = ivpass + 1
        !           210:       write (i02,80001) ivtnum
        !           211:       go to 4961
        !           212: 24950 ivfail = ivfail + 1
        !           213:       ivcorr = 5461
        !           214:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           215:  4961 continue
        !           216:       ivtnum = 496
        !           217: c
        !           218: c      ****  test 496  ****
        !           219: c
        !           220:       if (iczero) 34960, 4960, 34960
        !           221:  4960 continue
        !           222:       ivcomp = 32766/1/1
        !           223:       go to 44960
        !           224: 34960 ivdele = ivdele + 1
        !           225:       write (i02,80003) ivtnum
        !           226:       if (iczero) 44960, 4971, 44960
        !           227: 44960 if (ivcomp - 32766) 24960,14960,24960
        !           228: 14960 ivpass = ivpass + 1
        !           229:       write (i02,80001) ivtnum
        !           230:       go to 4971
        !           231: 24960 ivfail = ivfail + 1
        !           232:       ivcorr = 32766
        !           233:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           234: c
        !           235: c     test 497 through test 502 - positive integer constants
        !           236: c                  truncation required
        !           237: c
        !           238:  4971 continue
        !           239:       ivtnum = 497
        !           240: c
        !           241: c      ****  test 497  ****
        !           242: c
        !           243:       if (iczero) 34970, 4970, 34970
        !           244:  4970 continue
        !           245:       ivcomp = 24/3/3
        !           246:       go to 44970
        !           247: 34970 ivdele = ivdele + 1
        !           248:       write (i02,80003) ivtnum
        !           249:       if (iczero) 44970, 4981, 44970
        !           250: 44970 if (ivcomp -2) 24970,14970,24970
        !           251: 14970 ivpass = ivpass + 1
        !           252:       write (i02,80001) ivtnum
        !           253:       go to 4981
        !           254: 24970 ivfail = ivfail + 1
        !           255:       ivcorr = 2
        !           256:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           257:  4981 continue
        !           258:       ivtnum = 498
        !           259: c
        !           260: c      ****  test 498  ****
        !           261: c
        !           262:       if (iczero) 34980, 4980, 34980
        !           263:  4980 continue
        !           264:       ivcomp = 230/2/3
        !           265:       go to 44980
        !           266: 34980 ivdele = ivdele + 1
        !           267:       write (i02,80003) ivtnum
        !           268:       if (iczero) 44980, 4991, 44980
        !           269: 44980 if (ivcomp - 38) 24980,14980,24980
        !           270: 14980 ivpass = ivpass + 1
        !           271:       write (i02,80001) ivtnum
        !           272:       go to 4991
        !           273: 24980 ivfail = ivfail + 1
        !           274:       ivcorr = 38
        !           275:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           276:  4991 continue
        !           277:       ivtnum = 499
        !           278: c
        !           279: c      ****  test 499  ****
        !           280: c
        !           281:       if (iczero) 34990, 4990, 34990
        !           282:  4990 continue
        !           283:       ivcomp = 7151/3/10
        !           284:       go to 44990
        !           285: 34990 ivdele = ivdele + 1
        !           286:       write (i02,80003) ivtnum
        !           287:       if (iczero) 44990, 5001, 44990
        !           288: 44990 if (ivcomp - 238) 24990,14990,24990
        !           289: 14990 ivpass = ivpass + 1
        !           290:       write (i02,80001) ivtnum
        !           291:       go to 5001
        !           292: 24990 ivfail = ivfail + 1
        !           293:       ivcorr = 238
        !           294:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           295:  5001 continue
        !           296:       ivtnum = 500
        !           297: c
        !           298: c      ****  test 500  ****
        !           299: c
        !           300:       if (iczero) 35000, 5000, 35000
        !           301:  5000 continue
        !           302:       ivcomp = 15248/51/13
        !           303:       go to 45000
        !           304: 35000 ivdele = ivdele + 1
        !           305:       write (i02,80003) ivtnum
        !           306:       if (iczero) 45000, 5011, 45000
        !           307: 45000 if (ivcomp - 22) 25000,15000,25000
        !           308: 15000 ivpass = ivpass + 1
        !           309:       write (i02,80001) ivtnum
        !           310:       go to 5011
        !           311: 25000 ivfail = ivfail + 1
        !           312:       ivcorr = 22
        !           313:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           314:  5011 continue
        !           315:       ivtnum = 501
        !           316: c
        !           317: c      ****  test 501  ****
        !           318: c
        !           319:       if (iczero) 35010, 5010, 35010
        !           320:  5010 continue
        !           321:       ivcomp = 27342/4/3
        !           322:       go to 45010
        !           323: 35010 ivdele = ivdele + 1
        !           324:       write (i02,80003) ivtnum
        !           325:       if (iczero) 45010, 5021, 45010
        !           326: 45010 if (ivcomp - 2278) 25010,15010,25010
        !           327: 15010 ivpass = ivpass + 1
        !           328:       write (i02,80001) ivtnum
        !           329:       go to 5021
        !           330: 25010 ivfail = ivfail + 1
        !           331:       ivcorr = 2278
        !           332:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           333:  5021 continue
        !           334:       ivtnum = 502
        !           335: c
        !           336: c      ****  test 502  ****
        !           337: c
        !           338:       if (iczero) 35020, 5020, 35020
        !           339:  5020 continue
        !           340:       ivcomp = 32767/2/1
        !           341:       go to 45020
        !           342: 35020 ivdele = ivdele + 1
        !           343:       write (i02,80003) ivtnum
        !           344:       if (iczero) 45020, 5031, 45020
        !           345: 45020 if (ivcomp - 16383) 25020,15020,25020
        !           346: 15020 ivpass = ivpass + 1
        !           347:       write (i02,80001) ivtnum
        !           348:       go to 5031
        !           349: 25020 ivfail = ivfail + 1
        !           350:       ivcorr = 16383
        !           351:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           352: c
        !           353: c     test 503 through test 507 - negative integer constants included
        !           354: c                  no truncation required
        !           355: c
        !           356:  5031 continue
        !           357:       ivtnum = 503
        !           358: c
        !           359: c      ****  test 503  ****
        !           360: c
        !           361:       if (iczero) 35030, 5030, 35030
        !           362:  5030 continue
        !           363:       ivcomp = -24/3/4
        !           364:       go to 45030
        !           365: 35030 ivdele = ivdele + 1
        !           366:       write (i02,80003) ivtnum
        !           367:       if (iczero) 45030, 5041, 45030
        !           368: 45030 if (ivcomp +2) 25030,15030,25030
        !           369: 15030 ivpass = ivpass + 1
        !           370:       write (i02,80001) ivtnum
        !           371:       go to 5041
        !           372: 25030 ivfail = ivfail + 1
        !           373:       ivcorr = -2
        !           374:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           375:  5041 continue
        !           376:       ivtnum = 504
        !           377: c
        !           378: c      ****  test 504  ****
        !           379: c
        !           380:       if (iczero) 35040, 5040, 35040
        !           381:  5040 continue
        !           382:       ivcomp = 330/(-3)/2
        !           383:       go to 45040
        !           384: 35040 ivdele = ivdele + 1
        !           385:       write (i02,80003) ivtnum
        !           386:       if (iczero) 45040, 5051, 45040
        !           387: 45040 if (ivcomp + 55) 25040,15040,25040
        !           388: 15040 ivpass = ivpass + 1
        !           389:       write (i02,80001) ivtnum
        !           390:       go to 5051
        !           391: 25040 ivfail = ivfail + 1
        !           392:       ivcorr = -55
        !           393:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           394:  5051 continue
        !           395:       ivtnum = 505
        !           396: c
        !           397: c      ****  test 505  ****
        !           398: c
        !           399:       if (iczero) 35050, 5050, 35050
        !           400:  5050 continue
        !           401:       ivcomp = 15249/(-13)/(-51)
        !           402:       go to 45050
        !           403: 35050 ivdele = ivdele + 1
        !           404:       write (i02,80003) ivtnum
        !           405:       if (iczero) 45050, 5061, 45050
        !           406: 45050 if (ivcomp - 23) 25050,15050,25050
        !           407: 15050 ivpass = ivpass + 1
        !           408:       write (i02,80001) ivtnum
        !           409:       go to 5061
        !           410: 25050 ivfail = ivfail + 1
        !           411:       ivcorr = 23
        !           412:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           413:  5061 continue
        !           414:       ivtnum = 506
        !           415: c
        !           416: c      ****  test 506  ****
        !           417: c
        !           418:       if (iczero) 35060, 5060, 35060
        !           419:  5060 continue
        !           420:       ivcomp = -7150/(-2)/(-25)
        !           421:       go to 45060
        !           422: 35060 ivdele = ivdele + 1
        !           423:       write (i02,80003) ivtnum
        !           424:       if (iczero) 45060, 5071, 45060
        !           425: 45060 if (ivcomp + 143) 25060,15060,25060
        !           426: 15060 ivpass = ivpass + 1
        !           427:       write (i02,80001) ivtnum
        !           428:       go to 5071
        !           429: 25060 ivfail = ivfail + 1
        !           430:       ivcorr = -143
        !           431:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           432:  5071 continue
        !           433:       ivtnum = 507
        !           434: c
        !           435: c      ****  test 507  ****
        !           436: c
        !           437:       if (iczero) 35070, 5070, 35070
        !           438:  5070 continue
        !           439:       ivcomp = (-32766)/(-2)/(-3)
        !           440:       go to 45070
        !           441: 35070 ivdele = ivdele + 1
        !           442:       write (i02,80003) ivtnum
        !           443:       if (iczero) 45070, 5081, 45070
        !           444: 45070 if (ivcomp + 5461) 25070,15070,25070
        !           445: 15070 ivpass = ivpass + 1
        !           446:       write (i02,80001) ivtnum
        !           447:       go to 5081
        !           448: 25070 ivfail = ivfail + 1
        !           449:       ivcorr = -5461
        !           450:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           451: c
        !           452: c     test 508 through test 513 - negative integer constants included
        !           453: c                       truncation required
        !           454: c
        !           455:  5081 continue
        !           456:       ivtnum = 508
        !           457: c
        !           458: c      ****  test 508  ****
        !           459: c
        !           460:       if (iczero) 35080, 5080, 35080
        !           461:  5080 continue
        !           462:       ivcomp = -24/3/3
        !           463:       go to 45080
        !           464: 35080 ivdele = ivdele + 1
        !           465:       write (i02,80003) ivtnum
        !           466:       if (iczero) 45080, 5091, 45080
        !           467: 45080 if (ivcomp + 2) 25080,15080,25080
        !           468: 15080 ivpass = ivpass + 1
        !           469:       write (i02,80001) ivtnum
        !           470:       go to 5091
        !           471: 25080 ivfail = ivfail + 1
        !           472:       ivcorr = -2
        !           473:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           474:  5091 continue
        !           475:       ivtnum = 509
        !           476: c
        !           477: c      ****  test 509  ****
        !           478: c
        !           479:       if (iczero) 35090, 5090, 35090
        !           480:  5090 continue
        !           481:       ivcomp = 230/(-2)/3
        !           482:       go to 45090
        !           483: 35090 ivdele = ivdele + 1
        !           484:       write (i02,80003) ivtnum
        !           485:       if (iczero) 45090, 5101, 45090
        !           486: 45090 if (ivcomp + 38) 25090,15090,25090
        !           487: 15090 ivpass = ivpass + 1
        !           488:       write (i02,80001) ivtnum
        !           489:       go to 5101
        !           490: 25090 ivfail = ivfail + 1
        !           491:       ivcorr = -38
        !           492:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           493:  5101 continue
        !           494:       ivtnum = 510
        !           495: c
        !           496: c      ****  test 510  ****
        !           497: c
        !           498:       if (iczero) 35100, 5100, 35100
        !           499:  5100 continue
        !           500:       ivcomp = 7151/(-3)/(-10)
        !           501:       go to 45100
        !           502: 35100 ivdele = ivdele + 1
        !           503:       write (i02,80003) ivtnum
        !           504:       if (iczero) 45100, 5111, 45100
        !           505: 45100 if (ivcomp - 238) 25100,15100,25100
        !           506: 15100 ivpass = ivpass + 1
        !           507:       write (i02,80001) ivtnum
        !           508:       go to 5111
        !           509: 25100 ivfail = ivfail + 1
        !           510:       ivcorr = 238
        !           511:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           512:  5111 continue
        !           513:       ivtnum = 511
        !           514: c
        !           515: c      ****  test 511  ****
        !           516: c
        !           517:       if (iczero) 35110, 5110, 35110
        !           518:  5110 continue
        !           519:       ivcomp = -15248/(-51)/(-13)
        !           520:       go to 45110
        !           521: 35110 ivdele = ivdele + 1
        !           522:       write (i02,80003) ivtnum
        !           523:       if (iczero) 45110, 5121, 45110
        !           524: 45110 if (ivcomp + 22) 25110,15110,25110
        !           525: 15110 ivpass = ivpass + 1
        !           526:       write (i02,80001) ivtnum
        !           527:       go to 5121
        !           528: 25110 ivfail = ivfail + 1
        !           529:       ivcorr = -22
        !           530:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           531:  5121 continue
        !           532:       ivtnum = 512
        !           533: c
        !           534: c      ****  test 512  ****
        !           535: c
        !           536:       if (iczero) 35120, 5120, 35120
        !           537:  5120 continue
        !           538:       ivcomp = (-27342)/(-4)/(-3)
        !           539:       go to 45120
        !           540: 35120 ivdele = ivdele + 1
        !           541:       write (i02,80003) ivtnum
        !           542:       if (iczero) 45120, 5131, 45120
        !           543: 45120 if (ivcomp + 2278) 25120,15120,25120
        !           544: 15120 ivpass = ivpass + 1
        !           545:       write (i02,80001) ivtnum
        !           546:       go to 5131
        !           547: 25120 ivfail = ivfail + 1
        !           548:       ivcorr = -2278
        !           549:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           550:  5131 continue
        !           551:       ivtnum = 513
        !           552: c
        !           553: c      ****  test 513  ****
        !           554: c
        !           555:       if (iczero) 35130, 5130, 35130
        !           556:  5130 continue
        !           557:       ivcomp = 32767/2/(-1)
        !           558:       go to 45130
        !           559: 35130 ivdele = ivdele + 1
        !           560:       write (i02,80003) ivtnum
        !           561:       if (iczero) 45130, 5141, 45130
        !           562: 45130 if (ivcomp + 16383) 25130,15130,25130
        !           563: 15130 ivpass = ivpass + 1
        !           564:       write (i02,80001) ivtnum
        !           565:       go to 5141
        !           566: 25130 ivfail = ivfail + 1
        !           567:       ivcorr = -16383
        !           568:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           569: c
        !           570: c     test 514 through test 519 - positive and negative signed integer
        !           571: c           constants in arithmetic expression.
        !           572: c
        !           573:  5141 continue
        !           574:       ivtnum = 514
        !           575: c
        !           576: c      ****  test 514  ****
        !           577: c
        !           578:       if (iczero) 35140, 5140, 35140
        !           579:  5140 continue
        !           580:       ivcomp = +24/(-3)/4
        !           581:       go to 45140
        !           582: 35140 ivdele = ivdele + 1
        !           583:       write (i02,80003) ivtnum
        !           584:       if (iczero) 45140, 5151, 45140
        !           585: 45140 if (ivcomp +2) 25140,15140,25140
        !           586: 15140 ivpass = ivpass + 1
        !           587:       write (i02,80001) ivtnum
        !           588:       go to 5151
        !           589: 25140 ivfail = ivfail + 1
        !           590:       ivcorr = -2
        !           591:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           592:  5151 continue
        !           593:       ivtnum = 515
        !           594: c
        !           595: c      ****  test 515  ****
        !           596: c
        !           597:       if (iczero) 35150, 5150, 35150
        !           598:  5150 continue
        !           599:       ivcomp = 24/(+3)/(-4)
        !           600:       go to 45150
        !           601: 35150 ivdele = ivdele + 1
        !           602:       write (i02,80003) ivtnum
        !           603:       if (iczero) 45150, 5161, 45150
        !           604: 45150 if (ivcomp +2) 25150,15150,25150
        !           605: 15150 ivpass = ivpass + 1
        !           606:       write (i02,80001) ivtnum
        !           607:       go to 5161
        !           608: 25150 ivfail = ivfail + 1
        !           609:       ivcorr = -2
        !           610:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           611:  5161 continue
        !           612:       ivtnum = 516
        !           613: c
        !           614: c      ****  test 516  ****
        !           615: c
        !           616:       if (iczero) 35160, 5160, 35160
        !           617:  5160 continue
        !           618:       ivcomp = -24/(-3)/(+4)
        !           619:       go to 45160
        !           620: 35160 ivdele = ivdele + 1
        !           621:       write (i02,80003) ivtnum
        !           622:       if (iczero) 45160, 5171, 45160
        !           623: 45160 if (ivcomp -2) 25160,15160,25160
        !           624: 15160 ivpass = ivpass + 1
        !           625:       write (i02,80001) ivtnum
        !           626:       go to 5171
        !           627: 25160 ivfail = ivfail + 1
        !           628:       ivcorr = 2
        !           629:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           630:  5171 continue
        !           631:       ivtnum = 517
        !           632: c
        !           633: c      ****  test 517  ****
        !           634: c
        !           635:       if (iczero) 35170, 5170, 35170
        !           636:  5170 continue
        !           637:       ivcomp = -16811/(-16812)/(+1)
        !           638:       go to 45170
        !           639: 35170 ivdele = ivdele + 1
        !           640:       write (i02,80003) ivtnum
        !           641:       if (iczero) 45170, 5181, 45170
        !           642: 45170 if (ivcomp - 0) 25170,15170,25170
        !           643: 15170 ivpass = ivpass + 1
        !           644:       write (i02,80001) ivtnum
        !           645:       go to 5181
        !           646: 25170 ivfail = ivfail + 1
        !           647:       ivcorr = 0
        !           648:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           649:  5181 continue
        !           650:       ivtnum = 518
        !           651: c
        !           652: c      ****  test 518  ****
        !           653: c
        !           654:       if (iczero) 35180, 5180, 35180
        !           655:  5180 continue
        !           656:       ivcomp = (-16811) / (+16811) / (+1)
        !           657:       go to 45180
        !           658: 35180 ivdele = ivdele + 1
        !           659:       write (i02,80003) ivtnum
        !           660:       if (iczero) 45180, 5191, 45180
        !           661: 45180 if (ivcomp +1) 25180,15180,25180
        !           662: 15180 ivpass = ivpass + 1
        !           663:       write (i02,80001) ivtnum
        !           664:       go to 5191
        !           665: 25180 ivfail = ivfail + 1
        !           666:       ivcorr = -1
        !           667:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           668:  5191 continue
        !           669:       ivtnum = 519
        !           670: c
        !           671: c      ****  test 519  ****
        !           672: c
        !           673:       if (iczero) 35190, 5190, 35190
        !           674:  5190 continue
        !           675:       ivcomp = (-335)/(+168)/(+1)
        !           676:       go to 45190
        !           677: 35190 ivdele = ivdele + 1
        !           678:       write (i02,80003) ivtnum
        !           679:       if (iczero) 45190, 5201, 45190
        !           680: 45190 if (ivcomp + 1) 25190,15190,25190
        !           681: 15190 ivpass = ivpass + 1
        !           682:       write (i02,80001) ivtnum
        !           683:       go to 5201
        !           684: 25190 ivfail = ivfail + 1
        !           685:       ivcorr = -1
        !           686:       write (i02,80004) ivtnum, ivcomp ,ivcorr
        !           687: c      ****    end of tests    ****
        !           688:  5201 continue
        !           689: c
        !           690: c     write page footings and run summaries
        !           691: 99999 continue
        !           692:       write (i02,90002)
        !           693:       write (i02,90006)
        !           694:       write (i02,90002)
        !           695:       write (i02,90002)
        !           696:       write (i02,90007)
        !           697:       write (i02,90002)
        !           698:       write (i02,90008)  ivfail
        !           699:       write (i02,90009) ivpass
        !           700:       write (i02,90010) ivdele
        !           701: c
        !           702: c
        !           703: c     terminate routine execution
        !           704:       stop
        !           705: c
        !           706: c     format statements for page headers
        !           707: 90000 format (1h1)
        !           708: 90002 format (1h )
        !           709: 90001 format (1h ,10x,34hfortran compiler validation system)
        !           710: 90003 format (1h ,21x,11hversion 1.0)
        !           711: 90004 format (1h ,10x,38hfor official use only - copyright 1978)
        !           712: 90005 format (1h ,5x,4htest,5x,9hpass/fail, 5x,8hcomputed,8x,7hcorrect)
        !           713: 90006 format (1h ,5x,46h----------------------------------------------)
        !           714: 90011 format (1h ,18x,17hsubset level test)
        !           715: c
        !           716: c     format statements for run summaries
        !           717: 90008 format (1h ,15x,i5,19h errors encountered)
        !           718: 90009 format (1h ,15x,i5,13h tests passed)
        !           719: 90010 format (1h ,15x,i5,14h tests deleted)
        !           720: c
        !           721: c     format statements for test results
        !           722: 80001 format (1h ,4x,i5,7x,4hpass)
        !           723: 80002 format (1h ,4x,i5,7x,4hfail)
        !           724: 80003 format (1h ,4x,i5,7x,7hdeleted)
        !           725: 80004 format (1h ,4x,i5,7x,4hfail,10x,i6,9x,i6)
        !           726: 80005 format (1h ,4x,i5,7x,4hfail,4x,e12.5,3x,e12.5)
        !           727: c
        !           728: 90007 format (1h ,20x,20hend of program fm037)
        !           729:       end

unix.superglobalmegacorp.com

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