diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2013-07-10 14:15:12 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2013-07-10 14:15:12 -0300 |
commit | 2f8c51a5529686959c6f6c5a8e899127b16c345d (patch) | |
tree | 6fcd69bf68ed7595578db0e196ad29863faf6257 /lvm.c | |
parent | b5f5fcd78251300aee44d958b9ac000fa05e0478 (diff) | |
download | lua-2f8c51a5529686959c6f6c5a8e899127b16c345d.tar.gz lua-2f8c51a5529686959c6f6c5a8e899127b16c345d.tar.bz2 lua-2f8c51a5529686959c6f6c5a8e899127b16c345d.zip |
use unsigneds for unary minus, too
Diffstat (limited to 'lvm.c')
-rw-r--r-- | lvm.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lvm.c,v 2.174 2013/06/19 14:27:00 roberto Exp roberto $ | 2 | ** $Id: lvm.c,v 2.175 2013/06/20 15:02:49 roberto Exp roberto $ |
3 | ** Lua virtual machine | 3 | ** Lua virtual machine |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -334,7 +334,7 @@ lua_Integer luaV_div (lua_State *L, lua_Integer x, lua_Integer y) { | |||
334 | if (y == 0) | 334 | if (y == 0) |
335 | luaG_runerror(L, "attempt to divide by zero"); | 335 | luaG_runerror(L, "attempt to divide by zero"); |
336 | else /* -1 */ | 336 | else /* -1 */ |
337 | return -x; /* avoid overflow with 0x80000... */ | 337 | return intop(-, 0, x); /* avoid overflow with 0x80000... */ |
338 | } | 338 | } |
339 | else { | 339 | else { |
340 | lua_Integer d = x / y; /* perform division */ | 340 | lua_Integer d = x / y; /* perform division */ |
@@ -699,7 +699,7 @@ void luaV_execute (lua_State *L) { | |||
699 | lua_Number nb; | 699 | lua_Number nb; |
700 | if (ttisinteger(rb)) { | 700 | if (ttisinteger(rb)) { |
701 | lua_Integer ib = ivalue(rb); | 701 | lua_Integer ib = ivalue(rb); |
702 | setivalue(ra, -ib); | 702 | setivalue(ra, intop(-, 0, ib)); |
703 | } | 703 | } |
704 | else if (tonumber(rb, &nb)) { | 704 | else if (tonumber(rb, &nb)) { |
705 | setnvalue(ra, luai_numunm(L, nb)); | 705 | setnvalue(ra, luai_numunm(L, nb)); |