diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2018-05-18 06:08:48 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2018-05-18 06:08:48 -0700 |
commit | a7916fbac400497b6ac35da8a689a3c2cb68141d (patch) | |
tree | 2a80ef3fcdc35977cf51d37f7d6b2f25498ba778 | |
parent | dbff4c5e634e23e3c957260ef8d7ddf59d81dbdb (diff) | |
download | txr-a7916fbac400497b6ac35da8a689a3c2cb68141d.tar.gz txr-a7916fbac400497b6ac35da8a689a3c2cb68141d.tar.bz2 txr-a7916fbac400497b6ac35da8a689a3c2cb68141d.zip |
C++ fixes related to recent Unicode work.
* lib.c (chk_wrealloc): convert needs to be a coerce.
* parser.l (grammar): Use yyg instead of yyscanner;
the latter is the same pointer but of void * type.
-rw-r--r-- | lib.c | 2 | ||||
-rw-r--r-- | parser.l | 6 |
2 files changed, 4 insertions, 4 deletions
@@ -2796,7 +2796,7 @@ wchar_t *chk_wrealloc(wchar_t *old, size_t nwchar) size_t size = nwchar * sizeof (wchar_t); if (size < nwchar) uw_throw(error_s, lit("string size overflow")); - return coerce(wchar_t *, chk_realloc(convert(mem_t *, old), + return coerce(wchar_t *, chk_realloc(coerce(mem_t *, old), sizeof (wchar_t) * nwchar)); } @@ -436,7 +436,7 @@ UONLY {U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U} || yy_top_state(yyscanner) == QWLIT) yy_pop_state(yyscanner); - yylval->lexeme = unicode_ident(yyscanner, yytext); + yylval->lexeme = unicode_ident(yyg, yytext); return SYMTOK; } @@ -449,7 +449,7 @@ UONLY {U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U} || yy_top_state(yyscanner) == QWLIT) yy_pop_state(yyscanner); - yylval->lexeme = unicode_ident(yyscanner, yytext); + yylval->lexeme = unicode_ident(yyg, yytext); return SYMTOK; } @@ -463,7 +463,7 @@ UONLY {U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U} yyerrorf(yyg, lit("bad token: ~a"), string_own(utf8_dup_from(yytext)), nao); - yylval->lexeme = unicode_ident(yyscanner, yytext); + yylval->lexeme = unicode_ident(yyg, yytext); return SYMTOK; } |