diff options
author | Eelco Dolstra <e.dolstra@tudelft.nl> | 2010-10-29T15·04+0000 |
---|---|---|
committer | Eelco Dolstra <e.dolstra@tudelft.nl> | 2010-10-29T15·04+0000 |
commit | 4aced7f8d0d5d2c1057b0f46a70a37a577f81fa5 (patch) | |
tree | 1908294aa8f029be6bc4c0f227074391dbaeee9b /src/libexpr/lexer.l | |
parent | 8dadcede65c75488da4cc5e5d8266c4b176cb7e5 (diff) | |
parent | 26def5392f6f6364aa0939a2d4fc7705e786d38d (diff) |
* Merge the GC branch.
Diffstat (limited to 'src/libexpr/lexer.l')
-rw-r--r-- | src/libexpr/lexer.l | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/libexpr/lexer.l b/src/libexpr/lexer.l index f29f9b684332..5b27e2582d2b 100644 --- a/src/libexpr/lexer.l +++ b/src/libexpr/lexer.l @@ -46,7 +46,7 @@ static void adjustLoc(YYLTYPE * loc, const char * s, size_t len) } -static Expr * unescapeStr(const char * s) +static Expr * unescapeStr(SymbolTable & symbols, const char * s) { string t; char c; @@ -66,7 +66,7 @@ static Expr * unescapeStr(const char * s) } else t += c; } - return new ExprString(t); + return new ExprString(symbols.create(t)); } @@ -119,7 +119,7 @@ inherit { return INHERIT; } "$\"" will be consumed as part of a string, rather than a "$" followed by the string terminator. Disallow "$\"" for now. */ - yylval->e = unescapeStr(yytext); + yylval->e = unescapeStr(data->symbols, yytext); return STR; } <STRING>\$\{ { BEGIN(INITIAL); return DOLLAR_CURLY; } @@ -140,7 +140,7 @@ inherit { return INHERIT; } return IND_STR; } <IND_STRING>\'\'\\. { - yylval->e = unescapeStr(yytext + 2); + yylval->e = unescapeStr(data->symbols, yytext + 2); return IND_STR; } <IND_STRING>\$\{ { BEGIN(INITIAL); return DOLLAR_CURLY; } |