blob: 018e1e9bd50c27607161ee0cb476de2f3be75cbe [file] [log] [blame]
PROGRAM FM906
C***********************************************************************00010906
C***** FORTRAN 77 00020906
C***** FM906 00030906
C***** LSTDI2 - (372) 00040906
C***** 00050906
C***********************************************************************00060906
C***** GENERAL PURPOSE ANS REF 00070906
C***** TEST LIST DIRECTED INPUT 13.6 00080906
C***** DOUBLE PRECISION, COMPLEX DATA TYPES INCLUDED 12.4 00090906
C***** 00100906
CBB** ********************** BBCCOMNT **********************************00110906
C**** 00120906
C**** 1978 FORTRAN COMPILER VALIDATION SYSTEM 00130906
C**** VERSION 2.1 00140906
C**** 00150906
C**** 00160906
C**** SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO 00170906
C**** NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY 00180906
C**** SOFTWARE STANDARDS VALIDATION GROUP 00190906
C**** BUILDING 225 RM A266 00200906
C**** GAITHERSBURG, MD 20899 00210906
C**** 00220906
C**** 00230906
C**** 00240906
CBE** ********************** BBCCOMNT **********************************00250906
C***** 00260906
C INPUT DATA TO THIS SEGMENT CONSISTS OF 12 CARD IMAGES IN COL. 1-44 00270906
COL. 1-----------------------------------------44 00280906
CARD 1 2.5D0 00290906
CARD 2 1.5 2.5D0 3.5E0 00300906
CARD 3 (3.0,4.0) 00310906
CARD 4 (1.0,0.0) (0.0,0.0) (0.0,3.0) 00320906
CARD 5 2, 2.5D0, 2.5D0, T, (3.0,4.0), 'TEST' 00330906
CARD 6 ( 2.5 , 3.5 ) 00340906
CARD 7 (1.0 , 00350906
CARD 8 2.0) 00360906
CARD 9 , (2.0, 3.0),,6.0D0, 2*, 00370906
CARD 10 1.0D0 (2.0, 2.0) 3.0D0 (4.0, 4.0) 5.0D0 00380906
CARD 11 6.0D0 (7.0, 7.0) / 8.0D0 (9.0, 9.0) 10.0D0 00390906
CARD 12 2.0D0 4.0D0 / 6.0D0 8.0D0 10.0D0 00400906
C***** 00410906
C***** S P E C I F I C A T I O N S SEGMENT 372 00420906
LOGICAL AVB 00430906
CHARACTER A4VK*4,CVCORR*4 00440906
DOUBLE PRECISION AVD, BVD, CVD, DVCORR 00450906
DOUBLE PRECISION A1D(4) 00460906
COMPLEX AVC, BVC, CVC, ZVCORR 00470906
REAL R2E(6) 00480906
EQUIVALENCE (AVC,R2E(1)),(BVC,R2E(3)),(CVC,R2E(5)) 00490906
C***** 00500906
CBB** ********************** BBCINITA **********************************00510906
C**** SPECIFICATION STATEMENTS 00520906
C**** 00530906
CHARACTER ZVERS*13, ZVERSD*17, ZDATE*17, ZPROG*5, ZCOMPL*20, 00540906
1 ZNAME*20, ZTAPE*10, ZPROJ*13, REMRKS*31, ZTAPED*13 00550906
CBE** ********************** BBCINITA **********************************00560906
CBB** ********************** BBCINITB **********************************00570906
C**** INITIALIZE SECTION 00580906
DATA ZVERS, ZVERSD, ZDATE 00590906
1 /'VERSION 2.1 ', '93/10/21*21.02.00', '*NO DATE*TIME'/ 00600906
DATA ZCOMPL, ZNAME, ZTAPE 00610906
1 /'*NONE SPECIFIED*', '*NO COMPANY NAME*', '*NO TAPE*'/ 00620906
DATA ZPROJ, ZTAPED, ZPROG 00630906
1 /'*NO PROJECT*', '*NO TAPE DATE', 'XXXXX'/ 00640906
DATA REMRKS /' '/ 00650906
C**** THE FOLLOWING 9 COMMENT LINES (CZ01, CZ02, ...) CAN BE REPLACED 00660906
C**** FOR IDENTIFYING THE TEST ENVIRONMENT 00670906
C**** 00680906
CZ01 ZVERS = 'VERSION OF THE COMPILER VALIDATION SYSTEM' 00690906
CZ02 ZVERSD = 'CREATION DATE/TIME OF THE COMPILER VALIDATION SYSTEM' 00700906
CZ03 ZPROG = 'PROGRAM NAME' 00710906
CZ04 ZDATE = 'DATE OF TEST' 00720906
CZ05 ZCOMPL = 'COMPILER IDENTIFICATION' 00730906
CZ06 ZPROJ = 'PROJECT NUMBER/IDENTIFICATION' 00740906
CZ07 ZNAME = 'NAME OF USER' 00750906
CZ08 ZTAPE = 'TAPE OWNER/ID' 00760906
CZ09 ZTAPED = 'DATE TAPE COPIED' 00770906
C 00780906
IVPASS = 0 00790906
IVFAIL = 0 00800906
IVDELE = 0 00810906
IVINSP = 0 00820906
IVTOTL = 0 00830906
IVTOTN = 0 00840906
ICZERO = 0 00850906
C 00860906
C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00870906
I01 = 05 00880906
C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00890906
I02 = 06 00900906
C 00910906
CX010 REPLACED BY FEXEC X-010 CONTROL CARD (CARD-READER UNIT NUMBER). 00920906
C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00930906
CX011 REPLACED BY FEXEC X-011 CONTROL CARD. CX011 IS FOR SYSTEMS 00940906
C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX010. 00950906
C 00960906
CX020 REPLACED BY FEXEC X-020 CONTROL CARD (PRINTER UNIT NUMBER). 00970906
C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02= 6 00980906
CX021 REPLACED BY FEXEC X-021 CONTROL CARD. CX021 IS FOR SYSTEMS 00990906
C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX020. 01000906
C 01010906
CBE** ********************** BBCINITB **********************************01020906
IRVI = I01 01030906
NUVI = I02 01040906
IVTOTL = 28 01050906
ZPROG = 'FM906' 01060906
CBB** ********************** BBCHED0A **********************************01070906
C**** 01080906
C**** WRITE REPORT TITLE 01090906
C**** 01100906
WRITE (I02, 90002) 01110906
WRITE (I02, 90006) 01120906
WRITE (I02, 90007) 01130906
WRITE (I02, 90008) ZVERS, ZVERSD 01140906
WRITE (I02, 90009) ZPROG, ZPROG 01150906
WRITE (I02, 90010) ZDATE, ZCOMPL 01160906
CBE** ********************** BBCHED0A **********************************01170906
C***** 01180906
C***** HEADING FOR SEGMENT 372 01190906
WRITE(NUVI,37200) 01200906
37200 FORMAT(" ", /" LSTDI2 - (372) " , 01210906
1 " LIST DIRECTED INPUT" , 01220906
2 " FOR D.P. AND COMPLEX DATA TYPES" // 01230906
3 " ANS REF. - 13.6 12.4" ) 01240906
CBB** ********************** BBCHED0B **********************************01250906
C**** WRITE DETAIL REPORT HEADERS 01260906
C**** 01270906
WRITE (I02,90004) 01280906
WRITE (I02,90004) 01290906
WRITE (I02,90013) 01300906
WRITE (I02,90014) 01310906
WRITE (I02,90015) IVTOTL 01320906
CBE** ********************** BBCHED0B **********************************01330906
CT001* TEST 1 - CARD 1 DOUBLE PRECISION 01340906
IVTNUM = 1 01350906
READ(IRVI, *) AVD 01360906
IF (AVD - 0.2499999998D+01) 20010, 10010, 40010 01370906
40010 IF (AVD - 0.2500000002D+01) 10010, 10010, 20010 01380906
10010 IVPASS = IVPASS + 1 01390906
WRITE (NUVI, 80002) IVTNUM 01400906
GO TO 0011 01410906
20010 IVFAIL = IVFAIL + 1 01420906
DVCORR = 2.5D0 01430906
WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01440906
0011 CONTINUE 01450906
C***** TESTS 2 THRU 4 - CARD 2 SEVERAL DOUBLE PRECISION 01460906
CT002* TEST 2 01470906
IVTNUM = 2 01480906
READ(IRVI, *) AVD, BVD, CVD 01490906
IF (AVD - 0.1499999999D+01) 20020, 10020, 40020 01500906
40020 IF (AVD - 0.1500000001D+01) 10020, 10020, 20020 01510906
10020 IVPASS = IVPASS + 1 01520906
WRITE (NUVI, 80002) IVTNUM 01530906
GO TO 0021 01540906
20020 IVFAIL = IVFAIL + 1 01550906
DVCORR = 1.5D0 01560906
WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01570906
0021 CONTINUE 01580906
CT003* TEST 3 01590906
IVTNUM = 3 01600906
IF (BVD - 0.2499999998D+01) 20030, 10030, 40030 01610906
40030 IF (BVD - 0.2500000002D+01) 10030, 10030, 20030 01620906
10030 IVPASS = IVPASS + 1 01630906
WRITE (NUVI, 80002) IVTNUM 01640906
GO TO 0031 01650906
20030 IVFAIL = IVFAIL + 1 01660906
DVCORR = 2.5D0 01670906
WRITE (NUVI, 80031) IVTNUM, BVD, DVCORR 01680906
0031 CONTINUE 01690906
CT004* TEST 4 01700906
IVTNUM = 4 01710906
IF (CVD - 0.3499999998D+01) 20040, 10040, 40040 01720906
40040 IF (CVD - 0.3500000002D+01) 10040, 10040, 20040 01730906
10040 IVPASS = IVPASS + 1 01740906
WRITE (NUVI, 80002) IVTNUM 01750906
GO TO 0041 01760906
20040 IVFAIL = IVFAIL + 1 01770906
DVCORR = 3.5D0 01780906
WRITE (NUVI, 80031) IVTNUM, CVD, DVCORR 01790906
0041 CONTINUE 01800906
CT005* TEST 5 - CARD 3 COMPLEX 01810906
IVTNUM = 5 01820906
READ(IRVI, *) AVC 01830906
IF (R2E(1) - 0.29998E+01) 20050, 40052, 40051 01840906
40051 IF (R2E(1) - 0.30002E+01) 40052, 40052, 20050 01850906
40052 IF (R2E(2) - 0.39998E+01) 20050, 10050, 40050 01860906
40050 IF (R2E(2) - 0.40002E+01) 10050, 10050, 20050 01870906
10050 IVPASS = IVPASS + 1 01880906
WRITE (NUVI, 80002) IVTNUM 01890906
GO TO 0051 01900906
20050 IVFAIL = IVFAIL + 1 01910906
ZVCORR = (3.0, 4.0) 01920906
WRITE (NUVI, 80045) IVTNUM, AVC, ZVCORR 01930906
0051 CONTINUE 01940906
C***** TESTS 6 THRU 8 - CARD 4 SEVERAL COMPLEX 01950906
CT006* TEST 6 01960906
IVTNUM = 6 01970906
READ(IRVI, *) AVC, BVC, CVC 01980906
IF (R2E(1) - 0.99995E+00) 20060, 40062, 40061 01990906
40061 IF (R2E(1) - 0.10001E+01) 40062, 40062, 20060 02000906
40062 IF (R2E(2) + 0.50000E-04) 20060, 10060, 40060 02010906
40060 IF (R2E(2) - 0.50000E-04) 10060, 10060, 20060 02020906
10060 IVPASS = IVPASS + 1 02030906
WRITE (NUVI, 80002) IVTNUM 02040906
GO TO 0061 02050906
20060 IVFAIL = IVFAIL + 1 02060906
ZVCORR = (1.0, 0.0) 02070906
WRITE (NUVI, 80045) IVTNUM, AVC, ZVCORR 02080906
0061 CONTINUE 02090906
CT007* TEST 7 02100906
IVTNUM = 7 02110906
IF (R2E(3) + 0.50000E-04) 20070, 40072, 40071 02120906
40071 IF (R2E(3) - 0.50000E-04) 40072, 40072, 20070 02130906
40072 IF (R2E(4) + 0.50000E-04) 20070, 10070, 40070 02140906
40070 IF (R2E(4) - 0.50000E-04) 10070, 10070, 20070 02150906
10070 IVPASS = IVPASS + 1 02160906
WRITE (NUVI, 80002) IVTNUM 02170906
GO TO 0071 02180906
20070 IVFAIL = IVFAIL + 1 02190906
ZVCORR = (0.0, 0.0) 02200906
WRITE (NUVI, 80045) IVTNUM, BVC, ZVCORR 02210906
0071 CONTINUE 02220906
CT008* TEST 8 02230906
IVTNUM = 8 02240906
IF (R2E(5) + 0.50000E-04) 20080, 40082, 40081 02250906
40081 IF (R2E(5) - 0.50000E-04) 40082, 40082, 20080 02260906
40082 IF (R2E(6) - 0.29998E+01) 20080, 10080, 40080 02270906
40080 IF (R2E(6) - 0.30002E+01) 10080, 10080, 20080 02280906
10080 IVPASS = IVPASS + 1 02290906
WRITE (NUVI, 80002) IVTNUM 02300906
GO TO 0081 02310906
20080 IVFAIL = IVFAIL + 1 02320906
ZVCORR = (0.0, 3.0) 02330906
WRITE (NUVI, 80045) IVTNUM, CVC, ZVCORR 02340906
0081 CONTINUE 02350906
C***** TESTS 9 THRU 14 - CARD 5 MIXED LIST 02360906
CT009* TEST 9 02370906
IVTNUM = 9 02380906
READ(IRVI, *) IVI, AVD, AVS, AVB, AVC, A4VK 02390906
IF (IVI - 2) 20090, 10090, 20090 02400906
10090 IVPASS = IVPASS + 1 02410906
WRITE (NUVI, 80002) IVTNUM 02420906
GO TO 0091 02430906
20090 IVFAIL = IVFAIL + 1 02440906
IVCORR = 2 02450906
WRITE (NUVI, 80010) IVTNUM, IVI, IVCORR 02460906
0091 CONTINUE 02470906
CT010* TEST 10 02480906
IVTNUM = 10 02490906
IF (AVD - 0.2499999998D+01) 20100, 10100, 40100 02500906
40100 IF (AVD - 0.2500000002D+01) 10100, 10100, 20100 02510906
10100 IVPASS = IVPASS + 1 02520906
WRITE (NUVI, 80002) IVTNUM 02530906
GO TO 0101 02540906
20100 IVFAIL = IVFAIL + 1 02550906
DVCORR = 2.5D0 02560906
WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 02570906
0101 CONTINUE 02580906
CT011* TEST 11 02590906
IVTNUM = 11 02600906
IF (AVS - 0.24998E+01) 20110, 10110, 40110 02610906
40110 IF (AVS - 0.25002E+01) 10110, 10110, 20110 02620906
10110 IVPASS = IVPASS + 1 02630906
WRITE (NUVI, 80002) IVTNUM 02640906
GO TO 0111 02650906
20110 IVFAIL = IVFAIL + 1 02660906
RVCORR = 2.5 02670906
WRITE (NUVI, 80012) IVTNUM, AVS, RVCORR 02680906
0111 CONTINUE 02690906
CT012* TEST 12 02700906
IVTNUM = 12 02710906
IVCOMP = 0 02720906
IF (AVB) IVCOMP = 1 02730906
IF (IVCOMP - 1) 20120, 10120, 20120 02740906
10120 IVPASS = IVPASS + 1 02750906
WRITE (NUVI, 80002) IVTNUM 02760906
GO TO 0121 02770906
20120 IVFAIL = IVFAIL + 1 02780906
LVCORR = 1 02790906
REMRKS = '1 = TRUE ; 0 = FALSE' 02800906
WRITE (NUVI, 80008) IVTNUM, REMRKS 02810906
WRITE (NUVI, 80024) IVCOMP 02820906
WRITE (NUVI, 80026) LVCORR 02830906
0121 CONTINUE 02840906
C***** ADVANCE TO TOP-OF-PAGE AND WRITE HEADERS 02850906
WRITE (NUVI, 90002) 02860906
WRITE (NUVI, 90013) 02870906
WRITE (NUVI, 90014) 02880906
CT013* TEST 13 02890906
IVTNUM = 13 02900906
IF (R2E(1) - 0.29998E+01) 20130, 40132, 40131 02910906
40131 IF (R2E(1) - 0.30002E+01) 40132, 40132, 20130 02920906
40132 IF (R2E(2) - 0.39998E+01) 20130, 10130, 40130 02930906
40130 IF (R2E(2) - 0.40002E+01) 10130, 10130, 20130 02940906
10130 IVPASS = IVPASS + 1 02950906
WRITE (NUVI, 80002) IVTNUM 02960906
GO TO 0131 02970906
20130 IVFAIL = IVFAIL + 1 02980906
ZVCORR = (3.0, 4.0) 02990906
WRITE (NUVI, 80045) IVTNUM, AVC, ZVCORR 03000906
0131 CONTINUE 03010906
CT014* TEST 14 03020906
IVTNUM = 14 03030906
IVCOMP = 0 03040906
IF (A4VK.EQ.'TEST') IVCOMP = 1 03050906
IF (IVCOMP - 1) 20140, 10140, 20140 03060906
10140 IVPASS = IVPASS + 1 03070906
WRITE (NUVI, 80002) IVTNUM 03080906
GO TO 0141 03090906
20140 IVFAIL = IVFAIL + 1 03100906
CVCORR = 'TEST' 03110906
WRITE (NUVI, 80018) IVTNUM, A4VK, CVCORR 03120906
0141 CONTINUE 03130906
CT015* TEST 15 - CARD 6 COMPLEX CONSTANT W/EMBEDDED BLANKS 03140906
IVTNUM = 15 03150906
READ(IRVI, *) AVC 03160906
IF (R2E(1) - 0.24998E+01) 20150, 40152, 40151 03170906
40151 IF (R2E(1) - 0.25002E+01) 40152, 40152, 20150 03180906
40152 IF (R2E(2) - 0.34998E+01) 20150, 10150, 40150 03190906
40150 IF (R2E(2) - 0.35002E+01) 10150, 10150, 20150 03200906
10150 IVPASS = IVPASS + 1 03210906
WRITE (NUVI, 80002) IVTNUM 03220906
GO TO 0151 03230906
20150 IVFAIL = IVFAIL + 1 03240906
ZVCORR = (2.5, 3.5) 03250906
WRITE (NUVI, 80045) IVTNUM, AVC, ZVCORR 03260906
0151 CONTINUE 03270906
CT016* TEST 16 - CARDS 7-8 COMPLEX WITH EMBEDDED END-OF-RECORD 03280906
IVTNUM = 16 03290906
READ(IRVI, *) AVC 03300906
IF (R2E(1) - 0.99995E+00) 20160, 40162, 40161 03310906
40161 IF (R2E(1) - 0.10001E+01) 40162, 40162, 20160 03320906
40162 IF (R2E(2) - 0.19999E+01) 20160, 10160, 40160 03330906
40160 IF (R2E(2) - 0.20001E+01) 10160, 10160, 20160 03340906
10160 IVPASS = IVPASS + 1 03350906
WRITE (NUVI, 80002) IVTNUM 03360906
GO TO 0161 03370906
20160 IVFAIL = IVFAIL + 1 03380906
ZVCORR = (1.0, 2.0) 03390906
WRITE (NUVI, 80045) IVTNUM, AVC, ZVCORR 03400906
0161 CONTINUE 03410906
C***** TESTS 17 THRU 22 - CARD 9 NULL VALUES 03420906
CT017* TEST 17 03430906
IVTNUM = 17 03440906
AVD = 1.0D0 03450906
BVC = (4.0, 5.0) 03460906
CVC = (7.0, 8.0) 03470906
CVD = 9.0D0 03480906
READ(IRVI, *) AVD, AVC, BVC, BVD, CVC, CVD 03490906
IF (AVD - 0.9999999995D+00) 20170, 10170, 40170 03500906
40170 IF (AVD - 0.1000000001D+01) 10170, 10170, 20170 03510906
10170 IVPASS = IVPASS + 1 03520906
WRITE (NUVI, 80002) IVTNUM 03530906
GO TO 0171 03540906
20170 IVFAIL = IVFAIL + 1 03550906
DVCORR = 1.0D0 03560906
WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 03570906
0171 CONTINUE 03580906
CT018* TEST 18 03590906
IVTNUM = 18 03600906
IF (R2E(1) - 0.19999E+01) 20180, 40182, 40181 03610906
40181 IF (R2E(1) - 0.20001E+01) 40182, 40182, 20180 03620906
40182 IF (R2E(2) - 0.29998E+01) 20180, 10180, 40180 03630906
40180 IF (R2E(2) - 0.30002E+01) 10180, 10180, 20180 03640906
10180 IVPASS = IVPASS + 1 03650906
WRITE (NUVI, 80002) IVTNUM 03660906
GO TO 0181 03670906
20180 IVFAIL = IVFAIL + 1 03680906
ZVCORR = (2.0, 3.0) 03690906
WRITE (NUVI, 80045) IVTNUM, AVC, ZVCORR 03700906
0181 CONTINUE 03710906
CT019* TEST 19 03720906
IVTNUM = 19 03730906
IF (R2E(3) - 0.39998E+01) 20190, 40192, 40191 03740906
40191 IF (R2E(3) - 0.40002E+01) 40192, 40192, 20190 03750906
40192 IF (R2E(4) - 0.49997E+01) 20190, 10190, 40190 03760906
40190 IF (R2E(4) - 0.50003E+01) 10190, 10190, 20190 03770906
10190 IVPASS = IVPASS + 1 03780906
WRITE (NUVI, 80002) IVTNUM 03790906
GO TO 0191 03800906
20190 IVFAIL = IVFAIL + 1 03810906
ZVCORR = (4.0, 5.0) 03820906
WRITE (NUVI, 80045) IVTNUM, BVC, ZVCORR 03830906
0191 CONTINUE 03840906
CT020* TEST 20 03850906
IVTNUM = 20 03860906
IF (BVD - 0.5999999997D+01) 20200, 10200, 40200 03870906
40200 IF (BVD - 0.6000000003D+01) 10200, 10200, 20200 03880906
10200 IVPASS = IVPASS + 1 03890906
WRITE (NUVI, 80002) IVTNUM 03900906
GO TO 0201 03910906
20200 IVFAIL = IVFAIL + 1 03920906
DVCORR = 6.0D0 03930906
WRITE (NUVI, 80031) IVTNUM, BVD, DVCORR 03940906
0201 CONTINUE 03950906
CT021* TEST 21 03960906
IVTNUM = 21 03970906
IF (R2E(5) - 0.69996E+01) 20210, 40212, 40211 03980906
40211 IF (R2E(5) - 0.70004E+01) 40212, 40212, 20210 03990906
40212 IF (R2E(6) - 0.79996E+01) 20210, 10210, 40210 04000906
40210 IF (R2E(6) - 0.80004E+01) 10210, 10210, 20210 04010906
10210 IVPASS = IVPASS + 1 04020906
WRITE (NUVI, 80002) IVTNUM 04030906
GO TO 0211 04040906
20210 IVFAIL = IVFAIL + 1 04050906
ZVCORR = (7.0, 8.0) 04060906
WRITE (NUVI, 80045) IVTNUM, CVC, ZVCORR 04070906
0211 CONTINUE 04080906
CT022* TEST 22 04090906
IVTNUM = 22 04100906
IF (CVD - 0.8999999995D+01) 20220, 10220, 40220 04110906
40220 IF (CVD - 0.9000000005D+01) 10220, 10220, 20220 04120906
10220 IVPASS = IVPASS + 1 04130906
WRITE (NUVI, 80002) IVTNUM 04140906
GO TO 0221 04150906
20220 IVFAIL = IVFAIL + 1 04160906
DVCORR = 9.0D0 04170906
WRITE (NUVI, 80031) IVTNUM, CVD, DVCORR 04180906
0221 CONTINUE 04190906
C***** TESTS 23 THRU 27 - CARDS 10-11 SLASH TERMINATOR 04200906
CT023* TEST 23 04210906
IVTNUM = 23 04220906
READ(IRVI, *) AVD, AVC, BVD, BVC, CVD 04230906
READ(IRVI, *) AVD, AVC, BVD, BVC, CVD 04240906
IF (AVD - 0.5999999997D+01) 20230, 10230, 40230 04250906
40230 IF (AVD - 0.6000000003D+01) 10230, 10230, 20230 04260906
10230 IVPASS = IVPASS + 1 04270906
WRITE (NUVI, 80002) IVTNUM 04280906
GO TO 0231 04290906
20230 IVFAIL = IVFAIL + 1 04300906
DVCORR = 6.0D0 04310906
WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 04320906
0231 CONTINUE 04330906
CT024* TEST 24 04340906
IVTNUM = 24 04350906
IF (R2E(1) - 0.69996E+01) 20240, 40242, 40241 04360906
40241 IF (R2E(1) - 0.70004E+01) 40242, 40242, 20240 04370906
40242 IF (R2E(2) - 0.69996E+01) 20240, 10240, 40240 04380906
40240 IF (R2E(2) - 0.70004E+01) 10240, 10240, 20240 04390906
10240 IVPASS = IVPASS + 1 04400906
WRITE (NUVI, 80002) IVTNUM 04410906
GO TO 0241 04420906
20240 IVFAIL = IVFAIL + 1 04430906
ZVCORR = (7.0, 7.0) 04440906
WRITE (NUVI, 80045) IVTNUM, AVC, ZVCORR 04450906
0241 CONTINUE 04460906
CT025* TEST 25 04470906
IVTNUM = 25 04480906
IF (BVD - 0.2999999998D+01) 20250, 10250, 40250 04490906
40250 IF (BVD - 0.3000000002D+01) 10250, 10250, 20250 04500906
10250 IVPASS = IVPASS + 1 04510906
WRITE (NUVI, 80002) IVTNUM 04520906
GO TO 0251 04530906
20250 IVFAIL = IVFAIL + 1 04540906
DVCORR = 3.0D0 04550906
WRITE (NUVI, 80031) IVTNUM, BVD, DVCORR 04560906
0251 CONTINUE 04570906
CT026* TEST 26 04580906
IVTNUM = 26 04590906
IF (R2E(3) - 0.39998E+01) 20260, 40262, 40261 04600906
40261 IF (R2E(3) - 0.40002E+01) 40262, 40262, 20260 04610906
40262 IF (R2E(4) - 0.39998E+01) 20260, 10260, 40260 04620906
40260 IF (R2E(4) - 0.40002E+01) 10260, 10260, 20260 04630906
10260 IVPASS = IVPASS + 1 04640906
WRITE (NUVI, 80002) IVTNUM 04650906
GO TO 0261 04660906
20260 IVFAIL = IVFAIL + 1 04670906
ZVCORR = (4.0, 4.0) 04680906
WRITE (NUVI, 80045) IVTNUM, BVC, ZVCORR 04690906
0261 CONTINUE 04700906
CT027* TEST 27 04710906
IVTNUM = 27 04720906
IF (CVD - 0.4999999997D+01) 20270, 10270, 40270 04730906
40270 IF (CVD - 0.5000000003D+01) 10270, 10270, 20270 04740906
10270 IVPASS = IVPASS + 1 04750906
WRITE (NUVI, 80002) IVTNUM 04760906
GO TO 0271 04770906
20270 IVFAIL = IVFAIL + 1 04780906
DVCORR = 5.0D0 04790906
WRITE (NUVI, 80031) IVTNUM, CVD, DVCORR 04800906
0271 CONTINUE 04810906
CT028* TEST 28 04820906
IVTNUM = 28 04830906
A1D(3) = 3.0D0 04840906
READ(IRVI, *) (A1D(IVI), IVI=1,4) 04850906
IF (A1D(3) - 0.2999999998D+01) 20280, 10280, 40280 04860906
40280 IF (A1D(3) - 0.3000000002D+01) 10280, 10280, 20280 04870906
10280 IVPASS = IVPASS + 1 04880906
WRITE (NUVI, 80002) IVTNUM 04890906
GO TO 0281 04900906
20280 IVFAIL = IVFAIL + 1 04910906
DVCORR = 3.0D0 04920906
WRITE (NUVI, 80031) IVTNUM, A1D(3), DVCORR 04930906
0281 CONTINUE 04940906
CBB** ********************** BBCSUM0 **********************************04950906
C**** WRITE OUT TEST SUMMARY 04960906
C**** 04970906
IVTOTN = IVPASS + IVFAIL + IVDELE + IVINSP 04980906
WRITE (I02, 90004) 04990906
WRITE (I02, 90014) 05000906
WRITE (I02, 90004) 05010906
WRITE (I02, 90020) IVPASS 05020906
WRITE (I02, 90022) IVFAIL 05030906
WRITE (I02, 90024) IVDELE 05040906
WRITE (I02, 90026) IVINSP 05050906
WRITE (I02, 90028) IVTOTN, IVTOTL 05060906
CBE** ********************** BBCSUM0 **********************************05070906
CBB** ********************** BBCFOOT0 **********************************05080906
C**** WRITE OUT REPORT FOOTINGS 05090906
C**** 05100906
WRITE (I02,90016) ZPROG, ZPROG 05110906
WRITE (I02,90018) ZPROJ, ZNAME, ZTAPE, ZTAPED 05120906
WRITE (I02,90019) 05130906
CBE** ********************** BBCFOOT0 **********************************05140906
CBB** ********************** BBCFMT0A **********************************05150906
C**** FORMATS FOR TEST DETAIL LINES 05160906
C**** 05170906
80000 FORMAT (" ",2X,I3,4X,"DELETED",32X,A31) 05180906
80002 FORMAT (" ",2X,I3,4X," PASS ",32X,A31) 05190906
80004 FORMAT (" ",2X,I3,4X,"INSPECT",32X,A31) 05200906
80008 FORMAT (" ",2X,I3,4X," FAIL ",32X,A31) 05210906
80010 FORMAT (" ",2X,I3,4X," FAIL ",/," ",15X,"COMPUTED= " , 05220906
1I6,/," ",15X,"CORRECT= " ,I6) 05230906
80012 FORMAT (" ",2X,I3,4X," FAIL ",/," ",16X,"COMPUTED= " , 05240906
1E12.5,/," ",16X,"CORRECT= " ,E12.5) 05250906
80018 FORMAT (" ",2X,I3,4X," FAIL ",/," ",16X,"COMPUTED= " , 05260906
1A21,/," ",16X,"CORRECT= " ,A21) 05270906
80020 FORMAT (" ",16X,"COMPUTED= " ,A21,1X,A31) 05280906
80022 FORMAT (" ",16X,"CORRECT= " ,A21,1X,A31) 05290906
80024 FORMAT (" ",16X,"COMPUTED= " ,I6,16X,A31) 05300906
80026 FORMAT (" ",16X,"CORRECT= " ,I6,16X,A31) 05310906
80028 FORMAT (" ",16X,"COMPUTED= " ,E12.5,10X,A31) 05320906
80030 FORMAT (" ",16X,"CORRECT= " ,E12.5,10X,A31) 05330906
80050 FORMAT (" ",48X,A31) 05340906
CBE** ********************** BBCFMT0A **********************************05350906
CBB** ********************** BBCFMAT1 **********************************05360906
C**** FORMATS FOR TEST DETAIL LINES - FULL LANGUAGE 05370906
C**** 05380906
80031 FORMAT (" ",2X,I3,4X," FAIL ",/," ",16X,"COMPUTED= " , 05390906
1D17.10,/," ",16X,"CORRECT= " ,D17.10) 05400906
80033 FORMAT (" ",16X,"COMPUTED= " ,D17.10,10X,A31) 05410906
80035 FORMAT (" ",16X,"CORRECT= " ,D17.10,10X,A31) 05420906
80037 FORMAT (" ",16X,"COMPUTED= " ,"(",E12.5,", ",E12.5,")",6X,A31) 05430906
80039 FORMAT (" ",16X,"CORRECT= " ,"(",E12.5,", ",E12.5,")",6X,A31) 05440906
80041 FORMAT (" ",16X,"COMPUTED= " ,"(",F12.5,", ",F12.5,")",6X,A31) 05450906
80043 FORMAT (" ",16X,"CORRECT= " ,"(",F12.5,", ",F12.5,")",6X,A31) 05460906
80045 FORMAT (" ",2X,I3,4X," FAIL ",/," ",16X,"COMPUTED= " , 05470906
1"(",F12.5,", ",F12.5,")"/," ",16X,"CORRECT= " , 05480906
2"(",F12.5,", ",F12.5,")") 05490906
CBE** ********************** BBCFMAT1 **********************************05500906
CBB** ********************** BBCFMT0B **********************************05510906
C**** FORMAT STATEMENTS FOR PAGE HEADERS 05520906
C**** 05530906
90002 FORMAT ("1") 05540906
90004 FORMAT (" ") 05550906
90006 FORMAT (" ",20X,"NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY" )05560906
90007 FORMAT (" ",19X,"FORTRAN COMPILER VALIDATION SYSTEM" ) 05570906
90008 FORMAT (" ",21X,A13,A17) 05580906
90009 FORMAT (" ",/," *",A5,"BEGIN*",12X,"TEST RESULTS - " ,A5,/) 05590906
90010 FORMAT (" ",8X,"TEST DATE*TIME= " ,A17," - COMPILER= " ,A20) 05600906
90013 FORMAT (" "," TEST ","PASS/FAIL " ,6X,"DISPLAYED RESULTS" , 05610906
1 7X,"REMARKS",24X) 05620906
90014 FORMAT (" ","----------------------------------------------" , 05630906
1 "---------------------------------" ) 05640906
90015 FORMAT (" ",48X,"THIS PROGRAM HAS " ,I3," TESTS",/) 05650906
C**** 05660906
C**** FORMAT STATEMENTS FOR REPORT FOOTINGS 05670906
C**** 05680906
90016 FORMAT (" ",/," *",A5,"END*",14X,"END OF TEST - " ,A5,/) 05690906
90018 FORMAT (" ",A13,13X,A20," * ",A10,"/", 05700906
1 A13) 05710906
90019 FORMAT (" ","FOR OFFICIAL USE ONLY " ,35X,"COPYRIGHT 1982" ) 05720906
C**** 05730906
C**** FORMAT STATEMENTS FOR RUN SUMMARY 05740906
C**** 05750906
90020 FORMAT (" ",21X,I5," TESTS PASSED" ) 05760906
90022 FORMAT (" ",21X,I5," TESTS FAILED" ) 05770906
90024 FORMAT (" ",21X,I5," TESTS DELETED" ) 05780906
90026 FORMAT (" ",21X,I5," TESTS REQUIRE INSPECTION" ) 05790906
90028 FORMAT (" ",21X,I5," OF ",I3," TESTS EXECUTED" ) 05800906
CBE** ********************** BBCFMT0B **********************************05810906
C***** 05820906
C***** END OF TEST SEGMENT 372 05830906
STOP 05840906
END 05850906