summary refs log tree commit diff stats
path: root/tests/overload
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2015-04-25 23:13:38 +0200
committerAraq <rumpf_a@web.de>2015-04-25 23:17:00 +0200
commite40b6678919ae659ee209e248dc3e4c627c6e6c2 (patch)
tree0d104aa4485369de157a2cfc67b4e8af28783192 /tests/overload
parentd3fc6e1f285950d9cddb338206d553ff7baee7d5 (diff)
downloadNim-e40b6678919ae659ee209e248dc3e4c627c6e6c2.tar.gz
fixes regression: overloading by 'var'
Diffstat (limited to 'tests/overload')
-rw-r--r--tests/overload/tspec.nim10
1 files changed, 9 insertions, 1 deletions
diff --git a/tests/overload/tspec.nim b/tests/overload/tspec.nim
index 99966e93e..f2002a390 100644
--- a/tests/overload/tspec.nim
+++ b/tests/overload/tspec.nim
@@ -12,7 +12,9 @@ ref T
 2
 1
 @[123, 2, 1]
-Called!'''
+Called!
+merge with var
+merge no var'''
 """
 
 # Things that's even in the spec now!
@@ -103,8 +105,14 @@ proc mget*[T](future: FutureVar[T]): var T =
 proc reset*[T](future: FutureVar[T]) =
   echo "Called!"
 
+proc merge[T](x: Future[T]) = echo "merge no var"
+proc merge[T](x: var Future[T]) = echo "merge with var"
+
 when true:
   var foo = newFutureVar[string]()
   foo.mget() = ""
   foo.mget.add("Foobar")
   foo.reset()
+  var bar = newFuture[int]()
+  bar.merge # merge with var
+  merge(newFuture[int]()) # merge no var