diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2025-05-16 14:51:07 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2025-05-16 14:51:07 -0300 |
commit | ded2ad2d86f44424c6b6e12bf1b75836cfa9e502 (patch) | |
tree | 825ca888400928a3912687a8c4af793ad6b1f7b5 /lparser.c | |
parent | 3fb7a77731e6140674a6b13b73979256bfb95ce3 (diff) | |
download | lua-ded2ad2d86f44424c6b6e12bf1b75836cfa9e502.tar.gz lua-ded2ad2d86f44424c6b6e12bf1b75836cfa9e502.tar.bz2 lua-ded2ad2d86f44424c6b6e12bf1b75836cfa9e502.zip |
Slightly faster way to check for "global"
Diffstat (limited to 'lparser.c')
-rw-r--r-- | lparser.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -2001,10 +2001,10 @@ static void statement (LexState *ls) { | |||
2001 | case TK_NAME: { | 2001 | case TK_NAME: { |
2002 | /* compatibility code to parse global keyword when "global" | 2002 | /* compatibility code to parse global keyword when "global" |
2003 | is not reserved */ | 2003 | is not reserved */ |
2004 | if (strcmp(getstr(ls->t.seminfo.ts), "global") == 0) { | 2004 | if (ls->t.seminfo.ts == ls->glbn) { /* current = "global"? */ |
2005 | int lk = luaX_lookahead(ls); | 2005 | int lk = luaX_lookahead(ls); |
2006 | if (lk == TK_NAME || lk == '*' || lk == TK_FUNCTION) { | 2006 | if (lk == TK_NAME || lk == '*' || lk == TK_FUNCTION) { |
2007 | /* 'global <name>' or 'global *' or 'global function' */ | 2007 | /* 'global name' or 'global *' or 'global function' */ |
2008 | globalstatfunc(ls, line); | 2008 | globalstatfunc(ls, line); |
2009 | break; | 2009 | break; |
2010 | } | 2010 | } |