summary refs log tree commit diff stats
path: root/tests
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2017-02-25 23:58:47 +0100
committerAraq <rumpf_a@web.de>2017-02-26 00:32:07 +0100
commitd91d338d0391ed028ddb30748b873767501928a2 (patch)
tree036aed109e3cbb7126ec925e88932bc8e3249864 /tests
parent5774145f5d6b15b831d90e0daa10806d988da799 (diff)
downloadNim-d91d338d0391ed028ddb30748b873767501928a2.tar.gz
fixes #5432
Diffstat (limited to 'tests')
-rw-r--r--tests/method/tgeneric_methods2.nim15
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/method/tgeneric_methods2.nim b/tests/method/tgeneric_methods2.nim
new file mode 100644
index 000000000..6e761dc48
--- /dev/null
+++ b/tests/method/tgeneric_methods2.nim
@@ -0,0 +1,15 @@
+#5432
+type
+  Iterator[T] = ref object of RootObj
+
+# base methods with `T` in the return type are okay
+method methodThatWorks*[T](i: Iterator[T]): T {.base.} =
+  discard
+
+# base methods without `T` (void or basic types) fail
+method methodThatFails*[T](i: Iterator[T]) {.base.} =
+  discard
+
+type
+  SpecificIterator1 = ref object of Iterator[string]
+  SpecificIterator2 = ref object of Iterator[int]