summary refs log tree commit diff stats
path: root/tests/overload/toverload_various.nim
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2019-05-22 20:59:54 +0200
committerGitHub <noreply@github.com>2019-05-22 20:59:54 +0200
commitfd16875561634e3ef24072631cf85eeead6213f2 (patch)
treec3c74a5df3298070dc64042633353056c1e6e6a8 /tests/overload/toverload_various.nim
parentb62f4b1b0c4c9579ab2cee58fdf8a35b258c6f19 (diff)
downloadNim-fd16875561634e3ef24072631cf85eeead6213f2.tar.gz
fixes #8568 (#11303)
* fixes #8568

* fixes regression
Diffstat (limited to 'tests/overload/toverload_various.nim')
-rw-r--r--tests/overload/toverload_various.nim22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/overload/toverload_various.nim b/tests/overload/toverload_various.nim
index c4f8ecbf8..81564a7a9 100644
--- a/tests/overload/toverload_various.nim
+++ b/tests/overload/toverload_various.nim
@@ -176,6 +176,28 @@ block tstaticoverload:
   foo("constant" & " " & "folding")
   foo(staticString("static string"))
 
+# bug #8568 (2)
+
+proc goo(a: int): string = "int"
+proc goo(a: static[int]): string = "static int"
+proc goo(a: var int): string = "var int"
+proc goo[T: int](a: T): string = "T: int"
+#proc goo[T](a: T): string = "nur T"
+
+const tmp1 = 1
+let tmp2 = 1
+var tmp3 = 1
+
+doAssert goo(1) == "static int"
+doAssert goo(tmp1) == "static int"
+doAssert goo(tmp2) == "int"
+doAssert goo(tmp3) == "var int"
+
+doAssert goo[int](1) == "T: int"
+
+doAssert goo[int](tmp1) == "T: int"
+doAssert goo[int](tmp2) == "T: int"
+doAssert goo[int](tmp3) == "T: int"
 
 # bug #6076