* fixes #12899 * fixes regression: destroy global variables in reverse declaration order, closureleak test relies on it
This commit is contained in:
parent
f9f55a23bb
commit
3f6df5cc34
5 changed files with 45 additions and 15 deletions
|
|
@ -1,7 +1,9 @@
|
|||
discard """
|
||||
valgrind: true
|
||||
cmd: '''nim c --newruntime -d:useMalloc $file'''
|
||||
output: '''422 422'''
|
||||
output: '''
|
||||
@[(input: @["KXSC", "BGMC"]), (input: @["PXFX"]), (input: @["WXRQ", "ZSCZD"])]
|
||||
461 461'''
|
||||
"""
|
||||
|
||||
import strutils, os, std / wordwrap
|
||||
|
|
@ -13,6 +15,28 @@ import system / ansi_c
|
|||
proc retTuple(): (seq[int], int) =
|
||||
return (@[1], 1)
|
||||
|
||||
# bug #12899
|
||||
|
||||
import sequtils, strmisc
|
||||
|
||||
const input = ["KXSC, BGMC => 7 PTHL", "PXFX => LBZJ", "WXRQ, ZSCZD => HLQM"]
|
||||
|
||||
type
|
||||
Reaction = object
|
||||
input: seq[string]
|
||||
|
||||
proc bug12899 =
|
||||
var reactions: seq[Reaction] = @[]
|
||||
for l in input:
|
||||
let x = l.partition(" => ")
|
||||
reactions.add Reaction(input: @(x[0].split(", ")))
|
||||
|
||||
let x = $reactions
|
||||
echo x
|
||||
|
||||
bug12899()
|
||||
|
||||
|
||||
proc nonStaticTests =
|
||||
doAssert formatBiggestFloat(1234.567, ffDecimal, -1) == "1234.567000"
|
||||
doAssert formatBiggestFloat(1234.567, ffDecimal, 0) == "1235" # bugs 8242, 12586
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ discard """
|
|||
type
|
||||
TFoo* = object
|
||||
id: int
|
||||
fn: proc(){.closure.}
|
||||
fn: proc() {.closure.}
|
||||
var foo_counter = 0
|
||||
var alive_foos = newseq[int](0)
|
||||
|
||||
|
|
@ -31,7 +31,7 @@ proc newFoo*(): ref TFoo =
|
|||
inc foo_counter
|
||||
|
||||
for i in 0 ..< 10:
|
||||
discard newFoo()
|
||||
discard newFoo()
|
||||
|
||||
for i in 0 ..< 10:
|
||||
let f = newFoo()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue