Removed a couple of shift/reduce warnings in grammar.

This commit is contained in:
Eric Pouech 2005-11-12 19:10:24 +00:00 committed by Alexandre Julliard
parent 939f9eaac8
commit e596a0113f
2 changed files with 6 additions and 4 deletions

View File

@ -79,7 +79,7 @@ int yyerror(const char*);
%left '+' '-'
%left '*' '/' '%'
%left OP_SIGN '!' '~' OP_DEREF /* OP_INC OP_DEC OP_ADDR */
%left '.' '[' OP_DRF
%left '.' '[' OP_DRF OP_SCOPE
%nonassoc ':'
%type <expression> expr lvalue
@ -164,8 +164,8 @@ identifier:
tIDENTIFIER { $$ = $1; }
| tPATH '!' tIDENTIFIER { $$ = lexeme_alloc_size(strlen($1) + 1 + strlen($3) + 1);
sprintf($$, "%s!%s", $1, $3); }
| identifier ':' ':' tIDENTIFIER { $$ = lexeme_alloc_size(strlen($1) + 2 + strlen($4) + 1);
sprintf($$, "%s::%s", $1, $4); }
| identifier OP_SCOPE tIDENTIFIER { $$ = lexeme_alloc_size(strlen($1) + 2 + strlen($3) + 1);
sprintf($$, "%s::%s", $1, $3); }
;
list_arg:
@ -374,7 +374,8 @@ lvalue_addr:
lvalue { $$ = expr_eval($1); }
;
lvalue: tNUM { $$ = expr_alloc_sconstant($1); }
lvalue:
tNUM { $$ = expr_alloc_sconstant($1); }
| tINTVAR { $$ = expr_alloc_internal_var($1); }
| identifier { $$ = expr_alloc_symbol($1); }
| lvalue OP_DRF tIDENTIFIER { $$ = expr_alloc_pstruct($1, $3); }

View File

@ -112,6 +112,7 @@ STRING \"[^\n"]+\"
"<<" { return OP_SHL; }
">>" { return OP_SHR; }
"->" { return OP_DRF; }
"::" { return OP_SCOPE; }
[-+<=>|&^()*/%:!~,\.] { return *yytext; }
"[" { return *yytext; }
"]" { return *yytext; }