Remove expr/stmt (#5857)
This commit is contained in:
parent
52ff244d5d
commit
000b8afd26
168 changed files with 497 additions and 529 deletions
|
|
@ -4,13 +4,13 @@ true
|
|||
3'''
|
||||
"""
|
||||
|
||||
template arithOps: expr = (`+` | `-` | `*`)
|
||||
template testOr{ (arithOps{f})(a, b) }(a, b, f: expr): expr = f(a+1, b)
|
||||
template arithOps: untyped = (`+` | `-` | `*`)
|
||||
template testOr{ (arithOps{f})(a, b) }(a, b, f: untyped): untyped = f(a+1, b)
|
||||
|
||||
let xx = 10
|
||||
echo 10*xx
|
||||
|
||||
template t{x = (~x){y} and (~x){z}}(x, y, z: bool): stmt =
|
||||
template t{x = (~x){y} and (~x){z}}(x, y, z: bool): typed =
|
||||
x = y
|
||||
if x: x = z
|
||||
|
||||
|
|
@ -22,7 +22,7 @@ a = b and a
|
|||
echo a
|
||||
|
||||
# bug #798
|
||||
template t012{(0|1|2){x}}(x: expr): expr = x+1
|
||||
template t012{(0|1|2){x}}(x: untyped): untyped = x+1
|
||||
let z = 1
|
||||
# outputs 3 thanks to fixpoint iteration:
|
||||
echo z
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue