|
|
1.1 ! root 1: /* Copyright Bell Telephone Laboratories Whippany, N.J. ! 2: ! 3: * *********************************** ! 4: * *********************************** ! 5: * ****** ERROR MESSAGE PRINTER ****** ! 6: * *** R. B. Drake WH 8C-005 X4163 *** ! 7: * **** Fri Aug 24 17:21:10 1979 ***** ! 8: * *********************************** ! 9: * *********************************** ! 10: * ! 11: * MOD,J.P.Hawkins,17-SEP-79, added error 44 and 45 ! 12: * MOD,J.P.Hawkins,31-JAN-81, String handling errors ! 13: ! 14: */ ! 15: /* "@(#) error.c: V 1.6 11/29/81" */ ! 16: ! 17: #include "bas.h" ! 18: #ifndef LSX ! 19: static char *mesg[] = ! 20: { ! 21: "REFERS TO A NON EXISTING LINE NUMBER", /* 0 */ ! 22: "UNRECOGNIZABLE OPERATION", /* 1 */ ! 23: "CANNOT OPEN FILE", /* 2 */ ! 24: "ILLEGAL VARIABLE NAME", /* 3 */ ! 25: "BAD FILENAME", /* 4 */ ! 26: "WORKING STORAGE AREA EMPTY", /* 5 */ ! 27: "RUNS NESTED TOO DEEPLY", /* 6 */ ! 28: "UNASSIGNED VARIABLE", /* 7 */ ! 29: "EXPRESSION SYNTAX", /* 8 */ ! 30: "BAD KEYWORD IN STATEMENT", /* 9 */ ! 31: "IMPROPER OR NO RELATIONAL OPERATOR", /* 10 */ ! 32: "UNBALANCED QUOTES", /* 11 */ ! 33: "FILE EDITING NOT PERMITTED IN SINGLE STEP MODE", /* 12 */ ! 34: "MISSING OR ILLEGAL DELIMITER", /* 13 */ ! 35: "GOSUB WITH NO RETURN", /* 14 */ ! 36: "IS FATAL", /* 15 */ ! 37: "UNBALANCED PARENTHESIS", /* 16 */ ! 38: "UNKNOWN MATH FUNCTION", /* 17 */ ! 39: "NEXT WITH NO OR WRONG FOR IN PROGRESS", /* 18 */ ! 40: "CANNOT PROCESS IMAGINARY NUMBER", /* 19 */ ! 41: "WHAT ?", /* 20 */ ! 42: "BAD DIMENSION SYNTAX", /* 21 */ ! 43: "TOO MANY DIMENSIONS", /* 22 */ ! 44: "REDUNDANT DIM STATEMENT", /* 23 */ ! 45: "NOT ENOUGH WORKING STORAGE SPACE", /* 24 */ ! 46: "VARIABLE NOT DIMENSIONED", /* 25 */ ! 47: "WRONG NUM OF DIMS", /* 26 */ ! 48: "ONE OR MORE DIMS LARGER THAN ASSIGNED", /* 27 */ ! 49: "NEG. OR ZERO DIMENSION ILLEGAL", /* 28 */ ! 50: "DIVIDE BY ZERO", /* 29 */ ! 51: "BAD TAB SPEC. IN PRINT", /* 30 */ ! 52: "SYS CALL FAILED", /* 31 */ ! 53: "BAD FILE DECLARE SYNTAX", /* 32 */ ! 54: "OUT OF DATA", /* 33 */ ! 55: "FILE-NAME TOO LONG", /* 34 */ ! 56: "FILE DES. USED UP", /* 35 */ ! 57: "FILE NOT OPEN FOR OUTPUT", /* 36 */ ! 58: "FILE NOT OPEN FOR INPUT", /* 37 */ ! 59: "EXPRESSION YIELDS AN IMPOSSIBLE VALUE", /* 38 */ ! 60: "PRINTF: ARG COUNT MISMATCH", /* 39 */ ! 61: "PRINTF: MORE THAN 10 ARGS", /* 40 */ ! 62: "LINE TOO LONG FOR STRIP PRINTER", /* 41 */ ! 63: "MOV REQUIRES 3 LINE #'s SPACING IS OPTIONAL", /*42*/ ! 64: "BAD NAME OR LINE NUMBER AT BEGINNING OF SUBROUTINE", /* 43 */ ! 65: "ELSE WITH NO IF", /* 44 */ ! 66: "ENDIF WITH NO IF", /* 45 */ ! 67: "GOTO NOT ALLOWED INSIDE STRUCTURED 'IF'", /* 46 */ ! 68: "BREAK OR CONTINUE WITH NO FOR IN PROGRESS", /* 47 */ ! 69: "FOR WITHOUT MATCHING NEXT", /* 48 */ ! 70: #ifdef STRINGS ! 71: "STRING VARIABLE IN NUMERICAL EXPR.", /* 49 */ ! 72: "NON-STRING IN STRING ASSIGNMENT", /* 50 */ ! 73: "NUMERIC IN STRING EXPRESSION", /* 51 */ ! 74: "INVALID STRING OPERATOR", /* 52 */ ! 75: "CANNOT COMPARE STRING WITH NUM. TYPES", /* 53 */ ! 76: "UNKNOWN STRING FUNCTION", /* 54 */ ! 77: "OUT OF STRING RANGE", /* 55 */ ! 78: #else ! 79: 0, /* 49 */ ! 80: 0, /* 50 */ ! 81: 0, /* 51 */ ! 82: 0, /* 52 */ ! 83: 0, /* 53 */ ! 84: 0, /* 54 */ ! 85: 0, /* 55 */ ! 86: #endif ! 87: "FACTORIAL NEG. OR TOO LARGE", /* 56 */ ! 88: "SEEK: SYNTAX ERR.", /* 57 */ ! 89: "SEEK FAILED", /* 58 */ ! 90: "ILLEGAL SEEK MODE", /* 59 */ ! 91: "REWIND: SYNTAX ERR.", /* 60 */ ! 92: }; ! 93: #endif ! 94: ! 95: /* ! 96: * ! 97: * //////// TEST SET AND INSTRUMENT ERRORS //////// ! 98: */ ! 99: /* "MISSING ' DELIMITER BEFORE BUS ADDR", 100 */ ! 100: /* "PS: VOLTAGE OUT OF RANGE", 101 */ ! 101: /* "PS: CURRENT OUT OF RANGE", 102 */ ! 102: /* "PS: OVERVOLTAGE OUT OF RANGE", 103 */ ! 103: /* "RELAY ERR", 104 */ ! 104: /* "RELAY: INVALID FUNC.", 105 */ ! 105: /* "RELAY: INVALID NUMBER", 106 */ ! 106: /* "DVM: INVALID MODE", 107 */ ! 107: /* "DVM: INVALID RANGE", 108 */ ! 108: /* "LODSET: IMPROPER NUMBER OF ARGUMENTS", 109 */ ! 109: /* "LODSET: IMPROPER MODE", 110 */ ! 110: /* "LODSET: UNABLE TO SET LOAD", 111 */ ! 111: ! 112: error(line,num) ! 113: { ! 114: error2(line,num,'\n'); ! 115: } ! 116: ! 117: error2(line,num,c) ! 118: char c; ! 119: int line,num; ! 120: { ! 121: #ifndef LSX ! 122: char *msgadr; ! 123: ! 124: msgadr = mesg[num]; ! 125: #endif ! 126: ! 127: if(line != 0) ! 128: #ifdef LSX ! 129: printf("ERROR #%d, LINE %d.\n",num,line); ! 130: #endif ! 131: #ifndef LSX ! 132: printf("ERROR LINE %d: %s%c",line,msgadr,c); ! 133: #endif ! 134: else ! 135: #ifdef LSX ! 136: printf("ERROR #%d.\n",num); ! 137: #endif ! 138: #ifndef LSX ! 139: printf("ERROR %s%c",msgadr,c); ! 140: #endif ! 141: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.