bug in 5.4 alpha rc1: to-be-closed x vararg functions

Closing methods must be run before correcting 'ci->func' when exiting
a vararg function, to get correct debug information (e.g., in case of
errors).
This commit is contained in:
Roberto Ierusalimschy
2019-06-03 12:13:13 -03:00
parent 2c68e66570
commit 4a3fd8488d
2 changed files with 10 additions and 1 deletions

View File

@@ -276,6 +276,15 @@ do -- errors in __close
assert(msg == 1)
assert(log[1] == 4 and log[2] == 3 and log[3] == 2 and log[4] == 2
and #log == 4)
-- error in toclose in vararg function
function foo (...)
local <toclose> x123 = 10
end
local st, msg = pcall(foo)
assert(string.find(msg, "'x123'"))
end