|
|
1.1 root 1: PROGRAM FM205 00010205
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 00020205
6: C 00030205
7: C THE ROUTINE FM205 TESTS CHARACTER CONSTANTS, CHARACTER 00040205
8: C VARIABLES, AND CHARACTER ARRAY ELEMENTS WITH A MAXIMUM LENGTH 00050205
9: C OF 57 CHARACTERS. CHARACTER ASSIGNMENT STATEMENTS AND CHARACTER 00060205
10: C RELATIONAL EXPRESSIONS OF THE FOLLOWING STATEMENT FORMS ARE 00070205
11: C TESTED IN THIS ROUTINE. 00080205
12: C 00090205
13: C (1) CHARACTER ASSIGNMENT STATEMENTS 00100205
14: C 00110205
15: C CHARACTER VARIABLE = CHARACTER CONSTANT, 00120205
16: C CHARACTER VARIABLE = CHARACTER VARIABLE, 00130205
17: C CHARACTER ARRAY ELEMENT = CHARACTER CONSTANT, 00140205
18: C CHARACTER ARRAY ELEMENT = CHARACTER VARIABLE, 00150205
19: C CHARACTER ARRAY ELEMENT = CHARACTER ARRAY ELEMENT, 00160205
20: C CHARACTER VARIABLE = CHARACTER ARRAY ELEMENT. 00170205
21: C 00180205
22: C THE CHARACTER ENTITIES IN AN ASSIGNMENT STATEMENT ARE THE 00190205
23: C SAME LENGTH. 00200205
24: C 00210205
25: C (2) CHARACTER RELATIONAL EXPRESSIONS 00220205
26: C 00230205
27: C CHARACTER VARIABLE RELOP CHARACTER CONSTANT, 00240205
28: C CHARACTER VARIABLE RELOP CHARACTER VARIABLE, 00250205
29: C CHARACTER ARRAY ELEMENT RELOP CHARACTER CONSTANT, 00260205
30: C CHARACTER ARRAY ELEMENT RELOP CHARACTER VARIABLE, 00270205
31: C CHARACTER ARRAY ELEMENT RELOP CHAR. ARRAY ELEMENT. 00280205
32: C 00290205
33: C THE CHARACTER ENTITIES IN A RELATIONAL EXPRESSION ARE THE 00300205
34: C SAME LENGTH. 00310205
35: C 00320205
36: C REFERENCES 00330205
37: C AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN, 00340205
38: C X3.9-1978. 00350205
39: C 00360205
40: C SECTION 4.8, CHARACTER TYPE 00370205
41: C SECTION 4.8.1, CHARACTER CONSTANT 00380205
42: C SECTION 6.2, CHARACTER EXPRESSIONS 00390205
43: C SECTION 6.3.4, CHARACTER RELATIONAL EXPRESSION 00400205
44: C SECTION 6.3.5, INTERPRETATION OF CHARACTER RELATIONAL 00410205
45: C EXPRESSIONS 00420205
46: C SECTION 8.4,2, CHARACTER TYPE-STATEMENT 00430205
47: C SECTION 10.4, CHARACTER ASSIGNMENT STATEMENT 00440205
48: C 00450205
49: C 00460205
50: C ******************************************************************00470205
51: C A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE 00480205
52: C BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN STANDARD FORTRAN 00490205
53: C X3.9-1978, HAS BEEN DEVELOPED BY THE DEPARTMENT OF THE NAVY. THE 00500205
54: C FORTRAN COMPILER VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT 00510205
55: C ROUTINES, THEIR RELATED DATA, AND AN EXECUTIVE SYSTEM. EACH AUDIT00520205
56: C ROUTINE IS A FORTRAN PROGRAM OR SUBPROGRAM WHICH INCLUDES TESTS 00530205
57: C OF SPECIFIC LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING00540205
58: C THE RESULT OF EXECUTING THESE TESTS. 00550205
59: C 00560205
60: C THIS PARTICULAR PROGRAM OR SUBPROGRAM CONTAINS ONLY FEATURES 00570205
61: C FOUND IN THE SUBSET LEVEL OF THE STANDARD. 00580205
62: C 00590205
63: C SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO 00600205
64: C DEPARTMENT OF THE NAVY 00610205
65: C FEDERAL COBOL COMPILER TESTING SERVICE 00620205
66: C WASHINGTON, D.C. 20376 00630205
67: C 00640205
68: C ******************************************************************00650205
69: C 00660205
70: C 00670205
71: IMPLICIT LOGICAL (L) 00680205
72: IMPLICIT CHARACTER*14 (C) 00690205
73: C 00700205
74: CHARACTER CVTN01*3,CVTN02*7,CVTN03*12 00710205
75: CHARACTER CVTN04*25,CVTN05*41,CVTN06*57 00720205
76: CHARACTER CVTN07*3,CVTN08*7,CVTN09*12 00730205
77: CHARACTER CVTN10*25,CVTN11*41,CVTN12*57 00740205
78: CHARACTER CATN11(6)*3,CATN12(7)*7,CATN13(3)*12 00750205
79: CHARACTER CATN14(2)*25,CATN15(10)*41,CATN16(4)*57 00760205
80: C 00770205
81: C 00780205
82: C 00790205
83: C INITIALIZATION SECTION. 00800205
84: C 00810205
85: C INITIALIZE CONSTANTS 00820205
86: C ******************** 00830205
87: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER 00840205
88: I01 = 5 00850205
89: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER 00860205
90: I02 = 6 00870205
91: C SYSTEM ENVIRONMENT SECTION 00880205
92: C 00890205
93: I01 = 5 00900205
94: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00910205
95: C (UNIT NUMBER FOR CARD READER). 00920205
96: CX011 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD00930205
97: C THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 00940205
98: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE. 00950205
99: C 00960205
100: I02 = 6 00970205
101: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6 00980205
102: C (UNIT NUMBER FOR PRINTER). 00990205
103: CX021 THIS CARD IS PEPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD.01000205
104: C THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 01010205
105: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE. 01020205
106: C 01030205
107: IVPASS = 0 01040205
108: IVFAIL = 0 01050205
109: IVDELE = 0 01060205
110: ICZERO = 0 01070205
111: C 01080205
112: C WRITE OUT PAGE HEADERS 01090205
113: C 01100205
114: WRITE (I02,90002) 01110205
115: WRITE (I02,90006) 01120205
116: WRITE (I02,90008) 01130205
117: WRITE (I02,90004) 01140205
118: WRITE (I02,90010) 01150205
119: WRITE (I02,90004) 01160205
120: WRITE (I02,90016) 01170205
121: WRITE (I02,90001) 01180205
122: WRITE (I02,90004) 01190205
123: WRITE (I02,90012) 01200205
124: WRITE (I02,90014) 01210205
125: WRITE (I02,90004) 01220205
126: C 01230205
127: C 01240205
128: C TEST 87 THROUGH TEST 92 VERIFY THE CHARACTER ASSIGNMENT 01250205
129: C STATEMENT 01260205
130: C 01270205
131: C CHARACTER VARIABLE = CHARACTER CONSTANT 01280205
132: C 01290205
133: C IS CORRECT. THE VARIABLE AND CONSTANT ARE THE SAME LENGTH, AND 01300205
134: C THE LENGTHS 3, 7, 12, 25, 41, AND 57 ARE USED IN THESE TESTS. 01310205
135: C 01320205
136: C 01330205
137: C **** FCVS PROGRAM 205 - TEST 087 **** 01340205
138: C 01350205
139: C 01360205
140: IVTNUM = 87 01370205
141: IF (ICZERO) 30870, 0870, 30870 01380205
142: 0870 CONTINUE 01390205
143: IVCOMP = 0 01400205
144: CVTN01 = 'ABC' 01410205
145: IF (CVTN01 .EQ. 'ABC') IVCOMP = 1 01420205
146: IVCORR = 1 01430205
147: 40870 IF (IVCOMP - 1) 20870, 10870, 20870 01440205
148: 30870 IVDELE = IVDELE + 1 01450205
149: WRITE (I02,80000) IVTNUM 01460205
150: IF (ICZERO) 10870, 0881, 20870 01470205
151: 10870 IVPASS = IVPASS + 1 01480205
152: WRITE (I02,80002) IVTNUM 01490205
153: GO TO 0881 01500205
154: 20870 IVFAIL = IVFAIL + 1 01510205
155: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 01520205
156: 0881 CONTINUE 01530205
157: C 01540205
158: C **** FCVS PROGRAM 205 - TEST 088 **** 01550205
159: C 01560205
160: C 01570205
161: IVTNUM = 88 01580205
162: IF (ICZERO) 30880, 0880, 30880 01590205
163: 0880 CONTINUE 01600205
164: IVCOMP = 0 01610205
165: IVCORR = 1 01620205
166: CVTN02 = 'ABCDEFG' 01630205
167: IF (CVTN02 .EQ. 'ABCDEFG') IVCOMP = 1 01640205
168: 40880 IF (IVCOMP - 1) 20880, 10880, 20880 01650205
169: 30880 IVDELE = IVDELE + 1 01660205
170: WRITE (I02,80000) IVTNUM 01670205
171: IF (ICZERO) 10880, 0891, 20880 01680205
172: 10880 IVPASS = IVPASS + 1 01690205
173: WRITE (I02,80002) IVTNUM 01700205
174: GO TO 0891 01710205
175: 20880 IVFAIL = IVFAIL + 1 01720205
176: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 01730205
177: 0891 CONTINUE 01740205
178: C 01750205
179: C **** FCVS PROGRAM 205 - TEST 089 **** 01760205
180: C 01770205
181: C 01780205
182: IVTNUM = 89 01790205
183: IF (ICZERO) 30890, 0890, 30890 01800205
184: 0890 CONTINUE 01810205
185: IVCOMP = 0 01820205
186: IVCORR = 1 01830205
187: CVTN03 = 'ABCDEFGHIJKL' 01840205
188: IF (CVTN03 .EQ. 'ABCDEFGHIJKL') IVCOMP = 1 01850205
189: 40890 IF (IVCOMP - 1) 20890, 10890, 20890 01860205
190: 30890 IVDELE = IVDELE + 1 01870205
191: WRITE (I02,80000) IVTNUM 01880205
192: IF (ICZERO) 10890, 0901, 20890 01890205
193: 10890 IVPASS = IVPASS + 1 01900205
194: WRITE (I02,80002) IVTNUM 01910205
195: GO TO 0901 01920205
196: 20890 IVFAIL = IVFAIL + 1 01930205
197: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 01940205
198: 0901 CONTINUE 01950205
199: C 01960205
200: C **** FCVS PROGRAM 205 - TEST 090 **** 01970205
201: C 01980205
202: C 01990205
203: IVTNUM = 90 02000205
204: IF (ICZERO) 30900, 0900, 30900 02010205
205: 0900 CONTINUE 02020205
206: IVCOMP = 0 02030205
207: IVCORR = 1 02040205
208: CVTN04 = 'ABCDEFGHIJKLMNOPQRSTUVWXY' 02050205
209: IF (CVTN04 .EQ. 'ABCDEFGHIJKLMNOPQRSTUVWXY') IVCOMP = 1 02060205
210: 40900 IF (IVCOMP - 1) 20900, 10900, 20900 02070205
211: 30900 IVDELE = IVDELE + 1 02080205
212: WRITE (I02,80000) IVTNUM 02090205
213: IF (ICZERO) 10900, 0911, 20900 02100205
214: 10900 IVPASS = IVPASS + 1 02110205
215: WRITE (I02,80002) IVTNUM 02120205
216: GO TO 0911 02130205
217: 20900 IVFAIL = IVFAIL + 1 02140205
218: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 02150205
219: 0911 CONTINUE 02160205
220: C 02170205
221: C **** FCVS PROGRAM 205 - TEST 091 **** 02180205
222: C 02190205
223: C 02200205
224: IVTNUM = 91 02210205
225: IF (ICZERO) 30910, 0910, 30910 02220205
226: 0910 CONTINUE 02230205
227: IVCOMP = 0 02240205
228: IVCORR = 1 02250205
229: CVTN05 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNO' 02260205
230: IF (CVTN05 .EQ. 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNO') 02270205
231: 1 IVCOMP = 1 02280205
232: 40910 IF (IVCOMP - 1) 20910, 10910, 20910 02290205
233: 30910 IVDELE = IVDELE + 1 02300205
234: WRITE (I02,80000) IVTNUM 02310205
235: IF (ICZERO) 10910, 0921, 20910 02320205
236: 10910 IVPASS = IVPASS + 1 02330205
237: WRITE (I02,80002) IVTNUM 02340205
238: GO TO 0921 02350205
239: 20910 IVFAIL = IVFAIL + 1 02360205
240: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 02370205
241: 0921 CONTINUE 02380205
242: C 02390205
243: C **** FCVS PROGRAM 205 - TEST 092 **** 02400205
244: C 02410205
245: C 02420205
246: IVTNUM = 92 02430205
247: IF (ICZERO) 30920, 0920, 30920 02440205
248: 0920 CONTINUE 02450205
249: IVCOMP = 0 02460205
250: IVCORR = 1 02470205
251: CVTN06 = 02480205
252: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDE' 02490205
253: IF (CVTN06 .EQ. 02500205
254: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDE') 02510205
255: 2 IVCOMP = 1 02520205
256: 40920 IF (IVCOMP - 1) 20920, 10920, 20920 02530205
257: 30920 IVDELE = IVDELE + 1 02540205
258: WRITE (I02,80000) IVTNUM 02550205
259: IF (ICZERO) 10920, 0931, 20920 02560205
260: 10920 IVPASS = IVPASS + 1 02570205
261: WRITE (I02,80002) IVTNUM 02580205
262: GO TO 0931 02590205
263: 20920 IVFAIL = IVFAIL + 1 02600205
264: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 02610205
265: 0931 CONTINUE 02620205
266: C 02630205
267: C TEST 93 THROUGH TEST 96 VERIFY THE CHARACTER ASSIGNMENT 02640205
268: C STATEMENTS 02650205
269: C 02660205
270: C CHARACTER VARIABLE = CHARACTER CONSTANT 02670205
271: C CHARACTER VARIABLE = CHARACTER VARIABLE 02680205
272: C 02690205
273: C ARE CORRECT. THE VARIABLES AND CONSTANT ARE THE SAME LENGTH, 02700205
274: C AND THE LENGTHS 3, 12, 25, AND 57 ARE USED IN THESE TESTS. 02710205
275: C 02720205
276: C 02730205
277: C **** FCVS PROGRAM 205 - TEST 093 **** 02740205
278: C 02750205
279: C 02760205
280: IVTNUM = 93 02770205
281: IF (ICZERO) 30930, 0930, 30930 02780205
282: 0930 CONTINUE 02790205
283: IVCOMP = 0 02800205
284: IVCORR = 1 02810205
285: CVTN07 = ' ' 02820205
286: CVTN01 = 'ABC' 02830205
287: CVTN07 = CVTN01 02840205
288: IF (CVTN07 .EQ. 'ABC') IVCOMP = 1 02850205
289: 40930 IF (IVCOMP - 1) 20930, 10930, 20930 02860205
290: 30930 IVDELE = IVDELE + 1 02870205
291: WRITE (I02,80000) IVTNUM 02880205
292: IF (ICZERO) 10930, 0941, 20930 02890205
293: 10930 IVPASS = IVPASS + 1 02900205
294: WRITE (I02,80002) IVTNUM 02910205
295: GO TO 0941 02920205
296: 20930 IVFAIL = IVFAIL + 1 02930205
297: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 02940205
298: 0941 CONTINUE 02950205
299: C 02960205
300: C **** FCVS PROGRAM 205 - TEST 094 **** 02970205
301: C 02980205
302: C 02990205
303: IVTNUM = 94 03000205
304: IF (ICZERO) 30940, 0940, 30940 03010205
305: 0940 CONTINUE 03020205
306: IVCOMP = 0 03030205
307: IVCORR = 1 03040205
308: CVTN03 = 'ABCDEFGHIJKL' 03050205
309: CVTN09 = ' ' 03060205
310: CVTN09 = CVTN03 03070205
311: IF (CVTN09 .EQ. 'ABCDEFGHIJKL') IVCOMP = 1 03080205
312: 40940 IF (IVCOMP - 1) 20940, 10940, 20940 03090205
313: 30940 IVDELE = IVDELE + 1 03100205
314: WRITE (I02,80000) IVTNUM 03110205
315: IF (ICZERO) 10940, 0951, 20940 03120205
316: 10940 IVPASS = IVPASS + 1 03130205
317: WRITE (I02,80002) IVTNUM 03140205
318: GO TO 0951 03150205
319: 20940 IVFAIL = IVFAIL + 1 03160205
320: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 03170205
321: 0951 CONTINUE 03180205
322: C 03190205
323: C **** FCVS PROGRAM 205 - TEST 095 **** 03200205
324: C 03210205
325: C 03220205
326: IVTNUM = 95 03230205
327: IF (ICZERO) 30950, 0950, 30950 03240205
328: 0950 CONTINUE 03250205
329: IVCOMP = 0 03260205
330: IVCORR = 1 03270205
331: CVTN04 = 'ABCDEFGHIJKLMNOPQRSTUVWXY' 03280205
332: CVTN10 = ' ' 03290205
333: CVTN10 = CVTN04 03300205
334: IF (CVTN10 .EQ. 'ABCDEFGHIJKLMNOPQRSTUVWXY') IVCOMP = 1 03310205
335: 40950 IF (IVCOMP - 1) 20950, 10950, 20950 03320205
336: 30950 IVDELE = IVDELE + 1 03330205
337: WRITE (I02,80000) IVTNUM 03340205
338: IF (ICZERO) 10950, 0961, 20950 03350205
339: 10950 IVPASS = IVPASS + 1 03360205
340: WRITE (I02,80002) IVTNUM 03370205
341: GO TO 0961 03380205
342: 20950 IVFAIL = IVFAIL + 1 03390205
343: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 03400205
344: 0961 CONTINUE 03410205
345: C 03420205
346: C **** FCVS PROGRAM 205 - TEST 096 **** 03430205
347: C 03440205
348: C 03450205
349: IVTNUM = 96 03460205
350: IF (ICZERO) 30960, 0960, 30960 03470205
351: 0960 CONTINUE 03480205
352: IVCOMP = 0 03490205
353: IVCORR = 1 03500205
354: CVTN12 = ' ' 03510205
355: CVTN06 = 03520205
356: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDE' 03530205
357: CVTN12 = CVTN06 03540205
358: IF (CVTN12 .EQ. 03550205
359: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDE') 03560205
360: 2 IVCOMP = 1 03570205
361: 40960 IF (IVCOMP - 1) 20960, 10960, 20960 03580205
362: 30960 IVDELE = IVDELE + 1 03590205
363: WRITE (I02,80000) IVTNUM 03600205
364: IF (ICZERO) 10960, 0971, 20960 03610205
365: 10960 IVPASS = IVPASS + 1 03620205
366: WRITE (I02,80002) IVTNUM 03630205
367: GO TO 0971 03640205
368: 20960 IVFAIL = IVFAIL + 1 03650205
369: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 03660205
370: 0971 CONTINUE 03670205
371: C 03680205
372: C TEST 97 AND TEST 98 VERIFY THE CHARACTER ASSIGNMENT 03690205
373: C STATEMENT 03700205
374: C 03710205
375: C CHARACTER ARRAY ELEMENT = CHARACTER CONSTANT 03720205
376: C 03730205
377: C IS CORRECT. THE ARRAY ELEMENT AND CONSTANT ARE THE SAME LENGTH, 03740205
378: C AND THE LENGTHS 25 AND 41 ARE USED IN THESE TESTS. 03750205
379: C 03760205
380: C 03770205
381: C **** FCVS PROGRAM 205 - TEST 097 **** 03780205
382: C 03790205
383: C 03800205
384: IVTNUM = 97 03810205
385: IF (ICZERO) 30970, 0970, 30970 03820205
386: 0970 CONTINUE 03830205
387: IVCOMP = 0 03840205
388: IVCORR = 1 03850205
389: CATN14(1) = 'ABCDEFGHIJKLMNOPQRSTUVWXY' 03860205
390: IF (CATN14(1) .EQ. 'ABCDEFGHIJKLMNOPQRSTUVWXY') IVCOMP = 1 03870205
391: 40970 IF (IVCOMP - 1) 20970, 10970, 20970 03880205
392: 30970 IVDELE = IVDELE + 1 03890205
393: WRITE (I02,80000) IVTNUM 03900205
394: IF (ICZERO) 10970, 0981, 20970 03910205
395: 10970 IVPASS = IVPASS + 1 03920205
396: WRITE (I02,80002) IVTNUM 03930205
397: GO TO 0981 03940205
398: 20970 IVFAIL = IVFAIL + 1 03950205
399: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 03960205
400: 0981 CONTINUE 03970205
401: C 03980205
402: C **** FCVS PROGRAM 205 - TEST 098 **** 03990205
403: C 04000205
404: C 04010205
405: IVTNUM = 98 04020205
406: IF (ICZERO) 30980, 0980, 30980 04030205
407: 0980 CONTINUE 04040205
408: IVCOMP = 0 04050205
409: IVCORR = 1 04060205
410: CATN15(8) = 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNO' 04070205
411: IF (CATN15(8) .EQ. 04080205
412: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNO') IVCOMP = 1 04090205
413: 40980 IF (IVCOMP - 1) 20980, 10980, 20980 04100205
414: 30980 IVDELE = IVDELE + 1 04110205
415: WRITE (I02,80000) IVTNUM 04120205
416: IF (ICZERO) 10980, 0991, 20980 04130205
417: 10980 IVPASS = IVPASS + 1 04140205
418: WRITE (I02,80002) IVTNUM 04150205
419: GO TO 0991 04160205
420: 20980 IVFAIL = IVFAIL + 1 04170205
421: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 04180205
422: 0991 CONTINUE 04190205
423: C 04200205
424: C TEST 99 AND TEST 100 VERIFY THE CHARACTER ASSIGNMENT 04210205
425: C STATEMENTS 04220205
426: C 04230205
427: C CHARACTER VARIABLE = CHARACTER CONSTANT 04240205
428: C CHARACTER ARRAY ELEMENT = CHARACTER VARIABLE 04250205
429: C 04260205
430: C ARE CORRECT. THE CHARACTER ENTITIES ARE THE SAME LENGTH, 04270205
431: C AND THE LENGTHS 3 AND 57 ARE USED IN THESE TESTS. 04280205
432: C 04290205
433: C 04300205
434: C **** FCVS PROGRAM 205 - TEST 099 **** 04310205
435: C 04320205
436: C 04330205
437: IVTNUM = 99 04340205
438: IF (ICZERO) 30990, 0990, 30990 04350205
439: 0990 CONTINUE 04360205
440: IVCOMP = 0 04370205
441: IVCORR = 1 04380205
442: CVTN01 = 'ABC' 04390205
443: CATN11(5) = CVTN01 04400205
444: IF (CATN11(5) .EQ. 'ABC') IVCOMP = 1 04410205
445: 40990 IF (IVCOMP - 1) 20990, 10990, 20990 04420205
446: 30990 IVDELE = IVDELE + 1 04430205
447: WRITE (I02,80000) IVTNUM 04440205
448: IF (ICZERO) 10990, 1001, 20990 04450205
449: 10990 IVPASS = IVPASS + 1 04460205
450: WRITE (I02,80002) IVTNUM 04470205
451: GO TO 1001 04480205
452: 20990 IVFAIL = IVFAIL + 1 04490205
453: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 04500205
454: 1001 CONTINUE 04510205
455: C 04520205
456: C **** FCVS PROGRAM 205 - TEST 100 **** 04530205
457: C 04540205
458: C 04550205
459: IVTNUM = 100 04560205
460: IF (ICZERO) 31000, 1000, 31000 04570205
461: 1000 CONTINUE 04580205
462: IVCOMP = 0 04590205
463: IVCORR = 1 04600205
464: CVTN06 = 04610205
465: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDE' 04620205
466: CATN16(3) = CVTN06 04630205
467: IF (CATN16(3) .EQ. 04640205
468: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDE') 04650205
469: 2 IVCOMP = 1 04660205
470: 41000 IF (IVCOMP - 1) 21000, 11000, 21000 04670205
471: 31000 IVDELE = IVDELE + 1 04680205
472: WRITE (I02,80000) IVTNUM 04690205
473: IF (ICZERO) 11000, 1011, 21000 04700205
474: 11000 IVPASS = IVPASS + 1 04710205
475: WRITE (I02,80002) IVTNUM 04720205
476: GO TO 1011 04730205
477: 21000 IVFAIL = IVFAIL + 1 04740205
478: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 04750205
479: 1011 CONTINUE 04760205
480: C 04770205
481: C TEST 101 AND TEST 102 VERIFY THE CHARACTER ASSIGNMENT 04780205
482: C STATEMENTS 04790205
483: C 04800205
484: C CHARACTER ARRAY ELEMENT = CHARACTER CONSTANT 04810205
485: C CHARACTER ARRAY ELEMENT = CHARACTER ARRAY ELEMENT 04820205
486: C 04830205
487: C ARE CORRECT. THE CHARACTER ENTITIES ARE THE SAME LENGTH, AND 04840205
488: C THE LENGTHS 7 AND 41 ARE USED IN THESE TESTS. 04850205
489: C 04860205
490: C 04870205
491: C **** FCVS PROGRAM 205 - TEST 101 **** 04880205
492: C 04890205
493: C 04900205
494: IVTNUM = 101 04910205
495: IF (ICZERO) 31010, 1010, 31010 04920205
496: 1010 CONTINUE 04930205
497: IVCOMP = 0 04940205
498: IVCORR = 1 04950205
499: CATN12(3) = 'ABCDEFG' 04960205
500: CATN12(4) = CATN12(3) 04970205
501: IF (CATN12(4) .EQ. 'ABCDEFG') IVCOMP = 1 04980205
502: 41010 IF (IVCOMP - 1) 21010, 11010, 21010 04990205
503: 31010 IVDELE = IVDELE + 1 05000205
504: WRITE (I02,80000) IVTNUM 05010205
505: IF (ICZERO) 11010, 1021, 21010 05020205
506: 11010 IVPASS = IVPASS + 1 05030205
507: WRITE (I02,80002) IVTNUM 05040205
508: GO TO 1021 05050205
509: 21010 IVFAIL = IVFAIL + 1 05060205
510: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 05070205
511: 1021 CONTINUE 05080205
512: C 05090205
513: C **** FCVS PROGRAM 205 - TEST 102 **** 05100205
514: C 05110205
515: C 05120205
516: IVTNUM = 102 05130205
517: IF (ICZERO) 31020, 1020, 31020 05140205
518: 1020 CONTINUE 05150205
519: IVCOMP = 0 05160205
520: IVCORR = 1 05170205
521: CATN15(3) = 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNO' 05180205
522: CATN15(4) = CATN15(3) 05190205
523: IF (CATN15(4) .EQ. 05200205
524: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNO') IVCOMP = 1 05210205
525: 41020 IF (IVCOMP - 1) 21020, 11020, 21020 05220205
526: 31020 IVDELE = IVDELE + 1 05230205
527: WRITE (I02,80000) IVTNUM 05240205
528: IF (ICZERO) 11020, 1031, 21020 05250205
529: 11020 IVPASS = IVPASS + 1 05260205
530: WRITE (I02,80002) IVTNUM 05270205
531: GO TO 1031 05280205
532: 21020 IVFAIL = IVFAIL + 1 05290205
533: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 05300205
534: 1031 CONTINUE 05310205
535: C 05320205
536: C TEST 103 AND TEST 104 VERIFY THE CHARACTER ASSIGNMENT 05330205
537: C STATEMENTS 05340205
538: C 05350205
539: C CHARACTER ARRAY ELEMENT = CHARACTER CONSTANT 05360205
540: C CHARACTER VARIABLE = CHARACTER ARRAY ELEMENT 05370205
541: C 05380205
542: C ARE CORRECT. THE CHARACTER ENTITIES ARE THE SAME LENGTH, AND 05390205
543: C THE LENGTHS 12 AND 25 ARE USED. 05400205
544: C 05410205
545: C 05420205
546: C **** FCVS PROGRAM 205 - TEST 103 **** 05430205
547: C 05440205
548: C 05450205
549: IVTNUM = 103 05460205
550: IF (ICZERO) 31030, 1030, 31030 05470205
551: 1030 CONTINUE 05480205
552: IVCOMP = 0 05490205
553: IVCORR = 1 05500205
554: CATN13(1) = 'ABCDEFGHIJKL' 05510205
555: CVTN09 = ' ' 05520205
556: CVTN09 = CATN13(1) 05530205
557: IF (CVTN09 .EQ. 'ABCDEFGHIJKL') IVCOMP = 1 05540205
558: 41030 IF (IVCOMP - 1) 21030, 11030, 21030 05550205
559: 31030 IVDELE = IVDELE + 1 05560205
560: WRITE (I02,80000) IVTNUM 05570205
561: IF (ICZERO) 11030, 1041, 21030 05580205
562: 11030 IVPASS = IVPASS + 1 05590205
563: WRITE (I02,80002) IVTNUM 05600205
564: GO TO 1041 05610205
565: 21030 IVFAIL = IVFAIL + 1 05620205
566: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 05630205
567: 1041 CONTINUE 05640205
568: C 05650205
569: C **** FCVS PROGRAM 205 - TEST 104 **** 05660205
570: C 05670205
571: C 05680205
572: IVTNUM = 104 05690205
573: IF (ICZERO) 31040, 1040, 31040 05700205
574: 1040 CONTINUE 05710205
575: IVCOMP = 0 05720205
576: IVCORR = 1 05730205
577: CATN14(1) = 'ABCDEFGHIJKLMNOPQRSTUVWXY' 05740205
578: CVTN10 = ' ' 05750205
579: CVTN10 = CATN14(1) 05760205
580: IF (CVTN10 .EQ. 'ABCDEFGHIJKLMNOPQRSTUVWXY') IVCOMP = 1 05770205
581: 41040 IF (IVCOMP - 1) 21040, 11040, 21040 05780205
582: 31040 IVDELE = IVDELE + 1 05790205
583: WRITE (I02,80000) IVTNUM 05800205
584: IF (ICZERO) 11040, 1051, 21040 05810205
585: 11040 IVPASS = IVPASS + 1 05820205
586: WRITE (I02,80002) IVTNUM 05830205
587: GO TO 1051 05840205
588: 21040 IVFAIL = IVFAIL + 1 05850205
589: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 05860205
590: 1051 CONTINUE 05870205
591: C 05880205
592: C TEST 105 THROUGH TEST 110 VERIFY THE CHARACTER RELATIONAL 05890205
593: C EXPRESSION USING EACH OF THE SIX RELATIONAL OPERATORS IN THE 05900205
594: C STATEMENT FORM 05910205
595: C 05920205
596: C CHARACTER VARIABLE RELOP CHARACTER CONSTANT 05930205
597: C 05940205
598: C THE CHARACTER ENTITIES ARE THE SAME LENGTH, AND THE LENGTHS 05950205
599: C 3, 7, 12, 25, 41, AND 57 ARE USED IN THESE TESTS. 05960205
600: C 05970205
601: C 05980205
602: C **** FCVS PROGRAM 205 - TEST 105 **** 05990205
603: C 06000205
604: C 06010205
605: IVTNUM = 105 06020205
606: IF (ICZERO) 31050, 1050, 31050 06030205
607: 1050 CONTINUE 06040205
608: IVCOMP = 0 06050205
609: IVCORR = 1 06060205
610: CVTN07 = 'ZAB' 06070205
611: IF (CVTN07 .EQ. 'ZAB') IVCOMP = 1 06080205
612: 41050 IF (IVCOMP - 1) 21050, 11050, 21050 06090205
613: 31050 IVDELE = IVDELE + 1 06100205
614: WRITE (I02,80000) IVTNUM 06110205
615: IF (ICZERO) 11050, 1061, 21050 06120205
616: 11050 IVPASS = IVPASS + 1 06130205
617: WRITE (I02,80002) IVTNUM 06140205
618: GO TO 1061 06150205
619: 21050 IVFAIL = IVFAIL + 1 06160205
620: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 06170205
621: 1061 CONTINUE 06180205
622: C 06190205
623: C **** FCVS PROGRAM 205 - TEST 106 **** 06200205
624: C 06210205
625: C 06220205
626: IVTNUM = 106 06230205
627: IF (ICZERO) 31060, 1060, 31060 06240205
628: 1060 CONTINUE 06250205
629: IVCOMP = 0 06260205
630: IVCORR = 1 06270205
631: CVTN08 = 'ABDDEEF' 06280205
632: IF (CVTN08 .GT. 'ABCDEEF') IVCOMP = 1 06290205
633: 41060 IF (IVCOMP - 1) 21060, 11060, 21060 06300205
634: 31060 IVDELE = IVDELE + 1 06310205
635: WRITE (I02,80000) IVTNUM 06320205
636: IF (ICZERO) 11060, 1071, 21060 06330205
637: 11060 IVPASS = IVPASS + 1 06340205
638: WRITE (I02,80002) IVTNUM 06350205
639: GO TO 1071 06360205
640: 21060 IVFAIL = IVFAIL + 1 06370205
641: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 06380205
642: 1071 CONTINUE 06390205
643: C 06400205
644: C **** FCVS PROGRAM 205 - TEST 107 **** 06410205
645: C 06420205
646: C 06430205
647: IVTNUM = 107 06440205
648: IF (ICZERO) 31070, 1070, 31070 06450205
649: 1070 CONTINUE 06460205
650: IVCOMP = 0 06470205
651: IVCORR = 1 06480205
652: CVTN09 = 'ZXYZZZABCDEF' 06490205
653: IF (CVTN09 .LT. 'ZXYZZZACCDEF') IVCOMP = 1 06500205
654: 41070 IF (IVCOMP - 1) 21070, 11070, 21070 06510205
655: 31070 IVDELE = IVDELE + 1 06520205
656: WRITE (I02,80000) IVTNUM 06530205
657: IF (ICZERO) 11070, 1081, 21070 06540205
658: 11070 IVPASS = IVPASS + 1 06550205
659: WRITE (I02,80002) IVTNUM 06560205
660: GO TO 1081 06570205
661: 21070 IVFAIL = IVFAIL + 1 06580205
662: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 06590205
663: 1081 CONTINUE 06600205
664: C 06610205
665: C **** FCVS PROGRAM 205 - TEST 108 **** 06620205
666: C 06630205
667: C 06640205
668: IVTNUM = 108 06650205
669: IF (ICZERO) 31080, 1080, 31080 06660205
670: 1080 CONTINUE 06670205
671: IVCOMP = 0 06680205
672: IVCORR = 1 06690205
673: CVTN10 = 'ABCDEFGHIJKKMNOPQRSTUVWXY' 06700205
674: IF ('ABCDEFGHIJKLMNOPQRSTUVWXY' .NE. CVTN10) IVCOMP = 1 06710205
675: 41080 IF (IVCOMP - 1) 21080, 11080, 21080 06720205
676: 31080 IVDELE = IVDELE + 1 06730205
677: WRITE (I02,80000) IVTNUM 06740205
678: IF (ICZERO) 11080, 1091, 21080 06750205
679: 11080 IVPASS = IVPASS + 1 06760205
680: WRITE (I02,80002) IVTNUM 06770205
681: GO TO 1091 06780205
682: 21080 IVFAIL = IVFAIL + 1 06790205
683: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 06800205
684: 1091 CONTINUE 06810205
685: C 06820205
686: C **** FCVS PROGRAM 205 - TEST 109 **** 06830205
687: C 06840205
688: C 06850205
689: IVTNUM = 109 06860205
690: IF (ICZERO) 31090, 1090, 31090 06870205
691: 1090 CONTINUE 06880205
692: IVCOMP = 0 06890205
693: IVCORR = 1 06900205
694: CVTN11 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZAABCDEFGHIJKLMN' 06910205
695: IF ('ABCDEFGHIJKLMNOPQRSTUVWXYZABBCDEFGHIJKLMN' .GE. CVTN11) 06920205
696: 1 IVCOMP = 1 06930205
697: 41090 IF (IVCOMP - 1) 21090, 11090, 21090 06940205
698: 31090 IVDELE = IVDELE + 1 06950205
699: WRITE (I02,80000) IVTNUM 06960205
700: IF (ICZERO) 11090, 1101, 21090 06970205
701: 11090 IVPASS = IVPASS + 1 06980205
702: WRITE (I02,80002) IVTNUM 06990205
703: GO TO 1101 07000205
704: 21090 IVFAIL = IVFAIL + 1 07010205
705: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 07020205
706: 1101 CONTINUE 07030205
707: C 07040205
708: C **** FCVS PROGRAM 205 - TEST 110 **** 07050205
709: C 07060205
710: C 07070205
711: IVTNUM = 110 07080205
712: IF (ICZERO) 31100, 1100, 31100 07090205
713: 1100 CONTINUE 07100205
714: IVCOMP = 0 07110205
715: IVCORR = 1 07120205
716: CVTN12 = 07130205
717: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZAAAAA' 07140205
718: IF ('ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYAAAAAA' 07150205
719: 1 .LE. CVTN12) IVCOMP = 1 07160205
720: 41100 IF (IVCOMP - 1) 21100, 11100, 21100 07170205
721: 31100 IVDELE = IVDELE + 1 07180205
722: WRITE (I02,80000) IVTNUM 07190205
723: IF (ICZERO) 11100, 1111, 21100 07200205
724: 11100 IVPASS = IVPASS + 1 07210205
725: WRITE (I02,80002) IVTNUM 07220205
726: GO TO 1111 07230205
727: 21100 IVFAIL = IVFAIL + 1 07240205
728: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 07250205
729: 1111 CONTINUE 07260205
730: C 07270205
731: C TEST 111 AND TEST 112 VERIFY THE CHARACTER RELATIONAL 07280205
732: C EXPRESSION OF THE FORM 07290205
733: C 07300205
734: C CHARACTER VARIABLE RELOP CHARACTER VARIABLE 07310205
735: C 07320205
736: C THE CHARACTER ENTITIES ARE THE SAME LENGTH, AND THE LENGTHS 3 07330205
737: C AND 41 ARE USED IN THESE TESTS. 07340205
738: C 07350205
739: C 07360205
740: C **** FCVS PROGRAM 205 - TEST 111 **** 07370205
741: C 07380205
742: C 07390205
743: IVTNUM = 111 07400205
744: IF (ICZERO) 31110, 1110, 31110 07410205
745: 1110 CONTINUE 07420205
746: IVCOMP = 1 07430205
747: IVCORR = 3 07440205
748: CVTN01 = 'ABC' 07450205
749: CVTN07 = 'BBC' 07460205
750: IF (CVTN01 .EQ. CVTN07) IVCOMP = IVCOMP * 2 07470205
751: IF (CVTN01 .NE. CVTN07) IVCOMP = IVCOMP * 3 07480205
752: 41110 IF (IVCOMP - 3) 21110, 11110, 21110 07490205
753: 31110 IVDELE = IVDELE + 1 07500205
754: WRITE (I02,80000) IVTNUM 07510205
755: IF (ICZERO) 11110, 1121, 21110 07520205
756: 11110 IVPASS = IVPASS + 1 07530205
757: WRITE (I02,80002) IVTNUM 07540205
758: GO TO 1121 07550205
759: 21110 IVFAIL = IVFAIL + 1 07560205
760: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 07570205
761: 1121 CONTINUE 07580205
762: C 07590205
763: C **** FCVS PROGRAM 205 - TEST 112 **** 07600205
764: C 07610205
765: C 07620205
766: IVTNUM = 112 07630205
767: IF (ICZERO) 31120, 1120, 31120 07640205
768: 1120 CONTINUE 07650205
769: IVCOMP = 1 07660205
770: IVCORR = 6 07670205
771: CVTN05 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNO' 07680205
772: CVTN11 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNO' 07690205
773: IF (CVTN05 .GE. CVTN11) IVCOMP = IVCOMP * 2 07700205
774: IF (CVTN05 .LE. CVTN11) IVCOMP = IVCOMP * 3 07710205
775: 41120 IF (IVCOMP - 6) 21120, 11120, 21120 07720205
776: 31120 IVDELE = IVDELE + 1 07730205
777: WRITE (I02,80000) IVTNUM 07740205
778: IF (ICZERO) 11120, 1131, 21120 07750205
779: 11120 IVPASS = IVPASS + 1 07760205
780: WRITE (I02,80002) IVTNUM 07770205
781: GO TO 1131 07780205
782: 21120 IVFAIL = IVFAIL + 1 07790205
783: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 07800205
784: 1131 CONTINUE 07810205
785: C 07820205
786: C TEST 113 AND TEST 114 VERIFY THE CHARACTER RELATIONAL 07830205
787: C EXPRESSION OF THE FORM 07840205
788: C 07850205
789: C CHARACTER ARRAY ELEMENT RELOP CHARACTER CONSTANT 07860205
790: C 07870205
791: C THE CHARACTER ENTITIES ARE THE SAME LENGTH, AND THE LENGTHS 7 AND 07880205
792: C 25 ARE USED IN THESE TESTS. 07890205
793: C 07900205
794: C 07910205
795: C **** FCVS PROGRAM 205 - TEST 113 **** 07920205
796: C 07930205
797: C 07940205
798: IVTNUM = 113 07950205
799: IF (ICZERO) 31130, 1130, 31130 07960205
800: 1130 CONTINUE 07970205
801: IVCOMP = 1 07980205
802: IVCORR = 6 07990205
803: CATN12(3) = 'AB012CD' 08000205
804: IF (CATN12(3) .LT. 'AB013CD') IVCOMP = IVCOMP * 2 08010205
805: IF ('AB013CD' .GT. CATN12(3)) IVCOMP = IVCOMP * 3 08020205
806: 41130 IF (IVCOMP - 6) 21130, 11130, 21130 08030205
807: 31130 IVDELE = IVDELE + 1 08040205
808: WRITE (I02,80000) IVTNUM 08050205
809: IF (ICZERO) 11130, 1141, 21130 08060205
810: 11130 IVPASS = IVPASS + 1 08070205
811: WRITE (I02,80002) IVTNUM 08080205
812: GO TO 1141 08090205
813: 21130 IVFAIL = IVFAIL + 1 08100205
814: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 08110205
815: 1141 CONTINUE 08120205
816: C 08130205
817: C **** FCVS PROGRAM 205 - TEST 114 **** 08140205
818: C 08150205
819: C 08160205
820: IVTNUM = 114 08170205
821: IF (ICZERO) 31140, 1140, 31140 08180205
822: 1140 CONTINUE 08190205
823: IVCOMP = 1 08200205
824: IVCORR = 2 08210205
825: CATN14(1) = 'ABCDEFGHIJKLMNOPQRSTUVWXX' 08220205
826: IF (CATN14(1) .NE. 'ABCDEFGHIJKLMNOPQRSTUVWXY') 08230205
827: 1 IVCOMP = IVCOMP * 2 08240205
828: IF (CATN14(1) .EQ. 'ABCDEFGHIJKLMNOPQRSTUVWXY') 08250205
829: 1 IVCOMP = IVCOMP * 3 08260205
830: 41140 IF (IVCOMP - 2) 21140, 11140, 21140 08270205
831: 31140 IVDELE = IVDELE + 1 08280205
832: WRITE (I02,80000) IVTNUM 08290205
833: IF (ICZERO) 11140, 1151, 21140 08300205
834: 11140 IVPASS = IVPASS + 1 08310205
835: WRITE (I02,80002) IVTNUM 08320205
836: GO TO 1151 08330205
837: 21140 IVFAIL = IVFAIL + 1 08340205
838: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 08350205
839: 1151 CONTINUE 08360205
840: C 08370205
841: C **** FCVS PROGRAM 205 - TEST 115 **** 08380205
842: C 08390205
843: C TEST 115 VERIFIES THE CHARACTER RELATIONAL EXPRESSION 08400205
844: C OF THE FORM 08410205
845: C 08420205
846: C CHARACTER ARRAY ELEMENT RELOP CHARACTER VARIABLE 08430205
847: C 08440205
848: C THE CHARACTER ENTITIES ARE 12 CHARACTERS IN LENGTH. 08450205
849: C 08460205
850: IVTNUM = 115 08470205
851: IF (ICZERO) 31150, 1150, 31150 08480205
852: 1150 CONTINUE 08490205
853: IVCOMP = 1 08500205
854: IVCORR = 2 08510205
855: CATN13(3) = 'ABC+AAB/CDDF' 08520205
856: IF (CATN13(3) .LT. 'BBC+AAB/CCCC') IVCOMP = IVCOMP * 2 08530205
857: IF (CATN13(3) .GT. 'BBC+AAB/CCCC') IVCOMP = IVCOMP * 3 08540205
858: 41150 IF (IVCOMP - 2) 21150, 11150, 21150 08550205
859: 31150 IVDELE = IVDELE + 1 08560205
860: WRITE (I02,80000) IVTNUM 08570205
861: IF (ICZERO) 11150, 1161, 21150 08580205
862: 11150 IVPASS = IVPASS + 1 08590205
863: WRITE (I02,80002) IVTNUM 08600205
864: GO TO 1161 08610205
865: 21150 IVFAIL = IVFAIL + 1 08620205
866: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 08630205
867: 1161 CONTINUE 08640205
868: C 08650205
869: C **** FCVS PROGRAM 205 - TEST 116 **** 08660205
870: C 08670205
871: C TEST 116 VERIFIES THE CHARACTER RELATIONAL EXPRESSION 08680205
872: C OF THE FORM 08690205
873: C 08700205
874: C CHARACTER ARRAY ELEMENT RELOP CHARACTER ARRAY ELEMENT 08710205
875: C 08720205
876: C THE CHARACTER ENTITIES ARE 57 CHARACTERS IN LENGTH. 08730205
877: C 08740205
878: IVTNUM = 116 08750205
879: IF (ICZERO) 31160, 1160, 31160 08760205
880: 1160 CONTINUE 08770205
881: IVCOMP = 1 08780205
882: IVCORR = 30 08790205
883: CATN16(1) = 08800205
884: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ//012' 08810205
885: CATN16(2) = 08820205
886: 1 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ//112' 08830205
887: IF (CATN16 (1) .LT. CATN16 (2)) IVCOMP = IVCOMP * 2 08840205
888: IF (CATN16 (1) .NE. CATN16 (2)) IVCOMP = IVCOMP * 3 08850205
889: IF (CATN16 (1) .LE. CATN16 (2)) IVCOMP = IVCOMP * 5 08860205
890: 41160 IF (IVCOMP - 30) 21160, 11160, 21160 08870205
891: 31160 IVDELE = IVDELE + 1 08880205
892: WRITE (I02,80000) IVTNUM 08890205
893: IF (ICZERO) 11160, 1171, 21160 08900205
894: 11160 IVPASS = IVPASS + 1 08910205
895: WRITE (I02,80002) IVTNUM 08920205
896: GO TO 1171 08930205
897: 21160 IVFAIL = IVFAIL + 1 08940205
898: WRITE (I02,80010) IVTNUM, IVCOMP, IVCORR 08950205
899: 1171 CONTINUE 08960205
900: C 08970205
901: C 08980205
902: C WRITE OUT TEST SUMMARY 08990205
903: C 09000205
904: WRITE (I02,90004) 09010205
905: WRITE (I02,90014) 09020205
906: WRITE (I02,90004) 09030205
907: WRITE (I02,90000) 09040205
908: WRITE (I02,90004) 09050205
909: WRITE (I02,90020) IVFAIL 09060205
910: WRITE (I02,90022) IVPASS 09070205
911: WRITE (I02,90024) IVDELE 09080205
912: STOP 09090205
913: 90001 FORMAT (1H ,24X,5HFM205) 09100205
914: 90000 FORMAT (1H ,20X,20HEND OF PROGRAM FM205) 09110205
915: C 09120205
916: C FORMATS FOR TEST DETAIL LINES 09130205
917: C 09140205
918: 80000 FORMAT (1H ,4X,I5,6X,7HDELETED) 09150205
919: 80002 FORMAT (1H ,4X,I5,7X,4HPASS) 09160205
920: 80010 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6) 09170205
921: 80012 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5) 09180205
922: 80018 FORMAT (1H ,4X,I5,7X,4HFAIL,2X,A14,1X,A14) 09190205
923: C 09200205
924: C FORMAT STATEMENTS FOR PAGE HEADERS 09210205
925: C 09220205
926: 90002 FORMAT (1H1) 09230205
927: 90004 FORMAT (1H ) 09240205
928: 90006 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM) 09250205
929: 90008 FORMAT (1H ,21X,11HVERSION 1.0) 09260205
930: 90010 FORMAT (1H ,8X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978) 09270205
931: 90012 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL,5X,8HCOMPUTED,8X,7HCORRECT) 09280205
932: 90014 FORMAT (1H ,5X,46H----------------------------------------------) 09290205
933: 90016 FORMAT (1H ,18X,17HSUBSET LEVEL TEST) 09300205
934: C 09310205
935: C FORMAT STATEMENTS FOR RUN SUMMARY 09320205
936: C 09330205
937: 90020 FORMAT (1H ,19X,I5,13H TESTS FAILED) 09340205
938: 90022 FORMAT (1H ,19X,I5,13H TESTS PASSED) 09350205
939: 90024 FORMAT (1H ,19X,I5,14H TESTS DELETED) 09360205
940: END 09370205
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.