protected override ICode VisitArgAddress(ExprArgAddress e) { this.code.AppendFormat("@(<{0}>", e.Type); this.Visit(e.Arg); this.code.Append(")"); return e; }
protected override ICode VisitArgAddress(ExprArgAddress e) { this.Visit(e.Arg); return e; }
private Stmt LdArga(int idx) { var type = this.ctx.MRef.Parameters[idx].ParameterType.FullResolve(this.ctx); var arg = this.args[idx]; var expr = new ExprArgAddress(this.ctx, arg, type); this.stack.Push(expr); return null; }