-- file ErrorTab.Mesa -- last modified by Satterthwaite, April 9, 1986 11:06:50 am PST -- last modified by Donahue, 11-Dec-81 13:58:57 DIRECTORY Log: TYPE USING [ErrorCode], Tree: TYPE USING [NodeName]; ErrorTab: PROGRAM = { OpName: ARRAY Tree.NodeName[$assignx..$uparrow] OF STRING = [ "←", "←", " OR ", " AND ", "=", "#", "<", ">=", ">", "<=", " IN ", " ~IN ", "+", "-", "*", "/", " MOD ", ".", ".", ".", " NEW ", "~", "-", "@", "↑"]; FnName: ARRAY Tree.NodeName[$min..$new] OF STRING = [ "MIN", "MAX", "LONG", "ABS", "ALL", "SIZE", "FIRST", "LAST", "PRED", "SUCC", "DESCRIPTOR", "LENGTH", "BASE", "LOOPHOLE", "NIL", "NEW"]; ApplName: ARRAY Tree.NodeName[$apply..$joinx] OF STRING = [ "APPLY", "APPLY", "", "SIGNAL", "ERROR", "ERROR", "START", "FORK", "JOIN"]; FApplName: ARRAY Tree.NodeName[$restart..$broadcast] OF STRING = [ "RESTART", "STOP", "LOCK", "WAIT", "NOTIFY", "BROADCAST"]; ErrorMessages: ARRAY Log.ErrorCode OF STRING = [ -- general purpose errors (no parameters) --compilerError, "FATAL COMPILER ERROR", --unimplemented, "unimplemented construct", --other, "unspecified error", --aborted, "compilation aborted", -- errors with no parameters --arraySize, "array too large for implementation", --attrClash "invalid attribute combination", --bodyType, "illegal initialization to body", --catchLabel, "misplaced RETRY or CONTINUE", --descriptor, "misused DESCRIPTOR", --discrimForm, "incorrect discrimination", --exit, "misplaced EXIT or LOOP", --illDefinedReturn, "default return of anonymous value", --implicitCall, "implicit system call", --indexType, "illegal index type", --inlineChecked, "MACHINE CODE cannot be CHECKED", --inlineType, "illegal initialization to MACHINE CODE", --instLength, "instruction has incorrect length", --interfaceString, "string literals not permitted in DEFINITIONS", --keys, "keywords not permitted", --long, "misused LONG", --longPath, "must be in MDS", --machDep, "type must be MACHINE DEPENDENT", --misplacedCatch, "misplaced catch phrase", --misplacedEntry, "unmonitored ENTRY or INTERNAL", --misplacedMonitorRef, "unmonitored WAIT or NOTIFY", --misplacedResume, "misplaced REJECT or RESUME", --misplacedReturn, "misplaced RETURN", --misplacedStop, "misplaced STOP", --misplacedType, "misplaced opaque type declaration", --mixedPositions, "mixed explicit and implicit field positions", --noAccess, "attempt to access private fields", --nonOrderedType, "index or interval type must be ordered", --nonTypeCons, "unrecognizable type constructor", --nonVoidStmt, "procedure used as a statement returns a value", --opaqueTest, "discrimination on opaque types is unimplemented", --relative, "misused RELATIVE", --stateVector, "state vector has improper offset", --staticNesting, "body or catch phrase nested too deeply", --subrangeNesting, "interval bounds are out of range", --unsafeBlock, "improper use of an unsafe block", --var, "misused VAR", -- errors mapping hash to sei parameters --unknownId, "is undeclared", --unknownField, "is not valid as a field selector", -- errors with hash parameters --ambiguousId, "is ambiguous without discrimination", --duplicateId, "is multiply defined", --missingImport, "is an unmatched implicit import", --unknownTag, "is not a legal variant tag", --duplicateTag, "labels multiple variants", --unknownVariant, "does not name a variant", --unknownKey, "is not valid as a key", --duplicateKey, "is repeated as a key", --omittedKey, "cannot be defaulted", --openId, "must label a record", --fileName, "cannot be opened", --fileWrong, "found in wrong version", --moduleId, "is not a module name", -- errors with sei parameters --addressOverflow, "exceeds addressing limits", --circularType, "leads to a circular type definition", --circularValue, "has ill-defined or circular value", --elision, "cannot be defaulted or voided", --enumOrder, "is out of order", --exportAttr, "is exported with incorrect attributes", --exportClash, "is exported with incorrect type", --fieldPosition, "has invalid field width or alignment", --forwardRef, "is used before set", --internalCall, "is a misused INTERNAL", --missingBase, "requires a base value", --missingInit, "requires an initial value", --missingLock, "required for lock", --nonDefinition, "improperly defined for a DEFINITIONS module", --nonTagType, "has a type illegal for a tag", --nonTypeId, "is not a type", --notImported, "must come from an imported interface", --position, "cannot have a specified position", --privateId, "is private", --recordGap, "is followed by a gap", --recordOverlap, "overlaps another field", --recursiveInline, "is INLINE and recursive", --typeLength, "has unknown or ill-defined size", --updateClash, "must be exported as READONLY", --varExport, "has no exportable value", -- errors with tree parameters --boundsFault, "is out of range", --controlId, "is an improper control variable", --defaultForm, "has an invalid default", --duplicateLabel, "is multiply defined", --missingBinding, "lacks a tag needed for discrimination", --misusedInline, "is an incorrectly used inline", --mixedRepresentation, "has signed/unsigned ambiguity", --noApplication, "does not allow an argument list", --nonAddressable, "does not allow indirect reference", --nonConstant, "has nonconstant value", --nonInterface, "must have an interface type", --nonLHS, "is not a variable", --nonVar, "is not address (@) of a variable", --nonVariantLabel, "specifies an inadmissable test", --noTarget, "requires explicit type", --notPortable, "is not importable/exportable", --noVariants, "has no variants", --overflow, "overflows", --operandSize, "has a size exceeding implementation limits", --scopeFault, "is being assigned out of scope", --sizeClash, "has incorrect or ambiguous length", --spuriousBinding, "explicit selection not permitted", --typeClash, "has incorrect type", --unknownLabel, "is undeclared", -- unsafeOperation, "uses an unsafe operation", -- unsafeSelection, "is discriminated unsafely", -- errors with tree and operator parameters --missingAttr "has no ", --missingOp "has a type with no ", -- unsafeOp, "uses an unsafe ", -- errors with numeric parameters --bodyEntries, "too many procedure or signal definitions", --exportedVars, "too many exported variables", --interfaceEntries, "too many interface items", --listShort "too few elements in list", --listLong "too many elements in list", -- warnings with no parameters --pointerInit "multiple initialization with a pointer", --unreachable, "unreachable code", -- warnings with sei parameters --paddedField "has been padded", --privateExport "is private but matches an export", --uninitialized "appears uninitialized", --unusedExport "receives no exported values", --unusedId "is never referenced", --unusedImport "supplies no imported values", --voidExport "matches a constant in an exported interface", -- warnings with substring parameters --replString "has global strings preventing replacement", --replId "has incompatible attributes for replacement", -- warnings with tree parameters --emptyArray, "has zero length", --fileVersion, "referenced in different versions", --unsignedCompare "will use unsigned comparison" ]; }.