-- file Counting.mesa
-- last edited by Russ Atkinson, October 1, 1980  12:02 PM
-- last edited by Satterthwaite, May 11, 1983 9:22 am

DIRECTORY
  CodeDefs: TYPE USING [Lexeme, StoreOptions, VarIndex],
  Symbols: TYPE USING [SEIndex, RecordSEIndex],
  Tree: TYPE USING [Link];

Counting: DEFINITIONS = {
  OPEN CodeDefs;

  Allocate: PROC [zone: Tree.Link, type: Symbols.SEIndex, catch: Tree.Link, pushSize: PROC];

  CheckArgRefs: PROC [t: Tree.Link, rsei: Symbols.RecordSEIndex] RETURNS [safe: BOOL];

  FillCounted: PROC [space, source: VarIndex, options: StoreOptions, type: Symbols.SEIndex];

  Free: PROC [var: VarIndex, counted: BOOL, zone, catch: Tree.Link];

  LoadLongAddress: PROC [v: VarIndex];

  VarVarAssignCounted: PROC [to, from: VarIndex, options: StoreOptions, type: Symbols.SEIndex]
    RETURNS [Lexeme];

  }.