fix regressions affecting the echo magic and the creating of rod files

the markAndSweep GC was not responsible for the regressions so
this commit restores its use
This commit is contained in:
Zahary Karadjov
2013-09-07 11:44:11 +03:00
parent ff1273a312
commit f05ac0cb23
3 changed files with 5 additions and 3 deletions

View File

@@ -2,7 +2,7 @@
mainModule:"nimrod.nim"
# gc:markAndSweep
gc:markAndSweep
hint[XDeclaredButNotUsed]:off
path:"llvm"

View File

@@ -686,7 +686,7 @@ proc semIndirectOp(c: PContext, n: PNode, flags: TExprFlags): PNode =
result = n.sons[0]
result.kind = nkCall
for i in countup(1, sonsLen(n) - 1): addSon(result, n.sons[i])
return semDirectOp(c, result, flags)
return semExpr(c, result, flags)
else:
n.sons[0] = semExpr(c, n.sons[0])
let nOrig = n.copyTree

View File

@@ -608,7 +608,9 @@ proc liftParamType(c: PContext, procKind: TSymKind, genericParams: PNode,
if genericParams.sons[i].sym.name.id == finalTypId.id:
return genericParams.sons[i].typ
var s = newSym(skType, finalTypId, typeClass.sym, info)
let owner = if typeClass.sym != nil: typeClass.sym
else: getCurrOwner()
var s = newSym(skType, finalTypId, owner, info)
if typId == nil: s.flags.incl(sfAnon)
s.linkTo(typeClass)
s.position = genericParams.len