mirror of
https://github.com/nspcc-dev/neo-go.git
synced 2025-05-03 23:02:27 +00:00
compiler: allow to use copy()
return value
This commit is contained in:
parent
3d8c7af66c
commit
3af7ce8c6b
2 changed files with 18 additions and 0 deletions
|
@ -1455,6 +1455,14 @@ func (c *codegen) convertBuiltin(expr *ast.CallExpr) {
|
|||
emit.Int(c.prog.BinWriter, 3)
|
||||
emit.Opcode(c.prog.BinWriter, opcode.ROLL)
|
||||
emit.Opcode(c.prog.BinWriter, opcode.MIN)
|
||||
if !c.scope.voidCalls[expr] {
|
||||
// insert top item to the bottom of MEMCPY args, so that it is left on stack
|
||||
emit.Opcode(c.prog.BinWriter, opcode.DUP)
|
||||
emit.Int(c.prog.BinWriter, 6)
|
||||
emit.Opcode(c.prog.BinWriter, opcode.REVERSEN)
|
||||
emit.Int(c.prog.BinWriter, 5)
|
||||
emit.Opcode(c.prog.BinWriter, opcode.REVERSEN)
|
||||
}
|
||||
emit.Opcode(c.prog.BinWriter, opcode.MEMCPY)
|
||||
case "make":
|
||||
typ := c.typeOf(expr.Args[0])
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue