|
|
1.1 root 1: C 00010021
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 COMMENT SECTION. 00020021
6: C 00030021
7: C FM021 00040021
8: C 00050021
9: C THIS ROUTINE TESTS THE FORTRAN DATA INITIALIZATION 00060021
10: C STATEMENT. INTEGER, REAL, AND LOGICAL DATA TYPES ARE TESTED 00070021
11: C USING UNSIGNED CONSTANTS, SIGNED CONSTANTS, AND LOGICAL 00080021
12: C CONSTANTS.. INTEGER, REAL, LOGICAL, AND MIXED TYPE ARRAYS 00090021
13: C ARE ALSO TESTED. 00100021
14: C 00110021
15: C REFERENCES 00120021
16: C AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN, 00130021
17: C X3.9-1978 00140021
18: C 00150021
19: C SECTION 4.1.3, DATA TYPE PREPARATION 00160021
20: C SECTION 4.4.3, REAL CONSTANT 00170021
21: C SECTION 9, DATA STATEMENT 00180021
22: C 00190021
23: INTEGER RATN11(3) 00200021
24: LOGICAL LCTN01, LCTN02, LATN11(3), LADN11 00210021
25: REAL IATN11(3) 00220021
26: DIMENSION IADN11(3), RADN11(4), LADN11(6), RADN13(4), IADN12(4) 00230021
27: DIMENSION IADN13(4) 00240021
28: C 00250021
29: DATA ICON01/0/ 00260021
30: DATA ICON02/3/ 00270021
31: DATA ICON03/76/ 00280021
32: DATA ICON04/587/ 00290021
33: DATA ICON05/9999/ 00300021
34: DATA ICON06/32767/ 00310021
35: DATA ICON07/-0/ 00320021
36: DATA ICON08/-32766/ 00330021
37: DATA ICON09/00003/ 00340021
38: DATA ICON10/ 3 2 7 6 7 / 00350021
39: DATA LCTN01/.TRUE./ 00360021
40: DATA LCTN02/.FALSE./ 00370021
41: DATA RCON01/0./ 00380021
42: DATA RCON02 /.0/ 00390021
43: DATA RCON03/0.0/ 00400021
44: DATA RCON04/32767./ 00410021
45: DATA RCON05/-32766./ 00420021
46: DATA RCON06/-000587./ 00430021
47: DATA RCON07/99.99/ 00440021
48: DATA RCON08/ -03. 2 7 6 6/ 00450021
49: DATA IADN11(1)/3/, IADN11(3)/-587/, IADN11(2)/32767/ 00460021
50: DATA IADN12/4*9999/ 00470021
51: DATA IADN13/0,2*-32766,-587/ 00480021
52: DATA LADN11/.TRUE., .FALSE., 2*.TRUE., 2*.FALSE./ 00490021
53: DATA RADN11/32767., -32.766, 2*587./ 00500021
54: DATA LATN11/.TRUE., 2*.FALSE./, IATN11/2*32767., -32766./ 00510021
55: DATA RATN11/3*-32766/ 00520021
56: DATA RADN13/32.767E03, -3.2766E-01, .587E+03, 9E1/ 00530021
57: C 00540021
58: C 00550021
59: C ********************************************************** 00560021
60: C 00570021
61: C A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE 00580021
62: C BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN NATIONAL STANDARD 00590021
63: C PROGRAMMING LANGUAGE FORTRAN X3.9-1978, HAS BEEN DEVELOPED BY THE 00600021
64: C FEDERAL COBOL COMPILER TESTING SERVICE. THE FORTRAN COMPILER 00610021
65: C VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT ROUTINES, THEIR RELATED00620021
66: C DATA, AND AN EXECUTIVE SYSTEM. EACH AUDIT ROUTINE IS A FORTRAN 00630021
67: C PROGRAM, SUBPROGRAM OR FUNCTION WHICH INCLUDES TESTS OF SPECIFIC 00640021
68: C LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING THE RESULT 00650021
69: C OF EXECUTING THESE TESTS. 00660021
70: C 00670021
71: C THIS PARTICULAR PROGRAM/SUBPROGRAM/FUNCTION CONTAINS FEATURES 00680021
72: C FOUND ONLY IN THE SUBSET AS DEFINED IN X3.9-1978. 00690021
73: C 00700021
74: C SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO - 00710021
75: C 00720021
76: C DEPARTMENT OF THE NAVY 00730021
77: C FEDERAL COBOL COMPILER TESTING SERVICE 00740021
78: C WASHINGTON, D.C. 20376 00750021
79: C 00760021
80: C ********************************************************** 00770021
81: C 00780021
82: C 00790021
83: C 00800021
84: C INITIALIZATION SECTION 00810021
85: C 00820021
86: C INITIALIZE CONSTANTS 00830021
87: C ************** 00840021
88: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00850021
89: I01 = 5 00860021
90: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00870021
91: I02 = 6 00880021
92: C SYSTEM ENVIRONMENT SECTION 00890021
93: C 00900021
94: I01 = 5 00910021
95: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00920021
96: C (UNIT NUMBER FOR CARD READER). 00930021
97: CX011 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD. 00940021
98: C THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 00950021
99: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE. 00960021
100: C 00970021
101: I02 = 6 00980021
102: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6 00990021
103: C (UNIT NUMBER FOR PRINTER). 01000021
104: CX021 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD. 01010021
105: C THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 01020021
106: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE. 01030021
107: C 01040021
108: IVPASS=0 01050021
109: IVFAIL=0 01060021
110: IVDELE=0 01070021
111: ICZERO=0 01080021
112: C 01090021
113: C WRITE PAGE HEADERS 01100021
114: WRITE (I02,90000) 01110021
115: WRITE (I02,90001) 01120021
116: WRITE (I02,90002) 01130021
117: WRITE (I02, 90002) 01140021
118: WRITE (I02,90003) 01150021
119: WRITE (I02,90002) 01160021
120: WRITE (I02,90004) 01170021
121: WRITE (I02,90002) 01180021
122: WRITE (I02,90011) 01190021
123: WRITE (I02,90002) 01200021
124: WRITE (I02,90002) 01210021
125: WRITE (I02,90005) 01220021
126: WRITE (I02,90006) 01230021
127: WRITE (I02,90002) 01240021
128: IVTNUM = 565 01250021
129: C 01260021
130: C **** TEST 565 **** 01270021
131: C TEST 565 - TEST OF AN INTEGER VARIABLE SET TO THE INTEGER 01280021
132: C CONSTANT ZERO. 01290021
133: C 01300021
134: C 01310021
135: IF (ICZERO) 35650, 5650, 35650 01320021
136: 5650 CONTINUE 01330021
137: GO TO 45650 01340021
138: 35650 IVDELE = IVDELE + 1 01350021
139: WRITE (I02,80003) IVTNUM 01360021
140: IF (ICZERO) 45650, 5661, 45650 01370021
141: 45650 IF ( ICON01 - 0 ) 25650, 15650, 25650 01380021
142: 15650 IVPASS = IVPASS + 1 01390021
143: WRITE (I02,80001) IVTNUM 01400021
144: GO TO 5661 01410021
145: 25650 IVFAIL = IVFAIL + 1 01420021
146: IVCOMP = ICON01 01430021
147: IVCORR = 0 01440021
148: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01450021
149: 5661 CONTINUE 01460021
150: IVTNUM = 566 01470021
151: C 01480021
152: C **** TEST 566 **** 01490021
153: C TEST 566 - TEST OF AN INTEGER VARIABLE SET TO THE INTEGER 01500021
154: C CONSTANT 3. 01510021
155: C 01520021
156: C 01530021
157: IF (ICZERO) 35660, 5660, 35660 01540021
158: 5660 CONTINUE 01550021
159: GO TO 45660 01560021
160: 35660 IVDELE = IVDELE + 1 01570021
161: WRITE (I02,80003) IVTNUM 01580021
162: IF (ICZERO) 45660, 5671, 45660 01590021
163: 45660 IF ( ICON02 - 3 ) 25660, 15660, 25660 01600021
164: 15660 IVPASS = IVPASS + 1 01610021
165: WRITE (I02,80001) IVTNUM 01620021
166: GO TO 5671 01630021
167: 25660 IVFAIL = IVFAIL + 1 01640021
168: IVCOMP = ICON02 01650021
169: IVCORR = 3 01660021
170: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01670021
171: 5671 CONTINUE 01680021
172: IVTNUM = 567 01690021
173: C 01700021
174: C **** TEST 567 **** 01710021
175: C TEST 567 - TEST OF AN INTEGER VARIABLE SET TO THE INTEGER 01720021
176: C CONSTANT 76. 01730021
177: C 01740021
178: C 01750021
179: IF (ICZERO) 35670, 5670, 35670 01760021
180: 5670 CONTINUE 01770021
181: GO TO 45670 01780021
182: 35670 IVDELE = IVDELE + 1 01790021
183: WRITE (I02,80003) IVTNUM 01800021
184: IF (ICZERO) 45670, 5681, 45670 01810021
185: 45670 IF ( ICON03 - 76 ) 25670, 15670, 25670 01820021
186: 15670 IVPASS = IVPASS + 1 01830021
187: WRITE (I02,80001) IVTNUM 01840021
188: GO TO 5681 01850021
189: 25670 IVFAIL = IVFAIL + 1 01860021
190: IVCOMP = ICON03 01870021
191: IVCORR = 76 01880021
192: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01890021
193: 5681 CONTINUE 01900021
194: IVTNUM = 568 01910021
195: C 01920021
196: C **** TEST 568 **** 01930021
197: C TEST 568 - TEST OF AN INTEGER VARIABLE SET TO THE INTEGER 01940021
198: C CONSTANT 587. 01950021
199: C 01960021
200: C 01970021
201: IF (ICZERO) 35680, 5680, 35680 01980021
202: 5680 CONTINUE 01990021
203: GO TO 45680 02000021
204: 35680 IVDELE = IVDELE + 1 02010021
205: WRITE (I02,80003) IVTNUM 02020021
206: IF (ICZERO) 45680, 5691, 45680 02030021
207: 45680 IF ( ICON04 - 587 ) 25680, 15680, 25680 02040021
208: 15680 IVPASS = IVPASS + 1 02050021
209: WRITE (I02,80001) IVTNUM 02060021
210: GO TO 5691 02070021
211: 25680 IVFAIL = IVFAIL + 1 02080021
212: IVCOMP = ICON04 02090021
213: IVCORR = 587 02100021
214: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02110021
215: 5691 CONTINUE 02120021
216: IVTNUM = 569 02130021
217: C 02140021
218: C **** TEST 569 **** 02150021
219: C TEST 569 - TEST OF AN INTEGER VARIABLE SET TO THE INTEGER 02160021
220: C CONSTANT 9999. 02170021
221: C 02180021
222: C 02190021
223: IF (ICZERO) 35690, 5690, 35690 02200021
224: 5690 CONTINUE 02210021
225: GO TO 45690 02220021
226: 35690 IVDELE = IVDELE + 1 02230021
227: WRITE (I02,80003) IVTNUM 02240021
228: IF (ICZERO) 45690, 5701, 45690 02250021
229: 45690 IF ( ICON05 - 9999 ) 25690, 15690, 25690 02260021
230: 15690 IVPASS = IVPASS + 1 02270021
231: WRITE (I02,80001) IVTNUM 02280021
232: GO TO 5701 02290021
233: 25690 IVFAIL = IVFAIL + 1 02300021
234: IVCOMP = ICON05 02310021
235: IVCORR = 9999 02320021
236: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02330021
237: 5701 CONTINUE 02340021
238: IVTNUM = 570 02350021
239: C 02360021
240: C **** TEST 570 **** 02370021
241: C TEST 570 - TEST OF AN INTEGER VARIABLE SET TO THE INTEGER 02380021
242: C CONSTANT 32767. 02390021
243: C 02400021
244: C 02410021
245: IF (ICZERO) 35700, 5700, 35700 02420021
246: 5700 CONTINUE 02430021
247: GO TO 45700 02440021
248: 35700 IVDELE = IVDELE + 1 02450021
249: WRITE (I02,80003) IVTNUM 02460021
250: IF (ICZERO) 45700, 5711, 45700 02470021
251: 45700 IF ( ICON06 - 32767 ) 25700, 15700, 25700 02480021
252: 15700 IVPASS = IVPASS + 1 02490021
253: WRITE (I02,80001) IVTNUM 02500021
254: GO TO 5711 02510021
255: 25700 IVFAIL = IVFAIL + 1 02520021
256: IVCOMP = ICON06 02530021
257: IVCORR = 32767 02540021
258: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02550021
259: 5711 CONTINUE 02560021
260: IVTNUM = 571 02570021
261: C 02580021
262: C **** TEST 571 **** 02590021
263: C TEST 571 - TEST OF AN INTEGER VARIABLE SET TO THE INTEGER 02600021
264: C CONSTANT -0. NOTE THAT SIGNED ZERO AND UNSIGNED ZERO 02610021
265: C SHOULD BE EQUAL FOR ANY INTEGER OPERATION. 02620021
266: C 02630021
267: C 02640021
268: IF (ICZERO) 35710, 5710, 35710 02650021
269: 5710 CONTINUE 02660021
270: GO TO 45710 02670021
271: 35710 IVDELE = IVDELE + 1 02680021
272: WRITE (I02,80003) IVTNUM 02690021
273: IF (ICZERO) 45710, 5721, 45710 02700021
274: 45710 IF ( ICON07 - 0 ) 25710, 15710, 25710 02710021
275: 15710 IVPASS = IVPASS + 1 02720021
276: WRITE (I02,80001) IVTNUM 02730021
277: GO TO 5721 02740021
278: 25710 IVFAIL = IVFAIL + 1 02750021
279: IVCOMP = ICON07 02760021
280: IVCORR = -0 02770021
281: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02780021
282: 5721 CONTINUE 02790021
283: IVTNUM = 572 02800021
284: C 02810021
285: C **** TEST 572 **** 02820021
286: C TEST 572 - TEST OF AN INTEGER VARIABLE SET TO THE INTEGER 02830021
287: C CONSTANT (SIGNED) -32766. 02840021
288: C 02850021
289: C 02860021
290: IF (ICZERO) 35720, 5720, 35720 02870021
291: 5720 CONTINUE 02880021
292: GO TO 45720 02890021
293: 35720 IVDELE = IVDELE + 1 02900021
294: WRITE (I02,80003) IVTNUM 02910021
295: IF (ICZERO) 45720, 5731, 45720 02920021
296: 45720 IF ( ICON08 + 32766 ) 25720, 15720, 25720 02930021
297: 15720 IVPASS = IVPASS + 1 02940021
298: WRITE (I02,80001) IVTNUM 02950021
299: GO TO 5731 02960021
300: 25720 IVFAIL = IVFAIL + 1 02970021
301: IVCOMP = ICON08 02980021
302: IVCORR = -32766 02990021
303: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03000021
304: 5731 CONTINUE 03010021
305: IVTNUM = 573 03020021
306: C 03030021
307: C **** TEST 573 **** 03040021
308: C TEST 573 - TEST THE EFFECT OF LEADING ZERO ON AN INTEGER 03050021
309: C CONSTANT 00003. 03060021
310: C 03070021
311: C 03080021
312: IF (ICZERO) 35730, 5730, 35730 03090021
313: 5730 CONTINUE 03100021
314: GO TO 45730 03110021
315: 35730 IVDELE = IVDELE + 1 03120021
316: WRITE (I02,80003) IVTNUM 03130021
317: IF (ICZERO) 45730, 5741, 45730 03140021
318: 45730 IF ( ICON09 - 3 ) 25730, 15730, 25730 03150021
319: 15730 IVPASS = IVPASS + 1 03160021
320: WRITE (I02,80001) IVTNUM 03170021
321: GO TO 5741 03180021
322: 25730 IVFAIL = IVFAIL + 1 03190021
323: IVCOMP = ICON09 03200021
324: IVCORR = 3 03210021
325: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03220021
326: 5741 CONTINUE 03230021
327: IVTNUM = 574 03240021
328: C 03250021
329: C **** TEST 574 **** 03260021
330: C TEST 574 - TEST OF BLANKS IMBEDDED IN AN INTEGER CONSTANT 03270021
331: C WHICH WAS / 3 2 7 6 7/ IN THE DATA INITIALIZATION STATEMENT. 03280021
332: C 03290021
333: C 03300021
334: IF (ICZERO) 35740, 5740, 35740 03310021
335: 5740 CONTINUE 03320021
336: GO TO 45740 03330021
337: 35740 IVDELE = IVDELE + 1 03340021
338: WRITE (I02,80003) IVTNUM 03350021
339: IF (ICZERO) 45740, 5751, 45740 03360021
340: 45740 IF ( ICON10 - 32767 ) 25740, 15740, 25740 03370021
341: 15740 IVPASS = IVPASS + 1 03380021
342: WRITE (I02,80001) IVTNUM 03390021
343: GO TO 5751 03400021
344: 25740 IVFAIL = IVFAIL + 1 03410021
345: IVCOMP = ICON10 03420021
346: IVCORR = 32767 03430021
347: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03440021
348: 5751 CONTINUE 03450021
349: IVTNUM = 575 03460021
350: C 03470021
351: C **** TEST 575 **** 03480021
352: C TEST 575 - TEST OF A LOGICAL VARIABLE SET TO THE LOGICAL 03490021
353: C CONSTANT .TRUE. 03500021
354: C TRUE PATH OF A LOGICAL IF STATEMENT IS USED IN THE TEST. 03510021
355: C 03520021
356: C 03530021
357: IF (ICZERO) 35750, 5750, 35750 03540021
358: 5750 CONTINUE 03550021
359: IVON01 = 0 03560021
360: IF ( LCTN01 ) IVON01 = 1 03570021
361: GO TO 45750 03580021
362: 35750 IVDELE = IVDELE + 1 03590021
363: WRITE (I02,80003) IVTNUM 03600021
364: IF (ICZERO) 45750, 5761, 45750 03610021
365: 45750 IF ( IVON01 - 1 ) 25750, 15750, 25750 03620021
366: 15750 IVPASS = IVPASS + 1 03630021
367: WRITE (I02,80001) IVTNUM 03640021
368: GO TO 5761 03650021
369: 25750 IVFAIL = IVFAIL + 1 03660021
370: IVCOMP = IVON01 03670021
371: IVCORR = 1 03680021
372: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03690021
373: 5761 CONTINUE 03700021
374: IVTNUM = 576 03710021
375: C 03720021
376: C **** TEST 576 **** 03730021
377: C TEST 576 - TEST OF A LOGICAL VARIABLE SET TO THE LOGICAL 03740021
378: C CONSTANT .FALSE. THE FALSE PATH OF A LOGICAL IF STATEMENT 03750021
379: C IS ALSO USED IN THE TEST. 03760021
380: C 03770021
381: C 03780021
382: IF (ICZERO) 35760, 5760, 35760 03790021
383: 5760 CONTINUE 03800021
384: IVON01 = 1 03810021
385: IF ( LCTN02 ) IVON01 = 0 03820021
386: GO TO 45760 03830021
387: 35760 IVDELE = IVDELE + 1 03840021
388: WRITE (I02,80003) IVTNUM 03850021
389: IF (ICZERO) 45760, 5771, 45760 03860021
390: 45760 IF ( IVON01 - 1 ) 25760, 15760, 25760 03870021
391: 15760 IVPASS = IVPASS + 1 03880021
392: WRITE (I02,80001) IVTNUM 03890021
393: GO TO 5771 03900021
394: 25760 IVFAIL = IVFAIL + 1 03910021
395: IVCOMP = IVON01 03920021
396: IVCORR = 1 03930021
397: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03940021
398: 5771 CONTINUE 03950021
399: IVTNUM = 577 03960021
400: C 03970021
401: C **** TEST 577 **** 03980021
402: C TEST 577 - REAL VARIABLE SET TO 0. 03990021
403: C 04000021
404: C 04010021
405: IF (ICZERO) 35770, 5770, 35770 04020021
406: 5770 CONTINUE 04030021
407: GO TO 45770 04040021
408: 35770 IVDELE = IVDELE + 1 04050021
409: WRITE (I02,80003) IVTNUM 04060021
410: IF (ICZERO) 45770, 5781, 45770 04070021
411: 45770 IF ( RCON01 - 0. ) 25770, 15770, 25770 04080021
412: 15770 IVPASS = IVPASS + 1 04090021
413: WRITE (I02,80001) IVTNUM 04100021
414: GO TO 5781 04110021
415: 25770 IVFAIL = IVFAIL + 1 04120021
416: IVCOMP = RCON01 04130021
417: IVCORR = 0 04140021
418: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04150021
419: 5781 CONTINUE 04160021
420: IVTNUM = 578 04170021
421: C 04180021
422: C **** TEST 578 **** 04190021
423: C TEST 578 - REAL VARIABLE SET TO .0 04200021
424: C 04210021
425: C 04220021
426: IF (ICZERO) 35780, 5780, 35780 04230021
427: 5780 CONTINUE 04240021
428: GO TO 45780 04250021
429: 35780 IVDELE = IVDELE + 1 04260021
430: WRITE (I02,80003) IVTNUM 04270021
431: IF (ICZERO) 45780, 5791, 45780 04280021
432: 45780 IF ( RCON02 - .0 ) 25780, 15780, 25780 04290021
433: 15780 IVPASS = IVPASS + 1 04300021
434: WRITE (I02,80001) IVTNUM 04310021
435: GO TO 5791 04320021
436: 25780 IVFAIL = IVFAIL + 1 04330021
437: IVCOMP = RCON02 04340021
438: IVCORR = 0 04350021
439: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04360021
440: 5791 CONTINUE 04370021
441: IVTNUM = 579 04380021
442: C 04390021
443: C **** TEST 579 **** 04400021
444: C TEST 579 - REAL VARIABLE SET TO 0.0 04410021
445: C 04420021
446: C 04430021
447: IF (ICZERO) 35790, 5790, 35790 04440021
448: 5790 CONTINUE 04450021
449: GO TO 45790 04460021
450: 35790 IVDELE = IVDELE + 1 04470021
451: WRITE (I02,80003) IVTNUM 04480021
452: IF (ICZERO) 45790, 5801, 45790 04490021
453: 45790 IF ( RCON03 - 0.0 ) 25790, 15790, 25790 04500021
454: 15790 IVPASS = IVPASS + 1 04510021
455: WRITE (I02,80001) IVTNUM 04520021
456: GO TO 5801 04530021
457: 25790 IVFAIL = IVFAIL + 1 04540021
458: IVCOMP = RCON03 04550021
459: IVCORR = 0 04560021
460: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04570021
461: 5801 CONTINUE 04580021
462: IVTNUM = 580 04590021
463: C 04600021
464: C **** TEST 580 **** 04610021
465: C TEST 580 - REAL VARIABLE SET TO 32767. 04620021
466: C 04630021
467: C 04640021
468: IF (ICZERO) 35800, 5800, 35800 04650021
469: 5800 CONTINUE 04660021
470: GO TO 45800 04670021
471: 35800 IVDELE = IVDELE + 1 04680021
472: WRITE (I02,80003) IVTNUM 04690021
473: IF (ICZERO) 45800, 5811, 45800 04700021
474: 45800 IF ( RCON04 - 32767. ) 25800, 15800, 25800 04710021
475: 15800 IVPASS = IVPASS + 1 04720021
476: WRITE (I02,80001) IVTNUM 04730021
477: GO TO 5811 04740021
478: 25800 IVFAIL = IVFAIL + 1 04750021
479: IVCOMP = RCON04 04760021
480: IVCORR = 32767 04770021
481: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04780021
482: 5811 CONTINUE 04790021
483: IVTNUM = 581 04800021
484: C 04810021
485: C **** TEST 581 **** 04820021
486: C TEST 581 - REAL VARIABLE SET TO -32766. 04830021
487: C 04840021
488: C 04850021
489: IF (ICZERO) 35810, 5810, 35810 04860021
490: 5810 CONTINUE 04870021
491: GO TO 45810 04880021
492: 35810 IVDELE = IVDELE + 1 04890021
493: WRITE (I02,80003) IVTNUM 04900021
494: IF (ICZERO) 45810, 5821, 45810 04910021
495: 45810 IF ( RCON05 + 32766 ) 25810, 15810, 25810 04920021
496: 15810 IVPASS = IVPASS + 1 04930021
497: WRITE (I02,80001) IVTNUM 04940021
498: GO TO 5821 04950021
499: 25810 IVFAIL = IVFAIL + 1 04960021
500: IVCOMP = RCON05 04970021
501: IVCORR = -32766 04980021
502: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04990021
503: 5821 CONTINUE 05000021
504: IVTNUM = 582 05010021
505: C 05020021
506: C **** TEST 582 **** 05030021
507: C TEST 582 - REAL VARIABLE SET TO -000587. TEST OF LEADING SIGN 05040021
508: C AND LEADING ZEROS ON A REAL CONSTANT. 05050021
509: C 05060021
510: C 05070021
511: IF (ICZERO) 35820, 5820, 35820 05080021
512: 5820 CONTINUE 05090021
513: GO TO 45820 05100021
514: 35820 IVDELE = IVDELE + 1 05110021
515: WRITE (I02,80003) IVTNUM 05120021
516: IF (ICZERO) 45820, 5831, 45820 05130021
517: 45820 IF ( RCON06 + 587. ) 25820, 15820, 25820 05140021
518: 15820 IVPASS = IVPASS + 1 05150021
519: WRITE (I02,80001) IVTNUM 05160021
520: GO TO 5831 05170021
521: 25820 IVFAIL = IVFAIL + 1 05180021
522: IVCOMP = RCON06 05190021
523: IVCORR = -587 05200021
524: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05210021
525: 5831 CONTINUE 05220021
526: IVTNUM = 583 05230021
527: C 05240021
528: C **** TEST 583 **** 05250021
529: C TEST 583 - REAL VARIABLE SET TO 99.99 05260021
530: C 05270021
531: C 05280021
532: IF (ICZERO) 35830, 5830, 35830 05290021
533: 5830 CONTINUE 05300021
534: GO TO 45830 05310021
535: 35830 IVDELE = IVDELE + 1 05320021
536: WRITE (I02,80003) IVTNUM 05330021
537: IF (ICZERO) 45830, 5841, 45830 05340021
538: 45830 IF ( RCON07 - 99.99 ) 25830, 15830, 25830 05350021
539: 15830 IVPASS = IVPASS + 1 05360021
540: WRITE (I02,80001) IVTNUM 05370021
541: GO TO 5841 05380021
542: 25830 IVFAIL = IVFAIL + 1 05390021
543: IVCOMP = RCON07 05400021
544: IVCORR = 99 05410021
545: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05420021
546: 5841 CONTINUE 05430021
547: IVTNUM = 584 05440021
548: C 05450021
549: C **** TEST 584 **** 05460021
550: C TEST 584 - REAL VARIABLE SET TO /-03. 2 7 6 6/ TO TEST 05470021
551: C THE EFFECT OF BLANKS IMBEDDED IN A REAL CONSTANT. 05480021
552: C 05490021
553: C 05500021
554: IF (ICZERO) 35840, 5840, 35840 05510021
555: 5840 CONTINUE 05520021
556: GO TO 45840 05530021
557: 35840 IVDELE = IVDELE + 1 05540021
558: WRITE (I02,80003) IVTNUM 05550021
559: IF (ICZERO) 45840, 5851, 45840 05560021
560: 45840 IF ( RCON08 + 3.2766 ) 25840, 15840, 25840 05570021
561: 15840 IVPASS = IVPASS + 1 05580021
562: WRITE (I02,80001) IVTNUM 05590021
563: GO TO 5851 05600021
564: 25840 IVFAIL = IVFAIL + 1 05610021
565: IVCOMP = RCON08 05620021
566: IVCORR = -3 05630021
567: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05640021
568: 5851 CONTINUE 05650021
569: IVTNUM = 585 05660021
570: C 05670021
571: C **** TEST 585 **** 05680021
572: C TEST 585 - INTEGER ARRAY ELEMENT SET TO 3 05690021
573: C 05700021
574: C 05710021
575: IF (ICZERO) 35850, 5850, 35850 05720021
576: 5850 CONTINUE 05730021
577: GO TO 45850 05740021
578: 35850 IVDELE = IVDELE + 1 05750021
579: WRITE (I02,80003) IVTNUM 05760021
580: IF (ICZERO) 45850, 5861, 45850 05770021
581: 45850 IF ( IADN11(1) - 3 ) 25850, 15850, 25850 05780021
582: 15850 IVPASS = IVPASS + 1 05790021
583: WRITE (I02,80001) IVTNUM 05800021
584: GO TO 5861 05810021
585: 25850 IVFAIL = IVFAIL + 1 05820021
586: IVCOMP = IADN11(1) 05830021
587: IVCORR = 3 05840021
588: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05850021
589: 5861 CONTINUE 05860021
590: IVTNUM = 586 05870021
591: C 05880021
592: C **** TEST 586 **** 05890021
593: C TEST 586 - INTEGER ARRAY ELEMENT SET TO 32767 05900021
594: C 05910021
595: C 05920021
596: IF (ICZERO) 35860, 5860, 35860 05930021
597: 5860 CONTINUE 05940021
598: GO TO 45860 05950021
599: 35860 IVDELE = IVDELE + 1 05960021
600: WRITE (I02,80003) IVTNUM 05970021
601: IF (ICZERO) 45860, 5871, 45860 05980021
602: 45860 IF ( IADN11(2) - 32767 ) 25860, 15860, 25860 05990021
603: 15860 IVPASS = IVPASS + 1 06000021
604: WRITE (I02,80001) IVTNUM 06010021
605: GO TO 5871 06020021
606: 25860 IVFAIL = IVFAIL + 1 06030021
607: IVCOMP = IADN11(2) 06040021
608: IVCORR = 32767 06050021
609: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06060021
610: 5871 CONTINUE 06070021
611: IVTNUM = 587 06080021
612: C 06090021
613: C **** TEST 587 **** 06100021
614: C TEST 587 - INTEGER ARRAY ELEMENT SET TO -587 06110021
615: C 06120021
616: C 06130021
617: IF (ICZERO) 35870, 5870, 35870 06140021
618: 5870 CONTINUE 06150021
619: GO TO 45870 06160021
620: 35870 IVDELE = IVDELE + 1 06170021
621: WRITE (I02,80003) IVTNUM 06180021
622: IF (ICZERO) 45870, 5881, 45870 06190021
623: 45870 IF ( IADN11(3) + 587 ) 25870, 15870, 25870 06200021
624: 15870 IVPASS = IVPASS + 1 06210021
625: WRITE (I02,80001) IVTNUM 06220021
626: GO TO 5881 06230021
627: 25870 IVFAIL = IVFAIL + 1 06240021
628: IVCOMP = IADN11(3) 06250021
629: IVCORR = -587 06260021
630: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06270021
631: 5881 CONTINUE 06280021
632: IVTNUM = 588 06290021
633: C 06300021
634: C **** TEST 588 **** 06310021
635: C TEST 588 - TEST OF THE REPEAT FIELD /4*999/ IN A DATA STATE. 06320021
636: C 06330021
637: C 06340021
638: IF (ICZERO) 35880, 5880, 35880 06350021
639: 5880 CONTINUE 06360021
640: GO TO 45880 06370021
641: 35880 IVDELE = IVDELE + 1 06380021
642: WRITE (I02,80003) IVTNUM 06390021
643: IF (ICZERO) 45880, 5891, 45880 06400021
644: 45880 IF ( IADN12(3) - 9999 ) 25880, 15880, 25880 06410021
645: 15880 IVPASS = IVPASS + 1 06420021
646: WRITE (I02,80001) IVTNUM 06430021
647: GO TO 5891 06440021
648: 25880 IVFAIL = IVFAIL + 1 06450021
649: IVCOMP = IADN12(3) 06460021
650: IVCORR = 9999 06470021
651: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06480021
652: 5891 CONTINUE 06490021
653: IVTNUM = 589 06500021
654: C 06510021
655: C **** TEST 589 **** 06520021
656: C TEST 589 - TEST OF SETTING THE WHOLE INTEGER ARRAY ELEMENTS 06530021
657: C IN ONE DATA INITIALIZATION STATEMENT. THE FIRST ELEMENT 06540021
658: C IS SET TO 0 06550021
659: C 06560021
660: C 06570021
661: IF (ICZERO) 35890, 5890, 35890 06580021
662: 5890 CONTINUE 06590021
663: GO TO 45890 06600021
664: 35890 IVDELE = IVDELE + 1 06610021
665: WRITE (I02,80003) IVTNUM 06620021
666: IF (ICZERO) 45890, 5901, 45890 06630021
667: 45890 IF ( IADN13(1) - 0 ) 25890, 15890, 25890 06640021
668: 15890 IVPASS = IVPASS + 1 06650021
669: WRITE (I02,80001) IVTNUM 06660021
670: GO TO 5901 06670021
671: 25890 IVFAIL = IVFAIL + 1 06680021
672: IVCOMP = IADN13(1) 06690021
673: IVCORR = 0 06700021
674: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06710021
675: 5901 CONTINUE 06720021
676: IVTNUM = 590 06730021
677: C 06740021
678: C **** TEST 590 **** 06750021
679: C TEST 590 - SEE TEST 589. THE SECOND ELEMENT WAS SET TO -32766 06760021
680: C 06770021
681: C 06780021
682: IF (ICZERO) 35900, 5900, 35900 06790021
683: 5900 CONTINUE 06800021
684: GO TO 45900 06810021
685: 35900 IVDELE = IVDELE + 1 06820021
686: WRITE (I02,80003) IVTNUM 06830021
687: IF (ICZERO) 45900, 5911, 45900 06840021
688: 45900 IF ( IADN13(2) + 32766 ) 25900, 15900, 25900 06850021
689: 15900 IVPASS = IVPASS + 1 06860021
690: WRITE (I02,80001) IVTNUM 06870021
691: GO TO 5911 06880021
692: 25900 IVFAIL = IVFAIL + 1 06890021
693: IVCOMP = IADN13(2) 06900021
694: IVCORR = -32766 06910021
695: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06920021
696: 5911 CONTINUE 06930021
697: IVTNUM = 591 06940021
698: C 06950021
699: C **** TEST 591 **** 06960021
700: C TEST 591 - SEE TEST 589. THE THIRD ELEMENT WAS SET TO -32766 06970021
701: C 06980021
702: C 06990021
703: IF (ICZERO) 35910, 5910, 35910 07000021
704: 5910 CONTINUE 07010021
705: GO TO 45910 07020021
706: 35910 IVDELE = IVDELE + 1 07030021
707: WRITE (I02,80003) IVTNUM 07040021
708: IF (ICZERO) 45910, 5921, 45910 07050021
709: 45910 IF ( IADN13(3) + 32766 ) 25910, 15910, 25910 07060021
710: 15910 IVPASS = IVPASS + 1 07070021
711: WRITE (I02,80001) IVTNUM 07080021
712: GO TO 5921 07090021
713: 25910 IVFAIL = IVFAIL + 1 07100021
714: IVCOMP = IADN13(3) 07110021
715: IVCORR = -32766 07120021
716: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07130021
717: 5921 CONTINUE 07140021
718: IVTNUM = 592 07150021
719: C 07160021
720: C **** TEST 592 **** 07170021
721: C TEST 592 - SEE TEST 589. THE FOURTH ELEMENT WAS SET TO -587 07180021
722: C 07190021
723: C 07200021
724: IF (ICZERO) 35920, 5920, 35920 07210021
725: 5920 CONTINUE 07220021
726: GO TO 45920 07230021
727: 35920 IVDELE = IVDELE + 1 07240021
728: WRITE (I02,80003) IVTNUM 07250021
729: IF (ICZERO) 45920, 5931, 45920 07260021
730: 45920 IF ( IADN13(4) + 587 ) 25920, 15920, 25920 07270021
731: 15920 IVPASS = IVPASS + 1 07280021
732: WRITE (I02,80001) IVTNUM 07290021
733: GO TO 5931 07300021
734: 25920 IVFAIL = IVFAIL + 1 07310021
735: IVCOMP = IADN13(4) 07320021
736: IVCORR = -587 07330021
737: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07340021
738: 5931 CONTINUE 07350021
739: IVTNUM = 593 07360021
740: C 07370021
741: C **** TEST 593 **** 07380021
742: C TEST 593 - TEST OF SETTING THE WHOLE LOGICAL ARRAY IN ONE 07390021
743: C DATA INITIALIZATION STATEMENT. THE FIRST ELEMENT IS .TRUE. 07400021
744: C THE SECOND AND THIRD ELEMENTS ARE .FALSE. 07410021
745: C THE FALSE PATH OF A LOGICAL IF STATEMENT IS USED TESTING 2. 07420021
746: C 07430021
747: C 07440021
748: IF (ICZERO) 35930, 5930, 35930 07450021
749: 5930 CONTINUE 07460021
750: IVON01 = 1 07470021
751: IF ( LADN11(2) ) IVON01 = 0 07480021
752: GO TO 45930 07490021
753: 35930 IVDELE = IVDELE + 1 07500021
754: WRITE (I02,80003) IVTNUM 07510021
755: IF (ICZERO) 45930, 5941, 45930 07520021
756: 45930 IF ( IVON01 - 1 ) 25930, 15930, 25930 07530021
757: 15930 IVPASS = IVPASS + 1 07540021
758: WRITE (I02,80001) IVTNUM 07550021
759: GO TO 5941 07560021
760: 25930 IVFAIL = IVFAIL + 1 07570021
761: IVCOMP = IVON01 07580021
762: IVCORR = 1 07590021
763: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07600021
764: 5941 CONTINUE 07610021
765: IVTNUM = 594 07620021
766: C 07630021
767: C **** TEST 594 **** 07640021
768: C TEST 594 - SEE TEST 593. THE FOURTH ELEMENT IS TESTED 07650021
769: C WITH THE TRUE PATH OF THE LOGICAL IF STATEMENT. 07660021
770: C 07670021
771: C 07680021
772: IF (ICZERO) 35940, 5940, 35940 07690021
773: 5940 CONTINUE 07700021
774: IVON01 = 0 07710021
775: IF ( LADN11(4) ) IVON01 = 1 07720021
776: GO TO 45940 07730021
777: 35940 IVDELE = IVDELE + 1 07740021
778: WRITE (I02,80003) IVTNUM 07750021
779: IF (ICZERO) 45940, 5951, 45940 07760021
780: 45940 IF ( IVON01 - 1 ) 25940, 15940, 25940 07770021
781: 15940 IVPASS = IVPASS + 1 07780021
782: WRITE (I02,80001) IVTNUM 07790021
783: GO TO 5951 07800021
784: 25940 IVFAIL = IVFAIL + 1 07810021
785: IVCOMP = IVON01 07820021
786: IVCORR = 1 07830021
787: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07840021
788: 5951 CONTINUE 07850021
789: IVTNUM = 595 07860021
790: C 07870021
791: C **** TEST 595 **** 07880021
792: C TEST 595 - A WHOLE REAL ARRAY IS SET IN ONE DATA INITIALIZATION 07890021
793: C STATEMENT. THE SECOND ELEMENT IS -32.766 07900021
794: C 07910021
795: C 07920021
796: IF (ICZERO) 35950, 5950, 35950 07930021
797: 5950 CONTINUE 07940021
798: GO TO 45950 07950021
799: 35950 IVDELE = IVDELE + 1 07960021
800: WRITE (I02,80003) IVTNUM 07970021
801: IF (ICZERO) 45950, 5961, 45950 07980021
802: 45950 IF ( RADN11(2) + 32.766 ) 25950, 15950, 25950 07990021
803: 15950 IVPASS = IVPASS + 1 08000021
804: WRITE (I02,80001) IVTNUM 08010021
805: GO TO 5961 08020021
806: 25950 IVFAIL = IVFAIL + 1 08030021
807: IVCOMP = RADN11(2) 08040021
808: IVCORR = -32 08050021
809: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 08060021
810: 5961 CONTINUE 08070021
811: IVTNUM = 596 08080021
812: C 08090021
813: C **** TEST 596 **** 08100021
814: C TEST 596 - SEE TEST 595. THE FOURTH ELEMENT IS SET TO 587 08110021
815: C BY A REPEAT FIELD. 08120021
816: C 08130021
817: C 08140021
818: IF (ICZERO) 35960, 5960, 35960 08150021
819: 5960 CONTINUE 08160021
820: GO TO 45960 08170021
821: 35960 IVDELE = IVDELE + 1 08180021
822: WRITE (I02,80003) IVTNUM 08190021
823: IF (ICZERO) 45960, 5971, 45960 08200021
824: 45960 IF ( RADN11(4) - 587 ) 25960, 15960, 25960 08210021
825: 15960 IVPASS = IVPASS + 1 08220021
826: WRITE (I02,80001) IVTNUM 08230021
827: GO TO 5971 08240021
828: 25960 IVFAIL = IVFAIL + 1 08250021
829: IVCOMP = RADN11(4) 08260021
830: IVCORR = 587 08270021
831: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 08280021
832: 5971 CONTINUE 08290021
833: IVTNUM = 597 08300021
834: C 08310021
835: C **** TEST 597 **** 08320021
836: C TEST 597 - TEST OF MIXED ARRAY ELEMENT TYPES IN A SINGLE DATA 08330021
837: C INITIALIZATION STATEMENT. THE TYPE LOGICAL STATEMENT CONTAINS08340021
838: C THE ARRAY DECLARATIONS. THE FALSE PATH OF A LOGICAL 08350021
839: C IF STATEMENT TESTS THE LOGICAL RESULTS. 08360021
840: C 08370021
841: C 08380021
842: IF (ICZERO) 35970, 5970, 35970 08390021
843: 5970 CONTINUE 08400021
844: IVON01 = 1 08410021
845: IF ( LATN11(2) ) IVON01 = 0 08420021
846: GO TO 45970 08430021
847: 35970 IVDELE = IVDELE + 1 08440021
848: WRITE (I02,80003) IVTNUM 08450021
849: IF (ICZERO) 45970, 5981, 45970 08460021
850: 45970 IF ( IVON01 - 1 ) 25970, 15970, 25970 08470021
851: 15970 IVPASS = IVPASS + 1 08480021
852: WRITE (I02,80001) IVTNUM 08490021
853: GO TO 5981 08500021
854: 25970 IVFAIL = IVFAIL + 1 08510021
855: IVCOMP = IVON01 08520021
856: IVCORR = 1 08530021
857: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 08540021
858: 5981 CONTINUE 08550021
859: IVTNUM = 598 08560021
860: C 08570021
861: C **** TEST 598 **** 08580021
862: C TEST 598 - TYPE OF THE DATA WAS SET EXPLICITLY REAL IN THE 08590021
863: C DECLARATIVE FOR THE ARRAY. DATA SHOULD BE SET TO 32767. 08600021
864: C 08610021
865: C 08620021
866: IF (ICZERO) 35980, 5980, 35980 08630021
867: 5980 CONTINUE 08640021
868: GO TO 45980 08650021
869: 35980 IVDELE = IVDELE + 1 08660021
870: WRITE (I02,80003) IVTNUM 08670021
871: IF (ICZERO) 45980, 5991, 45980 08680021
872: 45980 IF ( IATN11(2) - 32767. ) 25980, 15980, 25980 08690021
873: 15980 IVPASS = IVPASS + 1 08700021
874: WRITE (I02,80001) IVTNUM 08710021
875: GO TO 5991 08720021
876: 25980 IVFAIL = IVFAIL + 1 08730021
877: IVCOMP = IATN11(2) 08740021
878: IVCORR = 32767 08750021
879: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 08760021
880: 5991 CONTINUE 08770021
881: IVTNUM = 599 08780021
882: C 08790021
883: C **** TEST 599 **** 08800021
884: C TEST 599 - TYPE OF THE DATA WAS SET EXPLICITLY INTEGER IN THE 08810021
885: C DECLARATIVE FOR THE ARRAY. DATA SHOULD BE SET TO -32766 08820021
886: C 08830021
887: C 08840021
888: IF (ICZERO) 35990, 5990, 35990 08850021
889: 5990 CONTINUE 08860021
890: GO TO 45990 08870021
891: 35990 IVDELE = IVDELE + 1 08880021
892: WRITE (I02,80003) IVTNUM 08890021
893: IF (ICZERO) 45990, 6001, 45990 08900021
894: 45990 IF ( RATN11(2) + 32766 ) 25990, 15990, 25990 08910021
895: 15990 IVPASS = IVPASS + 1 08920021
896: WRITE (I02,80001) IVTNUM 08930021
897: GO TO 6001 08940021
898: 25990 IVFAIL = IVFAIL + 1 08950021
899: IVCOMP = RATN11(2) 08960021
900: IVCORR = -32766 08970021
901: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 08980021
902: 6001 CONTINUE 08990021
903: IVTNUM = 600 09000021
904: C 09010021
905: C **** TEST 600 **** 09020021
906: C TEST 600 - TEST OF REAL DECIMAL CONSTANTS USING E-NOTATION. 09030021
907: C SEE SECTION 4.4.2. THE VALUE OF THE ELEMENT SHOULD 09040021
908: C BE SET TO 32767. 09050021
909: C 09060021
910: C 09070021
911: IF (ICZERO) 36000, 6000, 36000 09080021
912: 6000 CONTINUE 09090021
913: GO TO 46000 09100021
914: 36000 IVDELE = IVDELE + 1 09110021
915: WRITE (I02,80003) IVTNUM 09120021
916: IF (ICZERO) 46000, 6011, 46000 09130021
917: 46000 IF ( RADN13(1) - 32767. ) 26000, 16000, 26000 09140021
918: 16000 IVPASS = IVPASS + 1 09150021
919: WRITE (I02,80001) IVTNUM 09160021
920: GO TO 6011 09170021
921: 26000 IVFAIL = IVFAIL + 1 09180021
922: IVCOMP = RADN13(1) 09190021
923: IVCORR = 32767 09200021
924: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 09210021
925: 6011 CONTINUE 09220021
926: IVTNUM = 601 09230021
927: C 09240021
928: C **** TEST 601 **** 09250021
929: C TEST 601 - LIKE TEST 600. REAL DECIMAL CONSTANT VALUE -.32766 09260021
930: C 09270021
931: C 09280021
932: IF (ICZERO) 36010, 6010, 36010 09290021
933: 6010 CONTINUE 09300021
934: GO TO 46010 09310021
935: 36010 IVDELE = IVDELE + 1 09320021
936: WRITE (I02,80003) IVTNUM 09330021
937: IF (ICZERO) 46010, 6021, 46010 09340021
938: 46010 IF ( RADN13(2) + .32766 ) 26010, 16010, 26010 09350021
939: 16010 IVPASS = IVPASS + 1 09360021
940: WRITE (I02,80001) IVTNUM 09370021
941: GO TO 6021 09380021
942: 26010 IVFAIL = IVFAIL + 1 09390021
943: IVCOMP = RADN13(2) 09400021
944: IVCORR = 0 09410021
945: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 09420021
946: 6021 CONTINUE 09430021
947: IVTNUM = 602 09440021
948: C 09450021
949: C **** TEST 602 **** 09460021
950: C TEST 602 - LIKE TEST 600. REAL DECIMAL CONSTANT VALUE 587. 09470021
951: C 09480021
952: C 09490021
953: IF (ICZERO) 36020, 6020, 36020 09500021
954: 6020 CONTINUE 09510021
955: GO TO 46020 09520021
956: 36020 IVDELE = IVDELE + 1 09530021
957: WRITE (I02,80003) IVTNUM 09540021
958: IF (ICZERO) 46020, 6031, 46020 09550021
959: 46020 IF ( RADN13(3) - 587 ) 26020, 16020, 26020 09560021
960: 16020 IVPASS = IVPASS + 1 09570021
961: WRITE (I02,80001) IVTNUM 09580021
962: GO TO 6031 09590021
963: 26020 IVFAIL = IVFAIL + 1 09600021
964: IVCOMP = RADN13(3) 09610021
965: IVCORR = 587 09620021
966: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 09630021
967: 6031 CONTINUE 09640021
968: IVTNUM = 603 09650021
969: C 09660021
970: C **** TEST 603 **** 09670021
971: C TEST 603 - LIKE TEST 600. REAL DECIMAL CONSTANT VALUE 90. 09680021
972: C 09690021
973: C 09700021
974: IF (ICZERO) 36030, 6030, 36030 09710021
975: 6030 CONTINUE 09720021
976: GO TO 46030 09730021
977: 36030 IVDELE = IVDELE + 1 09740021
978: WRITE (I02,80003) IVTNUM 09750021
979: IF (ICZERO) 46030, 6041, 46030 09760021
980: 46030 IF ( RADN13(4) - 90. ) 26030, 16030, 26030 09770021
981: 16030 IVPASS = IVPASS + 1 09780021
982: WRITE (I02,80001) IVTNUM 09790021
983: GO TO 6041 09800021
984: 26030 IVFAIL = IVFAIL + 1 09810021
985: IVCOMP = RADN13(4) 09820021
986: IVCORR = 90 09830021
987: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 09840021
988: 6041 CONTINUE 09850021
989: C 09860021
990: C WRITE PAGE FOOTINGS AND RUN SUMMARIES 09870021
991: 99999 CONTINUE 09880021
992: WRITE (I02,90002) 09890021
993: WRITE (I02,90006) 09900021
994: WRITE (I02,90002) 09910021
995: WRITE (I02,90002) 09920021
996: WRITE (I02,90007) 09930021
997: WRITE (I02,90002) 09940021
998: WRITE (I02,90008) IVFAIL 09950021
999: WRITE (I02,90009) IVPASS 09960021
1000: WRITE (I02,90010) IVDELE 09970021
1001: C 09980021
1002: C 09990021
1003: C TERMINATE ROUTINE EXECUTION 10000021
1004: STOP 10010021
1005: C 10020021
1006: C FORMAT STATEMENTS FOR PAGE HEADERS 10030021
1007: 90000 FORMAT (1H1) 10040021
1008: 90002 FORMAT (1H ) 10050021
1009: 90001 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM) 10060021
1010: 90003 FORMAT (1H ,21X,11HVERSION 1.0) 10070021
1011: 90004 FORMAT (1H ,10X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978) 10080021
1012: 90005 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL, 5X,8HCOMPUTED,8X,7HCORRECT) 10090021
1013: 90006 FORMAT (1H ,5X,46H----------------------------------------------) 10100021
1014: 90011 FORMAT (1H ,18X,17HSUBSET LEVEL TEST) 10110021
1015: C 10120021
1016: C FORMAT STATEMENTS FOR RUN SUMMARIES 10130021
1017: 90008 FORMAT (1H ,15X,I5,19H ERRORS ENCOUNTERED) 10140021
1018: 90009 FORMAT (1H ,15X,I5,13H TESTS PASSED) 10150021
1019: 90010 FORMAT (1H ,15X,I5,14H TESTS DELETED) 10160021
1020: C 10170021
1021: C FORMAT STATEMENTS FOR TEST RESULTS 10180021
1022: 80001 FORMAT (1H ,4X,I5,7X,4HPASS) 10190021
1023: 80002 FORMAT (1H ,4X,I5,7X,4HFAIL) 10200021
1024: 80003 FORMAT (1H ,4X,I5,7X,7HDELETED) 10210021
1025: 80004 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6) 10220021
1026: 80005 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5) 10230021
1027: C 10240021
1028: 90007 FORMAT (1H ,20X,20HEND OF PROGRAM FM021) 10250021
1029: END 10260021
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.