Nim/tests/gc/gcleak3.nim
2011-11-10 02:13:02 +01:00

27 lines
450 B
Nim
Executable file

discard """
outputsub: "no leak: "
"""
type
TSomething = object
s: string
s1: string
var s: seq[TSomething] = @[]
for i in 0..1024:
var obj: TSomething
obj.s = "blah"
obj.s1 = "asd"
s.add(obj)
proc limit*[t](a: var seq[t]) =
var loop = s.len() - 512
for i in 0..loop:
#echo i
#GC_fullCollect()
if getOccupiedMem() > 3000_000: quit("still a leak!")
s.delete(i)
s.limit()
echo "no leak: ", getOccupiedMem()