|
|
1.1 root 1: C***********************************************************************00010356
2: C DATE***82/08/02*18.33.46
3: C OWNER PRE/850703/TC-85- -410/ /FSTC/278FCVS*F78UBP20/
4: C AUDIT FCVS78 V2.0
5: C***** FORTRAN 77 00020356
6: C***** FM356 XABS - (156) 00030356
7: C***** 00040356
8: C***********************************************************************00050356
9: C***** GENERAL PURPOSE SUBSET REF00060356
10: C***** TEST INTRINSIC FUNCTION ABS,IABS (ABSOLUTE VALUE) 15.3 00070356
11: C***** (TABLE 5)00080356
12: C***** 00090356
13: CBB** ********************** BBCCOMNT **********************************00100356
14: C**** 00110356
15: C**** 1978 FORTRAN COMPILER VALIDATION SYSTEM 00120356
16: C**** VERSION 2.0 00130356
17: C**** 00140356
18: C**** 00150356
19: C**** SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO 00160356
20: C**** GENERAL SERVICES ADMINISTRATION 00170356
21: C**** FEDERAL SOFTWARE TESTING CENTER 00180356
22: C**** 5203 LEESBURG PIKE, SUITE 1100 00190356
23: C**** FALLS CHURCH, VA. 22041 00200356
24: C**** 00210356
25: C**** (703) 756-6153 00220356
26: C**** 00230356
27: CBE** ********************** BBCCOMNT **********************************00240356
28: CBB** ********************** BBCINITA **********************************00250356
29: C**** SPECIFICATION STATEMENTS 00260356
30: C**** 00270356
31: CHARACTER ZVERS*13, ZVERSD*17, ZDATE*17, ZPROG*5, ZCOMPL*20, 00280356
32: 1 ZNAME*20, ZTAPE*10, ZPROJ*13, REMRKS*31, ZTAPED*13 00290356
33: CBE** ********************** BBCINITA **********************************00300356
34: CBB** ********************** BBCINITB **********************************00310356
35: C**** INITIALIZE SECTION 00320356
36: DATA ZVERS, ZVERSD, ZDATE 00330356
37: 1 /'VERSION 2.0 ', '82/08/02*18.33.46', '*NO DATE*TIME'/ 00340356
38: DATA ZCOMPL, ZNAME, ZTAPE 00350356
39: 1 /'*NONE SPECIFIED*', '*NO COMPANY NAME*', '*NO TAPE*'/ 00360356
40: DATA ZPROJ, ZTAPED, ZPROG 00370356
41: 1 /'*NO PROJECT*', '*NO TAPE DATE', 'XXXXX'/ 00380356
42: DATA REMRKS /' '/ 00390356
43: C**** THE FOLLOWING 9 COMMENT LINES (CZ01, CZ02, ...) CAN BE REPLACED 00400356
44: C**** FOR IDENTIFYING THE TEST ENVIRONMENT 00410356
45: C**** 00420356
46: CZ01 ZVERS = 'VERSION OF THE COMPILER VALIDATION SYSTEM' 00430356
47: CZ02 ZVERSD = 'CREATION DATE/TIME OF THE COMPILER VALIDATION SYSTEM' 00440356
48: CZ03 ZPROG = 'PROGRAM NAME' 00450356
49: ZDATE = '07-Nov-85 ' *RP
50: ZCOMPL = 'CCI 5.2 ' *RP
51: ZPROJ = 'TC-85- -410' *RP
52: ZNAME = ' ' *RP
53: ZTAPE = ' ' *RP
54: ZTAPED = '850703 ' *RP
55: C 00520356
56: IVPASS = 0 00530356
57: IVFAIL = 0 00540356
58: IVDELE = 0 00550356
59: IVINSP = 0 00560356
60: IVTOTL = 0 00570356
61: IVTOTN = 0 00580356
62: ICZERO = 0 00590356
63: C 00600356
64: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00610356
65: I01 = 05 00620356
66: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00630356
67: I02 = 06 00640356
68: C 00650356
69: I01 = 5 00660356
70: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00670356
71: CX011 REPLACED BY FEXEC X-011 CONTROL CARD. CX011 IS FOR SYSTEMS 00680356
72: C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX010. 00690356
73: C 00700356
74: I02 = 6 00710356
75: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02= 6 00720356
76: CX021 REPLACED BY FEXEC X-021 CONTROL CARD. CX021 IS FOR SYSTEMS 00730356
77: C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX020. 00740356
78: C 00750356
79: CBE** ********************** BBCINITB **********************************00760356
80: NUVI = I02 00770356
81: IVTOTL = 10 00780356
82: ZPROG = 'FM356' 00790356
83: CBB** ********************** BBCHED0A **********************************00800356
84: C**** 00810356
85: C**** WRITE REPORT TITLE 00820356
86: C**** 00830356
87: WRITE (I02, 90002) 00840356
88: WRITE (I02, 90006) 00850356
89: WRITE (I02, 90007) 00860356
90: WRITE (I02, 90008) ZVERS, ZVERSD 00870356
91: WRITE (I02, 90009) ZPROG, ZPROG 00880356
92: WRITE (I02, 90010) ZDATE, ZCOMPL 00890356
93: CBE** ********************** BBCHED0A **********************************00900356
94: C***** 00910356
95: C***** HEADER FOR SEGMENT 156 00920356
96: WRITE(NUVI,15601) 00930356
97: 15601 FORMAT( 1H , // 36H XABS - (156) INTRINSIC FUNCTIONS--// 11X, 00940356
98: 1 26HABS, IABS (ABSOLUTE VALUE)// 00950356
99: 2 20H SUBSET REF. - 15.3) 00960356
100: CBB** ********************** BBCHED0B **********************************00970356
101: C**** WRITE DETAIL REPORT HEADERS 00980356
102: C**** 00990356
103: WRITE (I02,90004) 01000356
104: WRITE (I02,90004) 01010356
105: WRITE (I02,90013) 01020356
106: WRITE (I02,90014) 01030356
107: WRITE (I02,90015) IVTOTL 01040356
108: CBE** ********************** BBCHED0B **********************************01050356
109: C***** 01060356
110: C***** TEST OF ABS 01070356
111: C***** 01080356
112: WRITE(NUVI, 15602) 01090356
113: 15602 FORMAT (/ 8X, 11HTEST OF ABS) 01100356
114: CT001* TEST 1 THE VALUE ZERO 01110356
115: IVTNUM = 1 01120356
116: RDDVS = 0.0 01130356
117: RDAVS = ABS(RDDVS) 01140356
118: IF (RDAVS + .00005) 20010, 10010, 40010 01150356
119: 40010 IF (RDAVS - .00005) 10010, 10010, 20010 01160356
120: 10010 IVPASS = IVPASS + 1 01170356
121: WRITE (NUVI, 80002) IVTNUM 01180356
122: GO TO 0011 01190356
123: 20010 IVFAIL = IVFAIL + 1 01200356
124: RVCORR = 0.0 01210356
125: WRITE (NUVI, 80012) IVTNUM, RDAVS, RVCORR 01220356
126: 0011 CONTINUE 01230356
127: CT002* TEST 2 ZERO PREFIXED WITH A MINUS SIGN 01240356
128: IVTNUM = 2 01250356
129: RDDVS = 0.0 01260356
130: RDAVS = ABS(-RDDVS) 01270356
131: IF (RDAVS + .00005) 20020, 10020, 40020 01280356
132: 40020 IF (RDAVS - .00005) 10020, 10020, 20020 01290356
133: 10020 IVPASS = IVPASS + 1 01300356
134: WRITE (NUVI, 80002) IVTNUM 01310356
135: GO TO 0021 01320356
136: 20020 IVFAIL = IVFAIL + 1 01330356
137: RVCORR = 0.0 01340356
138: WRITE (NUVI, 80012) IVTNUM, RDAVS, RVCORR 01350356
139: 0021 CONTINUE 01360356
140: CT003* TEST 3 A POSITIVE NON-INTEGRAL VALUE 01370356
141: IVTNUM = 3 01380356
142: RDDVS = 35.875 01390356
143: RDAVS = ABS(RDDVS) 01400356
144: IF (RDAVS - 35.873) 20030, 10030, 40030 01410356
145: 40030 IF (RDAVS - 35.877) 10030, 10030, 20030 01420356
146: 10030 IVPASS = IVPASS + 1 01430356
147: WRITE (NUVI, 80002) IVTNUM 01440356
148: GO TO 0031 01450356
149: 20030 IVFAIL = IVFAIL + 1 01460356
150: RVCORR = 35.875 01470356
151: WRITE (NUVI, 80012) IVTNUM, RDAVS, RVCORR 01480356
152: 0031 CONTINUE 01490356
153: CT004* TEST 4 A NEGATIVE NON-INTEGRAL VALUE 01500356
154: IVTNUM = 4 01510356
155: RDBVS = -35.875 01520356
156: RDAVS = ABS(RDBVS) 01530356
157: IF (RDAVS - 35.873) 20040, 10040, 40040 01540356
158: 40040 IF (RDAVS - 35.877) 10040, 10040, 20040 01550356
159: 10040 IVPASS = IVPASS + 1 01560356
160: WRITE (NUVI, 80002) IVTNUM 01570356
161: GO TO 0041 01580356
162: 20040 IVFAIL = IVFAIL + 1 01590356
163: RVCORR = 35.875 01600356
164: WRITE (NUVI, 80012) IVTNUM, RDAVS, RVCORR 01610356
165: 0041 CONTINUE 01620356
166: CT005* TEST 5 ARITHMETIC EXPRESSION PRESENTED TO FUNCTION 01630356
167: IVTNUM = 5 01640356
168: RDDVS = 2.625 01650356
169: RDEVS = 3.0 01660356
170: RDAVS = ABS(-RDDVS - RDEVS ** 3) 01670356
171: IF (RDAVS - 29.623) 20050, 10050, 40050 01680356
172: 40050 IF (RDAVS - 29.627) 10050, 10050, 20050 01690356
173: 10050 IVPASS = IVPASS + 1 01700356
174: WRITE (NUVI, 80002) IVTNUM 01710356
175: GO TO 0051 01720356
176: 20050 IVFAIL = IVFAIL + 1 01730356
177: RVCORR = 29.625 01740356
178: WRITE (NUVI, 80012) IVTNUM, RDAVS, RVCORR 01750356
179: 0051 CONTINUE 01760356
180: C***** 01770356
181: C***** TEST OF IABS 01780356
182: C***** 01790356
183: WRITE(NUVI, 15604) 01800356
184: 15604 FORMAT (/ 8X, 12HTEST OF IABS) 01810356
185: C***** 01820356
186: CT006* TEST 6 THE VALUE ZERO 01830356
187: IVTNUM = 6 01840356
188: IDDVI = 0 01850356
189: IDAVI = IABS(IDDVI) 01860356
190: IF (IDAVI - 0) 20060, 10060, 20060 01870356
191: 10060 IVPASS = IVPASS + 1 01880356
192: WRITE (NUVI, 80002) IVTNUM 01890356
193: GO TO 0061 01900356
194: 20060 IVFAIL = IVFAIL + 1 01910356
195: IVCORR = 0 01920356
196: WRITE (NUVI, 80010) IVTNUM, IDAVI, IVCORR 01930356
197: 0061 CONTINUE 01940356
198: CT007* TEST 7 ZERO PREFIXED WITH A MINUS SIGN 01950356
199: IVTNUM = 7 01960356
200: IDDVI = 0 01970356
201: IDAVI = IABS(-IDDVI) 01980356
202: IF (IDAVI - 0) 20070, 10070, 20070 01990356
203: 10070 IVPASS = IVPASS + 1 02000356
204: WRITE (NUVI, 80002) IVTNUM 02010356
205: GO TO 0071 02020356
206: 20070 IVFAIL = IVFAIL + 1 02030356
207: IVCORR = 0 02040356
208: WRITE (NUVI, 80010) IVTNUM, IDAVI, IVCORR 02050356
209: 0071 CONTINUE 02060356
210: CT008* TEST 8 A POSITIVE INTEGER 02070356
211: IVTNUM = 8 02080356
212: IDBVI = 73 02090356
213: IDAVI = IABS(IDBVI) 02100356
214: IF (IDAVI - 73) 20080, 10080, 20080 02110356
215: 10080 IVPASS = IVPASS + 1 02120356
216: WRITE (NUVI, 80002) IVTNUM 02130356
217: GO TO 0081 02140356
218: 20080 IVFAIL = IVFAIL + 1 02150356
219: IVCORR = 73 02160356
220: WRITE (NUVI, 80010) IVTNUM, IDAVI, IVCORR 02170356
221: 0081 CONTINUE 02180356
222: CT009* TEST 9 A NEGATIVE INTEGER 02190356
223: IVTNUM = 9 02200356
224: IDDVI = -10 02210356
225: IDAVI = IABS(IDDVI) 02220356
226: IF (IDAVI - 10) 20090, 10090, 20090 02230356
227: 10090 IVPASS = IVPASS + 1 02240356
228: WRITE (NUVI, 80002) IVTNUM 02250356
229: GO TO 0091 02260356
230: 20090 IVFAIL = IVFAIL + 1 02270356
231: IVCORR = 10 02280356
232: WRITE (NUVI, 80010) IVTNUM, IDAVI, IVCORR 02290356
233: 0091 CONTINUE 02300356
234: CT010* TEST 10 ARITHMETIC EXPRESSION PRESENTED TO FUNCTION 02310356
235: IVTNUM = 10 02320356
236: IDDVI = -3 02330356
237: IDAVI = IABS(IDDVI ** 3) 02340356
238: IF (IDAVI - 27) 20100, 10100, 20100 02350356
239: 10100 IVPASS = IVPASS + 1 02360356
240: WRITE (NUVI, 80002) IVTNUM 02370356
241: GO TO 0101 02380356
242: 20100 IVFAIL = IVFAIL + 1 02390356
243: IVCORR = 27 02400356
244: WRITE (NUVI, 80010) IVTNUM, IDAVI, IVCORR 02410356
245: 0101 CONTINUE 02420356
246: C***** 02430356
247: CBB** ********************** BBCSUM0 **********************************02440356
248: C**** WRITE OUT TEST SUMMARY 02450356
249: C**** 02460356
250: IVTOTN = IVPASS + IVFAIL + IVDELE + IVINSP 02470356
251: WRITE (I02, 90004) 02480356
252: WRITE (I02, 90014) 02490356
253: WRITE (I02, 90004) 02500356
254: WRITE (I02, 90020) IVPASS 02510356
255: WRITE (I02, 90022) IVFAIL 02520356
256: WRITE (I02, 90024) IVDELE 02530356
257: WRITE (I02, 90026) IVINSP 02540356
258: WRITE (I02, 90028) IVTOTN, IVTOTL 02550356
259: CBE** ********************** BBCSUM0 **********************************02560356
260: CBB** ********************** BBCFOOT0 **********************************02570356
261: C**** WRITE OUT REPORT FOOTINGS 02580356
262: C**** 02590356
263: WRITE (I02,90016) ZPROG, ZPROG 02600356
264: WRITE (I02,90018) ZPROJ, ZNAME, ZTAPE, ZTAPED 02610356
265: WRITE (I02,90019) 02620356
266: CBE** ********************** BBCFOOT0 **********************************02630356
267: CBB** ********************** BBCFMT0A **********************************02640356
268: C**** FORMATS FOR TEST DETAIL LINES 02650356
269: C**** 02660356
270: 80000 FORMAT (1H ,2X,I3,4X,7HDELETED,32X,A31) 02670356
271: 80002 FORMAT (1H ,2X,I3,4X,7H PASS ,32X,A31) 02680356
272: 80004 FORMAT (1H ,2X,I3,4X,7HINSPECT,32X,A31) 02690356
273: 80008 FORMAT (1H ,2X,I3,4X,7H FAIL ,32X,A31) 02700356
274: 80010 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,15X,10HCOMPUTED= , 02710356
275: 1I6,/,1H ,15X,10HCORRECT= ,I6) 02720356
276: 80012 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 02730356
277: 1E12.5,/,1H ,16X,10HCORRECT= ,E12.5) 02740356
278: 80018 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 02750356
279: 1A21,/,1H ,16X,10HCORRECT= ,A21) 02760356
280: 80020 FORMAT (1H ,16X,10HCOMPUTED= ,A21,1X,A31) 02770356
281: 80022 FORMAT (1H ,16X,10HCORRECT= ,A21,1X,A31) 02780356
282: 80024 FORMAT (1H ,16X,10HCOMPUTED= ,I6,16X,A31) 02790356
283: 80026 FORMAT (1H ,16X,10HCORRECT= ,I6,16X,A31) 02800356
284: 80028 FORMAT (1H ,16X,10HCOMPUTED= ,E12.5,10X,A31) 02810356
285: 80030 FORMAT (1H ,16X,10HCORRECT= ,E12.5,10X,A31) 02820356
286: 80050 FORMAT (1H ,48X,A31) 02830356
287: CBE** ********************** BBCFMT0A **********************************02840356
288: CBB** ********************** BBCFMT0B **********************************02850356
289: C**** FORMAT STATEMENTS FOR PAGE HEADERS 02860356
290: C**** 02870356
291: 90002 FORMAT (1H1) 02880356
292: 90004 FORMAT (1H ) 02890356
293: 90006 FORMAT (1H ,20X,31HFEDERAL SOFTWARE TESTING CENTER) 02900356
294: 90007 FORMAT (1H ,19X,34HFORTRAN COMPILER VALIDATION SYSTEM) 02910356
295: 90008 FORMAT (1H ,21X,A13,A17) 02920356
296: 90009 FORMAT (1H ,/,2H *,A5,6HBEGIN*,12X,15HTEST RESULTS - ,A5,/) 02930356
297: 90010 FORMAT (1H ,8X,16HTEST DATE*TIME= ,A17,15H - COMPILER= ,A20) 02940356
298: 90013 FORMAT (1H ,8H TEST ,10HPASS/FAIL ,6X,17HDISPLAYED RESULTS, 02950356
299: 1 7X,7HREMARKS,24X) 02960356
300: 90014 FORMAT (1H ,46H----------------------------------------------, 02970356
301: 1 33H---------------------------------) 02980356
302: 90015 FORMAT (1H ,48X,17HTHIS PROGRAM HAS ,I3,6H TESTS,/) 02990356
303: C**** 03000356
304: C**** FORMAT STATEMENTS FOR REPORT FOOTINGS 03010356
305: C**** 03020356
306: 90016 FORMAT (1H ,/,2H *,A5,4HEND*,14X,14HEND OF TEST - ,A5,/) 03030356
307: 90018 FORMAT (1H ,A13,13X,A20,7H * ,A10,1H/, 03040356
308: 1 A13) 03050356
309: 90019 FORMAT (1H ,26HFOR OFFICIAL USE ONLY ,35X,15HCOPYRIGHT 1982) 03060356
310: C**** 03070356
311: C**** FORMAT STATEMENTS FOR RUN SUMMARY 03080356
312: C**** 03090356
313: 90020 FORMAT (1H ,21X,I5,13H TESTS PASSED) 03100356
314: 90022 FORMAT (1H ,21X,I5,13H TESTS FAILED) 03110356
315: 90024 FORMAT (1H ,21X,I5,14H TESTS DELETED) 03120356
316: 90026 FORMAT (1H ,21X,I5,25H TESTS REQUIRE INSPECTION) 03130356
317: 90028 FORMAT (1H ,21X,I5,4H OF ,I3,15H TESTS EXECUTED) 03140356
318: CBE** ********************** BBCFMT0B **********************************03150356
319: C***** 03160356
320: C***** END OF TEST SEGMENT 156 03170356
321: STOP 03180356
322: END 03190356
323: 03200356
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.