JS gen: fixes regression

This commit is contained in:
Andreas Rumpf 2017-06-24 10:29:09 +02:00
commit 326e8fdc2f

View file

@ -810,16 +810,24 @@ proc genAsmOrEmitStmt(p: PProc, n: PNode) =
genLineDir(p, n) genLineDir(p, n)
p.body.add p.indentLine(nil) p.body.add p.indentLine(nil)
for i in countup(0, sonsLen(n) - 1): for i in countup(0, sonsLen(n) - 1):
case n.sons[i].kind let it = n[i]
case it.kind
of nkStrLit..nkTripleStrLit: of nkStrLit..nkTripleStrLit:
p.body.add(n.sons[i].strVal) p.body.add(it.strVal)
of nkSym: of nkSym:
let v = n.sons[i].sym let v = it.sym
if p.target == targetPHP and v.kind in {skVar, skLet, skTemp, skConst, skResult, skParam, skForVar}: # for backwards compatibility we don't deref syms here :-(
p.body.add "$" if v.kind in {skVar, skLet, skTemp, skConst, skResult, skParam, skForVar}:
if p.target == targetPHP: p.body.add "$"
p.body.add mangleName(v, p.target) p.body.add mangleName(v, p.target)
else: else:
internalError(n.sons[i].info, "jsgen: genAsmOrEmitStmt()") var r: TCompRes
gen(p, it, r)
p.body.add(r.rdLoc)
else:
var r: TCompRes
gen(p, it, r)
p.body.add(r.rdLoc)
p.body.add tnl p.body.add tnl
proc genIf(p: PProc, n: PNode, r: var TCompRes) = proc genIf(p: PProc, n: PNode, r: var TCompRes) =