aboutsummaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorLi Jin <dragon-fly@qq.com>2022-11-22 09:53:46 +0800
committerLi Jin <dragon-fly@qq.com>2022-11-22 09:53:46 +0800
commit8d36b240cd0800bd5584d52cb5d19d0ae5371357 (patch)
tree9016aa87a946851a854452af838ad745e478365e /spec
parent1b0bf8554e84bcd4d68dd2131838ea9c923ed694 (diff)
downloadyuescript-8d36b240cd0800bd5584d52cb5d19d0ae5371357.tar.gz
yuescript-8d36b240cd0800bd5584d52cb5d19d0ae5371357.tar.bz2
yuescript-8d36b240cd0800bd5584d52cb5d19d0ae5371357.zip
fix optimization case from issue #115.
Diffstat (limited to 'spec')
-rw-r--r--spec/inputs/assign.yue4
-rw-r--r--spec/outputs/assign.lua27
2 files changed, 17 insertions, 14 deletions
diff --git a/spec/inputs/assign.yue b/spec/inputs/assign.yue
index 8c7848d..8ae5cac 100644
--- a/spec/inputs/assign.yue
+++ b/spec/inputs/assign.yue
@@ -85,4 +85,8 @@ do
85do 85do
86 {a} = :b = c.d = e = tab 86 {a} = :b = c.d = e = tab
87 87
88do
89 val = 123
90 a = b = c = val
91
88nil 92nil
diff --git a/spec/outputs/assign.lua b/spec/outputs/assign.lua
index e638c47..d939769 100644
--- a/spec/outputs/assign.lua
+++ b/spec/outputs/assign.lua
@@ -135,23 +135,22 @@ return _(function()
135 local d = 0 135 local d = 0
136 end 136 end
137 do 137 do
138 local a 138 local a = f()
139 local b 139 local b = a
140 local c 140 local c = a
141 local d 141 local d = a
142 do
143 local _tmp_0 = f()
144 a = _tmp_0
145 b = _tmp_0
146 c = _tmp_0
147 d = _tmp_0
148 end
149 end 142 end
150 do 143 do
151 local a = tab[1]
152 local b = tab.b
153 c.d = tab
154 local e = tab 144 local e = tab
145 local a = e[1]
146 local b = e.b
147 c.d = e
148 end
149 do
150 local val = 123
151 local a = val
152 local b = val
153 local c = val
155 end 154 end
156 return nil 155 return nil
157end) 156end)