diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2014-11-21 10:15:57 -0200 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2014-11-21 10:15:57 -0200 |
commit | 5fbd40dbe5d6d3f7bd4717073eb2beacc8ebe7c9 (patch) | |
tree | 20b9b2cb5fe46d59dc97193429436d5110f23f8f /lobject.c | |
parent | 049cf14cf9f82a07387df4d0c9bdba5ba2fef22f (diff) | |
download | lua-5fbd40dbe5d6d3f7bd4717073eb2beacc8ebe7c9.tar.gz lua-5fbd40dbe5d6d3f7bd4717073eb2beacc8ebe7c9.tar.bz2 lua-5fbd40dbe5d6d3f7bd4717073eb2beacc8ebe7c9.zip |
'x//y' extended to floats
Diffstat (limited to 'lobject.c')
-rw-r--r-- | lobject.c | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lobject.c,v 2.98 2014/11/02 19:19:04 roberto Exp roberto $ | 2 | ** $Id: lobject.c,v 2.99 2014/11/04 19:16:25 roberto Exp roberto $ |
3 | ** Some generic functions over Lua objects | 3 | ** Some generic functions over Lua objects |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -101,6 +101,7 @@ static lua_Number numarith (lua_State *L, int op, lua_Number v1, | |||
101 | case LUA_OPMUL: return luai_nummul(L, v1, v2); | 101 | case LUA_OPMUL: return luai_nummul(L, v1, v2); |
102 | case LUA_OPDIV: return luai_numdiv(L, v1, v2); | 102 | case LUA_OPDIV: return luai_numdiv(L, v1, v2); |
103 | case LUA_OPPOW: return luai_numpow(L, v1, v2); | 103 | case LUA_OPPOW: return luai_numpow(L, v1, v2); |
104 | case LUA_OPIDIV: return luai_numidiv(L, v1, v2); | ||
104 | case LUA_OPUNM: return luai_numunm(L, v1); | 105 | case LUA_OPUNM: return luai_numunm(L, v1); |
105 | case LUA_OPMOD: { | 106 | case LUA_OPMOD: { |
106 | lua_Number m; | 107 | lua_Number m; |
@@ -115,9 +116,9 @@ static lua_Number numarith (lua_State *L, int op, lua_Number v1, | |||
115 | void luaO_arith (lua_State *L, int op, const TValue *p1, const TValue *p2, | 116 | void luaO_arith (lua_State *L, int op, const TValue *p1, const TValue *p2, |
116 | TValue *res) { | 117 | TValue *res) { |
117 | switch (op) { | 118 | switch (op) { |
118 | case LUA_OPIDIV: case LUA_OPBAND: case LUA_OPBOR: | 119 | case LUA_OPBAND: case LUA_OPBOR: case LUA_OPBXOR: |
119 | case LUA_OPBXOR: case LUA_OPSHL: case LUA_OPSHR: | 120 | case LUA_OPSHL: case LUA_OPSHR: |
120 | case LUA_OPBNOT: { /* operates only on integers */ | 121 | case LUA_OPBNOT: { /* operate only on integers */ |
121 | lua_Integer i1; lua_Integer i2; | 122 | lua_Integer i1; lua_Integer i2; |
122 | if (tointeger(p1, &i1) && tointeger(p2, &i2)) { | 123 | if (tointeger(p1, &i1) && tointeger(p2, &i2)) { |
123 | setivalue(res, intarith(L, op, i1, i2)); | 124 | setivalue(res, intarith(L, op, i1, i2)); |