summaryrefslogtreecommitdiff
path: root/src/llex.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/llex.c')
-rw-r--r--src/llex.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/llex.c b/src/llex.c
index 2792ea9e..9918b2f4 100644
--- a/src/llex.c
+++ b/src/llex.c
@@ -1,5 +1,5 @@
/*
-** $Id: llex.c,v 2.17 2005/12/22 16:19:56 roberto Exp $
+** $Id: llex.c,v 2.18 2006/01/23 20:06:19 roberto Exp $
** Lexical Analyzer
** See Copyright Notice in lua.h
*/
@@ -193,12 +193,10 @@ static void read_numeral (LexState *ls, SemInfo *seminfo) {
do {
save_and_next(ls);
} while (isdigit(ls->current) || ls->current == '.');
- if (check_next(ls, "Ee")) { /* `E'? */
+ if (check_next(ls, "Ee")) /* `E'? */
check_next(ls, "+-"); /* optional exponent sign */
- while (isdigit(ls->current)) {
- save_and_next(ls);
- }
- }
+ while (isalnum(ls->current) || ls->current == '_')
+ save_and_next(ls);
save(ls, '\0');
buffreplace(ls, '.', ls->decpoint); /* follow locale for decimal point */
if (!luaO_str2d(luaZ_buffer(ls->buff), &seminfo->r)) /* format error? */