diff options
author | Li Jin <dragon-fly@qq.com> | 2023-11-09 18:30:16 +0800 |
---|---|---|
committer | Li Jin <dragon-fly@qq.com> | 2023-11-09 18:30:16 +0800 |
commit | 0ca14d8e6c37f5d1360178034851f36c636a7a43 (patch) | |
tree | 415c0b6083054fe837d0afb458bdd62dac778b84 /spec | |
parent | 5ad0f4daa8171460dc71332669c365bb8e07dab0 (diff) | |
download | yuescript-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.yue | 2 | ||||
-rw-r--r-- | spec/outputs/cond.lua | 11 |
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 | ||
262 | nil | 264 | nil |
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 | ||
515 | end | 526 | end |
516 | return nil | 527 | return nil |