MimosaLog.mesa
Copyright Ó 1985, 1986, 1988, 1991 by Xerox Corporation. All rights reserved.
Satterthwaite, April 9, 1986 11:06:55 am PST
Russ Atkinson (RRA) May 23, 1989 5:22:46 pm PDT
DIRECTORY
ConvertUnsafe USING [SubString],
Rope USING [ROPE],
Symbols USING [Name, ISEIndex, Type],
SymbolTable USING [Base],
Tree USING [Index, Link, NodeName];
MimosaLog:
DEFINITIONS = {
ErrorCode:
TYPE = {
general purpose errors (no parameters)
compilerError,
unimplemented,
other,
aborted,
errors with no parameters
arraySize,
attrClash,
bodyType,
catchLabel,
descriptor,
discrimForm,
exit,
illDefinedReturn,
implicitCall,
indexType,
inlineChecked,
inlineType,
instLength,
interfaceString,
keys,
long,
longPath,
machDep,
misplacedCatch,
misplacedEntry,
misplacedMonitorRef,
misplacedResume,
misplacedReturn,
misplacedStop,
misplacedType,
mixedPositions,
noAccess,
nonOrderedType,
nonTypeCons,
nonVoidStmt,
opaqueTest,
relative,
stateVector,
staticNesting,
subrangeNesting,
unsafeBlock,
var,
errors mapping hash to sei parameters
unknownId,
unknownField,
errors with hash parameters
ambiguousId,
duplicateId,
missingImport,
unknownTag,
duplicateTag,
unknownVariant,
unknownKey,
duplicateKey,
omittedKey,
openId,
fileName,
fileWrong,
moduleId,
errors with sei parameters
addressOverflow,
circularType,
circularValue,
elision,
enumOrder,
exportAttr,
exportClash,
fieldPosition,
forwardRef,
internalCall,
missingBase,
missingInit,
missingLock,
nonDefinition,
nonTagType,
nonTypeId,
notImported,
position,
privateId,
recordGap,
recordOverlap,
recursiveInline,
typeLength,
updateClash,
varExport,
errors with tree parameters
boundsFault,
controlId,
defaultForm,
duplicateLabel,
missingBinding,
misusedInline,
mixedRepresentation,
noApplication,
nonAddressable,
nonConstant,
nonInterface,
nonLHS,
nonVar,
nonVariantLabel,
noTarget,
notImExPortable,
noVariants,
operandSize,
overflow,
scopeFault,
sizeClash,
spuriousBinding,
typeClash,
unknownLabel,
unsafeOperation,
unsafeSelection,
errors with tree and operator parameters
missingAttr,
missingOp,
unsafeOp,
errors with numeric parameters
bodyEntries,
exportedVars,
interfaceEntries,
listShort,
listLong,
warnings with no parameters
pointerInit,
unreachable,
warnings with sei parameters
paddedField,
privateExport,
uninitialized,
unusedExport,
unusedId,
unusedImport,
voidExport,
warnings with substring parameters
replString,
replId,
warnings with tree parameters
emptyArray,
fileVersion,
unsignedCompare,
doubleEntry,
warnings with tree parameters (and maybe others)
notPortable,
looksUgly,
reallyFunky
};
Type:
TYPE =
RECORD [
stb: SymbolTable.Base,
type: Symbols.Type];
Error: PROC [ErrorCode];
ErrorHti: PROC [ErrorCode, Symbols.Name];
ErrorN: PROC [ErrorCode, INTEGER];
ErrorNode: PROC [ErrorCode, Tree.Index];
ErrorNodeOp: PROC [ErrorCode, Tree.Index, Tree.NodeName];
ErrorSei: PROC [ErrorCode, Symbols.ISEIndex];
ErrorRope: PROC [ErrorCode, Rope.ROPE];
ErrorTree: PROC [ErrorCode, Tree.Link];
ErrorTreeOp: PROC [ErrorCode, Tree.Link, Tree.NodeName];
ErrorType: PROC [ErrorCode, Tree.Link, Type];
Warning: PROC [ErrorCode];
WarningNode: PROC [ErrorCode, Tree.Index];
WarningSei: PROC [ErrorCode, Symbols.ISEIndex];
WarningSubString: PROC [ErrorCode, ConvertUnsafe.SubString];
WarningRope: PROC [ErrorCode, Rope.ROPE];
WarningTree: PROC [ErrorCode, Tree.Link];
}.