Revert "fix arc global variable issues" (#20764)

* Revert "fix arc global variable issues (#20759)"

This reverts commit a3d32a4176.

* trigger documentation builds
This commit is contained in:
ringabout
2022-11-05 22:47:12 +08:00
committed by GitHub
parent 10e7f18d01
commit afd4e22f76
3 changed files with 4 additions and 6 deletions

View File

@@ -14,6 +14,7 @@ on:
- 'tools/kochdocs.nim'
- '.github/workflows/ci_docs.yml'
- 'koch.nim'
pull_request:
# Run only on changes on these files.
paths:

View File

@@ -490,11 +490,8 @@ proc pVarTopLevel(v: PNode; c: var Con; s: var Scope; res: PNode) =
res.add newTree(nkFastAsgn, v, genDefaultCall(v.typ, c, v.info))
elif sfThread notin v.sym.flags and sfCursor notin v.sym.flags:
# do not destroy thread vars for now at all for consistency.
if sfGlobal in v.sym.flags: #XXX: Rethink this logic (see tarcmisc.test2)
if c.inLoop > 0:
s.final.add c.genDestroy(v)
else:
c.graph.globalDestructors.add c.genDestroy(v)
if sfGlobal in v.sym.flags and s.parent == nil: #XXX: Rethink this logic (see tarcmisc.test2)
c.graph.globalDestructors.add c.genDestroy(v)
else:
s.final.add c.genDestroy(v)

View File

@@ -124,7 +124,7 @@ proc test(count: int) =
test(3)
proc test2(count: int) =
block: #XXX: Fails with block currently
#block: #XXX: Fails with block currently
var v {.global.} = newVariable(20)
var count = count - 1