TEST [[ local m = {} function () end function () end return m ]] TEST [[ local m = {} function () end do function () end end return m ]] TEST [[ local m = {} m.x = true m.x = false return m ]] TEST [[ local m = {} m.x = io.open('') m.x = nil return m ]] TEST [[ ---@class A X = {} function () end function () end ]] TEST [[ ---@meta ---@class A X = {} function X.f() end function X.f() end ]] TEST [[ ---@class A X = {} if true then function X.f() end else function X.f() end end ]]