sig
  exception UnboundTypeIdentifier of Positions.position * MultiEquation.tname
  exception InvalidTypeVariableIdentifier of Positions.position *
              MultiEquation.tname
  exception UnboundDataConstructor of Positions.position * MiniAst.dname
  exception InvalidDataConstructorDefinition of Positions.position *
              MiniAst.dname
  exception UnboundTypeVariable of Positions.position * MultiEquation.tname
  exception MultipleLabels of Positions.position * CoreAlgebra.lname
  exception NonLinearPattern of Positions.position * MiniAst.name
  exception InvalidDisjunctionPattern of Positions.position
  exception NotEnoughPatternArgts of Positions.position
  exception InvalidNumberOfTypeVariable of Positions.position
  exception RecursiveDefMustBeVariable of Positions.position
  exception CannotGeneralize of Positions.position * MultiEquation.crterm
  exception NonDistinctVariables of Positions.position *
              MultiEquation.variable list
  exception CannotUnifyHeadWithTerm of Positions.position *
              MultiEquation.tname * MultiEquation.crterm
  exception NonExhaustiveMatch of Positions.position * MiniAst.pattern
  exception UnboundTypeConstructor of Positions.position *
              MultiEquation.tname
  exception KindError of Positions.position
  exception PartialDataConstructorApplication of Positions.position * 
              int * int
end