From 30ad4c75db38639f52fb1c8be1c5a3f5b58e776f Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Mon, 22 Apr 2002 11:38:52 -0300 Subject: [PATCH] bug: 'local a,b; a,b = 1,f()' did not close f() --- lparser.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lparser.c b/lparser.c index dfc11899..688e39cd 100644 --- a/lparser.c +++ b/lparser.c @@ -1,5 +1,5 @@ /* -** $Id: lparser.c,v 1.175 2002/04/09 19:47:44 roberto Exp roberto $ +** $Id: lparser.c,v 1.176 2002/04/10 19:14:45 roberto Exp roberto $ ** Lua Parser ** See Copyright Notice in lua.h */ @@ -938,6 +938,7 @@ static void assignment (LexState *ls, struct LHS_assign *lh, int nvars) { ls->fs->freereg -= nexps - nvars; /* remove extra values */ } else { + luaK_setcallreturns(ls->fs, &e, 1); /* close last expression */ luaK_storevar(ls->fs, &lh->v, &e); return; /* avoid default */ }