type constraints; tuple lifting

This commit is contained in:
Araq
2011-04-01 00:26:07 +02:00
parent dc669155e3
commit 4d91c9d887
17 changed files with 527 additions and 139 deletions

View File

@@ -0,0 +1,18 @@
discard """
line: 15
errormsg: "type mismatch: got (int)"
"""
proc myGenericProc[T: object|tuple|ptr|ref|distinct](x: T): string =
result = $x
type
TMyObj = tuple[x, y: int]
var
x: TMyObj
assert myGenericProc(232) == "232"
assert myGenericProc(x) == "(x: 0, y: 0)"