This commit is contained in:
Araq
2018-10-18 17:06:04 +02:00
parent 4644484fb7
commit 68c6d709d3
2 changed files with 42 additions and 3 deletions

View File

@@ -190,9 +190,12 @@ proc transformVarSection(c: PTransf, v: PNode): PTransNode =
var L = sonsLen(it)
var defs = newTransNode(it.kind, it.info, L)
for j in countup(0, L-3):
let x = freshVar(c, it.sons[j].sym)
idNodeTablePut(c.transCon.mapping, it.sons[j].sym, x)
defs[j] = x.PTransNode
if it[j].kind == nkSym:
let x = freshVar(c, it.sons[j].sym)
idNodeTablePut(c.transCon.mapping, it.sons[j].sym, x)
defs[j] = x.PTransNode
else:
defs[j] = transform(c, it[j])
assert(it.sons[L-2].kind == nkEmpty)
defs[L-2] = newNodeI(nkEmpty, it.info).PTransNode
defs[L-1] = transform(c, it.sons[L-1])

View File

@@ -103,3 +103,39 @@ proc unusedB =
var count = 0
for line in lineIter2("temp10.nim"):
count += 1
# bug #5519
import os, algorithm
iterator filesIt(path: string): auto {.closure.} =
var files = newSeq[string]()
var dirs = newSeq[string]()
for k, p in os.walkDir(path):
let (_, n, e) = p.splitFile
if e != "":
continue
case k
of pcFile, pcLinkToFile:
files.add(n)
else:
dirs.add(n)
files.sort(system.cmp)
dirs.sort(system.cmp)
for f in files:
yield f
for d in dirs:
files = newSeq[string]()
for k, p in os.walkDir(path / d):
let (_, n, e) = p.splitFile
if e != "":
continue
case k
of pcFile, pcLinkToFile:
files.add(n)
else:
discard
files.sort(system.cmp)
let prefix = path.splitPath[1]
for f in files:
yield prefix / f