|
|
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.