summary refs log tree commit diff stats
path: root/tests/compile/tinheritref.nim
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2013-08-31 11:49:33 +0200
committerAraq <rumpf_a@web.de>2013-08-31 11:49:33 +0200
commitb40ab4dc9e4b5ee93f29864218af6b8d78fa1cc2 (patch)
tree469de1221768eccaa99a81cde0d66848c456b182 /tests/compile/tinheritref.nim
parent1161482ec2c2d83e1cd4f24d51e19b5bde6bcc3c (diff)
downloadNim-b40ab4dc9e4b5ee93f29864218af6b8d78fa1cc2.tar.gz
fixes #554, fixes #179
Diffstat (limited to 'tests/compile/tinheritref.nim')
-rw-r--r--tests/compile/tinheritref.nim27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/compile/tinheritref.nim b/tests/compile/tinheritref.nim
new file mode 100644
index 000000000..e5de6a4be
--- /dev/null
+++ b/tests/compile/tinheritref.nim
@@ -0,0 +1,27 @@
+discard """
+  output: "23"
+"""
+
+# bug #554, #179
+
+type T[E] =
+  ref object
+    elem: E
+
+var ob: T[int]
+
+ob = T[int](elem: 23)
+echo ob.elem
+
+type
+  TTreeIteratorA* = ref object {.inheritable.}
+
+  TKeysIteratorA* = ref object of TTreeIteratorA  #compiles
+
+  TTreeIterator* [T,D] = ref object {.inheritable.}
+
+  TKeysIterator* [T,D] = ref object of TTreeIterator[T,D]  #this not
+  
+var
+  it: TKeysIterator[int, string] = nil
+