From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp17.mail.ru (smtp17.mail.ru [94.100.176.154]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 5CAF844532D for ; Thu, 16 Jul 2020 17:18:55 +0300 (MSK) From: sergeyb@tarantool.org Date: Thu, 16 Jul 2020 17:18:46 +0300 Message-Id: <5bc03933be6334d9b4c1f0919817eb282c029e97.1594908932.git.sergeyb@tarantool.org> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [Tarantool-patches] [PATCH] test: fix warnings spotted by luacheck List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: tarantool-patches@dev.tarantool.org, v.shpilevoy@tarantool.org, imun@tarantool.org Cc: alexander.turenko@tarantool.org From: Sergey Bronnikov luacheck is integrated in tarantool CI pipeline and respects .luacheckrc in tarantool repo, so jit global is suppressed there. Co-authored-by: Igor Munkin Reviewed-by: Igor Munkin --- ...gh-4476-fix-string-find-recording.test.lua | 6 ++--- .../lj-494-table-chain-infinite-loop.test.lua | 26 +++++++++---------- test/or-232-unsink-64-kptr.test.lua | 1 + 3 files changed, 17 insertions(+), 16 deletions(-) diff --git a/test/gh-4476-fix-string-find-recording.test.lua b/test/gh-4476-fix-string-find-recording.test.lua index 209090a..fb55680 100755 --- a/test/gh-4476-fix-string-find-recording.test.lua +++ b/test/gh-4476-fix-string-find-recording.test.lua @@ -51,13 +51,13 @@ local err = [[module 'kit.1.10.3-136' not found: no file '/usr/local/lib64/lua/5.1/kit.so' no file '/usr/lib64/lua/5.1/kit.so']] -local at, s, e +local at, _, e local count_vm = 0 jit.off() repeat - s, e = err:find("\n\t", at, true) + _, e = err:find("\n\t", at, true) at = e count_vm = count_vm + 1 until not e @@ -68,7 +68,7 @@ jit.on() jit.opt.start(0, 'hotloop=1') repeat - s, e = err:find("\n\t", at, true) + _, e = err:find("\n\t", at, true) at = e count_jit = count_jit + 1 assert(count_jit <= count_vm, "Trace goes in cycles") diff --git a/test/lj-494-table-chain-infinite-loop.test.lua b/test/lj-494-table-chain-infinite-loop.test.lua index 0daeca3..314eb29 100755 --- a/test/lj-494-table-chain-infinite-loop.test.lua +++ b/test/lj-494-table-chain-infinite-loop.test.lua @@ -16,7 +16,7 @@ ffi.cdef("char* strstr(const char*, const char*)") local strstr = ffi.C.strstr local cast = ffi.cast local str_hash_offset = cast("uint32_t*", strstr("*", ""))[-2] == 1 and 3 or 2 -function str_hash(s) +local function str_hash(s) return cast("uint32_t*", strstr(s, "")) - str_hash_offset end local table_new = require("table.new") @@ -25,17 +25,17 @@ local table_new = require("table.new") local victims = {} local orig_hash = {} for c in ("abcdef"):gmatch"." do - v = c .. "{09add58a-13a4-44e0-a52c-d44d0f9b2b95}" + local v = c .. "{09add58a-13a4-44e0-a52c-d44d0f9b2b95}" victims[c] = v orig_hash[c] = str_hash(v)[0] end collectgarbage() do --- Basic version of the problem - for k, v in pairs(victims) do + for _, v in pairs(victims) do str_hash(v)[0] = 0 end - t = table_new(0, 8) + local t = table_new(0, 8) -- Make chain a -> b -> c -> d, all with a as primary t[victims.a] = true t[victims.d] = true @@ -59,10 +59,10 @@ end collectgarbage() do --- Just `mn != freenode` can lead to infinite loops - for k, v in pairs(victims) do + for _, v in pairs(victims) do str_hash(v)[0] = 0 end - t = table_new(0, 8) + local t = table_new(0, 8) -- Make chain a -> b -> c -> d, all with a as primary t[victims.a] = true t[victims.d] = true @@ -85,10 +85,10 @@ end collectgarbage() do --- Just `mn != nn` can lead to infinite loops - for k, v in pairs(victims) do + for _, v in pairs(victims) do str_hash(v)[0] = 0 end - t = table_new(0, 8) + local t = table_new(0, 8) -- Make chain a -> b -> c -> d -> e, all with a as primary t[victims.a] = true t[victims.e] = true @@ -113,10 +113,10 @@ end for i = 0, 10 do --- Non-strings can need rechaining too collectgarbage() - k = tonumber((("0x%xp-1074"):format(i))) + local k = tonumber((("0x%xp-1074"):format(i))) str_hash(victims.a)[0] = 0 str_hash(victims.b)[0] = 0 - t = table_new(0, 4) + local t = table_new(0, 4) -- a -> b, both with a as primary t[victims.a] = true t[victims.b] = true @@ -140,10 +140,10 @@ end for i = 0, 10 do --- Non-strings can be moved to freenode collectgarbage() - k = false + local k = false str_hash(victims.a)[0] = 0 str_hash(victims.b)[0] = 0 - t = table_new(0, 4) + local t = table_new(0, 4) -- a -> k -> b, all with a as primary t[victims.a] = true t[victims.b] = true @@ -160,7 +160,7 @@ end collectgarbage() do --- Do not forget to advance freenode in the not-string case - t = table_new(0, 4) + local t = table_new(0, 4) -- Chain of colliding numbers t[0x0p-1074] = true t[0x4p-1074] = true diff --git a/test/or-232-unsink-64-kptr.test.lua b/test/or-232-unsink-64-kptr.test.lua index d9b3f05..0178a6e 100755 --- a/test/or-232-unsink-64-kptr.test.lua +++ b/test/or-232-unsink-64-kptr.test.lua @@ -31,6 +31,7 @@ local array = ffi.new("struct { int x; } [1]") local function fn(i) local struct = array[0] -- Load pointer that the JIT will constify. + -- luacheck: ignore if i == 1000 then end -- Force trace exit when i==1000. struct.x = 0 -- Ensure that 'struct' is live after exit. end -- 2.26.2