aboutsummaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorLi Jin <dragon-fly@qq.com>2023-11-09 18:30:16 +0800
committerLi Jin <dragon-fly@qq.com>2023-11-09 18:30:16 +0800
commit0ca14d8e6c37f5d1360178034851f36c636a7a43 (patch)
tree415c0b6083054fe837d0afb458bdd62dac778b84 /spec
parent5ad0f4daa8171460dc71332669c365bb8e07dab0 (diff)
downloadyuescript-0ca14d8e6c37f5d1360178034851f36c636a7a43.tar.gz
yuescript-0ca14d8e6c37f5d1360178034851f36c636a7a43.tar.bz2
yuescript-0ca14d8e6c37f5d1360178034851f36c636a7a43.zip
fix a missing case for condition chaining.v0.20.5
Diffstat (limited to 'spec')
-rw-r--r--spec/inputs/cond.yue2
-rw-r--r--spec/outputs/cond.lua11
2 files changed, 13 insertions, 0 deletions
diff --git a/spec/inputs/cond.yue b/spec/inputs/cond.yue
index f5f42a8..5bc6c9b 100644
--- a/spec/inputs/cond.yue
+++ b/spec/inputs/cond.yue
@@ -247,6 +247,7 @@ do
247 a = x and y or v(1) < v(2) < v(3) and b < v(4) < v(5) < v(6) 247 a = x and y or v(1) < v(2) < v(3) and b < v(4) < v(5) < v(6)
248 a = v(1) < v(2) < v(3) and b < v(4) < v(5) < v(6) or x and y 248 a = v(1) < v(2) < v(3) and b < v(4) < v(5) < v(6) or x and y
249 a = x and y or v(1) < v(2) < v(3) and b < v(4) < v(5) < v(6) or w and z 249 a = x and y or v(1) < v(2) < v(3) and b < v(4) < v(5) < v(6) or w and z
250 a = 1 < 2 == v1 > 3
250 251
251 local v1, v2, v3, v4, v5, v6 252 local v1, v2, v3, v4, v5, v6
252 a = v1 < v2 < v3 < v4 253 a = v1 < v2 < v3 < v4
@@ -258,6 +259,7 @@ do
258 a = x and y or v1 < v2 < v3 and b < v4 < v5 < v6 259 a = x and y or v1 < v2 < v3 and b < v4 < v5 < v6
259 a = v1 < v2 < v3 and b < v4 < v5 < v6 or x and y 260 a = v1 < v2 < v3 and b < v4 < v5 < v6 or x and y
260 a = x and y or v1 < v2 < v3 and b < v4 < v5 < v6 or w and z 261 a = x and y or v1 < v2 < v3 and b < v4 < v5 < v6 or w and z
262 a = 1 < 2 == v1 > 3
261 263
262nil 264nil
263 265
diff --git a/spec/outputs/cond.lua b/spec/outputs/cond.lua
index d7aae02..acbf644 100644
--- a/spec/outputs/cond.lua
+++ b/spec/outputs/cond.lua
@@ -503,6 +503,16 @@ do
503 end 503 end
504 end 504 end
505 end)() or w and z 505 end)() or w and z
506 if not (1 < 2) then
507 a = false
508 else
509 local _cond_0 = v1
510 if not (2 == _cond_0) then
511 a = false
512 else
513 a = _cond_0 > 3
514 end
515 end
506 local v1, v2, v3, v4, v5, v6 516 local v1, v2, v3, v4, v5, v6
507 a = v1 < v2 and v2 < v3 and v3 < v4 517 a = v1 < v2 and v2 < v3 and v3 < v4
508 a = x and y or v1 < v2 and v2 < v3 and v3 < v4 518 a = x and y or v1 < v2 and v2 < v3 and v3 < v4
@@ -512,5 +522,6 @@ do
512 a = x and y or v1 < v2 and v2 < v3 and b < v4 and v4 < v5 and v5 < v6 522 a = x and y or v1 < v2 and v2 < v3 and b < v4 and v4 < v5 and v5 < v6
513 a = v1 < v2 and v2 < v3 and b < v4 and v4 < v5 and v5 < v6 or x and y 523 a = v1 < v2 and v2 < v3 and b < v4 and v4 < v5 and v5 < v6 or x and y
514 a = x and y or v1 < v2 and v2 < v3 and b < v4 and v4 < v5 and v5 < v6 or w and z 524 a = x and y or v1 < v2 and v2 < v3 and b < v4 and v4 < v5 and v5 < v6 or w and z
525 a = 1 < 2 and 2 == v1 and v1 > 3
515end 526end
516return nil 527return nil