mirror of
https://github.com/nim-lang/Nim.git
synced 2026-01-04 04:02:41 +00:00
closes #4774, closes #7385, closes #10019, closes #12405, closes #12732, closes #13270, closes #13799, closes #15247, closes #16128, closes #16175, closes #16774, closes #17527, closes #20880, closes #21346
14 lines
332 B
Nim
14 lines
332 B
Nim
block: # issue #13799
|
|
type
|
|
X[A, B] = object
|
|
a: A
|
|
b: B
|
|
|
|
Y[A] = X[A, int]
|
|
template s(T: type X): X = T()
|
|
template t[A, B](T: type X[A, B]): X[A, B] = T()
|
|
proc works1(): Y[int] = s(X[int, int])
|
|
proc works2(): Y[int] = t(X[int, int])
|
|
proc works3(): Y[int] = t(Y[int])
|
|
proc broken(): Y[int] = s(Y[int])
|