FYI: I compiled Lua using gcc LTO (Link Time Optimization) with optimization -O3. I got the following warning:
ldebug.c: In function ‘lua_getinfo’:
ltable.c:780:3: warning: ‘v.value_’ may be used uninitialized in this function [-Wmaybe-uninitialized]
setobj2t(L, cell, value);
^
ltable.c:780:3: warning: ‘v.value_’ may be used uninitialized in this function [-Wmaybe-uninitialized]
The issue: collectvalidlines in ldebug.c contains the following code:
luaH_setint(L, t, currentline, &v);
Because of LTO optimizes across file boundaries the compiler figured out that 'v' does not have its 'value_' field set, but it's being used by luaH_setint. This is technically true, but probably quite irrelevant. I added "v.value_.i=0;" following "setbtvalue(&v)" and the issue went away.
I debated whether I should even report this, it's probably safe to ignore, but I'm not an expert on the internals of the interpreter.
OS: Debian 10 x86_64.
Compiler: gcc 8.3.0
Gé
--