summaryrefslogtreecommitdiff
path: root/lvm.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2013-07-10 14:15:12 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2013-07-10 14:15:12 -0300
commit2f8c51a5529686959c6f6c5a8e899127b16c345d (patch)
tree6fcd69bf68ed7595578db0e196ad29863faf6257 /lvm.c
parentb5f5fcd78251300aee44d958b9ac000fa05e0478 (diff)
downloadlua-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.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lvm.c b/lvm.c
index fc335876..67aa58f8 100644
--- a/lvm.c
+++ b/lvm.c
@@ -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));