summary refs log tree commit diff stats
path: root/tests/accept/run/tbind1.nim
blob: e7eed3e4f89f4987c1d694db2b9f78eaf81f1225 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Test the new ``bind`` keyword for templates

proc p1(x: int8, y: int): int = return x + y

template tempBind(x, y: expr): expr = 
  bind p1(x, y) 

proc p1(x: int, y: int8): int = return x - y

# This is tricky: the call to ``p1(1'i8, 2'i8)`` should not fail in line 6, 
# because it is not ambiguous there. But it is ambiguous after line 8. 

echo tempBind(1'i8, 2'i8) #OUT 3