aboutsummaryrefslogtreecommitdiff
path: root/spec/outputs/destructure.lua
diff options
context:
space:
mode:
authorLi Jin <dragon-fly@qq.com>2022-07-26 11:34:34 +0800
committerLi Jin <dragon-fly@qq.com>2022-07-26 11:34:34 +0800
commitf7150a004e26f446fbf7a47bae368f209248fa67 (patch)
tree28cbfc756cfef955a6a40f62d3395920938256db /spec/outputs/destructure.lua
parent13c7eb4252e8c4228fabf1ade13b7b9bcbd80656 (diff)
downloadyuescript-f7150a004e26f446fbf7a47bae368f209248fa67.tar.gz
yuescript-f7150a004e26f446fbf7a47bae368f209248fa67.tar.bz2
yuescript-f7150a004e26f446fbf7a47bae368f209248fa67.zip
make destructuring work on function multiple returned values, fix `a, b[] = 1` crashing issue, no longer support implicit declaring variable to be nil.
Diffstat (limited to 'spec/outputs/destructure.lua')
-rw-r--r--spec/outputs/destructure.lua21
1 files changed, 21 insertions, 0 deletions
diff --git a/spec/outputs/destructure.lua b/spec/outputs/destructure.lua
index 59ee358..dfac42c 100644
--- a/spec/outputs/destructure.lua
+++ b/spec/outputs/destructure.lua
@@ -407,3 +407,24 @@ do
407 end 407 end
408 end 408 end
409end 409end
410do
411 local x1, x2, x3, d, e
412 local b
413 do
414 local _obj_0, _obj_1, _obj_2, _obj_3, _obj_4 = f()
415 do
416 local _obj_5 = a
417 _obj_5[#_obj_5 + 1] = _obj_0
418 end
419 setmetatable(c, _obj_4)
420 x1, x2, x3, d, e = 1, 2, 3, _obj_1, _obj_3
421 b = _obj_2[1]
422 end
423 local y1, y4
424 local y2, y3
425 do
426 local _obj_0, _obj_1 = f2()
427 y1, y4 = f1(), _obj_1
428 y2, y3 = _obj_0.y2, _obj_0.y3
429 end
430end