local assert = assert
do --- local
local a, b, c
a, b, c = 0, 1
assert(a == 0)
assert(b == 1)
assert(c == nil)
a, b = a+1, b+1, a+b
assert(a == 1)
assert(b == 2)
a, b, c = 0
assert(a == 0)
assert(b == nil)
assert(c == nil)
end
do --- global !private_G
a, b, c = 0, 1
assert(a == 0)
assert(b == 1)
assert(c == nil)
a, b = a+1, b+1, a+b
assert(a == 1)
assert(b == 2)
a, b, c = 0
assert(a == 0)
assert(b == nil)
assert(c == nil)
end
do --- local lhs in key on lhs
local a = {}
local i = 3
i, a[i] = i+1, 20
assert(i == 4)
assert(a[3] == 20)
end
do --- global lhs in key on lhs !private_G
a = {}
i = 3
i, a[i] = i+1, 20
assert(i == 4)
assert(a[3] == 20)
end