diff options
| author | Li Jin <dragon-fly@qq.com> | 2024-09-03 23:23:25 +0800 |
|---|---|---|
| committer | Li Jin <dragon-fly@qq.com> | 2024-09-03 23:23:25 +0800 |
| commit | 2f8215df7288e0aac690c8e8b1ff79865f114302 (patch) | |
| tree | 2fc316ec0d6ca82123dc1fbc2012d8eeb3bc8427 /spec/outputs/metatable.lua | |
| parent | 880b7eb9a427b263091f6eef5197c0285c723fd7 (diff) | |
| download | yuescript-2f8215df7288e0aac690c8e8b1ff79865f114302.tar.gz yuescript-2f8215df7288e0aac690c8e8b1ff79865f114302.tar.bz2 yuescript-2f8215df7288e0aac690c8e8b1ff79865f114302.zip | |
fix correct evaluation order for multi-value assignments.v0.25.0
Diffstat (limited to 'spec/outputs/metatable.lua')
| -rw-r--r-- | spec/outputs/metatable.lua | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/spec/outputs/metatable.lua b/spec/outputs/metatable.lua index 6af10e5..0715b58 100644 --- a/spec/outputs/metatable.lua +++ b/spec/outputs/metatable.lua | |||
| @@ -48,14 +48,15 @@ do | |||
| 48 | end | 48 | end |
| 49 | do | 49 | do |
| 50 | local x, new, var, close, closeA, num, add, sub | 50 | local x, new, var, close, closeA, num, add, sub |
| 51 | local _obj_0, _obj_1 | 51 | x = 123 |
| 52 | x, _obj_0, _obj_1 = 123, a.b.c, func() | 52 | local _obj_0 = a.b.c |
| 53 | new, var = _obj_0.new, _obj_0.var | 53 | new, var = _obj_0.new, _obj_0.var |
| 54 | local _obj_2 = getmetatable(_obj_0) | 54 | local _obj_1 = getmetatable(_obj_0) |
| 55 | close, closeA = _obj_2.__close, _obj_2.__close | 55 | close, closeA = _obj_1.__close, _obj_1.__close |
| 56 | _obj_1 = func() | ||
| 56 | num = _obj_1.num | 57 | num = _obj_1.num |
| 57 | local _obj_3 = getmetatable(_obj_1) | 58 | local _obj_2 = getmetatable(_obj_1) |
| 58 | add, sub = _obj_3.__add, _obj_3.__sub | 59 | add, sub = _obj_2.__add, _obj_2.__sub |
| 59 | end | 60 | end |
| 60 | setmetatable(a.b, { }) | 61 | setmetatable(a.b, { }) |
| 61 | x.abc = 123 | 62 | x.abc = 123 |
