Add a test case for issue #4675.

This commit is contained in:
Matthew Baulch
2016-09-03 21:21:06 +10:00
parent 3fef725d92
commit 9a2b98cd8b
3 changed files with 27 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
type
Field* = object
elemSize*: int
template `+`*(x: untyped, y: Field): untyped = x

View File

@@ -0,0 +1,15 @@
type
Foo*[T] = object
v*: T
template `+`*(x: Foo, y: Foo): untyped = x
template newvar*(r: untyped): untyped {.dirty.} =
var r: float
template t1*(x: Foo): untyped =
newvar(y1)
x
template t2*(x: Foo): untyped =
newvar(y2)
x

View File

@@ -0,0 +1,7 @@
# issue 4675
import importA # comment this out to make it work
import importB
var x: Foo[float]
var y: Foo[float]
let r = t1(x) + t2(y)