|
|
1.1 ! root 1: C COMMENT SECTION 00010007 ! 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 00020007 ! 6: C FM007 00030007 ! 7: C 00040007 ! 8: C THIS ROUTINE TESTS THE USE OF DATA INITIALIZATION STATEMENTS. 00050007 ! 9: C DATA INITIALIZATION STATEMENTS ARE USED TO DEFINE INITIAL VALUES 00060007 ! 10: C OF INTEGER VARIABLES. THE DATA STATEMENTS CONTAIN UNSIGNED, 00070007 ! 11: C POSITIVE SIGNED AND NEGATIVE SIGNED INTEGER CONSTANTS. THE LAST 00080007 ! 12: C DATA STATEMENT CONTAINS THE FORM 00090007 ! 13: C J*INTEGER CONSTANT 00100007 ! 14: C WHICH INDICATES THE CONSTANT IS TO BE SPECIFIED J TIMES. 00110007 ! 15: C 00120007 ! 16: C THE TESTS IN THIS ROUTINE CHECK THE INTEGER VARIABLES IN THE 00130007 ! 17: C DATA STATEMENT FOR THE ASSIGNED INITIAL VALUES. 00140007 ! 18: C 00150007 ! 19: C REFERENCES 00160007 ! 20: C AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN, 00170007 ! 21: C X3.9-1978 00180007 ! 22: C 00190007 ! 23: C SECTION 4.3, INTEGER TYPE 00200007 ! 24: C SECTION 4.3.1, INTEGER CONSTANT 00210007 ! 25: C SECTION 9, DATA STATEMENT 00220007 ! 26: C 00230007 ! 27: C 00240007 ! 28: C DATA INITIALIZATION STATEMENTS 00250007 ! 29: C 00260007 ! 30: DATA IVON01,IVON02,IVON03,IVON04,IVON05/3,76,587,9999,21111/ 00270007 ! 31: DATA IVON06,IVON07,IVON08,IVON09,IVON10/+3,+76,+587,+9999,+21111/ 00280007 ! 32: DATA IVON11,IVON12,IVON13,IVON14,IVON15/-3,-76,-587,-9999,-21111/ 00290007 ! 33: DATA IVON16,IVON17,IVON18,IVON19,IVON20/ 2*119, 2*7, -427/ 00300007 ! 34: C 00310007 ! 35: C 00320007 ! 36: C ********************************************************** 00330007 ! 37: C 00340007 ! 38: C A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE 00350007 ! 39: C BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN NATIONAL STANDARD 00360007 ! 40: C PROGRAMMING LANGUAGE FORTRAN X3.9-1978, HAS BEEN DEVELOPED BY THE 00370007 ! 41: C FEDERAL COBOL COMPILER TESTING SERVICE. THE FORTRAN COMPILER 00380007 ! 42: C VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT ROUTINES, THEIR RELATED00390007 ! 43: C DATA, AND AN EXECUTIVE SYSTEM. EACH AUDIT ROUTINE IS A FORTRAN 00400007 ! 44: C PROGRAM, SUBPROGRAM OR FUNCTION WHICH INCLUDES TESTS OF SPECIFIC 00410007 ! 45: C LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING THE RESULT 00420007 ! 46: C OF EXECUTING THESE TESTS. 00430007 ! 47: C 00440007 ! 48: C THIS PARTICULAR PROGRAM/SUBPROGRAM/FUNCTION CONTAINS FEATURES 00450007 ! 49: C FOUND ONLY IN THE SUBSET AS DEFINED IN X3.9-1978. 00460007 ! 50: C 00470007 ! 51: C SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO - 00480007 ! 52: C 00490007 ! 53: C DEPARTMENT OF THE NAVY 00500007 ! 54: C FEDERAL COBOL COMPILER TESTING SERVICE 00510007 ! 55: C WASHINGTON, D.C. 20376 00520007 ! 56: C 00530007 ! 57: C ********************************************************** 00540007 ! 58: C 00550007 ! 59: C 00560007 ! 60: C 00570007 ! 61: C INITIALIZATION SECTION 00580007 ! 62: C 00590007 ! 63: C INITIALIZE CONSTANTS 00600007 ! 64: C ************** 00610007 ! 65: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00620007 ! 66: I01 = 5 00630007 ! 67: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00640007 ! 68: I02 = 6 00650007 ! 69: C SYSTEM ENVIRONMENT SECTION 00660007 ! 70: C 00670007 ! 71: I01 = 5 00680007 ! 72: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00690007 ! 73: C (UNIT NUMBER FOR CARD READER). 00700007 ! 74: CX011 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD. 00710007 ! 75: C THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 00720007 ! 76: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE. 00730007 ! 77: C 00740007 ! 78: I02 = 6 00750007 ! 79: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6 00760007 ! 80: C (UNIT NUMBER FOR PRINTER). 00770007 ! 81: CX021 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD. 00780007 ! 82: C THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 00790007 ! 83: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE. 00800007 ! 84: C 00810007 ! 85: IVPASS=0 00820007 ! 86: IVFAIL=0 00830007 ! 87: IVDELE=0 00840007 ! 88: ICZERO=0 00850007 ! 89: C 00860007 ! 90: C WRITE PAGE HEADERS 00870007 ! 91: WRITE (I02,90000) 00880007 ! 92: WRITE (I02,90001) 00890007 ! 93: WRITE (I02,90002) 00900007 ! 94: WRITE (I02, 90002) 00910007 ! 95: WRITE (I02,90003) 00920007 ! 96: WRITE (I02,90002) 00930007 ! 97: WRITE (I02,90004) 00940007 ! 98: WRITE (I02,90002) 00950007 ! 99: WRITE (I02,90011) 00960007 ! 100: WRITE (I02,90002) 00970007 ! 101: WRITE (I02,90002) 00980007 ! 102: WRITE (I02,90005) 00990007 ! 103: WRITE (I02,90006) 01000007 ! 104: WRITE (I02,90002) 01010007 ! 105: C TEST SECTION 01020007 ! 106: C 01030007 ! 107: C TESTS 80 THROUGH 84 CHECK THE VALUES INITIALIZED BY THE DATA 01040007 ! 108: C STATEMENT CONTAINING IVON01,..., IVON05. 01050007 ! 109: C 01060007 ! 110: 801 CONTINUE 01070007 ! 111: IVTNUM = 80 01080007 ! 112: C 01090007 ! 113: C **** TEST 80 **** 01100007 ! 114: C 01110007 ! 115: IF (ICZERO) 30800, 800, 30800 01120007 ! 116: 800 CONTINUE 01130007 ! 117: IVCOMP = IVON01 01140007 ! 118: GO TO 40800 01150007 ! 119: 30800 IVDELE = IVDELE + 1 01160007 ! 120: WRITE (I02,80003) IVTNUM 01170007 ! 121: IF (ICZERO) 40800, 811, 40800 01180007 ! 122: 40800 IF (IVCOMP - 3) 20800, 10800,20800 01190007 ! 123: 10800 IVPASS = IVPASS + 1 01200007 ! 124: WRITE (I02,80001) IVTNUM 01210007 ! 125: GO TO 811 01220007 ! 126: 20800 IVFAIL = IVFAIL + 1 01230007 ! 127: IVCORR = 3 01240007 ! 128: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01250007 ! 129: 811 CONTINUE 01260007 ! 130: IVTNUM = 81 01270007 ! 131: C 01280007 ! 132: C **** TEST 81 **** 01290007 ! 133: C 01300007 ! 134: IF (ICZERO) 30810, 810, 30810 01310007 ! 135: 810 CONTINUE 01320007 ! 136: IVCOMP = IVON02 01330007 ! 137: GO TO 40810 01340007 ! 138: 30810 IVDELE = IVDELE + 1 01350007 ! 139: WRITE (I02,80003) IVTNUM 01360007 ! 140: IF (ICZERO) 40810, 821, 40810 01370007 ! 141: 40810 IF (IVCOMP - 76) 20810, 10810, 20810 01380007 ! 142: 10810 IVPASS = IVPASS + 1 01390007 ! 143: WRITE (I02,80001) IVTNUM 01400007 ! 144: GO TO 821 01410007 ! 145: 20810 IVFAIL = IVFAIL + 1 01420007 ! 146: IVCORR = 76 01430007 ! 147: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01440007 ! 148: 821 CONTINUE 01450007 ! 149: IVTNUM = 82 01460007 ! 150: C 01470007 ! 151: C **** TEST 82 **** 01480007 ! 152: C 01490007 ! 153: IF (ICZERO) 30820, 820, 30820 01500007 ! 154: 820 CONTINUE 01510007 ! 155: IVCOMP = IVON03 01520007 ! 156: GO TO 40820 01530007 ! 157: 30820 IVDELE = IVDELE + 1 01540007 ! 158: WRITE (I02,80003) IVTNUM 01550007 ! 159: IF (ICZERO) 40820, 831, 40820 01560007 ! 160: 40820 IF (IVCOMP - 587) 20820, 10820, 20820 01570007 ! 161: 10820 IVPASS = IVPASS + 1 01580007 ! 162: WRITE (I02,80001) IVTNUM 01590007 ! 163: GO TO 831 01600007 ! 164: 20820 IVFAIL = IVFAIL + 1 01610007 ! 165: IVCORR = 587 01620007 ! 166: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01630007 ! 167: 831 CONTINUE 01640007 ! 168: IVTNUM = 83 01650007 ! 169: C 01660007 ! 170: C **** TEST 83 **** 01670007 ! 171: C 01680007 ! 172: IF (ICZERO) 30830, 830, 30830 01690007 ! 173: 830 CONTINUE 01700007 ! 174: IVCOMP =IVON04 01710007 ! 175: GO TO 40830 01720007 ! 176: 30830 IVDELE = IVDELE + 1 01730007 ! 177: WRITE (I02,80003) IVTNUM 01740007 ! 178: IF (ICZERO) 40830, 841, 40830 01750007 ! 179: 40830 IF (IVCOMP - 9999) 20830, 10830, 20830 01760007 ! 180: 10830 IVPASS = IVPASS + 1 01770007 ! 181: WRITE (I02,80001) IVTNUM 01780007 ! 182: GO TO 841 01790007 ! 183: 20830 IVFAIL = IVFAIL + 1 01800007 ! 184: IVCORR = 9999 01810007 ! 185: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01820007 ! 186: 841 CONTINUE 01830007 ! 187: IVTNUM = 84 01840007 ! 188: C 01850007 ! 189: C **** TEST 84 **** 01860007 ! 190: C 01870007 ! 191: IF (ICZERO) 30840, 840, 30840 01880007 ! 192: 840 CONTINUE 01890007 ! 193: IVCOMP = IVON05 01900007 ! 194: GO TO 40840 01910007 ! 195: 30840 IVDELE = IVDELE + 1 01920007 ! 196: WRITE (I02,80003) IVTNUM 01930007 ! 197: IF (ICZERO) 40840, 851, 40840 01940007 ! 198: 40840 IF (IVCOMP - 21111) 20840, 10840, 20840 01950007 ! 199: 10840 IVPASS = IVPASS + 1 01960007 ! 200: WRITE (I02,80001) IVTNUM 01970007 ! 201: GO TO 851 01980007 ! 202: 20840 IVFAIL = IVFAIL + 1 01990007 ! 203: IVCORR = 21111 02000007 ! 204: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02010007 ! 205: C 02020007 ! 206: C TESTS 85 THROUGH 89 CHECK THE VALUES INITIALIZED BY THE DATA 02030007 ! 207: C STATEMENT CONTAINING IVON06,...,IVON10. 02040007 ! 208: C 02050007 ! 209: 851 CONTINUE 02060007 ! 210: IVTNUM = 85 02070007 ! 211: C 02080007 ! 212: C **** TEST 85 **** 02090007 ! 213: C 02100007 ! 214: IF (ICZERO) 30850, 850, 30850 02110007 ! 215: 850 CONTINUE 02120007 ! 216: IVCOMP=IVON06 02130007 ! 217: GO TO 40850 02140007 ! 218: 30850 IVDELE = IVDELE + 1 02150007 ! 219: WRITE (I02,80003) IVTNUM 02160007 ! 220: IF (ICZERO) 40850, 861, 40850 02170007 ! 221: 40850 IF (IVCOMP - 3) 20850, 10850, 20850 02180007 ! 222: 10850 IVPASS = IVPASS + 1 02190007 ! 223: WRITE (I02,80001) IVTNUM 02200007 ! 224: GO TO 861 02210007 ! 225: 20850 IVFAIL = IVFAIL + 1 02220007 ! 226: IVCORR = 3 02230007 ! 227: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02240007 ! 228: 861 CONTINUE 02250007 ! 229: IVTNUM = 86 02260007 ! 230: C 02270007 ! 231: C **** TEST 86 **** 02280007 ! 232: C 02290007 ! 233: IF (ICZERO) 30860, 860, 30860 02300007 ! 234: 860 CONTINUE 02310007 ! 235: IVCOMP = IVON07 02320007 ! 236: GO TO 40860 02330007 ! 237: 30860 IVDELE = IVDELE + 1 02340007 ! 238: WRITE (I02,80003) IVTNUM 02350007 ! 239: IF (ICZERO) 40860, 871, 40860 02360007 ! 240: 40860 IF (IVCOMP - 76) 20860, 10860, 20860 02370007 ! 241: 10860 IVPASS = IVPASS + 1 02380007 ! 242: WRITE (I02,80001) IVTNUM 02390007 ! 243: GO TO 871 02400007 ! 244: 20860 IVFAIL = IVFAIL + 1 02410007 ! 245: IVCORR = 76 02420007 ! 246: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02430007 ! 247: 871 CONTINUE 02440007 ! 248: IVTNUM = 87 02450007 ! 249: C 02460007 ! 250: C **** TEST 87 **** 02470007 ! 251: C 02480007 ! 252: IF (ICZERO) 30870, 870, 30870 02490007 ! 253: 870 CONTINUE 02500007 ! 254: IVCOMP = IVON08 02510007 ! 255: GO TO 40870 02520007 ! 256: 30870 IVDELE = IVDELE + 1 02530007 ! 257: WRITE (I02,80003) IVTNUM 02540007 ! 258: IF (ICZERO) 40870, 881, 40870 02550007 ! 259: 40870 IF (IVCOMP - 587) 20870, 10870, 20870 02560007 ! 260: 10870 IVPASS = IVPASS + 1 02570007 ! 261: WRITE (I02,80001) IVTNUM 02580007 ! 262: GO TO 881 02590007 ! 263: 20870 IVFAIL = IVFAIL + 1 02600007 ! 264: IVCORR = 587 02610007 ! 265: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02620007 ! 266: 881 CONTINUE 02630007 ! 267: IVTNUM = 88 02640007 ! 268: C 02650007 ! 269: C **** TEST 88 **** 02660007 ! 270: C 02670007 ! 271: IF (ICZERO) 30880, 880, 30880 02680007 ! 272: 880 CONTINUE 02690007 ! 273: IVCOMP = IVON09 02700007 ! 274: GO TO 40880 02710007 ! 275: 30880 IVDELE = IVDELE + 1 02720007 ! 276: WRITE (I02,80003) IVTNUM 02730007 ! 277: IF (ICZERO) 40880, 891, 40880 02740007 ! 278: 40880 IF (IVCOMP - 9999) 20880, 10880, 20880 02750007 ! 279: 10880 IVPASS = IVPASS + 1 02760007 ! 280: WRITE (I02,80001) IVTNUM 02770007 ! 281: GO TO 891 02780007 ! 282: 20880 IVFAIL = IVFAIL + 1 02790007 ! 283: IVCORR = 9999 02800007 ! 284: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02810007 ! 285: 891 CONTINUE 02820007 ! 286: IVTNUM = 89 02830007 ! 287: C 02840007 ! 288: C **** TEST 89 **** 02850007 ! 289: C 02860007 ! 290: IF (ICZERO) 30890, 890, 30890 02870007 ! 291: 890 CONTINUE 02880007 ! 292: IVCOMP = IVON10 02890007 ! 293: GO TO 40890 02900007 ! 294: 30890 IVDELE = IVDELE + 1 02910007 ! 295: WRITE (I02,80003) IVTNUM 02920007 ! 296: IF (ICZERO) 40890, 901, 40890 02930007 ! 297: 40890 IF (IVCOMP - 21111) 20890, 10890, 20890 02940007 ! 298: 10890 IVPASS = IVPASS + 1 02950007 ! 299: WRITE (I02,80001) IVTNUM 02960007 ! 300: GO TO 901 02970007 ! 301: 20890 IVFAIL = IVFAIL + 1 02980007 ! 302: IVCORR= 21111 02990007 ! 303: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03000007 ! 304: C 03010007 ! 305: C TESTS 90 THROUGH 94 CHECK THE VALUES INITIALIZED BY THE DATA 03020007 ! 306: C STATEMENT CONTAINING IVON11,...,IVON15. 03030007 ! 307: C 03040007 ! 308: 901 CONTINUE 03050007 ! 309: IVTNUM = 90 03060007 ! 310: C 03070007 ! 311: C **** TEST 90 **** 03080007 ! 312: C 03090007 ! 313: IF (ICZERO) 30900, 900, 30900 03100007 ! 314: 900 CONTINUE 03110007 ! 315: IVCOMP = IVON11 03120007 ! 316: GO TO 40900 03130007 ! 317: 30900 IVDELE = IVDELE + 1 03140007 ! 318: WRITE (I02,80003) IVTNUM 03150007 ! 319: IF (ICZERO) 40900, 911, 40900 03160007 ! 320: 40900 IF (IVCOMP + 3) 20900, 10900, 20900 03170007 ! 321: 10900 IVPASS = IVPASS + 1 03180007 ! 322: WRITE (I02,80001) IVTNUM 03190007 ! 323: GO TO 911 03200007 ! 324: 20900 IVFAIL = IVFAIL + 1 03210007 ! 325: IVCORR = -3 03220007 ! 326: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03230007 ! 327: 911 CONTINUE 03240007 ! 328: IVTNUM = 91 03250007 ! 329: C 03260007 ! 330: C **** TEST 91 **** 03270007 ! 331: C 03280007 ! 332: IF (ICZERO) 30910, 910, 30910 03290007 ! 333: 910 CONTINUE 03300007 ! 334: IVCOMP = IVON12 03310007 ! 335: GO TO 40910 03320007 ! 336: 30910 IVDELE = IVDELE + 1 03330007 ! 337: WRITE (I02,80003) IVTNUM 03340007 ! 338: IF (ICZERO) 40910, 921, 40910 03350007 ! 339: 40910 IF (IVCOMP + 76) 20910, 10910, 20910 03360007 ! 340: 10910 IVPASS = IVPASS + 1 03370007 ! 341: WRITE (I02,80001) IVTNUM 03380007 ! 342: GO TO 921 03390007 ! 343: 20910 IVFAIL = IVFAIL + 1 03400007 ! 344: IVCORR = -76 03410007 ! 345: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03420007 ! 346: 921 CONTINUE 03430007 ! 347: IVTNUM = 92 03440007 ! 348: C 03450007 ! 349: C **** TEST 92 **** 03460007 ! 350: C 03470007 ! 351: IF (ICZERO) 30920, 920, 30920 03480007 ! 352: 920 CONTINUE 03490007 ! 353: IVCOMP= IVON13 03500007 ! 354: GO TO 40920 03510007 ! 355: 30920 IVDELE = IVDELE + 1 03520007 ! 356: WRITE (I02,80003) IVTNUM 03530007 ! 357: IF (ICZERO) 40920, 931, 40920 03540007 ! 358: 40920 IF (IVCOMP + 587) 20920, 10920, 20920 03550007 ! 359: 10920 IVPASS = IVPASS + 1 03560007 ! 360: WRITE (I02,80001) IVTNUM 03570007 ! 361: GO TO 931 03580007 ! 362: 20920 IVFAIL = IVFAIL + 1 03590007 ! 363: IVCORR = -587 03600007 ! 364: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03610007 ! 365: 931 CONTINUE 03620007 ! 366: IVTNUM = 93 03630007 ! 367: C 03640007 ! 368: C **** TEST 93 **** 03650007 ! 369: C 03660007 ! 370: IF (ICZERO) 30930, 930, 30930 03670007 ! 371: 930 CONTINUE 03680007 ! 372: IVCOMP = IVON14 03690007 ! 373: GO TO 40930 03700007 ! 374: 30930 IVDELE = IVDELE + 1 03710007 ! 375: WRITE (I02,80003) IVTNUM 03720007 ! 376: IF (ICZERO) 40930, 941, 40930 03730007 ! 377: 40930 IF (IVCOMP + 9999) 20930, 10930, 20930 03740007 ! 378: 10930 IVPASS = IVPASS + 1 03750007 ! 379: WRITE (I02,80001) IVTNUM 03760007 ! 380: GO TO 941 03770007 ! 381: 20930 IVFAIL = IVFAIL + 1 03780007 ! 382: IVCORR = -9999 03790007 ! 383: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03800007 ! 384: 941 CONTINUE 03810007 ! 385: IVTNUM = 94 03820007 ! 386: C 03830007 ! 387: C **** TEST 94 **** 03840007 ! 388: C 03850007 ! 389: IF (ICZERO) 30940, 940, 30940 03860007 ! 390: 940 CONTINUE 03870007 ! 391: IVCOMP = IVON15 03880007 ! 392: GO TO 40940 03890007 ! 393: 30940 IVDELE = IVDELE + 1 03900007 ! 394: WRITE (I02,80003) IVTNUM 03910007 ! 395: IF (ICZERO) 40940, 951, 40940 03920007 ! 396: 40940 IF (IVCOMP + 21111) 20940, 10940, 20940 03930007 ! 397: 10940 IVPASS = IVPASS + 1 03940007 ! 398: WRITE (I02,80001) IVTNUM 03950007 ! 399: GO TO 951 03960007 ! 400: 20940 IVFAIL = IVFAIL + 1 03970007 ! 401: IVCORR = -21111 03980007 ! 402: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03990007 ! 403: C 04000007 ! 404: C TESTS 95 THROUGH 99 CHECK THE VALUES INITIALIZED BY THE DATA 04010007 ! 405: C STATEMENT CONTAINING IVON16,...,IVON20. 04020007 ! 406: C 04030007 ! 407: 951 CONTINUE 04040007 ! 408: IVTNUM = 95 04050007 ! 409: C 04060007 ! 410: C **** TEST 95 **** 04070007 ! 411: C 04080007 ! 412: IF (ICZERO) 30950, 950, 30950 04090007 ! 413: 950 CONTINUE 04100007 ! 414: IVCOMP =IVON16 04110007 ! 415: GO TO 40950 04120007 ! 416: 30950 IVDELE = IVDELE + 1 04130007 ! 417: WRITE (I02,80003) IVTNUM 04140007 ! 418: IF (ICZERO) 40950, 961, 40950 04150007 ! 419: 40950 IF (IVCOMP - 119) 20950, 10950, 20950 04160007 ! 420: 10950 IVPASS = IVPASS + 1 04170007 ! 421: WRITE (I02,80001) IVTNUM 04180007 ! 422: GO TO 961 04190007 ! 423: 20950 IVFAIL = IVFAIL + 1 04200007 ! 424: IVCORR = 119 04210007 ! 425: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04220007 ! 426: 961 CONTINUE 04230007 ! 427: IVTNUM = 96 04240007 ! 428: C 04250007 ! 429: C **** TEST 96 **** 04260007 ! 430: C 04270007 ! 431: IF (ICZERO) 30960, 960, 30960 04280007 ! 432: 960 CONTINUE 04290007 ! 433: IVCOMP=IVON17 04300007 ! 434: GO TO 40960 04310007 ! 435: 30960 IVDELE = IVDELE + 1 04320007 ! 436: WRITE (I02,80003) IVTNUM 04330007 ! 437: IF (ICZERO) 40960, 971, 40960 04340007 ! 438: 40960 IF (IVCOMP - 119) 20960, 10960, 20960 04350007 ! 439: 10960 IVPASS = IVPASS + 1 04360007 ! 440: WRITE (I02,80001) IVTNUM 04370007 ! 441: GO TO 971 04380007 ! 442: 20960 IVFAIL = IVFAIL + 1 04390007 ! 443: IVCORR = 119 04400007 ! 444: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04410007 ! 445: 971 CONTINUE 04420007 ! 446: IVTNUM = 97 04430007 ! 447: C 04440007 ! 448: C **** TEST 97 **** 04450007 ! 449: C 04460007 ! 450: IF (ICZERO) 30970, 970, 30970 04470007 ! 451: 970 CONTINUE 04480007 ! 452: IVCOMP = IVON18 04490007 ! 453: GO TO 40970 04500007 ! 454: 30970 IVDELE = IVDELE + 1 04510007 ! 455: WRITE (I02,80003) IVTNUM 04520007 ! 456: IF (ICZERO) 40970, 981, 40970 04530007 ! 457: 40970 IF (IVCOMP - 7) 20970, 10970, 20970 04540007 ! 458: 10970 IVPASS = IVPASS + 1 04550007 ! 459: WRITE (I02,80001) IVTNUM 04560007 ! 460: GO TO 981 04570007 ! 461: 20970 IVFAIL = IVFAIL + 1 04580007 ! 462: IVCORR = 7 04590007 ! 463: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04600007 ! 464: 981 CONTINUE 04610007 ! 465: IVTNUM = 98 04620007 ! 466: C 04630007 ! 467: C **** TEST 98 **** 04640007 ! 468: C 04650007 ! 469: IF (ICZERO) 30980, 980, 30980 04660007 ! 470: 980 CONTINUE 04670007 ! 471: IVCOMP = IVON19 04680007 ! 472: GO TO 40980 04690007 ! 473: 30980 IVDELE = IVDELE + 1 04700007 ! 474: WRITE (I02,80003) IVTNUM 04710007 ! 475: IF (ICZERO) 40980, 991, 40980 04720007 ! 476: 40980 IF (IVCOMP - 7) 20980, 10980, 20980 04730007 ! 477: 10980 IVPASS = IVPASS + 1 04740007 ! 478: WRITE (I02,80001) IVTNUM 04750007 ! 479: GO TO 991 04760007 ! 480: 20980 IVFAIL = IVFAIL + 1 04770007 ! 481: IVCORR = 7 04780007 ! 482: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04790007 ! 483: 991 CONTINUE 04800007 ! 484: IVTNUM = 99 04810007 ! 485: C 04820007 ! 486: C **** TEST 99 **** 04830007 ! 487: C 04840007 ! 488: IF (ICZERO) 30990, 990, 30990 04850007 ! 489: 990 CONTINUE 04860007 ! 490: IVCOMP = IVON20 04870007 ! 491: GO TO 40990 04880007 ! 492: 30990 IVDELE = IVDELE + 1 04890007 ! 493: WRITE (I02,80003) IVTNUM 04900007 ! 494: IF (ICZERO) 40990, 1001, 40990 04910007 ! 495: 40990 IF (IVCOMP + 427) 20990,10990,20990 04920007 ! 496: 10990 IVPASS = IVPASS + 1 04930007 ! 497: WRITE (I02,80001) IVTNUM 04940007 ! 498: GO TO 1001 04950007 ! 499: 20990 IVFAIL = IVFAIL + 1 04960007 ! 500: IVCORR = -427 04970007 ! 501: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04980007 ! 502: 1001 CONTINUE 04990007 ! 503: C 05000007 ! 504: C WRITE PAGE FOOTINGS AND RUN SUMMARIES 05010007 ! 505: 99999 CONTINUE 05020007 ! 506: WRITE (I02,90002) 05030007 ! 507: WRITE (I02,90006) 05040007 ! 508: WRITE (I02,90002) 05050007 ! 509: WRITE (I02,90002) 05060007 ! 510: WRITE (I02,90007) 05070007 ! 511: WRITE (I02,90002) 05080007 ! 512: WRITE (I02,90008) IVFAIL 05090007 ! 513: WRITE (I02,90009) IVPASS 05100007 ! 514: WRITE (I02,90010) IVDELE 05110007 ! 515: C 05120007 ! 516: C 05130007 ! 517: C TERMINATE ROUTINE EXECUTION 05140007 ! 518: STOP 05150007 ! 519: C 05160007 ! 520: C FORMAT STATEMENTS FOR PAGE HEADERS 05170007 ! 521: 90000 FORMAT (1H1) 05180007 ! 522: 90002 FORMAT (1H ) 05190007 ! 523: 90001 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM) 05200007 ! 524: 90003 FORMAT (1H ,21X,11HVERSION 1.0) 05210007 ! 525: 90004 FORMAT (1H ,10X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978) 05220007 ! 526: 90005 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL, 5X,8HCOMPUTED,8X,7HCORRECT) 05230007 ! 527: 90006 FORMAT (1H ,5X,46H----------------------------------------------) 05240007 ! 528: 90011 FORMAT (1H ,18X,17HSUBSET LEVEL TEST) 05250007 ! 529: C 05260007 ! 530: C FORMAT STATEMENTS FOR RUN SUMMARIES 05270007 ! 531: 90008 FORMAT (1H ,15X,I5,19H ERRORS ENCOUNTERED) 05280007 ! 532: 90009 FORMAT (1H ,15X,I5,13H TESTS PASSED) 05290007 ! 533: 90010 FORMAT (1H ,15X,I5,14H TESTS DELETED) 05300007 ! 534: C 05310007 ! 535: C FORMAT STATEMENTS FOR TEST RESULTS 05320007 ! 536: 80001 FORMAT (1H ,4X,I5,7X,4HPASS) 05330007 ! 537: 80002 FORMAT (1H ,4X,I5,7X,4HFAIL) 05340007 ! 538: 80003 FORMAT (1H ,4X,I5,7X,7HDELETED) 05350007 ! 539: 80004 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6) 05360007 ! 540: 80005 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5) 05370007 ! 541: C 05380007 ! 542: 90007 FORMAT (1H ,20X,20HEND OF PROGRAM FM007) 05390007 ! 543: END 05400007
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.