|
|
1.1 ! root 1: C COMMENT SECTION. 00010022 ! 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 00020022 ! 6: C FM022 00030022 ! 7: C 00040022 ! 8: C THIS ROUTINE TESTS ARRAYS WITH FIXED DIMENSION AND SIZE LIMITS00050022 ! 9: C SET EITHER IN A BLANK COMMON OR DIMENSION STATEMENT. THE VALUES 00060022 ! 10: C OF THE ARRAY ELEMENTS ARE SET IN VARIOUS WAYS SUCH AS SIMPLE 00070022 ! 11: C ASSIGNMENT STATEMENTS, SET TO THE VALUES OF OTHER ARRAY ELEMENTS 00080022 ! 12: C (EITHER POSITIVE OR NEGATIVE), SET BY INTEGER TO REAL OR REAL TO 00090022 ! 13: C INTEGER CONVERSION, SET BY ARITHMETIC EXPRESSIONS, OR SET BY 00100022 ! 14: C USE OF THE EQUIVALENCE STATEMENT. 00110022 ! 15: C 00120022 ! 16: C REFERENCES 00130022 ! 17: C AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN, 00140022 ! 18: C X3.9-1978 00150022 ! 19: C 00160022 ! 20: C SECTION 8, SPECIFICATION STATEMENTS 00170022 ! 21: C SECTION 8.1, DIMENSION STATEMENT 00180022 ! 22: C SECTION 8.2, EQUIVALENCE STATEMENT 00190022 ! 23: C SECTION 8.3, COMMON STATEMENT 00200022 ! 24: C SECTION 8.4, TYPE-STATEMENTS 00210022 ! 25: C SECTION 9, DATA STATEMENT 00220022 ! 26: C 00230022 ! 27: C 00240022 ! 28: C 00250022 ! 29: COMMON IADN14(5), RADN14(5), LADN13(2) 00260022 ! 30: C 00270022 ! 31: DIMENSION IADN11(5), RADN11(5), LADN11(2) 00280022 ! 32: DIMENSION IADN12(5), RADN12(5), LADN12(2) 00290022 ! 33: DIMENSION IADN15(2), RADN15(2) 00300022 ! 34: DIMENSION IADN16(4), IADN17(4) 00310022 ! 35: C 00320022 ! 36: INTEGER RADN13(5) 00330022 ! 37: REAL IADN13(5) 00340022 ! 38: LOGICAL LADN11, LADN12, LADN13, LCTN01 00350022 ! 39: C 00360022 ! 40: EQUIVALENCE (IADN14(1), IADN15(1)), (RADN14(2),RADN15(2)) 00370022 ! 41: EQUIVALENCE (LADN13(1),LCTN01), (IADN14(5), ICON02) 00380022 ! 42: EQUIVALENCE (RADN14(5), RCON01) 00390022 ! 43: EQUIVALENCE ( IADN16(3), IADN17(2) ) 00400022 ! 44: C 00410022 ! 45: DATA IADN12(1)/3/, RADN12(1)/-512./, IADN13(1)/0.5/, RADN13(1)/-3/00420022 ! 46: C 00430022 ! 47: C 00440022 ! 48: C 00450022 ! 49: C ********************************************************** 00460022 ! 50: C 00470022 ! 51: C A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE 00480022 ! 52: C BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN NATIONAL STANDARD 00490022 ! 53: C PROGRAMMING LANGUAGE FORTRAN X3.9-1978, HAS BEEN DEVELOPED BY THE 00500022 ! 54: C FEDERAL COBOL COMPILER TESTING SERVICE. THE FORTRAN COMPILER 00510022 ! 55: C VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT ROUTINES, THEIR RELATED00520022 ! 56: C DATA, AND AN EXECUTIVE SYSTEM. EACH AUDIT ROUTINE IS A FORTRAN 00530022 ! 57: C PROGRAM, SUBPROGRAM OR FUNCTION WHICH INCLUDES TESTS OF SPECIFIC 00540022 ! 58: C LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING THE RESULT 00550022 ! 59: C OF EXECUTING THESE TESTS. 00560022 ! 60: C 00570022 ! 61: C THIS PARTICULAR PROGRAM/SUBPROGRAM/FUNCTION CONTAINS FEATURES 00580022 ! 62: C FOUND ONLY IN THE SUBSET AS DEFINED IN X3.9-1978. 00590022 ! 63: C 00600022 ! 64: C SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO - 00610022 ! 65: C 00620022 ! 66: C DEPARTMENT OF THE NAVY 00630022 ! 67: C FEDERAL COBOL COMPILER TESTING SERVICE 00640022 ! 68: C WASHINGTON, D.C. 20376 00650022 ! 69: C 00660022 ! 70: C ********************************************************** 00670022 ! 71: C 00680022 ! 72: C 00690022 ! 73: C 00700022 ! 74: C INITIALIZATION SECTION 00710022 ! 75: C 00720022 ! 76: C INITIALIZE CONSTANTS 00730022 ! 77: C ************** 00740022 ! 78: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00750022 ! 79: I01 = 5 00760022 ! 80: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00770022 ! 81: I02 = 6 00780022 ! 82: C SYSTEM ENVIRONMENT SECTION 00790022 ! 83: C 00800022 ! 84: I01 = 5 00810022 ! 85: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00820022 ! 86: C (UNIT NUMBER FOR CARD READER). 00830022 ! 87: CX011 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD. 00840022 ! 88: C THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 00850022 ! 89: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE. 00860022 ! 90: C 00870022 ! 91: I02 = 6 00880022 ! 92: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6 00890022 ! 93: C (UNIT NUMBER FOR PRINTER). 00900022 ! 94: CX021 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD. 00910022 ! 95: C THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 00920022 ! 96: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE. 00930022 ! 97: C 00940022 ! 98: IVPASS=0 00950022 ! 99: IVFAIL=0 00960022 ! 100: IVDELE=0 00970022 ! 101: ICZERO=0 00980022 ! 102: C 00990022 ! 103: C WRITE PAGE HEADERS 01000022 ! 104: WRITE (I02,90000) 01010022 ! 105: WRITE (I02,90001) 01020022 ! 106: WRITE (I02,90002) 01030022 ! 107: WRITE (I02, 90002) 01040022 ! 108: WRITE (I02,90003) 01050022 ! 109: WRITE (I02,90002) 01060022 ! 110: WRITE (I02,90004) 01070022 ! 111: WRITE (I02,90002) 01080022 ! 112: WRITE (I02,90011) 01090022 ! 113: WRITE (I02,90002) 01100022 ! 114: WRITE (I02,90002) 01110022 ! 115: WRITE (I02,90005) 01120022 ! 116: WRITE (I02,90006) 01130022 ! 117: WRITE (I02,90002) 01140022 ! 118: IVTNUM = 604 01150022 ! 119: C 01160022 ! 120: C **** TEST 604 **** 01170022 ! 121: C TEST 604 - THIS TESTS A SIMPLE ASSIGNMENT STATEMENT IN SETTING 01180022 ! 122: C AN INTEGER ARRAY ELEMENT TO A POSITIVE VALUE OF 32767. 01190022 ! 123: C 01200022 ! 124: IF (ICZERO) 36040, 6040, 36040 01210022 ! 125: 6040 CONTINUE 01220022 ! 126: IADN11(5) = 32767 01230022 ! 127: IVCOMP = IADN11(5) 01240022 ! 128: GO TO 46040 01250022 ! 129: 36040 IVDELE = IVDELE + 1 01260022 ! 130: WRITE (I02,80003) IVTNUM 01270022 ! 131: IF (ICZERO) 46040, 6051, 46040 01280022 ! 132: 46040 IF ( IVCOMP - 32767 ) 26040, 16040, 26040 01290022 ! 133: 16040 IVPASS = IVPASS + 1 01300022 ! 134: WRITE (I02,80001) IVTNUM 01310022 ! 135: GO TO 6051 01320022 ! 136: 26040 IVFAIL = IVFAIL + 1 01330022 ! 137: IVCORR = 32767 01340022 ! 138: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01350022 ! 139: 6051 CONTINUE 01360022 ! 140: IVTNUM = 605 01370022 ! 141: C 01380022 ! 142: C **** TEST 605 **** 01390022 ! 143: C TEST 605 - TEST OF A SIMPLE ASSIGN WITH A NEGATIVE VALUE -32766 01400022 ! 144: C 01410022 ! 145: IF (ICZERO) 36050, 6050, 36050 01420022 ! 146: 6050 CONTINUE 01430022 ! 147: IADN11(1) = -32766 01440022 ! 148: IVCOMP = IADN11(1) 01450022 ! 149: GO TO 46050 01460022 ! 150: 36050 IVDELE = IVDELE + 1 01470022 ! 151: WRITE (I02,80003) IVTNUM 01480022 ! 152: IF (ICZERO) 46050, 6061, 46050 01490022 ! 153: 46050 IF ( IVCOMP + 32766 ) 26050, 16050, 26050 01500022 ! 154: 16050 IVPASS = IVPASS + 1 01510022 ! 155: WRITE (I02,80001) IVTNUM 01520022 ! 156: GO TO 6061 01530022 ! 157: 26050 IVFAIL = IVFAIL + 1 01540022 ! 158: IVCORR = -32766 01550022 ! 159: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01560022 ! 160: 6061 CONTINUE 01570022 ! 161: IVTNUM = 606 01580022 ! 162: C 01590022 ! 163: C **** TEST 606 **** 01600022 ! 164: C TEST 606 - TEST OF UNSIGNED ZERO SET TO AN ARRAY ELEMENT 01610022 ! 165: C BY A SIMPLE ASSIGNMENT STATEMENT. 01620022 ! 166: C 01630022 ! 167: IF (ICZERO) 36060, 6060, 36060 01640022 ! 168: 6060 CONTINUE 01650022 ! 169: IADN11(3) = 0 01660022 ! 170: IVCOMP = IADN11(3) 01670022 ! 171: GO TO 46060 01680022 ! 172: 36060 IVDELE = IVDELE + 1 01690022 ! 173: WRITE (I02,80003) IVTNUM 01700022 ! 174: IF (ICZERO) 46060, 6071, 46060 01710022 ! 175: 46060 IF ( IVCOMP - 0 ) 26060, 16060, 26060 01720022 ! 176: 16060 IVPASS = IVPASS + 1 01730022 ! 177: WRITE (I02,80001) IVTNUM 01740022 ! 178: GO TO 6071 01750022 ! 179: 26060 IVFAIL = IVFAIL + 1 01760022 ! 180: IVCORR = 0 01770022 ! 181: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01780022 ! 182: 6071 CONTINUE 01790022 ! 183: IVTNUM = 607 01800022 ! 184: C 01810022 ! 185: C **** TEST 607 **** 01820022 ! 186: C TEST 607 - TEST OF A NEGATIVELY SIGNED ZERO COMPARED TO A 01830022 ! 187: C ZERO UNSIGNED BOTH VALUES SET AS INTEGER ARRAY ELEMENTS. 01840022 ! 188: C 01850022 ! 189: IF (ICZERO) 36070, 6070, 36070 01860022 ! 190: 6070 CONTINUE 01870022 ! 191: IADN11(2) = -0 01880022 ! 192: IADN11(3) = 0 01890022 ! 193: ICON01 = 0 01900022 ! 194: IF ( IADN11(2) .EQ. IADN11(3) ) ICON01 = 1 01910022 ! 195: GO TO 46070 01920022 ! 196: 36070 IVDELE = IVDELE + 1 01930022 ! 197: WRITE (I02,80003) IVTNUM 01940022 ! 198: IF (ICZERO) 46070, 6081, 46070 01950022 ! 199: 46070 IF ( ICON01 - 1 ) 26070, 16070, 26070 01960022 ! 200: 16070 IVPASS = IVPASS + 1 01970022 ! 201: WRITE (I02,80001) IVTNUM 01980022 ! 202: GO TO 6081 01990022 ! 203: 26070 IVFAIL = IVFAIL + 1 02000022 ! 204: IVCOMP = ICON01 02010022 ! 205: IVCORR = 1 02020022 ! 206: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02030022 ! 207: 6081 CONTINUE 02040022 ! 208: IVTNUM = 608 02050022 ! 209: C 02060022 ! 210: C **** TEST 608 **** 02070022 ! 211: C TEST 608 - TEST OF SETTING ONE INTEGER ARRAY ELEMENT EQUAL TO 02080022 ! 212: C THE VALUE OF ANOTHER INTEGER ARRAY ELEMENT. THE VALUE IS 32767. 02090022 ! 213: C 02100022 ! 214: IF (ICZERO) 36080, 6080, 36080 02110022 ! 215: 6080 CONTINUE 02120022 ! 216: IADN11(1) = 32767 02130022 ! 217: IADN12(5) = IADN11(1) 02140022 ! 218: IVCOMP = IADN12(5) 02150022 ! 219: GO TO 46080 02160022 ! 220: 36080 IVDELE = IVDELE + 1 02170022 ! 221: WRITE (I02,80003) IVTNUM 02180022 ! 222: IF (ICZERO) 46080, 6091, 46080 02190022 ! 223: 46080 IF ( IVCOMP - 32767 ) 26080, 16080, 26080 02200022 ! 224: 16080 IVPASS = IVPASS + 1 02210022 ! 225: WRITE (I02,80001) IVTNUM 02220022 ! 226: GO TO 6091 02230022 ! 227: 26080 IVFAIL = IVFAIL + 1 02240022 ! 228: IVCORR = 32767 02250022 ! 229: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02260022 ! 230: 6091 CONTINUE 02270022 ! 231: IVTNUM = 609 02280022 ! 232: C 02290022 ! 233: C **** TEST 609 **** 02300022 ! 234: C TEST 609 - TEST OF AN ARRAY ELEMENT SET TO ANOTHER ARRAY ELEMENT02310022 ! 235: C WHICH HAD BEEN SET AT COMPILE TIME BY A DATA INITIALIZATION 02320022 ! 236: C STATEMENT. AN INTEGER ARRAY IS USED WITH THE VALUE 3. 02330022 ! 237: C 02340022 ! 238: IF (ICZERO) 36090, 6090, 36090 02350022 ! 239: 6090 CONTINUE 02360022 ! 240: IADN11(4) = IADN12(1) 02370022 ! 241: IVCOMP = IADN11(4) 02380022 ! 242: GO TO 46090 02390022 ! 243: 36090 IVDELE = IVDELE + 1 02400022 ! 244: WRITE (I02,80003) IVTNUM 02410022 ! 245: IF (ICZERO) 46090, 6101, 46090 02420022 ! 246: 46090 IF ( IVCOMP - 3 ) 26090, 16090, 26090 02430022 ! 247: 16090 IVPASS = IVPASS + 1 02440022 ! 248: WRITE (I02,80001) IVTNUM 02450022 ! 249: GO TO 6101 02460022 ! 250: 26090 IVFAIL = IVFAIL + 1 02470022 ! 251: IVCORR = 3 02480022 ! 252: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02490022 ! 253: 6101 CONTINUE 02500022 ! 254: IVTNUM = 610 02510022 ! 255: C 02520022 ! 256: C **** TEST 610 **** 02530022 ! 257: C TEST 610 - TEST OF SETTING A REAL ARRAY ELEMENT TO A POSITIVE 02540022 ! 258: C VALUE IN A SIMPLE ASSIGNMENT STATEMENT. VALUE IS 32767. 02550022 ! 259: C 02560022 ! 260: IF (ICZERO) 36100, 6100, 36100 02570022 ! 261: 6100 CONTINUE 02580022 ! 262: RADN11(5) = 32767. 02590022 ! 263: IVCOMP = RADN11(5) 02600022 ! 264: GO TO 46100 02610022 ! 265: 36100 IVDELE = IVDELE + 1 02620022 ! 266: WRITE (I02,80003) IVTNUM 02630022 ! 267: IF (ICZERO) 46100, 6111, 46100 02640022 ! 268: 46100 IF ( IVCOMP - 32767 ) 26100, 16100, 26100 02650022 ! 269: 16100 IVPASS = IVPASS + 1 02660022 ! 270: WRITE (I02,80001) IVTNUM 02670022 ! 271: GO TO 6111 02680022 ! 272: 26100 IVFAIL = IVFAIL + 1 02690022 ! 273: IVCORR = 32767 02700022 ! 274: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02710022 ! 275: 6111 CONTINUE 02720022 ! 276: IVTNUM = 611 02730022 ! 277: C 02740022 ! 278: C **** TEST 611 **** 02750022 ! 279: C TEST 611 - TEST OF SETTING A REAL ARRAY ELEMENT TO A NEGATIVE 02760022 ! 280: C VALUE IN A SIMPLE ASSIGNMENT STATEMENT. VALUE IS -32766. 02770022 ! 281: C 02780022 ! 282: IF (ICZERO) 36110, 6110, 36110 02790022 ! 283: 6110 CONTINUE 02800022 ! 284: RADN11(1) = -32766. 02810022 ! 285: IVCOMP = RADN11(1) 02820022 ! 286: GO TO 46110 02830022 ! 287: 36110 IVDELE = IVDELE + 1 02840022 ! 288: WRITE (I02,80003) IVTNUM 02850022 ! 289: IF (ICZERO) 46110, 6121, 46110 02860022 ! 290: 46110 IF ( IVCOMP + 32766 ) 26110, 16110, 26110 02870022 ! 291: 16110 IVPASS = IVPASS + 1 02880022 ! 292: WRITE (I02,80001) IVTNUM 02890022 ! 293: GO TO 6121 02900022 ! 294: 26110 IVFAIL = IVFAIL + 1 02910022 ! 295: IVCORR = -32766 02920022 ! 296: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02930022 ! 297: 6121 CONTINUE 02940022 ! 298: IVTNUM = 612 02950022 ! 299: C 02960022 ! 300: C **** TEST 612 **** 02970022 ! 301: C TEST 612 - TEST OF SETTING A REAL ARRAY ELEMENT TO UNSIGNED ZERO02980022 ! 302: C IN A SIMPLE ASSIGNMENT STATEMENT. 02990022 ! 303: C 03000022 ! 304: IF (ICZERO) 36120, 6120, 36120 03010022 ! 305: 6120 CONTINUE 03020022 ! 306: RADN11(3) = 0. 03030022 ! 307: IVCOMP = RADN11(3) 03040022 ! 308: GO TO 46120 03050022 ! 309: 36120 IVDELE = IVDELE + 1 03060022 ! 310: WRITE (I02,80003) IVTNUM 03070022 ! 311: IF (ICZERO) 46120, 6131, 46120 03080022 ! 312: 46120 IF ( IVCOMP - 0 ) 26120, 16120, 26120 03090022 ! 313: 16120 IVPASS = IVPASS + 1 03100022 ! 314: WRITE (I02,80001) IVTNUM 03110022 ! 315: GO TO 6131 03120022 ! 316: 26120 IVFAIL = IVFAIL + 1 03130022 ! 317: IVCORR = 0 03140022 ! 318: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03150022 ! 319: 6131 CONTINUE 03160022 ! 320: IVTNUM = 613 03170022 ! 321: C 03180022 ! 322: C **** TEST 613 **** 03190022 ! 323: C TEST 613 - TEST OF A NEGATIVELY SIGNED ZERO IN A REAL ARRAY 03200022 ! 324: C ELEMENT COMPARED TO A REAL ELEMENT SET TO AN UNSIGNED ZERO. 03210022 ! 325: C 03220022 ! 326: IF (ICZERO) 36130, 6130, 36130 03230022 ! 327: 6130 CONTINUE 03240022 ! 328: RADN11(2) = -0.0 03250022 ! 329: RADN11(3) = 0.0 03260022 ! 330: ICON01 = 0 03270022 ! 331: IF ( RADN11(2) .EQ. RADN11(3) ) ICON01 = 1 03280022 ! 332: GO TO 46130 03290022 ! 333: 36130 IVDELE = IVDELE + 1 03300022 ! 334: WRITE (I02,80003) IVTNUM 03310022 ! 335: IF (ICZERO) 46130, 6141, 46130 03320022 ! 336: 46130 IF ( ICON01 - 1 ) 26130, 16130, 26130 03330022 ! 337: 16130 IVPASS = IVPASS + 1 03340022 ! 338: WRITE (I02,80001) IVTNUM 03350022 ! 339: GO TO 6141 03360022 ! 340: 26130 IVFAIL = IVFAIL + 1 03370022 ! 341: IVCOMP = ICON01 03380022 ! 342: IVCORR = 1 03390022 ! 343: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03400022 ! 344: 6141 CONTINUE 03410022 ! 345: IVTNUM = 614 03420022 ! 346: C 03430022 ! 347: C **** TEST 614 **** 03440022 ! 348: C TEST 614 - TEST OF SETTING ONE REAL ARRAY ELEMENT EQUAL TO THE 03450022 ! 349: C VALUE OF ANOTHER REAL ARRAY ELEMENT. THE VALUE IS 32767. 03460022 ! 350: C 03470022 ! 351: IF (ICZERO) 36140, 6140, 36140 03480022 ! 352: 6140 CONTINUE 03490022 ! 353: RADN11(1) = 32767. 03500022 ! 354: RADN12(5) = RADN11(1) 03510022 ! 355: IVCOMP = RADN12(5) 03520022 ! 356: GO TO 46140 03530022 ! 357: 36140 IVDELE = IVDELE + 1 03540022 ! 358: WRITE (I02,80003) IVTNUM 03550022 ! 359: IF (ICZERO) 46140, 6151, 46140 03560022 ! 360: 46140 IF ( IVCOMP - 32767 ) 26140, 16140, 26140 03570022 ! 361: 16140 IVPASS = IVPASS + 1 03580022 ! 362: WRITE (I02,80001) IVTNUM 03590022 ! 363: GO TO 6151 03600022 ! 364: 26140 IVFAIL = IVFAIL + 1 03610022 ! 365: IVCORR = 32767 03620022 ! 366: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03630022 ! 367: 6151 CONTINUE 03640022 ! 368: IVTNUM = 615 03650022 ! 369: C 03660022 ! 370: C **** TEST 615 **** 03670022 ! 371: C TEST 615 - TEST OF A REAL ARRAY ELEMENT SET TO ANOTHER REAL 03680022 ! 372: C ARRAY ELEMENT WHICH HAD BEEN SET AT COMPILE TIME BY A DATA 03690022 ! 373: C INITIALIZATION STATEMENT. THE VALUE IS -512. 03700022 ! 374: C 03710022 ! 375: IF (ICZERO) 36150, 6150, 36150 03720022 ! 376: 6150 CONTINUE 03730022 ! 377: RADN11(4) = RADN12(1) 03740022 ! 378: IVCOMP = RADN11(4) 03750022 ! 379: GO TO 46150 03760022 ! 380: 36150 IVDELE = IVDELE + 1 03770022 ! 381: WRITE (I02,80003) IVTNUM 03780022 ! 382: IF (ICZERO) 46150, 6161, 46150 03790022 ! 383: 46150 IF ( IVCOMP + 512 ) 26150, 16150, 26150 03800022 ! 384: 16150 IVPASS = IVPASS + 1 03810022 ! 385: WRITE (I02,80001) IVTNUM 03820022 ! 386: GO TO 6161 03830022 ! 387: 26150 IVFAIL = IVFAIL + 1 03840022 ! 388: IVCORR = - 512 03850022 ! 389: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03860022 ! 390: 6161 CONTINUE 03870022 ! 391: IVTNUM = 616 03880022 ! 392: C 03890022 ! 393: C **** TEST 616 **** 03900022 ! 394: C TEST 616 - TEST OF SETTING THE VALUE OF AN INTEGER ARRAY ELEMENT03910022 ! 395: C BY AN ARITHMETIC EXPRESSION. 03920022 ! 396: C 03930022 ! 397: IF (ICZERO) 36160, 6160, 36160 03940022 ! 398: 6160 CONTINUE 03950022 ! 399: ICON01 = 1 03960022 ! 400: IADN11(3) = ICON01 + 1 03970022 ! 401: IVCOMP = IADN11(3) 03980022 ! 402: GO TO 46160 03990022 ! 403: 36160 IVDELE = IVDELE + 1 04000022 ! 404: WRITE (I02,80003) IVTNUM 04010022 ! 405: IF (ICZERO) 46160, 6171, 46160 04020022 ! 406: 46160 IF ( IVCOMP - 2 ) 26160, 16160, 26160 04030022 ! 407: 16160 IVPASS = IVPASS + 1 04040022 ! 408: WRITE (I02,80001) IVTNUM 04050022 ! 409: GO TO 6171 04060022 ! 410: 26160 IVFAIL = IVFAIL + 1 04070022 ! 411: IVCORR = 2 04080022 ! 412: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04090022 ! 413: 6171 CONTINUE 04100022 ! 414: IVTNUM = 617 04110022 ! 415: C 04120022 ! 416: C **** TEST 617 **** 04130022 ! 417: C TEST 617 - TEST OF SETTING THE VALUE OF A REAL ARRAY ELEMENT 04140022 ! 418: C BY AN ARITHMETIC EXPRESSION. 04150022 ! 419: C 04160022 ! 420: IF (ICZERO) 36170, 6170, 36170 04170022 ! 421: 6170 CONTINUE 04180022 ! 422: RCON01 = 1. 04190022 ! 423: RADN11(3) = RCON01 + 1. 04200022 ! 424: IVCOMP = RADN11(3) 04210022 ! 425: GO TO 46170 04220022 ! 426: 36170 IVDELE = IVDELE + 1 04230022 ! 427: WRITE (I02,80003) IVTNUM 04240022 ! 428: IF (ICZERO) 46170, 6181, 46170 04250022 ! 429: 46170 IF ( IVCOMP - 2 ) 26170, 16170, 26170 04260022 ! 430: 16170 IVPASS = IVPASS + 1 04270022 ! 431: WRITE (I02,80001) IVTNUM 04280022 ! 432: GO TO 6181 04290022 ! 433: 26170 IVFAIL = IVFAIL + 1 04300022 ! 434: IVCORR = 2 04310022 ! 435: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04320022 ! 436: 6181 CONTINUE 04330022 ! 437: IVTNUM = 618 04340022 ! 438: C 04350022 ! 439: C **** TEST 618 **** 04360022 ! 440: C TEST 618 - TEST OF SETTING THE VALUE OF AN INTEGER ARRAY ELEMENT04370022 ! 441: C TO ANOTHER INTEGER ARRAY ELEMENT AND CHANGING THE SIGN. 04380022 ! 442: C 04390022 ! 443: IF (ICZERO) 36180, 6180, 36180 04400022 ! 444: 6180 CONTINUE 04410022 ! 445: IADN11(2) = 32766 04420022 ! 446: IADN11(4) = - IADN11(2) 04430022 ! 447: IVCOMP = IADN11(4) 04440022 ! 448: GO TO 46180 04450022 ! 449: 36180 IVDELE = IVDELE + 1 04460022 ! 450: WRITE (I02,80003) IVTNUM 04470022 ! 451: IF (ICZERO) 46180, 6191, 46180 04480022 ! 452: 46180 IF ( IVCOMP + 32766 ) 26180, 16180, 26180 04490022 ! 453: 16180 IVPASS = IVPASS + 1 04500022 ! 454: WRITE (I02,80001) IVTNUM 04510022 ! 455: GO TO 6191 04520022 ! 456: 26180 IVFAIL = IVFAIL + 1 04530022 ! 457: IVCORR = -32766 04540022 ! 458: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04550022 ! 459: 6191 CONTINUE 04560022 ! 460: IVTNUM = 619 04570022 ! 461: C 04580022 ! 462: C **** TEST 619 **** 04590022 ! 463: C TEST 619 - TEST OF SETTING THE VALUE OF A REAL ARRAY ELEMENT 04600022 ! 464: C TO THE VALUE OF ANOTHER REAL ARRAY ELEMENT AND CHANGING THE SIGN. 04610022 ! 465: C 04620022 ! 466: IF (ICZERO) 36190, 6190, 36190 04630022 ! 467: 6190 CONTINUE 04640022 ! 468: RADN11(2) = 32766. 04650022 ! 469: RADN11(4) = - RADN11(2) 04660022 ! 470: IVCOMP = RADN11(4) 04670022 ! 471: GO TO 46190 04680022 ! 472: 36190 IVDELE = IVDELE + 1 04690022 ! 473: WRITE (I02,80003) IVTNUM 04700022 ! 474: IF (ICZERO) 46190, 6201, 46190 04710022 ! 475: 46190 IF ( IVCOMP + 32766 ) 26190, 16190, 26190 04720022 ! 476: 16190 IVPASS = IVPASS + 1 04730022 ! 477: WRITE (I02,80001) IVTNUM 04740022 ! 478: GO TO 6201 04750022 ! 479: 26190 IVFAIL = IVFAIL + 1 04760022 ! 480: IVCORR = -32766 04770022 ! 481: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04780022 ! 482: 6201 CONTINUE 04790022 ! 483: IVTNUM = 620 04800022 ! 484: C 04810022 ! 485: C **** TEST 620 **** 04820022 ! 486: C TEST 620 - TEST OF SETTING THE VALUE OF A LOGICAL ARRAY ELEMENT 04830022 ! 487: C TO THE VALUE OF ANOTHER LOGICAL ARRAY ELEMENT. 04840022 ! 488: C 04850022 ! 489: IF (ICZERO) 36200, 6200, 36200 04860022 ! 490: 6200 CONTINUE 04870022 ! 491: LADN11(1) = .TRUE. 04880022 ! 492: LADN12(1) = LADN11(1) 04890022 ! 493: ICON01 = 0 04900022 ! 494: IF ( LADN12(1) ) ICON01 = 1 04910022 ! 495: GO TO 46200 04920022 ! 496: 36200 IVDELE = IVDELE + 1 04930022 ! 497: WRITE (I02,80003) IVTNUM 04940022 ! 498: IF (ICZERO) 46200, 6211, 46200 04950022 ! 499: 46200 IF ( ICON01 - 1 ) 26200, 16200, 26200 04960022 ! 500: 16200 IVPASS = IVPASS + 1 04970022 ! 501: WRITE (I02,80001) IVTNUM 04980022 ! 502: GO TO 6211 04990022 ! 503: 26200 IVFAIL = IVFAIL + 1 05000022 ! 504: IVCOMP = ICON01 05010022 ! 505: IVCORR = 1 05020022 ! 506: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05030022 ! 507: 6211 CONTINUE 05040022 ! 508: IVTNUM = 621 05050022 ! 509: C 05060022 ! 510: C **** TEST 621 **** 05070022 ! 511: C TEST 621 - TEST OF SETTING THE VALUE OF A LOGICAL ARRAY ELEMENT 05080022 ! 512: C TO THE VALUE OF ANOTHER LOGICAL ARRAY ELEMENT AND CHANGING 05090022 ! 513: C THE VALUE FROM .TRUE. TO .FALSE. BY USING THE .NOT. STATEMENT. 05100022 ! 514: C 05110022 ! 515: IF (ICZERO) 36210, 6210, 36210 05120022 ! 516: 6210 CONTINUE 05130022 ! 517: LADN11(2) = .TRUE. 05140022 ! 518: LADN12(2) = .NOT. LADN11(2) 05150022 ! 519: ICON01 = 1 05160022 ! 520: IF ( LADN12(2) ) ICON01 = 0 05170022 ! 521: GO TO 46210 05180022 ! 522: 36210 IVDELE = IVDELE + 1 05190022 ! 523: WRITE (I02,80003) IVTNUM 05200022 ! 524: IF (ICZERO) 46210, 6221, 46210 05210022 ! 525: 46210 IF ( ICON01 - 1 ) 26210, 16210, 26210 05220022 ! 526: 16210 IVPASS = IVPASS + 1 05230022 ! 527: WRITE (I02,80001) IVTNUM 05240022 ! 528: GO TO 6221 05250022 ! 529: 26210 IVFAIL = IVFAIL + 1 05260022 ! 530: IVCOMP = ICON01 05270022 ! 531: IVCORR = 1 05280022 ! 532: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05290022 ! 533: 6221 CONTINUE 05300022 ! 534: IVTNUM = 622 05310022 ! 535: C 05320022 ! 536: C **** TEST 622 **** 05330022 ! 537: C TEST 622 - TEST OF THE TYPE STATEMENT AND THE DATA 05340022 ! 538: C INITIALIZATION STATEMENT. THE EXPLICITLY REAL ARRAY ELEMENT 05350022 ! 539: C SHOULD HAVE THE VALUE OF .5 05360022 ! 540: C 05370022 ! 541: IF (ICZERO) 36220, 6220, 36220 05380022 ! 542: 6220 CONTINUE 05390022 ! 543: IVCOMP = 2. * IADN13(1) 05400022 ! 544: GO TO 46220 05410022 ! 545: 36220 IVDELE = IVDELE + 1 05420022 ! 546: WRITE (I02,80003) IVTNUM 05430022 ! 547: IF (ICZERO) 46220, 6231, 46220 05440022 ! 548: 46220 IF ( IVCOMP - 1 ) 26220, 16220, 26220 05450022 ! 549: 16220 IVPASS = IVPASS + 1 05460022 ! 550: WRITE (I02,80001) IVTNUM 05470022 ! 551: GO TO 6231 05480022 ! 552: 26220 IVFAIL = IVFAIL + 1 05490022 ! 553: IVCORR = 1 05500022 ! 554: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05510022 ! 555: 6231 CONTINUE 05520022 ! 556: IVTNUM = 623 05530022 ! 557: C 05540022 ! 558: C **** TEST 623 **** 05550022 ! 559: C TEST 623 - TEST OF REAL TO INTEGER CONVERSION USING ARRAYS. 05560022 ! 560: C THE INITIALIZED VALUE OF 0.5 SHOULD BE TRUNCATED TO ZERO. 05570022 ! 561: C 05580022 ! 562: IF (ICZERO) 36230, 6230, 36230 05590022 ! 563: 6230 CONTINUE 05600022 ! 564: IADN11(1) = IADN13(1) 05610022 ! 565: IVCOMP = IADN11(1) 05620022 ! 566: GO TO 46230 05630022 ! 567: 36230 IVDELE = IVDELE + 1 05640022 ! 568: WRITE (I02,80003) IVTNUM 05650022 ! 569: IF (ICZERO) 46230, 6241, 46230 05660022 ! 570: 46230 IF ( IVCOMP - 0 ) 26230, 16230, 26230 05670022 ! 571: 16230 IVPASS = IVPASS + 1 05680022 ! 572: WRITE (I02,80001) IVTNUM 05690022 ! 573: GO TO 6241 05700022 ! 574: 26230 IVFAIL = IVFAIL + 1 05710022 ! 575: IVCORR = 0 05720022 ! 576: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05730022 ! 577: 6241 CONTINUE 05740022 ! 578: IVTNUM = 624 05750022 ! 579: C 05760022 ! 580: C **** TEST 624 **** 05770022 ! 581: C TEST 624 - TEST OF THE COMMON STATEMENT BY SETTING THE VALUE OF 05780022 ! 582: C AN INTEGER ARRAY ELEMENT IN A DIMENSIONED ARRAY TO THE VALUE 05790022 ! 583: C OF A REAL ARRAY ELEMENT IN COMMON. THE ELEMENT IN COMMON HAD ITS 05800022 ! 584: C VALUE SET IN A SIMPLE ASSIGNMENT STATEMENT TO 9999. 05810022 ! 585: C 05820022 ! 586: IF (ICZERO) 36240, 6240, 36240 05830022 ! 587: 6240 CONTINUE 05840022 ! 588: RADN14(1) = 9999. 05850022 ! 589: IADN11(1) = RADN14(1) 05860022 ! 590: IVCOMP = IADN11(1) 05870022 ! 591: GO TO 46240 05880022 ! 592: 36240 IVDELE = IVDELE + 1 05890022 ! 593: WRITE (I02,80003) IVTNUM 05900022 ! 594: IF (ICZERO) 46240, 6251, 46240 05910022 ! 595: 46240 IF ( IVCOMP - 9999 ) 26240, 16240, 26240 05920022 ! 596: 16240 IVPASS = IVPASS + 1 05930022 ! 597: WRITE (I02,80001) IVTNUM 05940022 ! 598: GO TO 6251 05950022 ! 599: 26240 IVFAIL = IVFAIL + 1 05960022 ! 600: IVCORR = 9999 05970022 ! 601: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05980022 ! 602: 6251 CONTINUE 05990022 ! 603: IVTNUM = 625 06000022 ! 604: C 06010022 ! 605: C **** TEST 625 **** 06020022 ! 606: C TEST 625 - TEST OF SETTING THE VALUE OF AN INTEGER ARRAY ELEMENT06030022 ! 607: C IN COMMON TO THE VALUE OF A REAL ARRAY ELEMENT ALSO IN BLANK 06040022 ! 608: C COMMON AND CHANGING THE SIGN. THE VALUE USED IS 9999. 06050022 ! 609: C 06060022 ! 610: IF (ICZERO) 36250, 6250, 36250 06070022 ! 611: 6250 CONTINUE 06080022 ! 612: RADN14(1) = 9999. 06090022 ! 613: IADN14(1) = - RADN14(1) 06100022 ! 614: IVCOMP = IADN14(1) 06110022 ! 615: GO TO 46250 06120022 ! 616: 36250 IVDELE = IVDELE + 1 06130022 ! 617: WRITE (I02,80003) IVTNUM 06140022 ! 618: IF (ICZERO) 46250, 6261, 46250 06150022 ! 619: 46250 IF ( IVCOMP + 9999 ) 26250, 16250, 26250 06160022 ! 620: 16250 IVPASS = IVPASS + 1 06170022 ! 621: WRITE (I02,80001) IVTNUM 06180022 ! 622: GO TO 6261 06190022 ! 623: 26250 IVFAIL = IVFAIL + 1 06200022 ! 624: IVCORR = - 9999 06210022 ! 625: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06220022 ! 626: 6261 CONTINUE 06230022 ! 627: IVTNUM = 626 06240022 ! 628: C 06250022 ! 629: C **** TEST 626 **** 06260022 ! 630: C TEST 626 - TEST OF SETTING THE VALUE OF A LOGICAL ARRAY ELEMENT 06270022 ! 631: C IN BLANK COMMON TO .NOT. .TRUE. 06280022 ! 632: C THE VALUE OF ANOTHER LOGICAL ARRAY ELEMENT ALSO IN COMMON IS THEN 06290022 ! 633: C SET TO .NOT. OF THE VALUE OF THE FIRST. 06300022 ! 634: C VALUE OF THE FIRST ELEMENT SHOULD BE .FALSE. 06310022 ! 635: C VALUE OF THE SECOND ELEMENT SHOULD BE .TRUE. 06320022 ! 636: C 06330022 ! 637: IF (ICZERO) 36260, 6260, 36260 06340022 ! 638: 6260 CONTINUE 06350022 ! 639: LADN13(1) = .NOT. .TRUE. 06360022 ! 640: LADN13(2) = .NOT. LADN13(1) 06370022 ! 641: ICON01 = 0 06380022 ! 642: IF ( LADN13(2) ) ICON01 = 1 06390022 ! 643: GO TO 46260 06400022 ! 644: 36260 IVDELE = IVDELE + 1 06410022 ! 645: WRITE (I02,80003) IVTNUM 06420022 ! 646: IF (ICZERO) 46260, 6271, 46260 06430022 ! 647: 46260 IF ( ICON01 - 1 ) 26260, 16260, 26260 06440022 ! 648: 16260 IVPASS = IVPASS + 1 06450022 ! 649: WRITE (I02,80001) IVTNUM 06460022 ! 650: GO TO 6271 06470022 ! 651: 26260 IVFAIL = IVFAIL + 1 06480022 ! 652: IVCOMP = ICON01 06490022 ! 653: IVCORR = 1 06500022 ! 654: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06510022 ! 655: 6271 CONTINUE 06520022 ! 656: IVTNUM = 627 06530022 ! 657: C 06540022 ! 658: C **** TEST 627 **** 06550022 ! 659: C TEST 627 - TEST OF EQUIVALENCE ON THE FIRST ELEMENTS OF INTEGER 06560022 ! 660: C ARRAYS ONE OF WHICH IS IN COMMON AND THE OTHER ONE IS DIMENSIONED.06570022 ! 661: C 06580022 ! 662: IF (ICZERO) 36270, 6270, 36270 06590022 ! 663: 6270 CONTINUE 06600022 ! 664: IADN14(2) = 32767 06610022 ! 665: IVCOMP = IADN15(2) 06620022 ! 666: GO TO 46270 06630022 ! 667: 36270 IVDELE = IVDELE + 1 06640022 ! 668: WRITE (I02,80003) IVTNUM 06650022 ! 669: IF (ICZERO) 46270, 6281, 46270 06660022 ! 670: 46270 IF ( IVCOMP - 32767 ) 26270, 16270, 26270 06670022 ! 671: 16270 IVPASS = IVPASS + 1 06680022 ! 672: WRITE (I02,80001) IVTNUM 06690022 ! 673: GO TO 6281 06700022 ! 674: 26270 IVFAIL = IVFAIL + 1 06710022 ! 675: IVCORR = 32767 06720022 ! 676: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06730022 ! 677: 6281 CONTINUE 06740022 ! 678: IVTNUM = 628 06750022 ! 679: C 06760022 ! 680: C **** TEST 628 **** 06770022 ! 681: C TEST 628 - TEST OF EQUIVALENCE ON REAL ARRAYS ONE OF WHICH IS 06780022 ! 682: C IN COMMON AND THE OTHER ONE IS DIMENSIONED. THE ARRAYS WERE 06790022 ! 683: C ALIGNED ON THEIR SECOND ELEMENTS. 06800022 ! 684: C 06810022 ! 685: IF (ICZERO) 36280, 6280, 36280 06820022 ! 686: 6280 CONTINUE 06830022 ! 687: RADN15(1) = -32766. 06840022 ! 688: IVCOMP = RADN14(1) 06850022 ! 689: GO TO 46280 06860022 ! 690: 36280 IVDELE = IVDELE + 1 06870022 ! 691: WRITE (I02,80003) IVTNUM 06880022 ! 692: IF (ICZERO) 46280, 6291, 46280 06890022 ! 693: 46280 IF ( IVCOMP + 32766 ) 26280, 16280, 26280 06900022 ! 694: 16280 IVPASS = IVPASS + 1 06910022 ! 695: WRITE (I02,80001) IVTNUM 06920022 ! 696: GO TO 6291 06930022 ! 697: 26280 IVFAIL = IVFAIL + 1 06940022 ! 698: IVCORR = -32766 06950022 ! 699: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06960022 ! 700: 6291 CONTINUE 06970022 ! 701: IVTNUM = 629 06980022 ! 702: C 06990022 ! 703: C **** TEST 629 **** 07000022 ! 704: C TEST 629 - TEST OF EQUIVALENCE WITH LOGICAL ELEMENTS. AN ARRAY 07010022 ! 705: C ELEMENT IN COMMON IS EQUIVALENCED TO A LOGICAL VARIABLE. 07020022 ! 706: C 07030022 ! 707: IF (ICZERO) 36290, 6290, 36290 07040022 ! 708: 6290 CONTINUE 07050022 ! 709: LADN13(2) = .TRUE. 07060022 ! 710: LCTN01 = .NOT. LADN13(2) 07070022 ! 711: ICON01 = 1 07080022 ! 712: IF ( LADN13(1) ) ICON01 = 0 07090022 ! 713: GO TO 46290 07100022 ! 714: 36290 IVDELE = IVDELE + 1 07110022 ! 715: WRITE (I02,80003) IVTNUM 07120022 ! 716: IF (ICZERO) 46290, 6301, 46290 07130022 ! 717: 46290 IF ( ICON01 - 1 ) 26290, 16290, 26290 07140022 ! 718: 16290 IVPASS = IVPASS + 1 07150022 ! 719: WRITE (I02,80001) IVTNUM 07160022 ! 720: GO TO 6301 07170022 ! 721: 26290 IVFAIL = IVFAIL + 1 07180022 ! 722: IVCOMP = ICON01 07190022 ! 723: IVCORR = 1 07200022 ! 724: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07210022 ! 725: 6301 CONTINUE 07220022 ! 726: IVTNUM = 630 07230022 ! 727: C 07240022 ! 728: C **** TEST 630 **** 07250022 ! 729: C TEST 630 - TEST OF EQUIVALENCE WITH REAL AND INTEGER ELEMENTS 07260022 ! 730: C WHICH ARE EQUIVALENCED TO ARRAY ELEMENTS IN COMMON. 07270022 ! 731: C 07280022 ! 732: IF (ICZERO) 36300, 6300, 36300 07290022 ! 733: 6300 CONTINUE 07300022 ! 734: RCON01 = 1. 07310022 ! 735: ICON02 = - RADN14(5) 07320022 ! 736: IVCOMP = IADN14(5) 07330022 ! 737: GO TO 46300 07340022 ! 738: 36300 IVDELE = IVDELE + 1 07350022 ! 739: WRITE (I02,80003) IVTNUM 07360022 ! 740: IF (ICZERO) 46300, 6311, 46300 07370022 ! 741: 46300 IF ( IVCOMP + 1 ) 26300, 16300, 26300 07380022 ! 742: 16300 IVPASS = IVPASS + 1 07390022 ! 743: WRITE (I02,80001) IVTNUM 07400022 ! 744: GO TO 6311 07410022 ! 745: 26300 IVFAIL = IVFAIL + 1 07420022 ! 746: IVCORR = -1 07430022 ! 747: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07440022 ! 748: 6311 CONTINUE 07450022 ! 749: IVTNUM = 631 07460022 ! 750: C 07470022 ! 751: C **** TEST 631 **** 07480022 ! 752: C TEST 631 - TEST OF EQUIVALENCE ON INTEGER ARRAY ELEMENTS. 07490022 ! 753: C BOTH ARRAYS ARE DIMENSIONED. THE FOURTH ELEMENT 07500022 ! 754: C OF THE FIRST OF THE ARRAYS SHOULD BE EQUAL TO THE THIRD ELEMENT OF07510022 ! 755: C THE SECOND ARRAY. 07520022 ! 756: C 07530022 ! 757: IF (ICZERO) 36310, 6310, 36310 07540022 ! 758: 6310 CONTINUE 07550022 ! 759: IADN16(4) = 9999 07560022 ! 760: IVCOMP = IADN17(3) 07570022 ! 761: GO TO 46310 07580022 ! 762: 36310 IVDELE = IVDELE + 1 07590022 ! 763: WRITE (I02,80003) IVTNUM 07600022 ! 764: IF (ICZERO) 46310, 6321, 46310 07610022 ! 765: 46310 IF ( IVCOMP - 9999 ) 26310, 16310, 26310 07620022 ! 766: 16310 IVPASS = IVPASS + 1 07630022 ! 767: WRITE (I02,80001) IVTNUM 07640022 ! 768: GO TO 6321 07650022 ! 769: 26310 IVFAIL = IVFAIL + 1 07660022 ! 770: IVCORR = 9999 07670022 ! 771: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07680022 ! 772: 6321 CONTINUE 07690022 ! 773: C 07700022 ! 774: C WRITE PAGE FOOTINGS AND RUN SUMMARIES 07710022 ! 775: 99999 CONTINUE 07720022 ! 776: WRITE (I02,90002) 07730022 ! 777: WRITE (I02,90006) 07740022 ! 778: WRITE (I02,90002) 07750022 ! 779: WRITE (I02,90002) 07760022 ! 780: WRITE (I02,90007) 07770022 ! 781: WRITE (I02,90002) 07780022 ! 782: WRITE (I02,90008) IVFAIL 07790022 ! 783: WRITE (I02,90009) IVPASS 07800022 ! 784: WRITE (I02,90010) IVDELE 07810022 ! 785: C 07820022 ! 786: C 07830022 ! 787: C TERMINATE ROUTINE EXECUTION 07840022 ! 788: STOP 07850022 ! 789: C 07860022 ! 790: C FORMAT STATEMENTS FOR PAGE HEADERS 07870022 ! 791: 90000 FORMAT (1H1) 07880022 ! 792: 90002 FORMAT (1H ) 07890022 ! 793: 90001 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM) 07900022 ! 794: 90003 FORMAT (1H ,21X,11HVERSION 1.0) 07910022 ! 795: 90004 FORMAT (1H ,10X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978) 07920022 ! 796: 90005 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL, 5X,8HCOMPUTED,8X,7HCORRECT) 07930022 ! 797: 90006 FORMAT (1H ,5X,46H----------------------------------------------) 07940022 ! 798: 90011 FORMAT (1H ,18X,17HSUBSET LEVEL TEST) 07950022 ! 799: C 07960022 ! 800: C FORMAT STATEMENTS FOR RUN SUMMARIES 07970022 ! 801: 90008 FORMAT (1H ,15X,I5,19H ERRORS ENCOUNTERED) 07980022 ! 802: 90009 FORMAT (1H ,15X,I5,13H TESTS PASSED) 07990022 ! 803: 90010 FORMAT (1H ,15X,I5,14H TESTS DELETED) 08000022 ! 804: C 08010022 ! 805: C FORMAT STATEMENTS FOR TEST RESULTS 08020022 ! 806: 80001 FORMAT (1H ,4X,I5,7X,4HPASS) 08030022 ! 807: 80002 FORMAT (1H ,4X,I5,7X,4HFAIL) 08040022 ! 808: 80003 FORMAT (1H ,4X,I5,7X,7HDELETED) 08050022 ! 809: 80004 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6) 08060022 ! 810: 80005 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5) 08070022 ! 811: C 08080022 ! 812: 90007 FORMAT (1H ,20X,20HEND OF PROGRAM FM022) 08090022 ! 813: END 08100022
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.