diff options
author | Araq <rumpf_a@web.de> | 2012-07-13 00:50:56 +0200 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2012-07-13 00:50:56 +0200 |
commit | 8ce1c99d0d9ff5a8539000365ec640c88098e60f (patch) | |
tree | 4943d075b98989a68f067111ed17842684a3a444 /tests/run | |
parent | dc8924e1a2467d15aa61a1ee01bc2b5b26d21eea (diff) | |
download | Nim-8ce1c99d0d9ff5a8539000365ec640c88098e60f.tar.gz |
work on closures continues; fixed #116
Diffstat (limited to 'tests/run')
-rw-r--r-- | tests/run/tclosure3.nim | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/run/tclosure3.nim b/tests/run/tclosure3.nim new file mode 100644 index 000000000..6dee49aea --- /dev/null +++ b/tests/run/tclosure3.nim @@ -0,0 +1,21 @@ +discard """ + file: "tclosure3.nim" + output: "success" + disabled: true +""" + +proc main = + const n = 30 + for iterations in 0..50_000: + var s: seq[proc(): int {.closure.}] = @[] + for i in 0 .. n-1: + let ii = i + s.add(proc(): int = return ii*ii) + for i in 0 .. n-1: + let val = s[i]() + if val != i*i: echo "bug ", val + + if getOccupiedMem() > 3000_000: quit("still a leak!") + echo "success" + +main() |