TOK_MINUS,
TOK_MUL_ASSIGN,
TOK_STAR,
+ TOK_MUL = TOK_STAR, /* Alias */
TOK_DIV_ASSIGN,
TOK_DIV,
TOK_BOOL_AND,
TOK_OR,
TOK_EQ,
TOK_ASSIGN,
- TOK_SHL_ASSIGN,
- TOK_SHL,
/* Inequalities */
TOK_LE,
TOK_GE,
TOK_GT,
+ TOK_SHL_ASSIGN,
+ TOK_SHL,
TOK_SHR_ASSIGN,
TOK_SHR,
TOK_XOR_ASSIGN,
typedef struct Token_ Token;
struct Token_ {
token_t Tok; /* The token itself */
- long IVal; /* The integer attribute */
+ long IVal; /* The integer attribute */
double FVal; /* The float attribute */
ident Ident; /* Identifier if IDENT */
unsigned Pos; /* Source line where the token comes from */
void NextToken (void);
/* Get next token from input stream */
-void Consume (token_t Token, unsigned ErrNum);
+void Consume (token_t Token, const char* ErrorMsg);
/* Eat token if it is the next in the input stream, otherwise print an error
* message.
*/
void ConsumeSemi (void);
/* Check for a semicolon and skip it. */
+void ConsumeComma (void);
+/* Check for a comma and skip it. */
+
void ConsumeLParen (void);
/* Check for a left parenthesis and skip it */