From: Sergey Kaplun via Tarantool-patches <tarantool-patches@dev.tarantool.org>
To: Igor Munkin <imun@tarantool.org>
Cc: tarantool-patches@dev.tarantool.org
Subject: Re: [Tarantool-patches] [PATCH v2 luajit 20/30] test: adapt PUC Lua test for args in vararg func
Date: Fri, 2 Apr 2021 10:21:26 +0300 [thread overview]
Message-ID: <YGbF9oomoQPdevSJ@root> (raw)
In-Reply-To: <20210331095145.GG29703@tarantool.org>
Igor,
Thanks for the review!
On 31.03.21, Igor Munkin wrote:
> Sergey,
>
> Thanks for the patch! I can't understand why this patch is separated
> from the previous two (10 and 11). Could you provide a rationale for
> this, please? Also consider the comments below.
Answered about difference with 10th here [1].
I'm totally OK to squash it with 11th.
>
> On 26.03.21, Sergey Kaplun wrote:
> > Lua 5.1 interprets ... in the vararg functions like additional first
>
> Typo: s/like additional/as an additional/.
Fixed.
>
> > argument, unlike LuaJIT does. All extra arguments is set into `arg`
>
> Typo: s/arguments is set/arguments are set/.
Fixed.
>
> > variable.
> >
> > Implicit `arg` parameter for old-style vararg functions was finally
> > removed in Lua 5.2. This patch adjust tests in vararg.lua considering
>
> Minor: Did LuaJIT always respect such behaviour? If no, please mention
> the commit where it has been changed.
Yes, at least since LuaJIT-2.0.0-beta1, AFAICS.
| $ src/luajit -v -e 'local function f(...) print(arg) end f(1, 3, 4)'
| LuaJIT 2.0.0-beta1 -- Copyright (C) 2005-2009 Mike Pall. http://luajit.org/
| nil
>
> > Lua 5.2 test suite taken from
> > https://www.lua.org/tests/lua-5.2.0-tests.tar.gz.
> >
> > Closes tarantool/tarantool#5712
>
> As we discussed before: s/Closes/Resolves/.
Fixed.
>
> > Part of tarantool/tarantool#5845
> > Part of tarantool/tarantool#4473
> > ---
> > test/PUC-Lua-5.1-tests/vararg.lua | 16 ++++++++++++----
> > 1 file changed, 12 insertions(+), 4 deletions(-)
> >
> > diff --git a/test/PUC-Lua-5.1-tests/vararg.lua b/test/PUC-Lua-5.1-tests/vararg.lua
> > index ae068fa..efb76c5 100644
> > --- a/test/PUC-Lua-5.1-tests/vararg.lua
> > +++ b/test/PUC-Lua-5.1-tests/vararg.lua
> > @@ -2,9 +2,13 @@ print('testing vararg')
> >
> > _G.arg = nil
> >
> > +-- Lua 5.1 interprets ... in the vararg functions like additional
>
> Typo: s/like additional/as an additional/.
Fixed.
>
> > +-- first argument, unlike LuaJIT does. All extra arguments is set
>
> Typo: s/arguments is set/arguments are set/.
Fixed.
>
> > +-- into `arg` variable. This extension is from Lua 5.2.
> > +-- See also https://github.com/tarantool/tarantool/issues/5712.
>
> Side note: What is the difference between #5712 and #5694? They look
> like duplicates to me, and so provide another rationale for squashing
> all three patches into a single one.
Answered about difference with 10th here [1]. Different tickets was
created to be able "to eat mamonth by parts" -- to fix later not all,
but single patch.
I'm totally OK to squash it with 11th.
>
> > +-- LuaJIT: Test is adapted from PUC-Rio Lua 5.2 test suite.
> > function f(a, ...)
> > - assert(type(arg) == 'table')
> > - assert(type(arg.n) == 'number')
> > + local arg = {n = select('#', ...), ...}
>
> Why did you drop the assertions above? They are trivial (as many of
> others in this suite), but still check that everything is fine (e.g.
> that <select> yields a number).
Just following Lua 5.2 test suite behaviour.
Side note: we do not test that select returns number here, and the
first assert is totally redundant.
>
> > for i=1,arg.n do assert(a[i]==arg[i]) end
> > return arg.n
> > end
>
> <snipped>
>
> > @@ -42,7 +48,9 @@ a = call(print, {'+'})
> > assert(a == nil)
> >
> > local t = {1, 10}
> > -function t:f (...) return self[arg[1]]+arg.n end
> > +-- LuaJIT: Test chunk is adapted from PUC-Rio Lua 5.2 test suite.
> > +-- See the comment above.
> > +function t:f (...) local arg = {...}; return self[...]+#arg end
>
> Why didn't you create the same structure as elsewhere above? Why did you
> change <self> indexing? AFAIU, after creating the *right* <arg> variable
> everything should work with no other changes.
Just following Lua 5.2 test suite behaviour. Your solution is good too.
>
> > assert(t:f(1,4) == 3 and t:f(2) == 11)
> > print('+')
> >
> > --
> > 2.31.0
> >
>
> --
> Best regards,
> IM
[1]: https://lists.tarantool.org/pipermail/tarantool-patches/2021-April/023220.html
--
Best regards,
Sergey Kaplun
next prev parent reply other threads:[~2021-04-02 7:22 UTC|newest]
Thread overview: 153+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-26 7:42 [Tarantool-patches] [PATCH v2 luajit 00/30] Adapt PUC-Rio Lua 5.1 test suite Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 01/30] test: add " Sergey Kaplun via Tarantool-patches
2021-03-26 10:14 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:13 ` Igor Munkin via Tarantool-patches
2021-04-01 8:11 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 02/30] test: add compiling for C libs from PUC-Rio-Lua5.1 Sergey Kaplun via Tarantool-patches
2021-03-26 11:01 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:14 ` Igor Munkin via Tarantool-patches
2021-04-01 8:21 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 03/30] test: adapt Lua 5.1 suite for out-of-source build Sergey Kaplun via Tarantool-patches
2021-03-26 11:07 ` Sergey Ostanevich via Tarantool-patches
2021-03-26 14:25 ` Sergey Kaplun via Tarantool-patches
2021-03-31 22:58 ` Igor Munkin via Tarantool-patches
2021-04-01 8:43 ` Sergey Kaplun via Tarantool-patches
2021-03-31 22:58 ` Igor Munkin via Tarantool-patches
2021-04-01 8:40 ` Sergey Kaplun via Tarantool-patches
2021-04-06 16:56 ` Igor Munkin via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 04/30] test: remove quotes in progname from <main.lua> Sergey Kaplun via Tarantool-patches
2021-03-26 11:12 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 22:58 ` Igor Munkin via Tarantool-patches
2021-04-01 8:50 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 05/30] test: adapt arg availability test from Lua suite Sergey Kaplun via Tarantool-patches
2021-03-26 11:22 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 22:58 ` Igor Munkin via Tarantool-patches
2021-04-01 9:37 ` Sergey Kaplun via Tarantool-patches
2021-04-06 15:24 ` Igor Munkin via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 06/30] test: disable PUC Lua tests confused by -v output Sergey Kaplun via Tarantool-patches
2021-03-26 11:26 ` Sergey Ostanevich via Tarantool-patches
2021-03-26 14:31 ` Sergey Kaplun via Tarantool-patches
2021-03-31 22:58 ` Igor Munkin via Tarantool-patches
2021-04-01 9:56 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 07/30] test: disable Lua tests for bytecode with header Sergey Kaplun via Tarantool-patches
2021-03-26 11:30 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 22:59 ` Igor Munkin via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 08/30] test: disable JIT for GC step counting tests Sergey Kaplun via Tarantool-patches
2021-03-26 11:32 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:14 ` Igor Munkin via Tarantool-patches
2021-04-01 10:10 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 09/30] test: disable Lua suite tests for line hook Sergey Kaplun via Tarantool-patches
2021-03-26 11:35 ` Sergey Ostanevich via Tarantool-patches
2021-03-26 14:33 ` Sergey Kaplun via Tarantool-patches
2021-03-31 22:59 ` Igor Munkin via Tarantool-patches
2021-04-01 10:06 ` Sergey Kaplun via Tarantool-patches
2021-04-06 19:45 ` Igor Munkin via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 10/30] test: adapt test for debug.setlocal in Lua suite Sergey Kaplun via Tarantool-patches
2021-03-26 11:44 ` Sergey Ostanevich via Tarantool-patches
2021-03-26 14:45 ` Sergey Kaplun via Tarantool-patches
2021-03-30 22:14 ` Igor Munkin via Tarantool-patches
2021-04-01 10:16 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 11/30] test: adapt getlocal PUC test for vararg func Sergey Kaplun via Tarantool-patches
2021-03-26 11:47 ` Sergey Ostanevich via Tarantool-patches
2021-03-26 14:52 ` Sergey Kaplun via Tarantool-patches
2021-03-30 22:15 ` Igor Munkin via Tarantool-patches
2021-04-01 11:37 ` Sergey Kaplun via Tarantool-patches
2021-04-06 20:09 ` Igor Munkin via Tarantool-patches
2021-04-06 20:40 ` Igor Munkin via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 12/30] test: adapt PUC Lua test with count hooks Sergey Kaplun via Tarantool-patches
2021-03-26 11:49 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:15 ` Igor Munkin via Tarantool-patches
2021-04-01 11:42 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 13/30] test: disable PUC Lua test for tail call info Sergey Kaplun via Tarantool-patches
2021-03-26 14:43 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:15 ` Igor Munkin via Tarantool-patches
2021-04-01 11:52 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 14/30] test: adapt activeline check in the PUC Lua test Sergey Kaplun via Tarantool-patches
2021-03-26 14:50 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:15 ` Igor Munkin via Tarantool-patches
2021-04-01 11:58 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 15/30] test: disable PUC-Lua test for per-coroutine hooks Sergey Kaplun via Tarantool-patches
2021-03-26 14:54 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:16 ` Igor Munkin via Tarantool-patches
2021-04-01 12:03 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:42 ` [Tarantool-patches] [PATCH v2 luajit 16/30] test: adapt PUC Lua test for %q in fmt for LuaJIT Sergey Kaplun via Tarantool-patches
2021-03-26 14:56 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:16 ` Igor Munkin via Tarantool-patches
2021-04-01 12:33 ` Sergey Kaplun via Tarantool-patches
2021-04-06 21:37 ` Igor Munkin via Tarantool-patches
2021-04-07 15:50 ` Sergey Kaplun via Tarantool-patches
2021-04-07 16:31 ` Igor Munkin via Tarantool-patches
2021-04-08 8:51 ` Sergey Kaplun via Tarantool-patches
2021-04-12 10:26 ` Igor Munkin via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 17/30] test: disable locale-depended tests for Lua suite Sergey Kaplun via Tarantool-patches
2021-03-26 14:58 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:16 ` Igor Munkin via Tarantool-patches
2021-04-01 19:12 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 18/30] test: replace math.mod to math.fmod for Lua tests Sergey Kaplun via Tarantool-patches
2021-03-26 15:12 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:17 ` Igor Munkin via Tarantool-patches
2021-03-26 15:16 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:16 ` Igor Munkin via Tarantool-patches
2021-04-01 19:36 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 19/30] test: remove assert for string.gfind check Sergey Kaplun via Tarantool-patches
2021-03-26 15:14 ` Sergey Ostanevich via Tarantool-patches
2021-03-30 22:17 ` Igor Munkin via Tarantool-patches
2021-04-02 7:05 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 20/30] test: adapt PUC Lua test for args in vararg func Sergey Kaplun via Tarantool-patches
2021-03-26 14:54 ` Sergey Kaplun via Tarantool-patches
2021-03-26 15:22 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 9:51 ` Igor Munkin via Tarantool-patches
2021-04-02 7:21 ` Sergey Kaplun via Tarantool-patches [this message]
2021-04-06 20:45 ` Igor Munkin via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 21/30] test: disable test for getfenv in closure tailcall Sergey Kaplun via Tarantool-patches
2021-03-26 15:41 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 9:51 ` Igor Munkin via Tarantool-patches
2021-04-02 7:40 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 22/30] test: disable PUC Lua test for var names in error Sergey Kaplun via Tarantool-patches
2021-03-26 15:44 ` Sergey Ostanevich via Tarantool-patches
2021-03-26 16:01 ` Sergey Kaplun via Tarantool-patches
2021-03-31 19:23 ` Igor Munkin via Tarantool-patches
2021-04-02 7:48 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 23/30] test: disable PUC Lua test for fast function name Sergey Kaplun via Tarantool-patches
2021-03-26 15:45 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 19:23 ` Igor Munkin via Tarantool-patches
2021-04-02 8:14 ` Sergey Kaplun via Tarantool-patches
2021-04-06 21:37 ` Igor Munkin via Tarantool-patches
2021-04-07 16:06 ` Sergey Kaplun via Tarantool-patches
2021-04-07 16:11 ` Igor Munkin via Tarantool-patches
2021-04-07 19:57 ` Sergey Kaplun via Tarantool-patches
2021-04-12 9:36 ` Igor Munkin via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 24/30] test: disable PUC Lua test for non-asci identifier Sergey Kaplun via Tarantool-patches
2021-03-26 15:46 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 19:23 ` Igor Munkin via Tarantool-patches
2021-04-02 8:20 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 25/30] test: disable PUC Lua error test for syntax level Sergey Kaplun via Tarantool-patches
2021-03-26 15:52 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 19:24 ` Igor Munkin via Tarantool-patches
2021-04-02 8:30 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 26/30] test: disable tests with multiple -l options Sergey Kaplun via Tarantool-patches
2021-03-26 15:56 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 19:24 ` Igor Munkin via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 27/30] test: disable PUC Lua test for checking arg layout Sergey Kaplun via Tarantool-patches
2021-03-26 15:58 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 19:24 ` Igor Munkin via Tarantool-patches
2021-04-02 8:35 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 28/30] test: disable PUC Lua test checking -h option Sergey Kaplun via Tarantool-patches
2021-03-26 15:58 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 19:24 ` Igor Munkin via Tarantool-patches
2021-04-02 8:39 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 29/30] test: disable PUC Lua hanging GC test Sergey Kaplun via Tarantool-patches
2021-03-26 16:03 ` Sergey Ostanevich via Tarantool-patches
2021-03-31 19:24 ` Igor Munkin via Tarantool-patches
2021-03-31 19:24 ` Igor Munkin via Tarantool-patches
2021-04-02 8:45 ` Sergey Kaplun via Tarantool-patches
2021-03-26 7:43 ` [Tarantool-patches] [PATCH v2 luajit 30/30] test: disable too depth recursive PUC Lua test Sergey Kaplun via Tarantool-patches
2021-03-26 16:28 ` Sergey Ostanevich via Tarantool-patches
2021-03-26 16:45 ` Sergey Kaplun via Tarantool-patches
2021-03-31 19:24 ` Igor Munkin via Tarantool-patches
2021-04-02 8:47 ` Sergey Kaplun via Tarantool-patches
2021-03-26 11:09 ` [Tarantool-patches] [PATCH v2 luajit 00/30] Adapt PUC-Rio Lua 5.1 test suite Sergey Ostanevich via Tarantool-patches
2021-03-26 14:12 ` Sergey Kaplun via Tarantool-patches
2021-03-30 22:17 ` Igor Munkin via Tarantool-patches
2021-03-31 9:41 ` Sergey Kaplun via Tarantool-patches
2021-03-31 10:49 ` Igor Munkin via Tarantool-patches
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YGbF9oomoQPdevSJ@root \
--to=tarantool-patches@dev.tarantool.org \
--cc=imun@tarantool.org \
--cc=skaplun@tarantool.org \
--subject='Re: [Tarantool-patches] [PATCH v2 luajit 20/30] test: adapt PUC Lua test for args in vararg func' \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox