aboutsummaryrefslogtreecommitdiff
path: root/gen/gen_lexer.inc
diff options
context:
space:
mode:
Diffstat (limited to 'gen/gen_lexer.inc')
-rw-r--r--gen/gen_lexer.inc30
1 files changed, 16 insertions, 14 deletions
diff --git a/gen/gen_lexer.inc b/gen/gen_lexer.inc
index b6f9599..0e34d3f 100644
--- a/gen/gen_lexer.inc
+++ b/gen/gen_lexer.inc
@@ -1105,13 +1105,15 @@ case 36:
YY_RULE_SETUP
#line 156 "src/lexer.l"
{
- yylval->str = yytext;
+ /* skip quotation marks */
+ yylval->str = strdup(yytext + 1);
+ yylval->str[strlen(yylval->str) - 1] = '\0';
return STRING;
}
YY_BREAK
case 37:
YY_RULE_SETUP
-#line 161 "src/lexer.l"
+#line 163 "src/lexer.l"
{
yylval->num = lex_date(parser, src_loc(*yylloc), yytext);
return DATE_LITERAL;
@@ -1119,7 +1121,7 @@ YY_RULE_SETUP
YY_BREAK
case 38:
YY_RULE_SETUP
-#line 166 "src/lexer.l"
+#line 168 "src/lexer.l"
{
yylval->snum = lex_int(parser, src_loc(*yylloc), yytext);
return INT_LITERAL;
@@ -1127,47 +1129,47 @@ YY_RULE_SETUP
YY_BREAK
case 39:
YY_RULE_SETUP
-#line 171 "src/lexer.l"
+#line 173 "src/lexer.l"
{
- yylval->str = yytext;
+ yylval->str = strdup(yytext);
return IDENT;
}
YY_BREAK
case 40:
YY_RULE_SETUP
-#line 176 "src/lexer.l"
+#line 178 "src/lexer.l"
{
- yylval->str = yytext;
+ yylval->str = strdup(yytext);
return FUNC_IDENT;
}
YY_BREAK
case 41:
YY_RULE_SETUP
-#line 181 "src/lexer.l"
+#line 183 "src/lexer.l"
{
- yylval->str = yytext;
+ yylval->str = strdup(yytext);
return PROC_IDENT;
}
YY_BREAK
case 42:
/* rule 42 can match eol */
YY_RULE_SETUP
-#line 186 "src/lexer.l"
+#line 188 "src/lexer.l"
{/* skip whitespace */}
YY_BREAK
case 43:
YY_RULE_SETUP
-#line 188 "src/lexer.l"
+#line 190 "src/lexer.l"
{
lex_fail(parser, src_loc(*yylloc), "Unexpected token: %s", yytext);
}
YY_BREAK
case 44:
YY_RULE_SETUP
-#line 191 "src/lexer.l"
+#line 193 "src/lexer.l"
YY_FATAL_ERROR( "flex scanner jammed" );
YY_BREAK
-#line 1171 "gen/gen_lexer.inc"
+#line 1173 "gen/gen_lexer.inc"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(SC_COMMENT):
yyterminate();
@@ -2299,6 +2301,6 @@ void yyfree (void * ptr , yyscan_t yyscanner)
#define YYTABLES_NAME "yytables"
-#line 191 "src/lexer.l"
+#line 193 "src/lexer.l"