aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2012-04-22 21:24:28 +0000
committerDimitri Sokolyuk <demon@dim13.org>2012-04-22 21:24:28 +0000
commitf8b1782dba2462403f1df62ecd1f8d94068ece4e (patch)
treea48bc3a519d01fbea00b98fd3fe86fd64cc38e90
parent628d04b24de44bf44f2efb347e041bfe0e61338d (diff)
add character constants
-rw-r--r--lexer.l9
1 files changed, 7 insertions, 2 deletions
diff --git a/lexer.l b/lexer.l
index f157edf..fe0f809 100644
--- a/lexer.l
+++ b/lexer.l
@@ -95,8 +95,13 @@ DEC [0-9]+
"\"" BEGIN(QUOTED);
<QUOTED>[^\"]+ {
- yylval.sval = strdup(yytext);
- return QSTRING;
+ if (strlen(yytext) == 1) {
+ yylval.ival = *yytext;
+ return NUMBER;
+ } else {
+ yylval.sval = strdup(yytext);
+ return QSTRING;
+ }
}
<QUOTED>"\"" BEGIN(INITIAL);