summaryrefslogtreecommitdiff
path: root/ltm.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2019-12-10 13:50:20 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2019-12-10 13:50:20 -0300
commit1e0ad018cef2a8e771787f126ce2150028749411 (patch)
treeb99b86adaa542e7481252b6525743e45d66d1c67 /ltm.c
parent95735bda46278a4bc0966d8a3c9079dd0072c51e (diff)
downloadlua-github-1e0ad018cef2a8e771787f126ce2150028749411.tar.gz
Comment about LUA_COMPAT_LT_LE moved to proper place
Diffstat (limited to 'ltm.c')
-rw-r--r--ltm.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/ltm.c b/ltm.c
index 1e32d86a..ca46f04e 100644
--- a/ltm.c
+++ b/ltm.c
@@ -188,6 +188,15 @@ void luaT_trybiniTM (lua_State *L, const TValue *p1, lua_Integer i2,
}
+/*
+** Calls an order tag method.
+** For lessequal, LUA_COMPAT_LT_LE keeps compatibility with old
+** behavior: if there is no '__le', try '__lt', based on l <= r iff
+** !(r < l) (assuming a total order). If the metamethod yields during
+** this substitution, the continuation has to know about it (to negate
+** the result of r<l); bit CIST_LEQ in the call status keeps that
+** information.
+*/
int luaT_callorderTM (lua_State *L, const TValue *p1, const TValue *p2,
TMS event) {
if (callbinTM(L, p1, p2, L->top, event)) /* try original event */