<HTML><BODY><div>Hi!</div><div>Thanks for the fixes!</div><div>LGTM</div><div data-signature-widget="container"><div data-signature-widget="content"><div>--<br>Best regards,</div><div>Maxim Kokryashkin</div></div></div><div> </div><div> </div><blockquote style="border-left:1px solid #0857A6; margin:10px; padding:0 0 0 10px;">Среда, 25 октября 2023, 13:51 +03:00 от Sergey Kaplun <skaplun@tarantool.org>:<br> <div id=""><div class="js-helper js-readmsg-msg"><div><div id="style_16982310601704188329_BODY">Hi, Maxim!<br>Thanks for the review!<br><br>On 25.10.23, Maxim Kokryashkin wrote:<div class="mail-quote-collapse">> Hi, Sergey!<br>> Thanks for the patch!<br>> LGTM, after answering the same questions as for the previous patch.<br>> On Mon, Oct 23, 2023 at 12:22:05PM +0300, Sergey Kaplun wrote:</div><br>See the iterative patch below, branch is force pushed:<br>===================================================================<br>diff --git a/test/tarantool-tests/lj-920-fix-dangling-reference-to-ctype.test.lua b/test/tarantool-tests/lj-920-fix-dangling-reference-to-ctype.test.lua<br>index a7e35888..0b8be04f 100644<br>--- a/test/tarantool-tests/lj-920-fix-dangling-reference-to-ctype.test.lua<br>+++ b/test/tarantool-tests/lj-920-fix-dangling-reference-to-ctype.test.lua<br>@@ -11,7 +11,7 @@ test:plan(1)<br> -- This test demonstrates LuaJIT's incorrect behaviour when the<br> -- reallocation of `cts->tab` strikes during the recording of the<br> -- cdata metamethod arithmetic.<br>--- The test fails under ASAN.<br>+-- Before the patch, the test failed only under ASAN.<br> <br> -- XXX: Just some C functions to be casted. There is no need to<br> -- declare their prototypes correctly.<br>@@ -38,6 +38,9 @@ local _ = ffi.new('struct {int a; long b; float c; double d;}', 0)<br> -- Anchor table to prevent cdata objects from being collected.<br> local anchor = {}<br> -- Each call to this function grows `cts->top` by 3.<br>+-- `lj_ctype_new()` and `lj_ctype_intern()` during the parsing of<br>+-- the `CType` declaration in the `ffi.cast()` plus<br>+-- `lj_ctype_intern()` during the conversion to another `CType`.<br> local function save_new_func(func)<br>   anchor[#anchor + 1] = ffi.cast('void (*)(void)', func)<br> end<br>===================================================================<br><br>--<br>Best regards,<br>Sergey Kaplun</div></div></div></div></blockquote><div> </div></BODY></HTML>