On 10.01.2025 14:10, Sergey Kaplun wrote:
Hi, Sergey!
Thanks for the review.

On 10.01.25, Sergey Bronnikov wrote:
Hi, Sergey,

thanks for the patch!

test is passed with reverted patch.

With original reproducer luajit segfaults.

CMake options:  cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug 
-DLUA_USE_APICHECK=ON -DLUA_USE_ASSERT=ON
You must run this test with Valgrind enabled to see the failure as it is
mentioned in the commit.


cmake arguments required for reproducing a bug by proposed test:

 cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug -DLUA_USE_APICHECK=ON -DLUA_USE_ASSERT=ON -DLUAJIT_USE_VALGRIND=ON -DLUAJIT_ENABLE_GC64=ON -DLUAJIT_USE_SYSMALLOC=ON


The original reproducer is clumsy and unstable
-- any slight change of the parser may break it. This reproducer is much
simpler, robust, and more readable.


Sergey

On 09.01.2025 18:01, Sergey Kaplun wrote:
<snipped>

+-- The parsing of the `for` iterator uses the incorrect check for
+-- `fs->bclim`, which allows the usage of an uninitialized value,
+-- so the test fails under Valgrind.
<snipped>