+c comment section
+c
+c fm061
+c
+c this routine tests arithmetic assignment statements of the
+c form
+c integer variable = real constant
+c integer variable = real variable
+c real variable = integer variable
+c real variable = integer constant
+c
+c the constants and variables contain both positive and negative
+c values.
+c
+c a real datum is a processor approximation to the value of a
+c real number. it may assume positive, negative and zero values.
+c
+c a basic real constant is written as an integer part, a
+c decimal point, and a decimal fraction part in that order. both
+c the integer part and the decimal part are strings of digits;
+c either one of these strings may be empty but not both. the
+c constant is an approximation to the digit string interpreted as a
+c decimal numeral.
+c
+c a decimal exponent is written as the letter e, followed by an
+c optionally signed integer constant.
+c
+c a real constant is indicated by writing a basic real constant,
+c a basic real constant followed by a decimal exponent, or an
+c integer constant followed by a decimal exponent.
+c
+c references
+c american national standard programming language fortran,
+c x3.9-1978
+c
+c section 4.4, real type
+c section 4.4.1, real constant
+c section 6.1, arithmetic expressions
+c section 6.6, evaluation of expressions
+c section 10.1, arithmetic assignment statement
+c section 11.4, arithmetic if statement
+c
+c **********************************************************
+c
+c a compiler validation system for the fortran language
+c based on specifications as defined in american national standard
+c programming language fortran x3.9-1978, has been developed by the
+c federal cobol compiler testing service. the fortran compiler
+c validation system (fcvs) consists of audit routines, their related
+c data, and an executive system. each audit routine is a fortran
+c program, subprogram or function which includes tests of specific
+c language elements and supporting procedures indicating the result
+c of executing these tests.
+c
+c this particular program/subprogram/function contains features
+c found only in the subset as defined in x3.9-1978.
+c
+c suggestions and comments should be forwarded to -
+c
+c department of the navy
+c federal cobol compiler testing service
+c washington, d.c. 20376
+c
+c **********************************************************
+c
+c
+c
+c initialization section
+c
+c initialize constants
+c **************
+c i01 contains the logical unit number for the card reader.
+ i01 = 5
+c i02 contains the logical unit number for the printer.
+ i02 = 6
+c system environment section
+c
+cx010 this card is replaced by contents of fexec x-010 control card.
+c the cx010 card is for overriding the program default i01 = 5
+c (unit number for card reader).
+cx011 this card is replaced by contents of fexec x-011 control card.
+c the cx011 card is for systems which require additional
+c fortran statements for files associated with cx010 above.
+c
+cx020 this card is replaced by contents of fexec x-020 control card.
+c the cx020 card is for overriding the program default i02 = 6
+c (unit number for printer).
+cx021 this card is replaced by contents of fexec x-021 control card.
+c the cx021 card is for systems which require additional
+c fortran statements for files associated with cx020 above.
+c
+ ivpass=0
+ ivfail=0
+ ivdele=0
+ iczero=0
+c
+c write page headers
+ write (i02,90000)
+ write (i02,90001)
+ write (i02,90002)
+ write (i02, 90002)
+ write (i02,90003)
+ write (i02,90002)
+ write (i02,90004)
+ write (i02,90002)
+ write (i02,90011)
+ write (i02,90002)
+ write (i02,90002)
+ write (i02,90005)
+ write (i02,90006)
+ write (i02,90002)
+c
+c test section
+c
+c test 32 through test 42 contain arithmetic assignment
+c statements of the form
+c
+c integer variable = real variable
+c
+ ivtnum = 32
+c
+c **** test 32 ****
+c
+ if (iczero) 30320, 320, 30320
+ 320 continue
+ rvon01 = 44.5
+ ivcomp = rvon01
+ go to 40320
+30320 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40320, 331, 40320
+40320 if (ivcomp - 44) 20320,10320,20320
+10320 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 331
+20320 ivfail = ivfail + 1
+ ivcorr = 44
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 331 continue
+ ivtnum = 33
+c
+c **** test 33 ****
+c
+ if (iczero) 30330, 330, 30330
+ 330 continue
+ rvon01 = -2.0005
+ ivcomp = rvon01
+ go to 40330
+30330 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40330, 341, 40330
+40330 if (ivcomp + 2) 20330,10330,20330
+10330 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 341
+20330 ivfail = ivfail + 1
+ ivcorr = -2
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 341 continue
+ ivtnum = 34
+c
+c **** test 34 ****
+c
+ if (iczero) 30340, 340, 30340
+ 340 continue
+ rvon01 = .32767
+ ivcomp = rvon01
+ go to 40340
+30340 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40340, 351, 40340
+40340 if (ivcomp) 20340,10340,20340
+10340 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 351
+20340 ivfail = ivfail + 1
+ ivcorr = 0
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 351 continue
+ ivtnum = 35
+c
+c **** test 35 ****
+c
+ if (iczero) 30350, 350, 30350
+ 350 continue
+ rvon01 = 1.999
+ ivcomp = rvon01
+ go to 40350
+30350 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40350, 361, 40350
+40350 if (ivcomp - 1) 20350,10350,20350
+10350 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 361
+20350 ivfail = ivfail + 1
+ ivcorr = 1
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 361 continue
+ ivtnum = 36
+c
+c **** test 36 ****
+c
+ if (iczero) 30360, 360, 30360
+ 360 continue
+ rvon01 = .25e+1
+ ivcomp = rvon01
+ go to 40360
+30360 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40360, 371, 40360
+40360 if (ivcomp - 2) 20360,10360,20360
+10360 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 371
+20360 ivfail = ivfail + 1
+ ivcorr = 2
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 371 continue
+ ivtnum = 37
+c
+c **** test 37 ****
+c
+ if (iczero) 30370, 370, 30370
+ 370 continue
+ rvon01 = 445.0e-01
+ ivcomp = rvon01
+ go to 40370
+30370 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40370, 381, 40370
+40370 if (ivcomp - 44) 20370,10370,20370
+10370 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 381
+20370 ivfail = ivfail + 1
+ ivcorr = 44
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 381 continue
+ ivtnum = 38
+c
+c **** test 38 ****
+c
+ if (iczero) 30380, 380, 30380
+ 380 continue
+ rvon01 = -651.1e-0
+ ivcomp = rvon01
+ go to 40380
+30380 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40380, 391, 40380
+40380 if (ivcomp + 651) 20380,10380,20380
+10380 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 391
+20380 ivfail = ivfail + 1
+ ivcorr = -651
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 391 continue
+ ivtnum = 39
+c
+c **** test 39 ****
+c
+ if (iczero) 30390, 390, 30390
+ 390 continue
+ rvon01 = .3266e4
+ ivcomp = rvon01
+ go to 40390
+30390 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40390, 401, 40390
+40390 if (ivcomp - 3266) 20390,10390,20390
+10390 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 401
+20390 ivfail = ivfail + 1
+ ivcorr = 3266
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 401 continue
+ ivtnum = 40
+c
+c **** test 40 ****
+c
+ if (iczero) 30400, 400, 30400
+ 400 continue
+ rvon01 = 35.43e-01
+ ivcomp = rvon01
+ go to 40400
+30400 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40400, 411, 40400
+40400 if (ivcomp - 3) 20400,10400,20400
+10400 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 411
+20400 ivfail = ivfail + 1
+ ivcorr = 3
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 411 continue
+ ivtnum = 41
+c
+c **** test 41 ****
+c
+ if (iczero) 30410, 410, 30410
+ 410 continue
+ rvon01 = -7.001e2
+ ivcomp = rvon01
+ go to 40410
+30410 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40410, 421, 40410
+40410 if (ivcomp + 700) 20410,10410,20410
+10410 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 421
+20410 ivfail = ivfail + 1
+ ivcorr = -700
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 421 continue
+ ivtnum = 42
+c
+c **** test 42 ****
+c
+ if (iczero) 30420, 420, 30420
+ 420 continue
+ rvon01 = 4.45e-02
+ ivcomp = rvon01
+ go to 40420
+30420 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40420, 431, 40420
+40420 if (ivcomp) 20420,10420,20420
+10420 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 431
+20420 ivfail = ivfail + 1
+ ivcorr = 0
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+c test 43 through test 48 contain arithmetic assignment
+c statements of the form
+c
+c real variable = integer variable
+c
+ 431 continue
+ ivtnum = 43
+c
+c **** test 43 ****
+c
+ if (iczero) 30430, 430, 30430
+ 430 continue
+ ivon01 = 2
+ rvcomp = ivon01
+ go to 40430
+30430 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40430, 441, 40430
+40430 if (rvcomp - 1.9995) 20430,10430,40431
+40431 if (rvcomp - 2.0005) 10430,10430,20430
+10430 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 441
+20430 ivfail = ivfail + 1
+ rvcorr = 2.0000
+ write (i02,80005) ivtnum, rvcomp, rvcorr
+ 441 continue
+ ivtnum = 44
+c
+c **** test 44 ****
+c
+ if (iczero) 30440, 440, 30440
+ 440 continue
+ ivon01 = 25
+ rvcomp = ivon01
+ go to 40440
+30440 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40440, 451, 40440
+40440 if (rvcomp - 24.995) 20440,10440,40441
+40441 if (rvcomp - 25.005) 10440,10440,20440
+10440 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 451
+20440 ivfail = ivfail + 1
+ rvcorr = 25.000
+ write (i02,80005) ivtnum, rvcomp, rvcorr
+ 451 continue
+ ivtnum = 45
+c
+c **** test 45 ****
+c
+ if (iczero) 30450, 450, 30450
+ 450 continue
+ ivon01 = 357
+ rvcomp = ivon01
+ go to 40450
+30450 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40450, 461, 40450
+40450 if (rvcomp - 356.95) 20450,10450,40451
+40451 if (rvcomp - 357.05) 10450,10450,20450
+10450 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 461
+20450 ivfail = ivfail + 1
+ rvcorr = 357.00
+ write (i02,80005) ivtnum, rvcomp, rvcorr
+ 461 continue
+ ivtnum = 46
+c
+c **** test 46 ****
+c
+ if (iczero) 30460, 460, 30460
+ 460 continue
+ ivon01 = 4968
+ rvcomp = ivon01
+ go to 40460
+30460 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40460, 471, 40460
+40460 if (rvcomp - 4967.5) 20460,10460,40461
+40461 if (rvcomp - 4968.5) 10460,10460,20460
+10460 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 471
+20460 ivfail = ivfail + 1
+ rvcorr = 4968.0
+ write (i02,80005) ivtnum, rvcomp, rvcorr
+ 471 continue
+ ivtnum = 47
+c
+c **** test 47 ****
+c
+ if (iczero) 30470, 470, 30470
+ 470 continue
+ ivon01 = 32767
+ rvcomp = ivon01
+ go to 40470
+30470 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40470, 481, 40470
+40470 if (rvcomp - 32762.) 20470,10470,40471
+40471 if (rvcomp - 32772.) 10470,10470,20470
+10470 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 481
+20470 ivfail = ivfail + 1
+ rvcorr = 32767.
+ write (i02,80005) ivtnum, rvcomp, rvcorr
+ 481 continue
+ ivtnum = 48
+c
+c **** test 48 ****
+c
+ if (iczero) 30480, 480, 30480
+ 480 continue
+ ivon01 = -2
+ rvcomp = ivon01
+ go to 40480
+30480 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40480, 491, 40480
+40480 if (rvcomp + 2.0005) 20480,10480,40481
+40481 if (rvcomp + 1.9995) 10480,10480,20450
+10480 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 491
+20480 ivfail = ivfail + 1
+ rvcorr = -2.0000
+ write (i02,80005) ivtnum, rvcomp, rvcorr
+c
+c test 49 through test 51 contain arithmetic assignment statements
+c of the form
+c integer variable = real constant
+c where constant is basic real constant
+c
+ 491 continue
+ ivtnum = 49
+c
+c **** test 49 ****
+c
+ if (iczero) 30490, 490, 30490
+ 490 continue
+ ivcomp = 44.5
+ go to 40490
+30490 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40490, 501, 40490
+40490 if (ivcomp - 44) 20490,10490,20490
+10490 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 501
+20490 ivfail = ivfail + 1
+ ivcorr = 44
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 501 continue
+ ivtnum = 50
+c
+c **** test 50 ****
+c
+ if (iczero) 30500, 500, 30500
+ 500 continue
+ ivcomp = 6500.1
+ go to 40500
+30500 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40500, 511, 40500
+40500 if (ivcomp - 6500) 20500,10500,20500
+10500 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 511
+20500 ivfail = ivfail + 1
+ ivcorr = 6500
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 511 continue
+ ivtnum = 51
+c
+c **** test 51 ****
+c
+ if (iczero) 30510, 510, 30510
+ 510 continue
+ ivcomp = -.33333
+ go to 40510
+30510 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40510, 521, 40510
+40510 if (ivcomp) 20510,10510,20510
+10510 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 521
+20510 ivfail = ivfail + 1
+ ivcorr = 0
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+c
+c test 52 through test 55 contain arithmetic assignment statements
+c of the form
+c integer variable = real constant
+c
+c where constant is basic real constant followed by decimal exponent
+c
+ 521 continue
+ ivtnum = 52
+c
+c **** test 52 ****
+c
+ if (iczero) 30520, 520, 30520
+ 520 continue
+ ivcomp = .21e+1
+ go to 40520
+30520 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40520, 531, 40520
+40520 if (ivcomp - 2) 20520,10520,20520
+10520 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 531
+20520 ivfail = ivfail + 1
+ ivcorr = 2
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 531 continue
+ ivtnum = 53
+c
+c **** test 53 ****
+c
+ if (iczero) 30530, 530, 30530
+ 530 continue
+ ivcomp = 445.0e-01
+ go to 40530
+30530 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40530, 541, 40530
+40530 if (ivcomp - 44) 20530,10530,20530
+10530 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 541
+20530 ivfail = ivfail + 1
+ ivcorr = 44
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 541 continue
+ ivtnum = 54
+c
+c **** test 54 ****
+c
+ if (iczero) 30540, 540, 30540
+ 540 continue
+ ivcomp = 4.450e1
+ go to 40540
+30540 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40540, 551, 40540
+40540 if (ivcomp - 44) 20540,10540,20540
+10540 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 551
+20540 ivfail = ivfail + 1
+ ivcorr = 44
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 551 continue
+ ivtnum = 55
+c
+c **** test 55 ****
+c
+ if (iczero) 30550, 550, 30550
+ 550 continue
+ ivcomp = -4.45e0
+ go to 40550
+30550 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40550, 561, 40550
+40550 if (ivcomp + 4) 20550,10550,20550
+10550 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 561
+20550 ivfail = ivfail + 1
+ ivcorr = -4
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+c
+c test 56 and 57 contain arithmetic assignment statements of the
+c form integer variable = real constant
+c where constant is integer constant followed by decimal exponent
+c
+ 561 continue
+ ivtnum = 56
+c
+c **** test 56 ****
+c
+ if (iczero) 30560, 560, 30560
+ 560 continue
+ ivcomp = 445e-02
+ go to 40560
+30560 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40560, 571, 40560
+40560 if (ivcomp - 4) 20560,10560,20560
+10560 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 571
+20560 ivfail = ivfail + 1
+ ivcorr = 4
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+ 571 continue
+ ivtnum = 57
+c
+c **** test 57 ****
+c
+ if (iczero) 30570, 570, 30570
+ 570 continue
+ ivcomp = -701e-1
+ go to 40570
+30570 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40570, 581, 40570
+40570 if (ivcomp + 70) 20570,10570,20570
+10570 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 581
+20570 ivfail = ivfail + 1
+ ivcorr = -70
+ write (i02,80004) ivtnum, ivcomp, ivcorr
+c
+c test 58 through test 62 contain arithmetic assignment statements
+c of the form real variable = integer constant
+c
+ 581 continue
+ ivtnum = 58
+c
+c **** test 58 ****
+c
+ if (iczero) 30580, 580, 30580
+ 580 continue
+ rvcomp = 23
+ go to 40580
+30580 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40580, 591, 40580
+40580 if (rvcomp - 22.995) 20580,10580,40581
+40581 if (rvcomp - 23.005) 10580,10580,20580
+10580 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 591
+20580 ivfail = ivfail + 1
+ rvcorr = 23.000
+ write (i02,80005) ivtnum, rvcomp, rvcorr
+ 591 continue
+ ivtnum = 59
+c
+c **** test 59 ****
+c
+ if (iczero) 30590, 590, 30590
+ 590 continue
+ rvcomp = 32645
+ go to 40590
+30590 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40590, 601, 40590
+40590 if (rvcomp - 32640.) 20590,10590,40591
+40591 if (rvcomp - 32650.) 10590,10590,20590
+10590 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 601
+20590 ivfail = ivfail + 1
+ rvcorr = 32645.
+ write (i02,80005) ivtnum, rvcomp, rvcorr
+ 601 continue
+ ivtnum = 60
+c
+c **** test 60 ****
+c
+ if (iczero) 30600, 600, 30600
+ 600 continue
+ rvcomp = 0
+ go to 40600
+30600 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40600, 611, 40600
+40600 if (rvcomp) 20600,10600,20600
+10600 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 611
+20600 ivfail = ivfail + 1
+ rvcorr = 00000.
+ write (i02,80005) ivtnum, rvcomp, rvcorr
+ 611 continue
+ ivtnum = 61
+c
+c **** test 61 ****
+c
+ if (iczero) 30610, 610, 30610
+ 610 continue
+ rvcomp = -15
+ go to 40610
+30610 ivdele = ivdele + 1
+ write (i02,80003) ivtnum
+ if (iczero) 40610, 621, 40610
+40610 if (rvcomp -14.995) 40611,10610,20610
+40611 if (rvcomp + 15.005) 20610,10610,10610
+10610 ivpass = ivpass + 1
+ write (i02,80001) ivtnum
+ go to 621
+20610 ivfail = ivfail + 1
+ rvcorr = -15.000
+ write (i02,80005) ivtnum, rvcomp, rvcorr
+ 621 continue
+c
+c **** end of tests ****
+c
+c
+c write page footings and run summaries
+99999 continue
+ write (i02,90002)
+ write (i02,90006)
+ write (i02,90002)
+ write (i02,90002)
+ write (i02,90007)
+ write (i02,90002)
+ write (i02,90008) ivfail
+ write (i02,90009) ivpass
+ write (i02,90010) ivdele
+c
+c
+c terminate routine execution
+ stop
+c
+c format statements for page headers
+90000 format (1h1)
+90002 format (1h )
+90001 format (1h ,10x,34hfortran compiler validation system)
+90003 format (1h ,21x,11hversion 1.0)
+90004 format (1h ,10x,38hfor official use only - copyright 1978)
+90005 format (1h ,5x,4htest,5x,9hpass/fail, 5x,8hcomputed,8x,7hcorrect)
+90006 format (1h ,5x,46h----------------------------------------------)
+90011 format (1h ,18x,17hsubset level test)
+c
+c format statements for run summaries
+90008 format (1h ,15x,i5,19h errors encountered)
+90009 format (1h ,15x,i5,13h tests passed)
+90010 format (1h ,15x,i5,14h tests deleted)
+c
+c format statements for test results
+80001 format (1h ,4x,i5,7x,4hpass)
+80002 format (1h ,4x,i5,7x,4hfail)
+80003 format (1h ,4x,i5,7x,7hdeleted)
+80004 format (1h ,4x,i5,7x,4hfail,10x,i6,9x,i6)
+80005 format (1h ,4x,i5,7x,4hfail,4x,e12.5,3x,e12.5)
+c
+90007 format (1h ,20x,20hend of program fm061)
+ end