Lua 5.4 upvalue bug?

81 views
Skip to first unread message

Dmitiry Ryzhenko

unread,
May 15, 2025, 9:05:05 AMMay 15
to lua-l
The 5.1, 5.2 and 5.3 interpreters execute the following code without any errors. but with the
$ lua -v
Lua 5.4.7  Copyright (C) 1994-2024 Lua.org, PUC-Rio


local bool_to_num = {
    [true] = 1,
    [false] = 0,
}
local function foo()
    print(bool_to_num[1 < 0])
    print(bool_to_num[1 > 0])
end

foo()


$ lua some.lua
0
lua: some.lua:7: attempt to index a number value
stack traceback:
        some.lua:7: in local 'foo'
        some.lua:10: in main chunk
        [C]: in ?


-----

local bool_to_num = {
    [true] = 1,
    [false] = 0,
}
local function foo()
    print(bool_to_num[false])
    print(bool_to_num[true])
end

foo()


$ lua some.lua
0
1



Luiz Henrique de Figueiredo

unread,
May 15, 2025, 9:09:38 AMMay 15
to lu...@googlegroups.com
Thanks for the report. 
It’s a known bug:
Reply all
Reply to author
Forward
0 new messages