* refs #17292 fix `repr` with `do:` * address comment
This commit is contained in:
parent
d78ebe4a0e
commit
f3a6427109
2 changed files with 90 additions and 3 deletions
|
|
@ -6,6 +6,8 @@ discard """
|
|||
# if excessive, could remove 'cpp' from targets
|
||||
|
||||
from strutils import endsWith, contains
|
||||
from std/macros import newLit
|
||||
macro deb(a): string = newLit a.repr
|
||||
|
||||
template main() =
|
||||
doAssert repr({3,5}) == "{3, 5}"
|
||||
|
|
@ -65,5 +67,83 @@ template main() =
|
|||
else:
|
||||
doAssert reprOpenarray(arr) == "[1, 2, 3]"
|
||||
|
||||
block: # bug #17292
|
||||
template foo(a, b, c, d) = discard
|
||||
block:
|
||||
let a = deb:
|
||||
foo(1, 2, 3, 4)
|
||||
doAssert a == "\nfoo(1, 2, 3, 4)"
|
||||
block:
|
||||
let a = deb:
|
||||
foo(1, 2, 3): 4
|
||||
doAssert a == """
|
||||
|
||||
foo(1, 2, 3):
|
||||
4"""
|
||||
|
||||
block:
|
||||
let a = deb:
|
||||
foo(1, 2): 3
|
||||
do: 4
|
||||
doAssert a == """
|
||||
|
||||
foo(1, 2):
|
||||
3
|
||||
do:
|
||||
4"""
|
||||
|
||||
block:
|
||||
let a = deb:
|
||||
foo(1): 3
|
||||
do: 3
|
||||
do: 4
|
||||
doAssert a == """
|
||||
|
||||
foo(1):
|
||||
3
|
||||
do:
|
||||
3
|
||||
do:
|
||||
4"""
|
||||
|
||||
block:
|
||||
let a = deb:
|
||||
foo(1):
|
||||
3
|
||||
do:
|
||||
discard
|
||||
3
|
||||
do:
|
||||
discard
|
||||
4
|
||||
|
||||
doAssert a == """
|
||||
|
||||
foo(1):
|
||||
3
|
||||
do:
|
||||
discard
|
||||
3
|
||||
do:
|
||||
discard
|
||||
4"""
|
||||
|
||||
block:
|
||||
let a = deb:
|
||||
foo: 1
|
||||
do: 2
|
||||
do: 3
|
||||
do: 4
|
||||
doAssert a == """
|
||||
|
||||
foo:
|
||||
1
|
||||
do:
|
||||
2
|
||||
do:
|
||||
3
|
||||
do:
|
||||
4"""
|
||||
|
||||
static: main()
|
||||
main()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue