diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2011-10-07 17:45:19 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2011-10-07 17:45:19 -0300 |
commit | 217e67cb224cbb9bd68a1bce7454b60d50894f79 (patch) | |
tree | dfe4ec94dbbc36707699f6e01cbeff62d8871041 /lvm.c | |
parent | 9bbfe9f3fde5225bfa441f9d26b84544cc6c9b6d (diff) | |
download | lua-217e67cb224cbb9bd68a1bce7454b60d50894f79.tar.gz lua-217e67cb224cbb9bd68a1bce7454b60d50894f79.tar.bz2 lua-217e67cb224cbb9bd68a1bce7454b60d50894f79.zip |
new type 'l_noret' for function that do not return
Diffstat (limited to 'lvm.c')
-rw-r--r-- | lvm.c | 16 |
1 files changed, 8 insertions, 8 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lvm.c,v 2.142 2011/08/09 20:58:29 roberto Exp roberto $ | 2 | ** $Id: lvm.c,v 2.143 2011/08/17 20:26:47 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 | */ |
@@ -226,9 +226,9 @@ int luaV_lessthan (lua_State *L, const TValue *l, const TValue *r) { | |||
226 | return luai_numlt(L, nvalue(l), nvalue(r)); | 226 | return luai_numlt(L, nvalue(l), nvalue(r)); |
227 | else if (ttisstring(l) && ttisstring(r)) | 227 | else if (ttisstring(l) && ttisstring(r)) |
228 | return l_strcmp(rawtsvalue(l), rawtsvalue(r)) < 0; | 228 | return l_strcmp(rawtsvalue(l), rawtsvalue(r)) < 0; |
229 | else if ((res = call_orderTM(L, l, r, TM_LT)) != -1) | 229 | else if ((res = call_orderTM(L, l, r, TM_LT)) < 0) |
230 | return res; | 230 | luaG_ordererror(L, l, r); |
231 | return luaG_ordererror(L, l, r); | 231 | return res; |
232 | } | 232 | } |
233 | 233 | ||
234 | 234 | ||
@@ -238,11 +238,11 @@ int luaV_lessequal (lua_State *L, const TValue *l, const TValue *r) { | |||
238 | return luai_numle(L, nvalue(l), nvalue(r)); | 238 | return luai_numle(L, nvalue(l), nvalue(r)); |
239 | else if (ttisstring(l) && ttisstring(r)) | 239 | else if (ttisstring(l) && ttisstring(r)) |
240 | return l_strcmp(rawtsvalue(l), rawtsvalue(r)) <= 0; | 240 | return l_strcmp(rawtsvalue(l), rawtsvalue(r)) <= 0; |
241 | else if ((res = call_orderTM(L, l, r, TM_LE)) != -1) /* first try `le' */ | 241 | else if ((res = call_orderTM(L, l, r, TM_LE)) >= 0) /* first try `le' */ |
242 | return res; | 242 | return res; |
243 | else if ((res = call_orderTM(L, r, l, TM_LT)) != -1) /* else try `lt' */ | 243 | else if ((res = call_orderTM(L, r, l, TM_LT)) < 0) /* else try `lt' */ |
244 | return !res; | 244 | luaG_ordererror(L, l, r); |
245 | return luaG_ordererror(L, l, r); | 245 | return !res; |
246 | } | 246 | } |
247 | 247 | ||
248 | 248 | ||