From 841d9d59755f805245d862456d53e4fd8a426813 Mon Sep 17 00:00:00 2001 From: ringabout <43030857+ringabout@users.noreply.github.com> Date: Wed, 2 Nov 2022 12:01:36 +0800 Subject: [PATCH] closes #16331; add testcase (#20730) --- tests/tuples/ttuples_issues.nim | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tests/tuples/ttuples_issues.nim b/tests/tuples/ttuples_issues.nim index 0cc505d28..70defdfce 100644 --- a/tests/tuples/ttuples_issues.nim +++ b/tests/tuples/ttuples_issues.nim @@ -107,6 +107,18 @@ template main() = return (x,y) doAssert bar() == (10, (11,)) + block: # bug #16331 + type T1 = tuple[a, b: int] + + proc p(b: bool): T1 = + var x: T1 = (10, 20) + x = if b: (x.b, x.a) else: (-x.b, -x.a) + x + + doAssert p(false) == (-20, -10) + doAssert p(true) == (20, 10) + + proc mainProc() = # other tests should be in `main` block: