|
|
1.1 ! root 1: C 00010017 ! 2: C DATE***82/08/02*18.33.46 ! 3: C OWNER PRE/850703/TC-85- -410/ /FSTC/278FCVS*F78UBP20/ ! 4: C AUDIT FCVS78 V2.0 ! 5: C COMMENT SECTION. 00020017 ! 6: C 00030017 ! 7: C FM017 00040017 ! 8: C 00050017 ! 9: C THIS ROUTINE CONTINUES TESTS OF THE FORTRAN 00060017 ! 10: C LOGICAL IF STATEMENT IN ALL OF THE VARIOUS FORMS. THE 00070017 ! 11: C FOLLOWING LOGICAL OPERANDS ARE USED FOR THIS ROUTINE - LOGICAL 00080017 ! 12: C CONSTANTS, LOGICAL VARIABLES, LOGICAL ARRAY ELEMENTS, AND 00090017 ! 13: C ARITHMETIC EXPRESSIONS WITH VARIOUS RELATIONAL OPERATORS. BOTH 00100017 ! 14: C THE TRUE AND FALSE BRANCHES ARE TESTED IN THE SERIES OF TESTS. 00110017 ! 15: C 00120017 ! 16: C REFERENCES 00130017 ! 17: C AMERICAN NATIONAL STANDARD PROGRAMMING LANGUAGE FORTRAN, 00140017 ! 18: C X3.9-1978 00150017 ! 19: C 00160017 ! 20: C SECTION 4.7.1, LOGICAL CONSTANT 00170017 ! 21: C SECTION 6, EXPRESSIONS 00180017 ! 22: C SECTION 6.1, ARITHMETIC EXPRESSIONS 00190017 ! 23: C SECTION 6.3, RELATIONAL EXPRESSIONS 00200017 ! 24: C SECTION 6.4, LOGICAL EXPRESSIONS 00210017 ! 25: C SECTION 6.6, EVALUATION OF EXPRESSIONS 00220017 ! 26: C SECTION 10, ASSIGNMENT STATEMENTS 00230017 ! 27: C SECTION 10.2, LOGICAL ASSIGNMENT STATEMENT 00240017 ! 28: C SECTION 11.5, LOGICAL IF STATEMENT 00250017 ! 29: C 00260017 ! 30: DIMENSION IADN11(3) 00270017 ! 31: LOGICAL LATN1A(2), LCTNT1, LCTNT2 00280017 ! 32: C 00290017 ! 33: C ********************************************************** 00300017 ! 34: C 00310017 ! 35: C A COMPILER VALIDATION SYSTEM FOR THE FORTRAN LANGUAGE 00320017 ! 36: C BASED ON SPECIFICATIONS AS DEFINED IN AMERICAN NATIONAL STANDARD 00330017 ! 37: C PROGRAMMING LANGUAGE FORTRAN X3.9-1978, HAS BEEN DEVELOPED BY THE 00340017 ! 38: C FEDERAL COBOL COMPILER TESTING SERVICE. THE FORTRAN COMPILER 00350017 ! 39: C VALIDATION SYSTEM (FCVS) CONSISTS OF AUDIT ROUTINES, THEIR RELATED00360017 ! 40: C DATA, AND AN EXECUTIVE SYSTEM. EACH AUDIT ROUTINE IS A FORTRAN 00370017 ! 41: C PROGRAM, SUBPROGRAM OR FUNCTION WHICH INCLUDES TESTS OF SPECIFIC 00380017 ! 42: C LANGUAGE ELEMENTS AND SUPPORTING PROCEDURES INDICATING THE RESULT 00390017 ! 43: C OF EXECUTING THESE TESTS. 00400017 ! 44: C 00410017 ! 45: C THIS PARTICULAR PROGRAM/SUBPROGRAM/FUNCTION CONTAINS FEATURES 00420017 ! 46: C FOUND ONLY IN THE SUBSET AS DEFINED IN X3.9-1978. 00430017 ! 47: C 00440017 ! 48: C SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO - 00450017 ! 49: C 00460017 ! 50: C DEPARTMENT OF THE NAVY 00470017 ! 51: C FEDERAL COBOL COMPILER TESTING SERVICE 00480017 ! 52: C WASHINGTON, D.C. 20376 00490017 ! 53: C 00500017 ! 54: C ********************************************************** 00510017 ! 55: C 00520017 ! 56: C 00530017 ! 57: C 00540017 ! 58: C INITIALIZATION SECTION 00550017 ! 59: C 00560017 ! 60: C INITIALIZE CONSTANTS 00570017 ! 61: C ************** 00580017 ! 62: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00590017 ! 63: I01 = 5 00600017 ! 64: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00610017 ! 65: I02 = 6 00620017 ! 66: C SYSTEM ENVIRONMENT SECTION 00630017 ! 67: C 00640017 ! 68: I01 = 5 00650017 ! 69: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00660017 ! 70: C (UNIT NUMBER FOR CARD READER). 00670017 ! 71: CX011 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-011 CONTROL CARD. 00680017 ! 72: C THE CX011 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 00690017 ! 73: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX010 ABOVE. 00700017 ! 74: C 00710017 ! 75: I02 = 6 00720017 ! 76: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02 = 6 00730017 ! 77: C (UNIT NUMBER FOR PRINTER). 00740017 ! 78: CX021 THIS CARD IS REPLACED BY CONTENTS OF FEXEC X-021 CONTROL CARD. 00750017 ! 79: C THE CX021 CARD IS FOR SYSTEMS WHICH REQUIRE ADDITIONAL 00760017 ! 80: C FORTRAN STATEMENTS FOR FILES ASSOCIATED WITH CX020 ABOVE. 00770017 ! 81: C 00780017 ! 82: IVPASS=0 00790017 ! 83: IVFAIL=0 00800017 ! 84: IVDELE=0 00810017 ! 85: ICZERO=0 00820017 ! 86: C 00830017 ! 87: C WRITE PAGE HEADERS 00840017 ! 88: WRITE (I02,90000) 00850017 ! 89: WRITE (I02,90001) 00860017 ! 90: WRITE (I02,90002) 00870017 ! 91: WRITE (I02, 90002) 00880017 ! 92: WRITE (I02,90003) 00890017 ! 93: WRITE (I02,90002) 00900017 ! 94: WRITE (I02,90004) 00910017 ! 95: WRITE (I02,90002) 00920017 ! 96: WRITE (I02,90011) 00930017 ! 97: WRITE (I02,90002) 00940017 ! 98: WRITE (I02,90002) 00950017 ! 99: WRITE (I02,90005) 00960017 ! 100: WRITE (I02,90006) 00970017 ! 101: WRITE (I02,90002) 00980017 ! 102: IVTNUM = 170 00990017 ! 103: C 01000017 ! 104: C **** TEST 170 **** 01010017 ! 105: C TEST 170 - RELATIONAL EXPRESSION. INTEGER VARIABLE REFERENCE. 01020017 ! 106: C FALSE PATH. .LT. 01030017 ! 107: C 01040017 ! 108: C 01050017 ! 109: IF (ICZERO) 31700, 1700, 31700 01060017 ! 110: 1700 CONTINUE 01070017 ! 111: IVON01 = 3 01080017 ! 112: IVON02 = 1 01090017 ! 113: IF ( 76 .LT. IVON01 ) IVON02 = 0 01100017 ! 114: GO TO 41700 01110017 ! 115: 31700 IVDELE = IVDELE + 1 01120017 ! 116: WRITE (I02,80003) IVTNUM 01130017 ! 117: IF (ICZERO) 41700, 1711, 41700 01140017 ! 118: 41700 IF ( IVON02 - 1 ) 21700, 11700, 21700 01150017 ! 119: 11700 IVPASS = IVPASS + 1 01160017 ! 120: WRITE (I02,80001) IVTNUM 01170017 ! 121: GO TO 1711 01180017 ! 122: 21700 IVFAIL = IVFAIL + 1 01190017 ! 123: IVCOMP = IVON02 01200017 ! 124: IVCORR = 1 01210017 ! 125: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01220017 ! 126: 1711 CONTINUE 01230017 ! 127: IVTNUM = 171 01240017 ! 128: C 01250017 ! 129: C **** TEST 171 **** 01260017 ! 130: C TEST 171 - RELATIONAL EXPRESSION. INTEGER VARIABLE REFERENCE. 01270017 ! 131: C FALSE PATH. .LE. 01280017 ! 132: C 01290017 ! 133: C 01300017 ! 134: IF (ICZERO) 31710, 1710, 31710 01310017 ! 135: 1710 CONTINUE 01320017 ! 136: IVON01 = 3 01330017 ! 137: IVON02 = 1 01340017 ! 138: IF ( 76 .LE. IVON01 ) IVON02 = 0 01350017 ! 139: GO TO 41710 01360017 ! 140: 31710 IVDELE = IVDELE + 1 01370017 ! 141: WRITE (I02,80003) IVTNUM 01380017 ! 142: IF (ICZERO) 41710, 1721, 41710 01390017 ! 143: 41710 IF ( IVON02 - 1 ) 21710, 11710, 21710 01400017 ! 144: 11710 IVPASS = IVPASS + 1 01410017 ! 145: WRITE (I02,80001) IVTNUM 01420017 ! 146: GO TO 1721 01430017 ! 147: 21710 IVFAIL = IVFAIL + 1 01440017 ! 148: IVCOMP = IVON02 01450017 ! 149: IVCORR = 1 01460017 ! 150: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01470017 ! 151: 1721 CONTINUE 01480017 ! 152: IVTNUM = 172 01490017 ! 153: C 01500017 ! 154: C **** TEST 172 **** 01510017 ! 155: C TEST 172 - RELATIONAL EXPRESSIONAL. INTEGER VARIABLE REFERENCE.01520017 ! 156: C FALSE PATH. .EQ. 01530017 ! 157: C 01540017 ! 158: C 01550017 ! 159: IF (ICZERO) 31720, 1720, 31720 01560017 ! 160: 1720 CONTINUE 01570017 ! 161: IVON01 = 587 01580017 ! 162: IVON02 = 1 01590017 ! 163: IF ( 9999 .EQ. IVON01 ) IVON02 = 0 01600017 ! 164: GO TO 41720 01610017 ! 165: 31720 IVDELE = IVDELE + 1 01620017 ! 166: WRITE (I02,80003) IVTNUM 01630017 ! 167: IF (ICZERO) 41720, 1731, 41720 01640017 ! 168: 41720 IF ( IVON02 - 1 ) 21720, 11720, 21720 01650017 ! 169: 11720 IVPASS = IVPASS + 1 01660017 ! 170: WRITE (I02,80001) IVTNUM 01670017 ! 171: GO TO 1731 01680017 ! 172: 21720 IVFAIL = IVFAIL + 1 01690017 ! 173: IVCOMP = IVON02 01700017 ! 174: IVCORR = 1 01710017 ! 175: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01720017 ! 176: 1731 CONTINUE 01730017 ! 177: IVTNUM = 173 01740017 ! 178: C 01750017 ! 179: C **** TEST 173 **** 01760017 ! 180: C TEST 173 - RELATIONAL EXPRESSION. INTEGER VARIABLE REFERENCE. 01770017 ! 181: C FALSE PATH. .NE. 01780017 ! 182: C 01790017 ! 183: C 01800017 ! 184: IF (ICZERO) 31730, 1730, 31730 01810017 ! 185: 1730 CONTINUE 01820017 ! 186: IVON01 = 3 01830017 ! 187: IVON02 = 1 01840017 ! 188: IF ( 3 .NE. IVON01 ) IVON02 = 0 01850017 ! 189: GO TO 41730 01860017 ! 190: 31730 IVDELE = IVDELE + 1 01870017 ! 191: WRITE (I02,80003) IVTNUM 01880017 ! 192: IF (ICZERO) 41730, 1741, 41730 01890017 ! 193: 41730 IF ( IVON02 - 1 ) 21730, 11730, 21730 01900017 ! 194: 11730 IVPASS = IVPASS + 1 01910017 ! 195: WRITE (I02,80001) IVTNUM 01920017 ! 196: GO TO 1741 01930017 ! 197: 21730 IVFAIL = IVFAIL + 1 01940017 ! 198: IVCOMP = IVON02 01950017 ! 199: IVCORR = 1 01960017 ! 200: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 01970017 ! 201: 1741 CONTINUE 01980017 ! 202: IVTNUM = 174 01990017 ! 203: C 02000017 ! 204: C **** TEST 174 **** 02010017 ! 205: C TEST 174 - RELATIONAL EXPRESSION. INTEGER VARIABLE REFERENCE. 02020017 ! 206: C FALSE PATH. .GT. 02030017 ! 207: C 02040017 ! 208: C 02050017 ! 209: IF (ICZERO) 31740, 1740, 31740 02060017 ! 210: 1740 CONTINUE 02070017 ! 211: IVON01 = 32767 02080017 ! 212: IVON02 = 1 02090017 ! 213: IF ( 76 .GT. IVON01 ) IVON02 = 0 02100017 ! 214: GO TO 41740 02110017 ! 215: 31740 IVDELE = IVDELE + 1 02120017 ! 216: WRITE (I02,80003) IVTNUM 02130017 ! 217: IF (ICZERO) 41740, 1751, 41740 02140017 ! 218: 41740 IF ( IVON02 - 1 ) 21740, 11740, 21740 02150017 ! 219: 11740 IVPASS = IVPASS + 1 02160017 ! 220: WRITE (I02,80001) IVTNUM 02170017 ! 221: GO TO 1751 02180017 ! 222: 21740 IVFAIL = IVFAIL + 1 02190017 ! 223: IVCOMP = IVON02 02200017 ! 224: IVCORR = 1 02210017 ! 225: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02220017 ! 226: 1751 CONTINUE 02230017 ! 227: IVTNUM = 175 02240017 ! 228: C 02250017 ! 229: C **** TEST 175 **** 02260017 ! 230: C TEST 175 - RELATIONAL EXPRESSION. INTEGER VARIABLE REFERENCE. 02270017 ! 231: C FALSE PATH. .GE. 02280017 ! 232: C 02290017 ! 233: C 02300017 ! 234: IF (ICZERO) 31750, 1750, 31750 02310017 ! 235: 1750 CONTINUE 02320017 ! 236: IVON01 = 32767 02330017 ! 237: IVON02 = 1 02340017 ! 238: IF ( 76 .GE. IVON01 ) IVON02 = 0 02350017 ! 239: GO TO 41750 02360017 ! 240: 31750 IVDELE = IVDELE + 1 02370017 ! 241: WRITE (I02,80003) IVTNUM 02380017 ! 242: IF (ICZERO) 41750, 1761, 41750 02390017 ! 243: 41750 IF ( IVON02 - 1 ) 21750, 11750, 21750 02400017 ! 244: 11750 IVPASS = IVPASS + 1 02410017 ! 245: WRITE (I02,80001) IVTNUM 02420017 ! 246: GO TO 1761 02430017 ! 247: 21750 IVFAIL = IVFAIL + 1 02440017 ! 248: IVCOMP = IVON02 02450017 ! 249: IVCORR = 1 02460017 ! 250: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02470017 ! 251: 1761 CONTINUE 02480017 ! 252: IVTNUM = 176 02490017 ! 253: C 02500017 ! 254: C **** TEST 176 **** 02510017 ! 255: C TEST 176 - RELATIONAL EXPRESSION. (IVR) (RO) (IC) 02520017 ! 256: C INTEGER VARIABLE REFERENCE WITH INTEGER CONSTANT 02530017 ! 257: C TRUE PATH. .LT. 02540017 ! 258: C 02550017 ! 259: C 02560017 ! 260: IF (ICZERO) 31760, 1760, 31760 02570017 ! 261: 1760 CONTINUE 02580017 ! 262: IVON01 = 3 02590017 ! 263: IVON02 = 0 02600017 ! 264: IF ( IVON01 .LT. 76 ) IVON02 = 1 02610017 ! 265: GO TO 41760 02620017 ! 266: 31760 IVDELE = IVDELE + 1 02630017 ! 267: WRITE (I02,80003) IVTNUM 02640017 ! 268: IF (ICZERO) 41760, 1771, 41760 02650017 ! 269: 41760 IF ( IVON02 - 1 ) 21760, 11760, 21760 02660017 ! 270: 11760 IVPASS = IVPASS + 1 02670017 ! 271: WRITE (I02,80001) IVTNUM 02680017 ! 272: GO TO 1771 02690017 ! 273: 21760 IVFAIL = IVFAIL + 1 02700017 ! 274: IVCOMP = IVON02 02710017 ! 275: IVCORR = 1 02720017 ! 276: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02730017 ! 277: 1771 CONTINUE 02740017 ! 278: IVTNUM = 177 02750017 ! 279: C 02760017 ! 280: C **** TEST 177 **** 02770017 ! 281: C TEST 177 - LIKE TEST 176. FALSE PATH. .EQ. 02780017 ! 282: C 02790017 ! 283: C 02800017 ! 284: IF (ICZERO) 31770, 1770, 31770 02810017 ! 285: 1770 CONTINUE 02820017 ! 286: IVON01 = 587 02830017 ! 287: IVON02 = 1 02840017 ! 288: IF ( IVON01 .EQ. 9999 ) IVON02=0 02850017 ! 289: GO TO 41770 02860017 ! 290: 31770 IVDELE = IVDELE + 1 02870017 ! 291: WRITE (I02,80003) IVTNUM 02880017 ! 292: IF (ICZERO) 41770, 1781, 41770 02890017 ! 293: 41770 IF ( IVON02 - 1 ) 21770, 11770, 21770 02900017 ! 294: 11770 IVPASS = IVPASS + 1 02910017 ! 295: WRITE (I02,80001) IVTNUM 02920017 ! 296: GO TO 1781 02930017 ! 297: 21770 IVFAIL = IVFAIL + 1 02940017 ! 298: IVCOMP = IVON02 02950017 ! 299: IVCORR = 1 02960017 ! 300: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 02970017 ! 301: 1781 CONTINUE 02980017 ! 302: IVTNUM = 178 02990017 ! 303: C 03000017 ! 304: C **** TEST 178 **** 03010017 ! 305: C TEST 178 - LIKE TEST 176. TRUE PATH. .GE. 03020017 ! 306: C 03030017 ! 307: C 03040017 ! 308: IF (ICZERO) 31780, 1780, 31780 03050017 ! 309: 1780 CONTINUE 03060017 ! 310: IVON01 = 32767 03070017 ! 311: IVON02 = 0 03080017 ! 312: IF ( IVON01 .GE. 32767 ) IVON02 = 1 03090017 ! 313: GO TO 41780 03100017 ! 314: 31780 IVDELE = IVDELE + 1 03110017 ! 315: WRITE (I02,80003) IVTNUM 03120017 ! 316: IF (ICZERO) 41780, 1791, 41780 03130017 ! 317: 41780 IF ( IVON02 - 1 ) 21780, 11780, 21780 03140017 ! 318: 11780 IVPASS = IVPASS + 1 03150017 ! 319: WRITE (I02,80001) IVTNUM 03160017 ! 320: GO TO 1791 03170017 ! 321: 21780 IVFAIL = IVFAIL + 1 03180017 ! 322: IVCOMP = IVON02 03190017 ! 323: IVCORR = 1 03200017 ! 324: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03210017 ! 325: 1791 CONTINUE 03220017 ! 326: IVTNUM = 179 03230017 ! 327: C 03240017 ! 328: C **** TEST 179 **** 03250017 ! 329: C TEST 179 - RELATIONAL EXPRESSION. INTEGER ARRAY ELEMENT 03260017 ! 330: C REFERENCE. (IC) (RO) (IAER) FALSE PATH. .LT. 03270017 ! 331: C 03280017 ! 332: C 03290017 ! 333: IF (ICZERO) 31790, 1790, 31790 03300017 ! 334: 1790 CONTINUE 03310017 ! 335: IVON01 = 1 03320017 ! 336: IADN11(1) = 3 03330017 ! 337: IF ( 76 .LT. IADN11(1) ) IVON01 = 0 03340017 ! 338: GO TO 41790 03350017 ! 339: 31790 IVDELE = IVDELE + 1 03360017 ! 340: WRITE (I02,80003) IVTNUM 03370017 ! 341: IF (ICZERO) 41790, 1801, 41790 03380017 ! 342: 41790 IF ( IVON01 - 1 ) 21790, 11790, 21790 03390017 ! 343: 11790 IVPASS = IVPASS + 1 03400017 ! 344: WRITE (I02,80001) IVTNUM 03410017 ! 345: GO TO 1801 03420017 ! 346: 21790 IVFAIL = IVFAIL + 1 03430017 ! 347: IVCOMP = IVON01 03440017 ! 348: IVCORR = 1 03450017 ! 349: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03460017 ! 350: 1801 CONTINUE 03470017 ! 351: IVTNUM = 180 03480017 ! 352: C 03490017 ! 353: C **** TEST 180 **** 03500017 ! 354: C TEST 180 - LIKE TEST 179. TRUE PATH. .LE. 03510017 ! 355: C 03520017 ! 356: C 03530017 ! 357: IF (ICZERO) 31800, 1800, 31800 03540017 ! 358: 1800 CONTINUE 03550017 ! 359: IVON01 = 0 03560017 ! 360: IADN11(2) = 587 03570017 ! 361: IF ( 587 .LE. IADN11(2) ) IVON01 = 1 03580017 ! 362: GO TO 41800 03590017 ! 363: 31800 IVDELE = IVDELE + 1 03600017 ! 364: WRITE (I02,80003) IVTNUM 03610017 ! 365: IF (ICZERO) 41800, 1811, 41800 03620017 ! 366: 41800 IF ( IVON01 - 1 ) 21800, 11800, 21800 03630017 ! 367: 11800 IVPASS = IVPASS + 1 03640017 ! 368: WRITE (I02,80001) IVTNUM 03650017 ! 369: GO TO 1811 03660017 ! 370: 21800 IVFAIL = IVFAIL + 1 03670017 ! 371: IVCOMP = IVON01 03680017 ! 372: IVCORR = 1 03690017 ! 373: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03700017 ! 374: 1811 CONTINUE 03710017 ! 375: IVTNUM = 181 03720017 ! 376: C 03730017 ! 377: C **** TEST 181 **** 03740017 ! 378: C TEST 181 - LIKE TEST 179. FALSE PATH. .GE. 03750017 ! 379: C 03760017 ! 380: C 03770017 ! 381: IF (ICZERO) 31810, 1810, 31810 03780017 ! 382: 1810 CONTINUE 03790017 ! 383: IVON01 = 1 03800017 ! 384: IADN11(3) = 32767 03810017 ! 385: IF ( 76 .GE. IADN11(3) ) IVON01 = 0 03820017 ! 386: GO TO 41810 03830017 ! 387: 31810 IVDELE = IVDELE + 1 03840017 ! 388: WRITE (I02,80003) IVTNUM 03850017 ! 389: IF (ICZERO) 41810, 1821, 41810 03860017 ! 390: 41810 IF ( IVON01 - 1 ) 21810, 11810, 21810 03870017 ! 391: 11810 IVPASS = IVPASS + 1 03880017 ! 392: WRITE (I02,80001) IVTNUM 03890017 ! 393: GO TO 1821 03900017 ! 394: 21810 IVFAIL = IVFAIL + 1 03910017 ! 395: IVCOMP = IVON01 03920017 ! 396: IVCORR = 1 03930017 ! 397: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 03940017 ! 398: 1821 CONTINUE 03950017 ! 399: IVTNUM = 182 03960017 ! 400: C 03970017 ! 401: C **** TEST 182 **** 03980017 ! 402: C TEST 182 - RELATIONAL EXPRESSION (IAER) (RO) (IC). TRUE 03990017 ! 403: C PATH. .EQ. 04000017 ! 404: C 04010017 ! 405: C 04020017 ! 406: IF (ICZERO) 31820, 1820, 31820 04030017 ! 407: 1820 CONTINUE 04040017 ! 408: IVON01 = 0 04050017 ! 409: IADN11(2) = 32767 04060017 ! 410: IF ( IADN11(2) .EQ. 32767 ) IVON01 = 1 04070017 ! 411: GO TO 41820 04080017 ! 412: 31820 IVDELE = IVDELE + 1 04090017 ! 413: WRITE (I02,80003) IVTNUM 04100017 ! 414: IF (ICZERO) 41820, 1831, 41820 04110017 ! 415: 41820 IF ( IVON01 - 1 ) 21820, 11820, 21820 04120017 ! 416: 11820 IVPASS = IVPASS + 1 04130017 ! 417: WRITE (I02,80001) IVTNUM 04140017 ! 418: GO TO 1831 04150017 ! 419: 21820 IVFAIL = IVFAIL + 1 04160017 ! 420: IVCOMP = IVON01 04170017 ! 421: IVCORR = 1 04180017 ! 422: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04190017 ! 423: 1831 CONTINUE 04200017 ! 424: IVTNUM = 183 04210017 ! 425: C 04220017 ! 426: C **** TEST 183 **** 04230017 ! 427: C TEST 183 - RELATIONAL EXPRESSION (IVR) (RO) (IAER) 04240017 ! 428: C FALSE PATH. .NE. 04250017 ! 429: C 04260017 ! 430: C 04270017 ! 431: IF (ICZERO) 31830, 1830, 31830 04280017 ! 432: 1830 CONTINUE 04290017 ! 433: IVON01 = 1 04300017 ! 434: IVON02 = 587 04310017 ! 435: IADN11(1) = 587 04320017 ! 436: IF ( IVON02 .NE. IADN11(1) ) IVON01 = 0 04330017 ! 437: GO TO 41830 04340017 ! 438: 31830 IVDELE = IVDELE + 1 04350017 ! 439: WRITE (I02,80003) IVTNUM 04360017 ! 440: IF (ICZERO) 41830, 1841, 41830 04370017 ! 441: 41830 IF ( IVON01 - 1 ) 21830, 11830, 21830 04380017 ! 442: 11830 IVPASS = IVPASS + 1 04390017 ! 443: WRITE (I02,80001) IVTNUM 04400017 ! 444: GO TO 1841 04410017 ! 445: 21830 IVFAIL = IVFAIL + 1 04420017 ! 446: IVCOMP = IVON01 04430017 ! 447: IVCORR = 1 04440017 ! 448: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04450017 ! 449: 1841 CONTINUE 04460017 ! 450: IVTNUM = 184 04470017 ! 451: C 04480017 ! 452: C **** TEST 184 **** 04490017 ! 453: C TEST 184 - RELATIONAL EXPRESSION (IAER) (RO) (IVR) 04500017 ! 454: C TRUE PATH .NE. 04510017 ! 455: C 04520017 ! 456: C 04530017 ! 457: IF (ICZERO) 31840, 1840, 31840 04540017 ! 458: 1840 CONTINUE 04550017 ! 459: IVON01 = 0 04560017 ! 460: IADN11(3) = 3 04570017 ! 461: IVON02 = 32767 04580017 ! 462: IF ( IADN11(3) .NE. IVON02 ) IVON01 = 1 04590017 ! 463: GO TO 41840 04600017 ! 464: 31840 IVDELE = IVDELE + 1 04610017 ! 465: WRITE (I02,80003) IVTNUM 04620017 ! 466: IF (ICZERO) 41840, 1851, 41840 04630017 ! 467: 41840 IF ( IVON01 - 1 ) 21840, 11840, 21840 04640017 ! 468: 11840 IVPASS = IVPASS + 1 04650017 ! 469: WRITE (I02,80001) IVTNUM 04660017 ! 470: GO TO 1851 04670017 ! 471: 21840 IVFAIL = IVFAIL + 1 04680017 ! 472: IVCOMP = IVON01 04690017 ! 473: IVCORR = 1 04700017 ! 474: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04710017 ! 475: 1851 CONTINUE 04720017 ! 476: IVTNUM = 185 04730017 ! 477: C 04740017 ! 478: C **** TEST 185 **** 04750017 ! 479: C TEST 185 - TEST OF PARENTHESES ( (LE) ) 04760017 ! 480: C TRUE PATH LOGICAL CONSTANT .TRUE. 04770017 ! 481: C 04780017 ! 482: C 04790017 ! 483: IF (ICZERO) 31850, 1850, 31850 04800017 ! 484: 1850 CONTINUE 04810017 ! 485: IVON01 = 0 04820017 ! 486: IF ( ( .TRUE. ) ) IVON01 = 1 04830017 ! 487: GO TO 41850 04840017 ! 488: 31850 IVDELE = IVDELE + 1 04850017 ! 489: WRITE (I02,80003) IVTNUM 04860017 ! 490: IF (ICZERO) 41850, 1861, 41850 04870017 ! 491: 41850 IF ( IVON01 - 1 ) 21850, 11850, 21850 04880017 ! 492: 11850 IVPASS = IVPASS + 1 04890017 ! 493: WRITE (I02,80001) IVTNUM 04900017 ! 494: GO TO 1861 04910017 ! 495: 21850 IVFAIL = IVFAIL + 1 04920017 ! 496: IVCOMP = IVON01 04930017 ! 497: IVCORR = 1 04940017 ! 498: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 04950017 ! 499: 1861 CONTINUE 04960017 ! 500: IVTNUM = 186 04970017 ! 501: C 04980017 ! 502: C **** TEST 186 **** 04990017 ! 503: C TEST 186 - LIKE TEST 185 05000017 ! 504: C FALSE PATH LOGICAL CONSTANT .FALSE. 05010017 ! 505: C 05020017 ! 506: C 05030017 ! 507: IF (ICZERO) 31860, 1860, 31860 05040017 ! 508: 1860 CONTINUE 05050017 ! 509: IVON01 = 1 05060017 ! 510: IF ((( .FALSE. ))) IVON01 = 0 05070017 ! 511: GO TO 41860 05080017 ! 512: 31860 IVDELE = IVDELE + 1 05090017 ! 513: WRITE (I02,80003) IVTNUM 05100017 ! 514: IF (ICZERO) 41860, 1871, 41860 05110017 ! 515: 41860 IF ( IVON01 - 1 ) 21860, 11860, 21860 05120017 ! 516: 11860 IVPASS = IVPASS + 1 05130017 ! 517: WRITE (I02,80001) IVTNUM 05140017 ! 518: GO TO 1871 05150017 ! 519: 21860 IVFAIL = IVFAIL + 1 05160017 ! 520: IVCOMP = IVON01 05170017 ! 521: IVCORR = 1 05180017 ! 522: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05190017 ! 523: 1871 CONTINUE 05200017 ! 524: IVTNUM = 187 05210017 ! 525: C 05220017 ! 526: C **** TEST 187 **** 05230017 ! 527: C TEST 187 - PARENS AROUND LOGICAL VARIABLE REFERENCE ( (LVR) ) 05240017 ! 528: C TRUE PATH 05250017 ! 529: C 05260017 ! 530: C 05270017 ! 531: IF (ICZERO) 31870, 1870, 31870 05280017 ! 532: 1870 CONTINUE 05290017 ! 533: IVON01 = 0 05300017 ! 534: LCTNT1 = .TRUE. 05310017 ! 535: IF ( ( LCTNT1 ) ) IVON01 = 1 05320017 ! 536: GO TO 41870 05330017 ! 537: 31870 IVDELE = IVDELE + 1 05340017 ! 538: WRITE (I02,80003) IVTNUM 05350017 ! 539: IF (ICZERO) 41870, 1881, 41870 05360017 ! 540: 41870 IF ( IVON01 - 1 ) 21870, 11870, 21870 05370017 ! 541: 11870 IVPASS = IVPASS + 1 05380017 ! 542: WRITE (I02,80001) IVTNUM 05390017 ! 543: GO TO 1881 05400017 ! 544: 21870 IVFAIL = IVFAIL + 1 05410017 ! 545: IVCOMP = IVON01 05420017 ! 546: IVCORR = 1 05430017 ! 547: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05440017 ! 548: 1881 CONTINUE 05450017 ! 549: IVTNUM = 188 05460017 ! 550: C 05470017 ! 551: C **** TEST 188 **** 05480017 ! 552: C TEST 188 - PARENS AROUND LOGICAL ARRAY REFERENCE ( ( LAER ) ) 05490017 ! 553: C FALSE PATH 05500017 ! 554: C 05510017 ! 555: IF (ICZERO) 31880, 1880, 31880 05520017 ! 556: 1880 CONTINUE 05530017 ! 557: IVON01 = 1 05540017 ! 558: LATN1A(1) = .FALSE. 05550017 ! 559: IF ( ( LATN1A(1) ) ) IVON01 = 0 05560017 ! 560: GO TO 41880 05570017 ! 561: 31880 IVDELE = IVDELE + 1 05580017 ! 562: WRITE (I02,80003) IVTNUM 05590017 ! 563: IF (ICZERO) 41880, 1891, 41880 05600017 ! 564: 41880 IF ( IVON01 - 1 ) 21880, 11880, 21880 05610017 ! 565: 11880 IVPASS = IVPASS + 1 05620017 ! 566: WRITE (I02,80001) IVTNUM 05630017 ! 567: GO TO 1891 05640017 ! 568: 21880 IVFAIL = IVFAIL + 1 05650017 ! 569: IVCOMP = IVON01 05660017 ! 570: IVCORR = 1 05670017 ! 571: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05680017 ! 572: 1891 CONTINUE 05690017 ! 573: IVTNUM = 189 05700017 ! 574: C 05710017 ! 575: C **** TEST 189 **** 05720017 ! 576: C TEST 189 - USE OF .NOT. WITH A LOGICAL PRIMARY .NOT. (LP) 05730017 ! 577: C FALSE PATH .NOT. .TRUE. 05740017 ! 578: C 05750017 ! 579: C 05760017 ! 580: IF (ICZERO) 31890, 1890, 31890 05770017 ! 581: 1890 CONTINUE 05780017 ! 582: IVON01 = 1 05790017 ! 583: IF ( .NOT. .TRUE. ) IVON01 = 0 05800017 ! 584: GO TO 41890 05810017 ! 585: 31890 IVDELE = IVDELE + 1 05820017 ! 586: WRITE (I02,80003) IVTNUM 05830017 ! 587: IF (ICZERO) 41890, 1901, 41890 05840017 ! 588: 41890 IF ( IVON01 - 1 ) 21890, 11890, 21890 05850017 ! 589: 11890 IVPASS = IVPASS + 1 05860017 ! 590: WRITE (I02,80001) IVTNUM 05870017 ! 591: GO TO 1901 05880017 ! 592: 21890 IVFAIL = IVFAIL + 1 05890017 ! 593: IVCOMP = IVON01 05900017 ! 594: IVCORR = 1 05910017 ! 595: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 05920017 ! 596: 1901 CONTINUE 05930017 ! 597: IVTNUM = 190 05940017 ! 598: C 05950017 ! 599: C **** TEST 190 **** 05960017 ! 600: C TEST 190 - LIKE TEST 189 TRUE PATH .NOT. .FALSE. 05970017 ! 601: C 05980017 ! 602: C 05990017 ! 603: IF (ICZERO) 31900, 1900, 31900 06000017 ! 604: 1900 CONTINUE 06010017 ! 605: IVON01 = 0 06020017 ! 606: IF ( .NOT. .FALSE. ) IVON01 = 1 06030017 ! 607: GO TO 41900 06040017 ! 608: 31900 IVDELE = IVDELE + 1 06050017 ! 609: WRITE (I02,80003) IVTNUM 06060017 ! 610: IF (ICZERO) 41900, 1911, 41900 06070017 ! 611: 41900 IF ( IVON01 - 1 ) 21900, 11900, 21900 06080017 ! 612: 11900 IVPASS = IVPASS + 1 06090017 ! 613: WRITE (I02,80001) IVTNUM 06100017 ! 614: GO TO 1911 06110017 ! 615: 21900 IVFAIL = IVFAIL + 1 06120017 ! 616: IVCOMP = IVON01 06130017 ! 617: IVCORR = 1 06140017 ! 618: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06150017 ! 619: 1911 CONTINUE 06160017 ! 620: IVTNUM = 191 06170017 ! 621: C 06180017 ! 622: C **** TEST 191 **** 06190017 ! 623: C TEST 191 - TESTS .NOT. WITH A LOGICAL VARIABLE SET TO .FALSE. 06200017 ! 624: C IN A LOGICAL ASSIGNMENT STATEMENT TRUE PATH 06210017 ! 625: C 06220017 ! 626: C 06230017 ! 627: IF (ICZERO) 31910, 1910, 31910 06240017 ! 628: 1910 CONTINUE 06250017 ! 629: IVON01 = 0 06260017 ! 630: LCTNT1 = .FALSE. 06270017 ! 631: IF ( .NOT. LCTNT1 ) IVON01 = 1 06280017 ! 632: GO TO 41910 06290017 ! 633: 31910 IVDELE = IVDELE + 1 06300017 ! 634: WRITE (I02,80003) IVTNUM 06310017 ! 635: IF (ICZERO) 41910, 1921, 41910 06320017 ! 636: 41910 IF ( IVON01 - 1 ) 21910, 11910, 21910 06330017 ! 637: 11910 IVPASS = IVPASS + 1 06340017 ! 638: WRITE (I02,80001) IVTNUM 06350017 ! 639: GO TO 1921 06360017 ! 640: 21910 IVFAIL = IVFAIL + 1 06370017 ! 641: IVCOMP = IVON01 06380017 ! 642: IVCORR = 1 06390017 ! 643: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06400017 ! 644: 1921 CONTINUE 06410017 ! 645: IVTNUM = 192 06420017 ! 646: C 06430017 ! 647: C **** TEST 192 **** 06440017 ! 648: C TEST 192 - LIKE TEST 191 ONLY USES A LOGICAL ARRAY ELEMENT 06450017 ! 649: C SET TO .FALSE. IN A LOGICAL ASSIGNMENT STATEMENT TRUE 06460017 ! 650: C 06470017 ! 651: C 06480017 ! 652: IF (ICZERO) 31920, 1920, 31920 06490017 ! 653: 1920 CONTINUE 06500017 ! 654: IVON01 = 0 06510017 ! 655: LATN1A(2) = .FALSE. 06520017 ! 656: IF ( .NOT. LATN1A(2) ) IVON01 = 1 06530017 ! 657: GO TO 41920 06540017 ! 658: 31920 IVDELE = IVDELE + 1 06550017 ! 659: WRITE (I02,80003) IVTNUM 06560017 ! 660: IF (ICZERO) 41920, 1931, 41920 06570017 ! 661: 41920 IF ( IVON01 - 1 ) 21920, 11920, 21920 06580017 ! 662: 11920 IVPASS = IVPASS + 1 06590017 ! 663: WRITE (I02,80001) IVTNUM 06600017 ! 664: GO TO 1931 06610017 ! 665: 21920 IVFAIL = IVFAIL + 1 06620017 ! 666: IVCOMP = IVON01 06630017 ! 667: IVCORR = 1 06640017 ! 668: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06650017 ! 669: 1931 CONTINUE 06660017 ! 670: IVTNUM = 193 06670017 ! 671: C 06680017 ! 672: C **** TEST 193 **** 06690017 ! 673: C TEST 193 - USE OF LOGICAL .AND. (LT) .AND. (LF) 06700017 ! 674: C USES TWO LOGICAL VARIABLES EACH SET TO .FALSE. 06710017 ! 675: C FALSE .AND. FALSE FALSE PATH 06720017 ! 676: C 06730017 ! 677: C 06740017 ! 678: IF (ICZERO) 31930, 1930, 31930 06750017 ! 679: 1930 CONTINUE 06760017 ! 680: IVON01 = 1 06770017 ! 681: LCTNT1 = .FALSE. 06780017 ! 682: LCTNT2 = .FALSE. 06790017 ! 683: IF ( LCTNT1 .AND. LCTNT2 ) IVON01 = 0 06800017 ! 684: GO TO 41930 06810017 ! 685: 31930 IVDELE = IVDELE + 1 06820017 ! 686: WRITE (I02,80003) IVTNUM 06830017 ! 687: IF (ICZERO) 41930, 1941, 41930 06840017 ! 688: 41930 IF ( IVON01 - 1 ) 21930, 11930, 21930 06850017 ! 689: 11930 IVPASS = IVPASS + 1 06860017 ! 690: WRITE (I02,80001) IVTNUM 06870017 ! 691: GO TO 1941 06880017 ! 692: 21930 IVFAIL = IVFAIL + 1 06890017 ! 693: IVCOMP = IVON01 06900017 ! 694: IVCORR = 1 06910017 ! 695: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 06920017 ! 696: 1941 CONTINUE 06930017 ! 697: IVTNUM = 194 06940017 ! 698: C 06950017 ! 699: C **** TEST 194 **** 06960017 ! 700: C TEST 194 - LIKE TEST 193 FALSE .AND. TRUE FALSE PATH 06970017 ! 701: C 06980017 ! 702: C 06990017 ! 703: IF (ICZERO) 31940, 1940, 31940 07000017 ! 704: 1940 CONTINUE 07010017 ! 705: IVON01 = 1 07020017 ! 706: LCTNT1 = .FALSE. 07030017 ! 707: LCTNT2 = .TRUE. 07040017 ! 708: IF ( LCTNT1 .AND. LCTNT2 ) IVON01 = 0 07050017 ! 709: GO TO 41940 07060017 ! 710: 31940 IVDELE = IVDELE + 1 07070017 ! 711: WRITE (I02,80003) IVTNUM 07080017 ! 712: IF (ICZERO) 41940, 1951, 41940 07090017 ! 713: 41940 IF ( IVON01 - 1 ) 21940, 11940, 21940 07100017 ! 714: 11940 IVPASS = IVPASS + 1 07110017 ! 715: WRITE (I02,80001) IVTNUM 07120017 ! 716: GO TO 1951 07130017 ! 717: 21940 IVFAIL = IVFAIL + 1 07140017 ! 718: IVCOMP = IVON01 07150017 ! 719: IVCORR = 1 07160017 ! 720: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07170017 ! 721: 1951 CONTINUE 07180017 ! 722: IVTNUM = 195 07190017 ! 723: C 07200017 ! 724: C **** TEST 195 **** 07210017 ! 725: C TEST 195 - LIKE TEST 193 TRUE .AND. FALSE FALSE PATH 07220017 ! 726: C 07230017 ! 727: C 07240017 ! 728: IF (ICZERO) 31950, 1950, 31950 07250017 ! 729: 1950 CONTINUE 07260017 ! 730: IVON01 = 1 07270017 ! 731: LCTNT1 = .TRUE. 07280017 ! 732: LCTNT2 = .FALSE. 07290017 ! 733: IF ( LCTNT1 .AND. LCTNT2 ) IVON01 = 0 07300017 ! 734: GO TO 41950 07310017 ! 735: 31950 IVDELE = IVDELE + 1 07320017 ! 736: WRITE (I02,80003) IVTNUM 07330017 ! 737: IF (ICZERO) 41950, 1961, 41950 07340017 ! 738: 41950 IF ( IVON01 - 1 ) 21950, 11950, 21950 07350017 ! 739: 11950 IVPASS = IVPASS + 1 07360017 ! 740: WRITE (I02,80001) IVTNUM 07370017 ! 741: GO TO 1961 07380017 ! 742: 21950 IVFAIL = IVFAIL + 1 07390017 ! 743: IVCOMP = IVON01 07400017 ! 744: IVCORR = 1 07410017 ! 745: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07420017 ! 746: 1961 CONTINUE 07430017 ! 747: IVTNUM = 196 07440017 ! 748: C 07450017 ! 749: C **** TEST 196 **** 07460017 ! 750: C TEST 196 - LIKE TEST 193 TRUE .AND. TRUE TRUE PATH 07470017 ! 751: C 07480017 ! 752: C 07490017 ! 753: IF (ICZERO) 31960, 1960, 31960 07500017 ! 754: 1960 CONTINUE 07510017 ! 755: IVON01 = 0 07520017 ! 756: LCTNT1 = .TRUE. 07530017 ! 757: LCTNT2 = .TRUE. 07540017 ! 758: IF ( LCTNT1 .AND. LCTNT2 ) IVON01 = 1 07550017 ! 759: GO TO 41960 07560017 ! 760: 31960 IVDELE = IVDELE + 1 07570017 ! 761: WRITE (I02,80003) IVTNUM 07580017 ! 762: IF (ICZERO) 41960, 1971, 41960 07590017 ! 763: 41960 IF ( IVON01 - 1 ) 21960, 11960, 21960 07600017 ! 764: 11960 IVPASS = IVPASS + 1 07610017 ! 765: WRITE (I02,80001) IVTNUM 07620017 ! 766: GO TO 1971 07630017 ! 767: 21960 IVFAIL = IVFAIL + 1 07640017 ! 768: IVCOMP = IVON01 07650017 ! 769: IVCORR = 1 07660017 ! 770: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07670017 ! 771: 1971 CONTINUE 07680017 ! 772: IVTNUM = 197 07690017 ! 773: C 07700017 ! 774: C **** TEST 197 **** 07710017 ! 775: C TEST 197 - TEST OF THE INCLUSIVE .OR. . (LE) .OR. (LT) 07720017 ! 776: C USES LOGICAL VARIABLES SET IN LOGICAL ASSIGNMENT STATEMENTS 07730017 ! 777: C FALSE .OR. FALSE FALSE PATH 07740017 ! 778: C 07750017 ! 779: C 07760017 ! 780: IF (ICZERO) 31970, 1970, 31970 07770017 ! 781: 1970 CONTINUE 07780017 ! 782: IVON01 = 1 07790017 ! 783: LCTNT1 = .FALSE. 07800017 ! 784: LCTNT2 = .FALSE. 07810017 ! 785: IF ( LCTNT1 .OR. LCTNT2 ) IVON01 = 0 07820017 ! 786: GO TO 41970 07830017 ! 787: 31970 IVDELE = IVDELE + 1 07840017 ! 788: WRITE (I02,80003) IVTNUM 07850017 ! 789: IF (ICZERO) 41970, 1981, 41970 07860017 ! 790: 41970 IF ( IVON01 - 1 ) 21970, 11970, 21970 07870017 ! 791: 11970 IVPASS = IVPASS + 1 07880017 ! 792: WRITE (I02,80001) IVTNUM 07890017 ! 793: GO TO 1981 07900017 ! 794: 21970 IVFAIL = IVFAIL + 1 07910017 ! 795: IVCOMP = IVON01 07920017 ! 796: IVCORR = 1 07930017 ! 797: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 07940017 ! 798: 1981 CONTINUE 07950017 ! 799: IVTNUM = 198 07960017 ! 800: C 07970017 ! 801: C **** TEST 198 **** 07980017 ! 802: C TEST 198 - LIKE TEST 197 FALSE .OR. TRUE TRUE PATH 07990017 ! 803: C 08000017 ! 804: C 08010017 ! 805: IF (ICZERO) 31980, 1980, 31980 08020017 ! 806: 1980 CONTINUE 08030017 ! 807: IVON01 = 0 08040017 ! 808: LCTNT1 = .FALSE. 08050017 ! 809: LCTNT2 = .TRUE. 08060017 ! 810: IF ( LCTNT1 .OR. LCTNT2 ) IVON01 = 1 08070017 ! 811: GO TO 41980 08080017 ! 812: 31980 IVDELE = IVDELE + 1 08090017 ! 813: WRITE (I02,80003) IVTNUM 08100017 ! 814: IF (ICZERO) 41980, 1991, 41980 08110017 ! 815: 41980 IF ( IVON01 - 1 ) 21980, 11980, 21980 08120017 ! 816: 11980 IVPASS = IVPASS + 1 08130017 ! 817: WRITE (I02,80001) IVTNUM 08140017 ! 818: GO TO 1991 08150017 ! 819: 21980 IVFAIL = IVFAIL + 1 08160017 ! 820: IVCOMP = IVON01 08170017 ! 821: IVCORR = 1 08180017 ! 822: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 08190017 ! 823: 1991 CONTINUE 08200017 ! 824: IVTNUM = 199 08210017 ! 825: C 08220017 ! 826: C **** TEST 199 **** 08230017 ! 827: C TEST 199 - LIKE TEST 197. TRUE .OR. FALSE TRUE PATH. 08240017 ! 828: C 08250017 ! 829: C 08260017 ! 830: IF (ICZERO) 31990, 1990, 31990 08270017 ! 831: 1990 CONTINUE 08280017 ! 832: IVON01 = 0 08290017 ! 833: LCTNT1 = .TRUE. 08300017 ! 834: LCTNT2 = .FALSE. 08310017 ! 835: IF ( LCTNT1 .OR. LCTNT2 ) IVON01 = 1 08320017 ! 836: GO TO 41990 08330017 ! 837: 31990 IVDELE = IVDELE + 1 08340017 ! 838: WRITE (I02,80003) IVTNUM 08350017 ! 839: IF (ICZERO) 41990, 5001, 41990 08360017 ! 840: 41990 IF ( IVON01 - 1 ) 21990, 11990, 21990 08370017 ! 841: 11990 IVPASS = IVPASS + 1 08380017 ! 842: WRITE (I02,80001) IVTNUM 08390017 ! 843: GO TO 5001 08400017 ! 844: 21990 IVFAIL = IVFAIL + 1 08410017 ! 845: IVCOMP = IVON01 08420017 ! 846: IVCORR = 1 08430017 ! 847: WRITE (I02,80004) IVTNUM, IVCOMP ,IVCORR 08440017 ! 848: 5001 CONTINUE 08450017 ! 849: C 08460017 ! 850: C WRITE PAGE FOOTINGS AND RUN SUMMARIES 08470017 ! 851: 99999 CONTINUE 08480017 ! 852: WRITE (I02,90002) 08490017 ! 853: WRITE (I02,90006) 08500017 ! 854: WRITE (I02,90002) 08510017 ! 855: WRITE (I02,90002) 08520017 ! 856: WRITE (I02,90007) 08530017 ! 857: WRITE (I02,90002) 08540017 ! 858: WRITE (I02,90008) IVFAIL 08550017 ! 859: WRITE (I02,90009) IVPASS 08560017 ! 860: WRITE (I02,90010) IVDELE 08570017 ! 861: C 08580017 ! 862: C 08590017 ! 863: C TERMINATE ROUTINE EXECUTION 08600017 ! 864: STOP 08610017 ! 865: C 08620017 ! 866: C FORMAT STATEMENTS FOR PAGE HEADERS 08630017 ! 867: 90000 FORMAT (1H1) 08640017 ! 868: 90002 FORMAT (1H ) 08650017 ! 869: 90001 FORMAT (1H ,10X,34HFORTRAN COMPILER VALIDATION SYSTEM) 08660017 ! 870: 90003 FORMAT (1H ,21X,11HVERSION 1.0) 08670017 ! 871: 90004 FORMAT (1H ,10X,38HFOR OFFICIAL USE ONLY - COPYRIGHT 1978) 08680017 ! 872: 90005 FORMAT (1H ,5X,4HTEST,5X,9HPASS/FAIL, 5X,8HCOMPUTED,8X,7HCORRECT) 08690017 ! 873: 90006 FORMAT (1H ,5X,46H----------------------------------------------) 08700017 ! 874: 90011 FORMAT (1H ,18X,17HSUBSET LEVEL TEST) 08710017 ! 875: C 08720017 ! 876: C FORMAT STATEMENTS FOR RUN SUMMARIES 08730017 ! 877: 90008 FORMAT (1H ,15X,I5,19H ERRORS ENCOUNTERED) 08740017 ! 878: 90009 FORMAT (1H ,15X,I5,13H TESTS PASSED) 08750017 ! 879: 90010 FORMAT (1H ,15X,I5,14H TESTS DELETED) 08760017 ! 880: C 08770017 ! 881: C FORMAT STATEMENTS FOR TEST RESULTS 08780017 ! 882: 80001 FORMAT (1H ,4X,I5,7X,4HPASS) 08790017 ! 883: 80002 FORMAT (1H ,4X,I5,7X,4HFAIL) 08800017 ! 884: 80003 FORMAT (1H ,4X,I5,7X,7HDELETED) 08810017 ! 885: 80004 FORMAT (1H ,4X,I5,7X,4HFAIL,10X,I6,9X,I6) 08820017 ! 886: 80005 FORMAT (1H ,4X,I5,7X,4HFAIL,4X,E12.5,3X,E12.5) 08830017 ! 887: C 08840017 ! 888: 90007 FORMAT (1H ,20X,20HEND OF PROGRAM FM017) 08850017 ! 889: END 08860017
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.