--- parser3/src/main/compile.y 2001/03/10 11:44:41 1.82 +++ parser3/src/main/compile.y 2001/03/10 15:17:46 1.84 @@ -1,5 +1,5 @@ /* - $Id: compile.y,v 1.82 2001/03/10 11:44:41 paf Exp $ + $Id: compile.y,v 1.84 2001/03/10 15:17:46 paf Exp $ */ %{ @@ -496,8 +496,8 @@ string_inside_quotes_value: maybe_codes /* basics */ write_string: STRING { - $$=$1; - O($$, OP_WRITE); + // optimized from OP_STRING+OP_WRITE to OP_STRING__WRITE + change_string_literal_to_write_string_literal($$=$1) }; empty_double_value: /* empty */ { $$=VL(NEW VDouble(POOL, 0)) }; @@ -770,7 +770,7 @@ int yylex(YYSTYPE *lvalp, void *pc) { switch(c) { case '+': case '-': case '*': case '/': case '%': case '&': case '|': - case '<': case '>': case '=': case '!': + case '=': case '!': pop_LS(PC); PC->source--; if(--PC->col<0) { PC->line--; PC->col=-1; } result=EON; @@ -782,6 +782,7 @@ int yylex(YYSTYPE *lvalp, void *pc) { case ' ': case '\t': case '\n': case ';': case ']': case '}': case ')': case '"': + case '<': case '>': // these stand for HTML brackets and expression binary ops pop_LS(PC); PC->source--; if(--PC->col<0) { PC->line--; PC->col=-1; } result=EON;