Diff for /parser3/src/main/compile.tab.C between versions 1.81.2.13.2.9 and 1.81.2.13.2.15

version 1.81.2.13.2.9, 2003/03/21 14:49:00 version 1.81.2.13.2.15, 2003/03/27 10:04:07
Line 1073  case 8: Line 1073  case 8:
                         YYERROR;                          YYERROR;
                 }                  }
         } else if(command==USE_CONTROL_METHOD_NAME) {          } else if(command==USE_CONTROL_METHOD_NAME) {
                 for(int i=0; i<strings_code->count(); i+=2)                   for(size_t i=0; i<strings_code->count(); i+=2) 
                         PC.request.use_file(PC.request.main_class, *LA2S(*strings_code, i));                          PC.request.use_file(PC.request.main_class, *LA2S(*strings_code, i));
         } else if(command==BASE_NAME) {          } else if(command==BASE_NAME) {
                 if(PC.cclass->base_class()) { // already changed from default?                  if(PC.cclass->base_class()) { // already changed from default?
Line 1125  case 16: Line 1125  case 16:
         const String& name=*LA2S(*yyvsp[-5]);          const String& name=*LA2S(*yyvsp[-5]);
   
         YYSTYPE params_names_code=yyvsp[-4];          YYSTYPE params_names_code=yyvsp[-4];
         ArrayString* params_names;          ArrayString* params_names=0;
         if(int size=params_names_code->count()) {          if(int size=params_names_code->count()) {
                 params_names=new ArrayString;                  params_names=new ArrayString;
                 for(int i=0; i<size; i+=2)                  for(int i=0; i<size; i+=2)
Line 1133  case 16: Line 1133  case 16:
         }          }
   
         YYSTYPE locals_names_code=yyvsp[-3];          YYSTYPE locals_names_code=yyvsp[-3];
         ArrayString* locals_names;          ArrayString* locals_names=0;
         if(int size=locals_names_code->count()) {          if(int size=locals_names_code->count()) {
                 locals_names=new ArrayString;                  locals_names=new ArrayString;
                 for(int i=0; i<size; i+=2)                  for(int i=0; i<size; i+=2)
Line 1198  case 42: Line 1198  case 42:
                 // ^if ELEMENT -> ^if ELEMENT_OR_OPERATOR                  // ^if ELEMENT -> ^if ELEMENT_OR_OPERATOR
                 // OP_VALUE+string+OP_GET_ELEMENT. -> OP_VALUE+string+OP_GET_ELEMENT_OR_OPERATOR.                  // OP_VALUE+string+OP_GET_ELEMENT. -> OP_VALUE+string+OP_GET_ELEMENT_OR_OPERATOR.
                 if(PC.in_call_value && diving_code->count()==3)                  if(PC.in_call_value && diving_code->count()==3)
                         (*diving_code)[2].code=OP_GET_ELEMENT_OR_OPERATOR;                          diving_code->put(2, OP_GET_ELEMENT_OR_OPERATOR);
                 P(*yyval, *diving_code);                  P(*yyval, *diving_code);
         }          }
         /* diving code; stack: current context */          /* diving code; stack: current context */
Line 2602  break2: Line 2602  break2:
                         PC.string.append(begin, end-begin);                          PC.string.append(begin, end-begin);
                 }                  }
         }          }
         if(PC.string!=CORD_EMPTY) { // something accumulated?          if(!PC.string.is_empty()) { // something accumulated?
                 // create STRING value: array of OP_VALUE+vstring                  // create STRING value: array of OP_VALUE+vstring
                 *lvalp=VL(new VString(*new String(PC.string, String::L_CLEAN)));                  *lvalp=VL(new VString(*new String(PC.string, String::L_CLEAN)));
                 // new pieces storage                  // new pieces storage

Removed from v.1.81.2.13.2.9  
changed lines
  Added in v.1.81.2.13.2.15


E-mail: