diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2005-11-25 11:29:32 -0200 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2005-11-25 11:29:32 -0200 |
| commit | db724e14e0b456a980f16a8adec4f20708c11af4 (patch) | |
| tree | d374a4135a6c762c54219b5bfa71e6e5d8953be0 | |
| parent | 1702953293ebdd770963b6fc0499d87d08f05a82 (diff) | |
| download | lua-db724e14e0b456a980f16a8adec4f20708c11af4.tar.gz lua-db724e14e0b456a980f16a8adec4f20708c11af4.tar.bz2 lua-db724e14e0b456a980f16a8adec4f20708c11af4.zip | |
new macro luai_numisnan
| -rw-r--r-- | lcode.c | 4 | ||||
| -rw-r--r-- | ltable.c | 4 |
2 files changed, 4 insertions, 4 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lcode.c,v 2.21 2005/11/08 19:44:31 roberto Exp roberto $ | 2 | ** $Id: lcode.c,v 2.22 2005/11/16 11:55:27 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 | */ |
| @@ -647,7 +647,7 @@ static int constfolding (OpCode op, expdesc *e1, expdesc *e2) { | |||
| 647 | case OP_LEN: return 0; /* no constant folding for 'len' */ | 647 | case OP_LEN: return 0; /* no constant folding for 'len' */ |
| 648 | default: lua_assert(0); r = 0; break; | 648 | default: lua_assert(0); r = 0; break; |
| 649 | } | 649 | } |
| 650 | if (r != r) return 0; /* do not attempt to produce NaN */ | 650 | if (luai_numisnan(r)) return 0; /* do not attempt to produce NaN */ |
| 651 | e1->u.nval = r; | 651 | e1->u.nval = r; |
| 652 | return 1; | 652 | return 1; |
| 653 | } | 653 | } |
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: ltable.c,v 2.26 2005/07/11 14:01:37 roberto Exp roberto $ | 2 | ** $Id: ltable.c,v 2.27 2005/10/24 17:37:52 roberto Exp roberto $ |
| 3 | ** Lua tables (hash) | 3 | ** Lua tables (hash) |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -495,7 +495,7 @@ TValue *luaH_set (lua_State *L, Table *t, const TValue *key) { | |||
| 495 | return cast(TValue *, p); | 495 | return cast(TValue *, p); |
| 496 | else { | 496 | else { |
| 497 | if (ttisnil(key)) luaG_runerror(L, "table index is nil"); | 497 | if (ttisnil(key)) luaG_runerror(L, "table index is nil"); |
| 498 | else if (ttisnumber(key) && !luai_numeq(nvalue(key), nvalue(key))) | 498 | else if (ttisnumber(key) && luai_numisnan(nvalue(key))) |
| 499 | luaG_runerror(L, "table index is NaN"); | 499 | luaG_runerror(L, "table index is NaN"); |
| 500 | return newkey(L, t, key); | 500 | return newkey(L, t, key); |
| 501 | } | 501 | } |
