--- parser3/src/main/compile.y 2001/03/25 08:52:35 1.114 +++ parser3/src/main/compile.y 2001/03/26 09:59:38 1.116 @@ -5,7 +5,7 @@ Author: Alexander Petrosyan (http://design.ru/paf) - $Id: compile.y,v 1.114 2001/03/25 08:52:35 paf Exp $ + $Id: compile.y,v 1.116 2001/03/26 09:59:38 paf Exp $ */ /** @@ -359,6 +359,10 @@ store_square_param: '[' store_code_param store_round_param: '(' store_expr_param_parts ')' {$$=$2}; store_curly_param: '{' store_curly_param_parts '}' {$$=$2}; store_code_param_parts: + empty /* optimized [] case */ +| store_code_param_parts_not_empty +; +store_code_param_parts_not_empty: store_code_param_part | store_code_param_parts ';' store_code_param_part { $$=$1; P($$, $3) } ; @@ -371,8 +375,7 @@ store_curly_param_parts: | store_curly_param_parts ';' store_curly_param_part { $$=$1; P($$, $3) } ; store_code_param_part: - empty /* optimized [] case */ -| STRING { /* optimized [STRING] case */ + STRING { /* optimized [STRING] case */ $$=$1; O($$, OP_STORE_PARAM); } @@ -621,8 +624,7 @@ static int yylex(YYSTYPE *lvalp, void *p if(c=='#' && PC.col==1) { if(end!=begin) { // append piece till # - PC.string->APPEND_SPECIFIC_TAINTED(begin, end-begin, - String::UL_TABLE, PC.file, begin_line); + PC.string->APPEND(begin, end-begin, PC.file, begin_line); } // fall into COMMENT lexical state [wait for \n] push_LS(PC, LS_COMMENT);