(* Copyright (C) 1989, Digital Equipment Corporation *) (* All rights reserved. *) (* See the file COPYRIGHT for a full description. *) (* File: Ident.m3 *) (* Last Modified On Wed Jul 12 10:06:01 1989 By kalsow *) MODULE Ident; IMPORT String, Token, Scanner; FROM Scanner IMPORT MatchID, GetToken, cur; PROCEDURE ParseList (READONLY fail: Token.Set): INTEGER = VAR start: INTEGER; BEGIN start := top; LOOP offset[top] := cur.offset; stack[top] := MatchID (fail, Token.Set {Token.T.tCOMMA}); INC (top); IF (cur.token # Token.T.tCOMMA) THEN EXIT; END; GetToken (); (* , *) END; RETURN (top - start); END ParseList; BEGIN END Ident.