diff options
| -rw-r--r-- | llex.c | 10 |
1 files changed, 4 insertions, 6 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: llex.c,v 1.113 2002/10/08 18:46:08 roberto Exp roberto $ | 2 | ** $Id: llex.c,v 1.114 2002/10/09 13:00:08 roberto Exp roberto $ |
| 3 | ** Lexical Analyzer | 3 | ** Lexical Analyzer |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -73,10 +73,8 @@ void luaX_syntaxerror (LexState *ls, const char *msg) { | |||
| 73 | lasttoken = luaO_pushfstring(ls->L, "%s", getstr(ls->t.seminfo.ts)); | 73 | lasttoken = luaO_pushfstring(ls->L, "%s", getstr(ls->t.seminfo.ts)); |
| 74 | break; | 74 | break; |
| 75 | case TK_STRING: | 75 | case TK_STRING: |
| 76 | lasttoken = luaO_pushfstring(ls->L, "\"%s\"", getstr(ls->t.seminfo.ts)); | ||
| 77 | break; | ||
| 78 | case TK_NUMBER: | 76 | case TK_NUMBER: |
| 79 | lasttoken = luaO_pushfstring(ls->L, "%f", ls->t.seminfo.r); | 77 | lasttoken = luaO_pushfstring(ls->L, "%s", luaZ_buffer(ls->buff)); |
| 80 | break; | 78 | break; |
| 81 | default: | 79 | default: |
| 82 | lasttoken = luaX_token2str(ls, ls->t.token); | 80 | lasttoken = luaX_token2str(ls, ls->t.token); |
| @@ -149,7 +147,7 @@ void luaX_setinput (lua_State *L, LexState *LS, ZIO *z, TString *source) { | |||
| 149 | luaZ_openspace((LS)->L, (LS)->buff, (len)+EXTRABUFF) | 147 | luaZ_openspace((LS)->L, (LS)->buff, (len)+EXTRABUFF) |
| 150 | 148 | ||
| 151 | #define save(LS, c, l) \ | 149 | #define save(LS, c, l) \ |
| 152 | (cast(char *, luaZ_buffer((LS)->buff))[l++] = cast(char, c)) | 150 | (luaZ_buffer((LS)->buff)[l++] = cast(char, c)) |
| 153 | #define save_and_next(LS, l) (save(LS, LS->current, l), next(LS)) | 151 | #define save_and_next(LS, l) (save(LS, LS->current, l), next(LS)) |
| 154 | 152 | ||
| 155 | 153 | ||
| @@ -198,7 +196,7 @@ static void read_numeral (LexState *LS, int comma, SemInfo *seminfo) { | |||
| 198 | } | 196 | } |
| 199 | } | 197 | } |
| 200 | save(LS, '\0', l); | 198 | save(LS, '\0', l); |
| 201 | if (!luaO_str2d(cast(char *, luaZ_buffer(LS->buff)), &seminfo->r)) | 199 | if (!luaO_str2d(luaZ_buffer(LS->buff), &seminfo->r)) |
| 202 | luaX_lexerror(LS, "malformed number", TK_NUMBER); | 200 | luaX_lexerror(LS, "malformed number", TK_NUMBER); |
| 203 | } | 201 | } |
| 204 | 202 | ||
