cvsuser     04/03/12 12:03:54

  Modified:    imcc     imcc.y
  Log:
  reduce conflicts solved by Steve Fink
  
  Revision  Changes    Path
  1.127     +7 -13     parrot/imcc/imcc.y
  
  Index: imcc.y
  ===================================================================
  RCS file: /cvs/public/parrot/imcc/imcc.y,v
  retrieving revision 1.126
  retrieving revision 1.127
  diff -u -w -r1.126 -r1.127
  --- imcc.y    12 Mar 2004 08:51:48 -0000      1.126
  +++ imcc.y    12 Mar 2004 20:03:54 -0000      1.127
  @@ -276,7 +276,7 @@
   %type <sr> key keylist _keylist
   %type <sr> vars _vars var_or_i _var_or_i label_op
   %type <i> pasmcode pasmline pasm_inst
  -%type <sr> pasm_args lhs
  +%type <sr> pasm_args
   %type <symlist> targetlist arglist
   %token <sr> VAR
   %token <t> LINECOMMENT
  @@ -788,7 +788,7 @@
                           { $$ = MK_I(interp, cur_unit, "bxor", 3, $1, $3, $5); }
      | target '=' var '[' keylist ']'
                           { $$ = iINDEXFETCH(interp, cur_unit, $1, $3, $5); }
  -   | var '[' keylist ']' '=' var
  +   | target '[' keylist ']' '=' var
                           { $$ = iINDEXSET(interp, cur_unit, $1, $3, $6); }
      | target '=' NEW classname COMMA var
                           { $$ = iNEW(interp, cur_unit, $1, $4, $6, 1); }
  @@ -854,9 +854,9 @@
                          if ($1->set != 'P')
                             fataly(1, sourcefile, line, "Sub isn't a PMC");
                        }
  -       | lhs ptr IDENTIFIER { cur_obj = $1; $$ = mk_sub_address($3); }
  -       | lhs ptr STRINGC    { cur_obj = $1; $$ = mk_const($3, 'S'); }
  -       | lhs ptr target     { cur_obj = $1; $$ = $3; }
  +       | target ptr IDENTIFIER { cur_obj = $1; $$ = mk_sub_address($3); }
  +       | target ptr STRINGC    { cur_obj = $1; $$ = mk_const($3, 'S'); }
  +       | target ptr target     { cur_obj = $1; $$ = $3; }
      ;
   
   ptr:    POINTY { $$=0; }
  @@ -920,11 +920,6 @@
      | reg
      ;
   
  -lhs:
  -     VAR        /* duplicated because of reduce conflict */
  -   | reg
  -   ;
  -
   vars:
        /* empty */   {  $$ = NULL; }
      | _vars         {  $$ = $1; }
  @@ -937,7 +932,7 @@
   
   _var_or_i:
        var_or_i      {  regs[nargs++] = $1; }
  -   | lhs '[' keylist ']'
  +   | target '[' keylist ']'
                      {
                         regs[nargs++] = $1;
                         keyvec |= KEY_BIT(nargs);
  @@ -956,8 +951,7 @@
      ;
   
   var:
  -     VAR
  -   | reg
  +     target
      | const
      ;
   
  
  
  

Reply via email to