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

1.1     ! root        1: c     comment section
        !             2: c
        !             3: c     fm098
        !             4: c
        !             5: c     this routine tests intrinsic functions where the function type is
        !             6: c     integer and the arguments are either integer or real.  the real
        !             7: c     and integer variables and the real and integer constants contain
        !             8: c     both positive and negative values.  the intrinsic functions tested
        !             9: c     by fm098 include
        !            10: c                                                     type of
        !            11: c       intrinsic function          name       argument     function
        !            12: c       ------------------          ----       --------     --------
        !            13: c         absolute value            iabs       integer      integer
        !            14: c         truncation                int        real         integer
        !            15: c         remaindering              mod        integer      integer
        !            16: c         choosing largest value    max0       integer      integer
        !            17: c                                   max1       real         integer
        !            18: c         choosing smallest value   min0       integer      integer
        !            19: c                                   min1       real         integer
        !            20: c         fix                       ifix      real          integer
        !            21: c         transfer of sign          isign     integer       integer
        !            22: c         positive difference       idim      integer       integer
        !            23: c
        !            24: c      references
        !            25: c        american national standard programming language fortran,
        !            26: c              x3.9-1978
        !            27: c
        !            28: c        section 4.1.2, type rules for data and procedure identifiers
        !            29: c        section 15.3, intrinsic function
        !            30: c        section 15.3.2, intrinsic functions and their reference
        !            31: c
        !            32: c
        !            33: c      **********************************************************
        !            34: c
        !            35: c         a compiler validation system for the fortran language
        !            36: c     based on specifications as defined in american national standard
        !            37: c     programming language fortran x3.9-1978, has been developed by the
        !            38: c     federal cobol compiler testing service.  the fortran compiler
        !            39: c     validation system (fcvs) consists of audit routines, their related
        !            40: c     data, and an executive system.  each audit routine is a fortran
        !            41: c     program, subprogram or function which includes tests of specific
        !            42: c     language elements and supporting procedures indicating the result
        !            43: c     of executing these tests.
        !            44: c
        !            45: c         this particular program/subprogram/function contains features
        !            46: c     found only in the subset as defined in x3.9-1978.
        !            47: c
        !            48: c         suggestions and comments should be forwarded to -
        !            49: c
        !            50: c                  department of the navy
        !            51: c                  federal cobol compiler testing service
        !            52: c                  washington, d.c.  20376
        !            53: c
        !            54: c      **********************************************************
        !            55: c
        !            56: c
        !            57: c
        !            58: c     initialization section
        !            59: c
        !            60: c     initialize constants
        !            61: c      **************
        !            62: c     i01 contains the logical unit number for the card reader.
        !            63:       i01 = 5
        !            64: c     i02 contains the logical unit number for the printer.
        !            65:       i02 = 6
        !            66: c     system environment section
        !            67: c
        !            68: cx010    this card is replaced by contents of fexec x-010 control card.
        !            69: c     the cx010 card is for overriding the program default i01 = 5
        !            70: c     (unit number for card reader).
        !            71: cx011    this card is replaced by contents of fexec x-011 control card.
        !            72: c     the cx011 card is for systems which require additional
        !            73: c     fortran statements for files associated with cx010 above.
        !            74: c
        !            75: cx020    this card is replaced by contents of fexec x-020 control card.
        !            76: c     the cx020 card is for overriding the program default i02 = 6
        !            77: c     (unit number for printer).
        !            78: cx021    this card is replaced by contents of fexec x-021 control card.
        !            79: c     the cx021 card is for systems which require additional
        !            80: c     fortran statements for files associated with cx020 above.
        !            81: c
        !            82:       ivpass=0
        !            83:       ivfail=0
        !            84:       ivdele=0
        !            85:       iczero=0
        !            86: c
        !            87: c     write page headers
        !            88:       write (i02,90000)
        !            89:       write (i02,90001)
        !            90:       write (i02,90002)
        !            91:       write (i02, 90002)
        !            92:       write (i02,90003)
        !            93:       write (i02,90002)
        !            94:       write (i02,90004)
        !            95:       write (i02,90002)
        !            96:       write (i02,90011)
        !            97:       write (i02,90002)
        !            98:       write (i02,90002)
        !            99:       write (i02,90005)
        !           100:       write (i02,90006)
        !           101:       write (i02,90002)
        !           102: c
        !           103: c     test section
        !           104: c
        !           105: c     test 907 through test 909 contain intrinsic function tests for
        !           106: c     absolute value where argument and function are integer
        !           107: c
        !           108:  9071 continue
        !           109:       ivtnum = 907
        !           110: c
        !           111: c      ****  test 907  ****
        !           112: c
        !           113:       if (iczero) 39070, 9070, 39070
        !           114:  9070 continue
        !           115:       ivcomp = iabs (-382)
        !           116:       go to 49070
        !           117: 39070 ivdele = ivdele + 1
        !           118:       write (i02,80003) ivtnum
        !           119:       if (iczero) 49070, 9081, 49070
        !           120: 49070 if (ivcomp - 382) 29070,19070,29070
        !           121: 19070 ivpass = ivpass + 1
        !           122:       write (i02,80001) ivtnum
        !           123:       go to 9081
        !           124: 29070 ivfail = ivfail + 1
        !           125:       ivcorr = 382
        !           126:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           127:  9081 continue
        !           128:       ivtnum = 908
        !           129: c
        !           130: c      ****  test 908  ****
        !           131: c
        !           132:       if (iczero) 39080, 9080, 39080
        !           133:  9080 continue
        !           134:       ivon01 = 445
        !           135:       ivcomp = iabs (ivon01)
        !           136:       go to 49080
        !           137: 39080 ivdele = ivdele + 1
        !           138:       write (i02,80003) ivtnum
        !           139:       if (iczero) 49080, 9091, 49080
        !           140: 49080 if (ivcomp - 445) 29080,19080,29080
        !           141: 19080 ivpass = ivpass + 1
        !           142:       write (i02,80001) ivtnum
        !           143:       go to 9091
        !           144: 29080 ivfail = ivfail + 1
        !           145:       ivcorr = 445
        !           146:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           147:  9091 continue
        !           148:       ivtnum = 909
        !           149: c
        !           150: c      ****  test 909  ****
        !           151: c
        !           152:       if (iczero) 39090, 9090, 39090
        !           153:  9090 continue
        !           154:       ivon01 = -32176
        !           155:       ivcomp = iabs (ivon01)
        !           156:       go to 49090
        !           157: 39090 ivdele = ivdele + 1
        !           158:       write (i02,80003) ivtnum
        !           159:       if (iczero) 49090, 9101, 49090
        !           160: 49090 if (ivcomp - 32176) 29090,19090,29090
        !           161: 19090 ivpass = ivpass + 1
        !           162:       write (i02,80001) ivtnum
        !           163:       go to 9101
        !           164: 29090 ivfail = ivfail + 1
        !           165:       ivcorr = 32176
        !           166:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           167: c
        !           168: c     test 910 through test 913 contain intrinsic function tests for
        !           169: c     truncation where argument is real and function is integer
        !           170: c
        !           171:  9101 continue
        !           172:       ivtnum = 910
        !           173: c
        !           174: c      ****  test 910  ****
        !           175: c
        !           176:       if (iczero) 39100, 9100, 39100
        !           177:  9100 continue
        !           178:       ivcomp = int (38.2)
        !           179:       go to 49100
        !           180: 39100 ivdele = ivdele + 1
        !           181:       write (i02,80003) ivtnum
        !           182:       if (iczero) 49100, 9111, 49100
        !           183: 49100 if (ivcomp - 38) 29100,19100,29100
        !           184: 19100 ivpass = ivpass + 1
        !           185:       write (i02,80001) ivtnum
        !           186:       go to 9111
        !           187: 29100 ivfail = ivfail + 1
        !           188:       ivcorr = 38
        !           189:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           190:  9111 continue
        !           191:       ivtnum = 911
        !           192: c
        !           193: c      ****  test 911  ****
        !           194: c
        !           195:       if (iczero) 39110, 9110, 39110
        !           196:  9110 continue
        !           197:       rvon01 = -445.95
        !           198:       ivcomp = int (rvon01)
        !           199:       go to 49110
        !           200: 39110 ivdele = ivdele + 1
        !           201:       write (i02,80003) ivtnum
        !           202:       if (iczero) 49110, 9121, 49110
        !           203: 49110 if (ivcomp + 445) 29110,19110,29110
        !           204: 19110 ivpass = ivpass + 1
        !           205:       write (i02,80001) ivtnum
        !           206:       go to 9121
        !           207: 29110 ivfail = ivfail + 1
        !           208:       ivcorr = -445
        !           209:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           210:  9121 continue
        !           211:       ivtnum = 912
        !           212: c
        !           213: c      ****  test 912  ****
        !           214: c
        !           215:       if (iczero) 39120, 9120, 39120
        !           216:  9120 continue
        !           217:       rvon01 = 466.01
        !           218:       ivcomp = int (rvon01)
        !           219:       go to 49120
        !           220: 39120 ivdele = ivdele + 1
        !           221:       write (i02,80003) ivtnum
        !           222:       if (iczero) 49120, 9131, 49120
        !           223: 49120 if (ivcomp - 466) 29120,19120,29120
        !           224: 19120 ivpass = ivpass + 1
        !           225:       write (i02,80001) ivtnum
        !           226:       go to 9131
        !           227: 29120 ivfail = ivfail + 1
        !           228:       ivcorr = 466
        !           229:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           230:  9131 continue
        !           231:       ivtnum = 913
        !           232: c
        !           233: c      ****  test 913  ****
        !           234: c
        !           235:       if (iczero) 39130, 9130, 39130
        !           236:  9130 continue
        !           237:       rvon01 = 382e-1
        !           238:       ivcomp = int (rvon01)
        !           239:       go to 49130
        !           240: 39130 ivdele = ivdele + 1
        !           241:       write (i02,80003) ivtnum
        !           242:       if (iczero) 49130, 9141, 49130
        !           243: 49130 if (ivcomp - 38) 29130,19130,29130
        !           244: 19130 ivpass = ivpass + 1
        !           245:       write (i02,80001) ivtnum
        !           246:       go to 9141
        !           247: 29130 ivfail = ivfail + 1
        !           248:       ivcorr = 38
        !           249:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           250: c
        !           251: c     test 914 through test 917 contain intrinsic function tests for
        !           252: c     remaindering where arguments and function are integers
        !           253: c
        !           254:  9141 continue
        !           255:       ivtnum = 914
        !           256: c
        !           257: c      ****  test 914  ****
        !           258: c
        !           259:       if (iczero) 39140, 9140, 39140
        !           260:  9140 continue
        !           261:       ivcomp = mod (42,19)
        !           262:       go to 49140
        !           263: 39140 ivdele = ivdele + 1
        !           264:       write (i02,80003) ivtnum
        !           265:       if (iczero) 49140, 9151, 49140
        !           266: 49140 if (ivcomp - 4) 29140,19140,29140
        !           267: 19140 ivpass = ivpass + 1
        !           268:       write (i02,80001) ivtnum
        !           269:       go to 9151
        !           270: 29140 ivfail = ivfail + 1
        !           271:       ivcorr = 4
        !           272:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           273:  9151 continue
        !           274:       ivtnum = 915
        !           275: c
        !           276: c      ****  test 915  ****
        !           277: c
        !           278:       if (iczero) 39150, 9150, 39150
        !           279:  9150 continue
        !           280:       ivon01 = 6667
        !           281:       ivon02 = 2
        !           282:       ivcomp = mod (ivon01,ivon02)
        !           283:       go to 49150
        !           284: 39150 ivdele = ivdele + 1
        !           285:       write (i02,80003) ivtnum
        !           286:       if (iczero) 49150, 9161, 49150
        !           287: 49150 if (ivcomp - 1) 29150,19150,29150
        !           288: 19150 ivpass = ivpass + 1
        !           289:       write (i02,80001) ivtnum
        !           290:       go to 9161
        !           291: 29150 ivfail = ivfail + 1
        !           292:       ivcorr = 1
        !           293:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           294:  9161 continue
        !           295:       ivtnum = 916
        !           296: c
        !           297: c      ****  test 916  ****
        !           298: c
        !           299:       if (iczero) 39160, 9160, 39160
        !           300:  9160 continue
        !           301:       ivon01 = 225
        !           302:       ivon02 = 50
        !           303:       ivcomp = mod (ivon01,ivon02)
        !           304:       go to 49160
        !           305: 39160 ivdele = ivdele + 1
        !           306:       write (i02,80003) ivtnum
        !           307:       if (iczero) 49160, 9171, 49160
        !           308: 49160 if (ivcomp - 25) 29160,19160,29160
        !           309: 19160 ivpass = ivpass + 1
        !           310:       write (i02,80001) ivtnum
        !           311:       go to 9171
        !           312: 29160 ivfail = ivfail + 1
        !           313:       ivcorr = 25
        !           314:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           315:  9171 continue
        !           316:       ivtnum = 917
        !           317: c
        !           318: c      ****  test 917  ****
        !           319: c
        !           320:       if (iczero) 39170, 9170, 39170
        !           321:  9170 continue
        !           322:       ivon01 = -39
        !           323:       ivon02 = 500
        !           324:       ivcomp = mod (ivon01,ivon02)
        !           325:       go to 49170
        !           326: 39170 ivdele = ivdele + 1
        !           327:       write (i02,80003) ivtnum
        !           328:       if (iczero) 49170, 9181, 49170
        !           329: 49170 if (ivcomp + 39) 29170,19170,29170
        !           330: 19170 ivpass = ivpass + 1
        !           331:       write (i02,80001) ivtnum
        !           332:       go to 9181
        !           333: 29170 ivfail = ivfail + 1
        !           334:       ivcorr = -39
        !           335:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           336: c
        !           337: c     test 918 and 919 contain intrinsic function tests for choosing
        !           338: c     largest value where arguments and function are integer
        !           339: c
        !           340:  9181 continue
        !           341:       ivtnum = 918
        !           342: c
        !           343: c      ****  test 918  ****
        !           344: c
        !           345:       if (iczero) 39180, 9180, 39180
        !           346:  9180 continue
        !           347:       ivon01 = 317
        !           348:       ivon02 = -99
        !           349:       ivon03 = 1
        !           350:       ivcomp = max0 (263,ivon01,ivon02,ivon03)
        !           351:       go to 49180
        !           352: 39180 ivdele = ivdele + 1
        !           353:       write (i02,80003) ivtnum
        !           354:       if (iczero) 49180, 9191, 49180
        !           355: 49180 if (ivcomp - 317) 29180,19180,29180
        !           356: 19180 ivpass = ivpass + 1
        !           357:       write (i02,80001) ivtnum
        !           358:       go to 9191
        !           359: 29180 ivfail = ivfail + 1
        !           360:       ivcorr = 317
        !           361:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           362:  9191 continue
        !           363:       ivtnum = 919
        !           364: c
        !           365: c      ****  test 919  ****
        !           366: c
        !           367:       if (iczero) 39190, 9190, 39190
        !           368:  9190 continue
        !           369:       ivon01 = 2572
        !           370:       ivon02 = 2570
        !           371:       ivcomp = max0 (ivon01,ivon02)
        !           372:       go to 49190
        !           373: 39190 ivdele = ivdele + 1
        !           374:       write (i02,80003) ivtnum
        !           375:       if (iczero) 49190, 9201, 49190
        !           376: 49190 if (ivcomp - 2572) 29190,19190,29190
        !           377: 19190 ivpass = ivpass + 1
        !           378:       write (i02,80001) ivtnum
        !           379:       go to 9201
        !           380: 29190 ivfail = ivfail + 1
        !           381:       ivcorr = 2572
        !           382:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           383: c
        !           384: c     test 920 and 921 contain intrinsic function tests for choosing
        !           385: c     largest value where arguments are real and function is integer
        !           386: c
        !           387:  9201 continue
        !           388:       ivtnum = 920
        !           389: c
        !           390: c      ****  test 920  ****
        !           391: c
        !           392:       if (iczero) 39200, 9200, 39200
        !           393:  9200 continue
        !           394:       rvon01 = .326e+2
        !           395:       rvon02 = 22.075
        !           396:       rvon03 = 76e-1
        !           397:       ivcomp = max1 (rvon01,rvon02,rvon03)
        !           398:       go to 49200
        !           399: 39200 ivdele = ivdele + 1
        !           400:       write (i02,80003) ivtnum
        !           401:       if (iczero) 49200, 9211, 49200
        !           402: 49200 if (ivcomp - 32) 29200,19200,29200
        !           403: 19200 ivpass = ivpass + 1
        !           404:       write (i02,80001) ivtnum
        !           405:       go to 9211
        !           406: 29200 ivfail = ivfail + 1
        !           407:       ivcorr = 32
        !           408:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           409:  9211 continue
        !           410:       ivtnum = 921
        !           411: c
        !           412: c      ****  test 921  ****
        !           413: c
        !           414:       if (iczero) 39210, 9210, 39210
        !           415:  9210 continue
        !           416:       rvon01 = -6.3e2
        !           417:       rvon02 = -21.0
        !           418:       ivcomp = max1 (-463.3,rvon01,rvon02)
        !           419:       go to 49210
        !           420: 39210 ivdele = ivdele + 1
        !           421:       write (i02,80003) ivtnum
        !           422:       if (iczero) 49210, 9221, 49210
        !           423: 49210 if (ivcomp + 21) 29210,19210,29210
        !           424: 19210 ivpass = ivpass + 1
        !           425:       write (i02,80001) ivtnum
        !           426:       go to 9221
        !           427: 29210 ivfail = ivfail + 1
        !           428:       ivcorr = -21
        !           429:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           430: c
        !           431: c     test 922 and 923 contain intrinsic function tests for choosing
        !           432: c     smallest value where arguments and function are integer
        !           433: c
        !           434:  9221 continue
        !           435:       ivtnum = 922
        !           436: c
        !           437: c      ****  test 922  ****
        !           438: c
        !           439:       if (iczero) 39220, 9220, 39220
        !           440:  9220 continue
        !           441:       ivon01 = -75
        !           442:       ivon02 = -243
        !           443:       ivcomp = min0 (ivon01,ivon02)
        !           444:       go to 49220
        !           445: 39220 ivdele = ivdele + 1
        !           446:       write (i02,80003) ivtnum
        !           447:       if (iczero) 49220, 9231, 49220
        !           448: 49220 if (ivcomp + 243) 29220,19220,29220
        !           449: 19220 ivpass = ivpass + 1
        !           450:       write (i02,80001) ivtnum
        !           451:       go to 9231
        !           452: 29220 ivfail = ivfail + 1
        !           453:       ivcorr = -243
        !           454:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           455:  9231 continue
        !           456:       ivtnum = 923
        !           457: c
        !           458: c      ****  test 923  ****
        !           459: c
        !           460:       if (iczero) 39230, 9230, 39230
        !           461:  9230 continue
        !           462:       ivon01 = -11
        !           463:       ivon02 = 11
        !           464:       ivcomp = min0 (0,ivon01,ivon02)
        !           465:       go to 49230
        !           466: 39230 ivdele = ivdele + 1
        !           467:       write (i02,80003) ivtnum
        !           468:       if (iczero) 49230, 9241, 49230
        !           469: 49230 if (ivcomp + 11) 29230,19230,29230
        !           470: 19230 ivpass = ivpass + 1
        !           471:       write (i02,80001) ivtnum
        !           472:       go to 9241
        !           473: 29230 ivfail = ivfail + 1
        !           474:       ivcorr = -11
        !           475:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           476: c
        !           477: c     test 924 and 925 contain intrinsic function tests for choosing
        !           478: c     smallest value where arguments are real and function is integer
        !           479: c
        !           480:  9241 continue
        !           481:       ivtnum = 924
        !           482: c
        !           483: c      ****  test 924  ****
        !           484: c
        !           485:       if (iczero) 39240, 9240, 39240
        !           486:  9240 continue
        !           487:       rvon01 = 1.1111
        !           488:       rvon02 = 22.222
        !           489:       rvon03 = 333.33
        !           490:       ivcomp = min1 (rvon01,rvon02,rvon03)
        !           491:       go to 49240
        !           492: 39240 ivdele = ivdele + 1
        !           493:       write (i02,80003) ivtnum
        !           494:       if (iczero) 49240, 9251, 49240
        !           495: 49240 if (ivcomp - 1) 29240,19240,29240
        !           496: 19240 ivpass = ivpass + 1
        !           497:       write (i02,80001) ivtnum
        !           498:       go to 9251
        !           499: 29240 ivfail = ivfail + 1
        !           500:       ivcorr = 1
        !           501:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           502:  9251 continue
        !           503:       ivtnum = 925
        !           504: c
        !           505: c      ****  test 925  ****
        !           506: c
        !           507:       if (iczero) 39250, 9250, 39250
        !           508:  9250 continue
        !           509:       rvon01 = 28.8
        !           510:       rvon02 = 2.88e1
        !           511:       rvon03 = 288e-1
        !           512:       rvon04 = 35.0
        !           513:       ivcomp = min1 (rvon01,rvon02,rvon03,rvon04)
        !           514:       go to 49250
        !           515: 39250 ivdele = ivdele + 1
        !           516:       write (i02,80003) ivtnum
        !           517:       if (iczero) 49250, 9261, 49250
        !           518: 49250 if (ivcomp - 28) 29250,19250,29250
        !           519: 19250 ivpass = ivpass + 1
        !           520:       write (i02,80001) ivtnum
        !           521:       go to 9261
        !           522: 29250 ivfail = ivfail + 1
        !           523:       ivcorr = 28
        !           524:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           525: c
        !           526: c     test 926 through test 929 contain the intrinsic function fix
        !           527: c     which converts real arguments to integer function results
        !           528: c
        !           529:  9261 continue
        !           530:       ivtnum = 926
        !           531: c
        !           532: c      ****  test 926  ****
        !           533: c
        !           534:       if (iczero) 39260, 9260, 39260
        !           535:  9260 continue
        !           536:       ivcomp = ifix (-6.06)
        !           537:       go to 49260
        !           538: 39260 ivdele = ivdele + 1
        !           539:       write (i02,80003) ivtnum
        !           540:       if (iczero) 49260, 9271, 49260
        !           541: 49260 if (ivcomp + 6) 29260,19260,29260
        !           542: 19260 ivpass = ivpass + 1
        !           543:       write (i02,80001) ivtnum
        !           544:       go to 9271
        !           545: 29260 ivfail = ivfail + 1
        !           546:       ivcorr = -6
        !           547:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           548:  9271 continue
        !           549:       ivtnum = 927
        !           550: c
        !           551: c      ****  test 927  ****
        !           552: c
        !           553:       if (iczero) 39270, 9270, 39270
        !           554:  9270 continue
        !           555:       rvon01 = 71.01
        !           556:       ivcomp = ifix (rvon01)
        !           557:       go to 49270
        !           558: 39270 ivdele = ivdele + 1
        !           559:       write (i02,80003) ivtnum
        !           560:       if (iczero) 49270, 9281, 49270
        !           561: 49270 if (ivcomp - 71) 29270,19270,29270
        !           562: 19270 ivpass = ivpass + 1
        !           563:       write (i02,80001) ivtnum
        !           564:       go to 9281
        !           565: 29270 ivfail = ivfail + 1
        !           566:       ivcorr = 71
        !           567:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           568:  9281 continue
        !           569:       ivtnum = 928
        !           570: c
        !           571: c      ****  test 928  ****
        !           572: c
        !           573:       if (iczero) 39280, 9280, 39280
        !           574:  9280 continue
        !           575:       rvon01 = 3.211e2
        !           576:       ivcomp = ifix (rvon01)
        !           577:       go to 49280
        !           578: 39280 ivdele = ivdele + 1
        !           579:       write (i02,80003) ivtnum
        !           580:       if (iczero) 49280, 9291, 49280
        !           581: 49280 if (ivcomp - 321) 29280,19280,29280
        !           582: 19280 ivpass = ivpass + 1
        !           583:       write (i02,80001) ivtnum
        !           584:       go to 9291
        !           585: 29280 ivfail = ivfail + 1
        !           586:       ivcorr = 321
        !           587:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           588:  9291 continue
        !           589:       ivtnum = 929
        !           590: c
        !           591: c      ****  test 929  ****
        !           592: c
        !           593:       if (iczero) 39290, 9290, 39290
        !           594:  9290 continue
        !           595:       rvon01 = 777e-1
        !           596:       ivcomp = ifix (rvon01)
        !           597:       go to 49290
        !           598: 39290 ivdele = ivdele + 1
        !           599:       write (i02,80003) ivtnum
        !           600:       if (iczero) 49290, 9301, 49290
        !           601: 49290 if (ivcomp - 77) 29290,19290,29290
        !           602: 19290 ivpass = ivpass + 1
        !           603:       write (i02,80001) ivtnum
        !           604:       go to 9301
        !           605: 29290 ivfail = ivfail + 1
        !           606:       ivcorr = 77
        !           607:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           608: c
        !           609: c     test 930 through test 932 contain intrinsic function tests for
        !           610: c     transfer of sign where arguments and function are integer
        !           611: c
        !           612:  9301 continue
        !           613:       ivtnum = 930
        !           614: c
        !           615: c      ****  test 930  ****
        !           616: c
        !           617:       if (iczero) 39300, 9300, 39300
        !           618:  9300 continue
        !           619:       ivon01 = 643
        !           620:       ivcomp = isign (ivon01,-1)
        !           621:       go to 49300
        !           622: 39300 ivdele = ivdele + 1
        !           623:       write (i02,80003) ivtnum
        !           624:       if (iczero) 49300, 9311, 49300
        !           625: 49300 if (ivcomp + 643) 29300,19300,29300
        !           626: 19300 ivpass = ivpass + 1
        !           627:       write (i02,80001) ivtnum
        !           628:       go to 9311
        !           629: 29300 ivfail = ivfail + 1
        !           630:       ivcorr = -643
        !           631:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           632:  9311 continue
        !           633:       ivtnum = 931
        !           634: c
        !           635: c      ****  test 931  ****
        !           636: c
        !           637:       if (iczero) 39310, 9310, 39310
        !           638:  9310 continue
        !           639:       ivon01 = -22
        !           640:       ivon02 = 723
        !           641:       ivcomp = isign (ivon01,ivon02)
        !           642:       go to 49310
        !           643: 39310 ivdele = ivdele + 1
        !           644:       write (i02,80003) ivtnum
        !           645:       if (iczero) 49310, 9321, 49310
        !           646: 49310 if (ivcomp - 22) 29310,19310,29310
        !           647: 19310 ivpass = ivpass + 1
        !           648:       write (i02,80001) ivtnum
        !           649:       go to 9321
        !           650: 29310 ivfail = ivfail + 1
        !           651:       ivcorr = 22
        !           652:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           653:  9321 continue
        !           654:       ivtnum = 932
        !           655: c
        !           656: c      ****  test 932  ****
        !           657: c
        !           658:       if (iczero) 39320, 9320, 39320
        !           659:  9320 continue
        !           660:       ivon01 = 3532
        !           661:       ivon02 = 1
        !           662:       ivcomp = isign (ivon01,ivon02)
        !           663:       go to 49320
        !           664: 39320 ivdele = ivdele + 1
        !           665:       write (i02,80003) ivtnum
        !           666:       if (iczero) 49320, 9331, 49320
        !           667: 49320 if (ivcomp - 3532) 29320,19320,29320
        !           668: 19320 ivpass = ivpass + 1
        !           669:       write (i02,80001) ivtnum
        !           670:       go to 9331
        !           671: 29320 ivfail = ivfail + 1
        !           672:       ivcorr = 3532
        !           673:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           674: c
        !           675: c     test 933 through test 936 contain intrinsic function tests for
        !           676: c     positive difference where arguments and function are integers
        !           677: c
        !           678:  9331 continue
        !           679:       ivtnum = 933
        !           680: c
        !           681: c      ****  test 933  ****
        !           682: c
        !           683:       if (iczero) 39330, 9330, 39330
        !           684:  9330 continue
        !           685:       ivon01 = 222
        !           686:       ivcomp = idim (ivon01,1)
        !           687:       go to 49330
        !           688: 39330 ivdele = ivdele + 1
        !           689:       write (i02,80003) ivtnum
        !           690:       if (iczero) 49330, 9341, 49330
        !           691: 49330 if (ivcomp - 221) 29330,19330,29330
        !           692: 19330 ivpass = ivpass + 1
        !           693:       write (i02,80001) ivtnum
        !           694:       go to 9341
        !           695: 29330 ivfail = ivfail + 1
        !           696:       ivcorr = 221
        !           697:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           698:  9341 continue
        !           699:       ivtnum = 934
        !           700: c
        !           701: c      ****  test 934  ****
        !           702: c
        !           703:       if (iczero) 39340, 9340, 39340
        !           704:  9340 continue
        !           705:       ivon01 = 45
        !           706:       ivon02 = 41
        !           707:       ivcomp = idim (ivon01,ivon02)
        !           708:       go to 49340
        !           709: 39340 ivdele = ivdele + 1
        !           710:       write (i02,80003) ivtnum
        !           711:       if (iczero) 49340, 9351, 49340
        !           712: 49340 if (ivcomp - 4) 29340,19340,29340
        !           713: 19340 ivpass = ivpass + 1
        !           714:       write (i02,80001) ivtnum
        !           715:       go to 9351
        !           716: 29340 ivfail = ivfail + 1
        !           717:       ivcorr = 4
        !           718:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           719:  9351 continue
        !           720:       ivtnum = 935
        !           721: c
        !           722: c      ****  test 935  ****
        !           723: c
        !           724:       if (iczero) 39350, 9350, 39350
        !           725:  9350 continue
        !           726:       ivon01 = 2
        !           727:       ivon02 = 10
        !           728:       ivcomp = idim (ivon01,ivon02)
        !           729:       go to 49350
        !           730: 39350 ivdele = ivdele + 1
        !           731:       write (i02,80003) ivtnum
        !           732:       if (iczero) 49350, 9361, 49350
        !           733: 49350 if (ivcomp) 29350,19350,29350
        !           734: 19350 ivpass = ivpass + 1
        !           735:       write (i02,80001) ivtnum
        !           736:       go to 9361
        !           737: 29350 ivfail = ivfail + 1
        !           738:       ivcorr = 0
        !           739:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           740:  9361 continue
        !           741:       ivtnum = 936
        !           742: c
        !           743: c      ****  test 936  ****
        !           744: c
        !           745:       if (iczero) 39360, 9360, 39360
        !           746:  9360 continue
        !           747:       ivon01 = 165
        !           748:       ivon02 = -2
        !           749:       ivcomp = idim (ivon01,ivon02)
        !           750:       go to 49360
        !           751: 39360 ivdele = ivdele + 1
        !           752:       write (i02,80003) ivtnum
        !           753:       if (iczero) 49360, 9371, 49360
        !           754: 49360 if (ivcomp - 167) 29360,19360,29360
        !           755: 19360 ivpass = ivpass + 1
        !           756:       write (i02,80001) ivtnum
        !           757:       go to 9371
        !           758: 29360 ivfail = ivfail + 1
        !           759:       ivcorr = 167
        !           760:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           761: c
        !           762: c     tests 937 and 938 contain expressions containing more than one
        !           763: c     intrinsic function - the functions are integer and the arguments
        !           764: c     are real and integer
        !           765: c
        !           766:  9371 continue
        !           767:       ivtnum = 937
        !           768: c
        !           769: c      ****  test 937  ****
        !           770: c
        !           771:       if (iczero) 39370, 9370, 39370
        !           772:  9370 continue
        !           773:       rvon01 = 33.3
        !           774:       ivon01 = -12
        !           775:       ivcomp = int (rvon01) + iabs (ivon01)
        !           776:       go to 49370
        !           777: 39370 ivdele = ivdele + 1
        !           778:       write (i02,80003) ivtnum
        !           779:       if (iczero) 49370, 9381, 49370
        !           780: 49370 if (ivcomp -  45) 29370,19370,29370
        !           781: 19370 ivpass = ivpass + 1
        !           782:       write (i02,80001) ivtnum
        !           783:       go to 9381
        !           784: 29370 ivfail = ivfail + 1
        !           785:       ivcorr = 45
        !           786:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           787:  9381 continue
        !           788:       ivtnum = 938
        !           789: c
        !           790: c      ****  test 938  ****
        !           791: c
        !           792:       if (iczero) 39380, 9380, 39380
        !           793:  9380 continue
        !           794:       ivon01 = 76
        !           795:       ivon02 = 21
        !           796:       ivon03 = 30
        !           797:       ivcomp = max0 (ivon01,ivon02,ivon03) - min0 (ivon01,ivon02,ivon03)
        !           798:       go to 49380
        !           799: 39380 ivdele = ivdele + 1
        !           800:       write (i02,80003) ivtnum
        !           801:       if (iczero) 49380, 9391, 49380
        !           802: 49380 if (ivcomp - 55) 29380,19380,29380
        !           803: 19380 ivpass = ivpass + 1
        !           804:       write (i02,80001) ivtnum
        !           805:       go to 9391
        !           806: 29380 ivfail = ivfail + 1
        !           807:       ivcorr = 55
        !           808:       write (i02,80004) ivtnum, ivcomp, ivcorr
        !           809:  9391 continue
        !           810: c
        !           811: c     write page footings and run summaries
        !           812: 99999 continue
        !           813:       write (i02,90002)
        !           814:       write (i02,90006)
        !           815:       write (i02,90002)
        !           816:       write (i02,90002)
        !           817:       write (i02,90007)
        !           818:       write (i02,90002)
        !           819:       write (i02,90008)  ivfail
        !           820:       write (i02,90009) ivpass
        !           821:       write (i02,90010) ivdele
        !           822: c
        !           823: c
        !           824: c     terminate routine execution
        !           825:       stop
        !           826: c
        !           827: c     format statements for page headers
        !           828: 90000 format (1h1)
        !           829: 90002 format (1h )
        !           830: 90001 format (1h ,10x,34hfortran compiler validation system)
        !           831: 90003 format (1h ,21x,11hversion 1.0)
        !           832: 90004 format (1h ,10x,38hfor official use only - copyright 1978)
        !           833: 90005 format (1h ,5x,4htest,5x,9hpass/fail, 5x,8hcomputed,8x,7hcorrect)
        !           834: 90006 format (1h ,5x,46h----------------------------------------------)
        !           835: 90011 format (1h ,18x,17hsubset level test)
        !           836: c
        !           837: c     format statements for run summaries
        !           838: 90008 format (1h ,15x,i5,19h errors encountered)
        !           839: 90009 format (1h ,15x,i5,13h tests passed)
        !           840: 90010 format (1h ,15x,i5,14h tests deleted)
        !           841: c
        !           842: c     format statements for test results
        !           843: 80001 format (1h ,4x,i5,7x,4hpass)
        !           844: 80002 format (1h ,4x,i5,7x,4hfail)
        !           845: 80003 format (1h ,4x,i5,7x,7hdeleted)
        !           846: 80004 format (1h ,4x,i5,7x,4hfail,10x,i6,9x,i6)
        !           847: 80005 format (1h ,4x,i5,7x,4hfail,4x,e12.5,3x,e12.5)
        !           848: c
        !           849: 90007 format (1h ,20x,20hend of program fm098)
        !           850:       end

unix.superglobalmegacorp.com

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