diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2017-11-19 00:37:36 +0100 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2017-11-19 00:37:36 +0100 |
commit | d072229975f4b092130e17f7cd91cb0fc4c1dec9 (patch) | |
tree | 188be313bcc5d2b34265893e17c5fa29f9bbd49f /tests/ccgbugs | |
parent | e96189c9c31383fa7ce125bc2a4386bea79415c8 (diff) | |
download | Nim-d072229975f4b092130e17f7cd91cb0fc4c1dec9.tar.gz |
fixes #6724
Diffstat (limited to 'tests/ccgbugs')
-rw-r--r-- | tests/ccgbugs/trefseqsort.nim | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/ccgbugs/trefseqsort.nim b/tests/ccgbugs/trefseqsort.nim new file mode 100644 index 000000000..2410770cf --- /dev/null +++ b/tests/ccgbugs/trefseqsort.nim @@ -0,0 +1,33 @@ +discard """ + output: '''@[0, 4, 9, 1, 3, 2] +@[0, 1, 2, 3, 9]''' +""" +# bug #6724 +import algorithm + +type + Bar = object + bar: ref seq[int] + Foo = ref Bar + +proc test(x: ref Foo) = + x.bar[].del(1) + x.bar[].sort(cmp) + +proc main() = + var foo: ref Foo + new(foo) + + var s = @[0, 4, 9, 1, 3, 2] + + var sr: ref seq[int] + new(sr) + sr[] = s + + foo[] = Foo(bar: sr) + echo($foo.bar[]) + + test(foo) + echo($foo.bar[]) + +main() |