template+emit supports volatileRead and volatileWrite ops
This commit is contained in:
parent
93068f1ba6
commit
d651012688
3 changed files with 26 additions and 4 deletions
|
|
@ -973,6 +973,8 @@ proc genAsmOrEmitStmt(p: BProc, t: PNode, isAsmStmt=false): Rope =
|
|||
r = mangleName(p.module, sym)
|
||||
sym.loc.r = r # but be consequent!
|
||||
res.add($r)
|
||||
of nkTypeOfExpr:
|
||||
res.add($getTypeDesc(p.module, t.sons[i].typ))
|
||||
else:
|
||||
var a: TLoc
|
||||
initLocExpr(p, t.sons[i], a)
|
||||
|
|
|
|||
|
|
@ -445,7 +445,9 @@ proc semTemplBody(c: var TemplCtx, n: PNode): PNode =
|
|||
of nkPostfix:
|
||||
result.sons[1] = semTemplBody(c, n.sons[1])
|
||||
of nkPragma:
|
||||
result = onlyReplaceParams(c, n)
|
||||
for x in n:
|
||||
if x.kind == nkExprColonExpr:
|
||||
x.sons[1] = semTemplBody(c, x.sons[1])
|
||||
of nkBracketExpr:
|
||||
result = newNodeI(nkCall, n.info)
|
||||
result.add newIdentNode(getIdent("[]"), n.info)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue