mirror of
https://github.com/nim-lang/Nim.git
synced 2026-02-25 12:25:08 +00:00
fixes #5519
This commit is contained in:
@@ -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])
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user