JS gen: fixes regression
This commit is contained in:
parent
a8a5d44e5d
commit
326e8fdc2f
1 changed files with 15 additions and 7 deletions
|
|
@ -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}:
|
||||||
p.body.add mangleName(v, p.target)
|
if p.target == targetPHP: p.body.add "$"
|
||||||
|
p.body.add mangleName(v, p.target)
|
||||||
|
else:
|
||||||
|
var r: TCompRes
|
||||||
|
gen(p, it, r)
|
||||||
|
p.body.add(r.rdLoc)
|
||||||
else:
|
else:
|
||||||
internalError(n.sons[i].info, "jsgen: genAsmOrEmitStmt()")
|
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) =
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue