diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2011-05-31 15:24:36 -0300 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2011-05-31 15:24:36 -0300 |
| commit | 9b7dddad7d3f4546f838834d9674eaf0f2fca3dd (patch) | |
| tree | cf0f283b5177d481023d0724d1c08a95d7482005 /lcode.c | |
| parent | 3f04a9f2c07bc06dddbc473178b314f1fd686701 (diff) | |
| download | lua-9b7dddad7d3f4546f838834d9674eaf0f2fca3dd.tar.gz lua-9b7dddad7d3f4546f838834d9674eaf0f2fca3dd.tar.bz2 lua-9b7dddad7d3f4546f838834d9674eaf0f2fca3dd.zip | |
no need for two different implementations for equality (one raw and
one with metamethods)
Diffstat (limited to 'lcode.c')
| -rw-r--r-- | lcode.c | 5 |
1 files changed, 3 insertions, 2 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lcode.c,v 2.53 2011/04/19 16:22:13 roberto Exp roberto $ | 2 | ** $Id: lcode.c,v 2.54 2011/04/28 14:00:11 roberto Exp roberto $ |
| 3 | ** Code generator for Lua | 3 | ** Code generator for Lua |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -23,6 +23,7 @@ | |||
| 23 | #include "lparser.h" | 23 | #include "lparser.h" |
| 24 | #include "lstring.h" | 24 | #include "lstring.h" |
| 25 | #include "ltable.h" | 25 | #include "ltable.h" |
| 26 | #include "lvm.h" | ||
| 26 | 27 | ||
| 27 | 28 | ||
| 28 | #define hasjumps(e) ((e)->t != (e)->f) | 29 | #define hasjumps(e) ((e)->t != (e)->f) |
| @@ -295,7 +296,7 @@ static int addk (FuncState *fs, TValue *key, TValue *v) { | |||
| 295 | if (ttisnumber(idx)) { | 296 | if (ttisnumber(idx)) { |
| 296 | lua_Number n = nvalue(idx); | 297 | lua_Number n = nvalue(idx); |
| 297 | lua_number2int(k, n); | 298 | lua_number2int(k, n); |
| 298 | if (luaO_rawequalObj(&f->k[k], v)) | 299 | if (luaV_rawequalObj(&f->k[k], v)) |
| 299 | return k; | 300 | return k; |
| 300 | /* else may be a collision (e.g., between 0.0 and "\0\0\0\0\0\0\0\0"); | 301 | /* else may be a collision (e.g., between 0.0 and "\0\0\0\0\0\0\0\0"); |
| 301 | go through and create a new entry for this value */ | 302 | go through and create a new entry for this value */ |
