clone
This commit is contained in:
7
vm/vm.go
7
vm/vm.go
@@ -156,7 +156,12 @@ func (vm *VM) Run() error {
|
||||
globalIndex := code.ReadUint16(ins[ip+1:])
|
||||
vm.currentFrame().ip += 2
|
||||
|
||||
vm.globals[globalIndex] = vm.pop()
|
||||
ref := vm.pop()
|
||||
if mutable, ok := ref.(object.Mutable); ok {
|
||||
vm.globals[globalIndex] = mutable.Clone()
|
||||
} else {
|
||||
vm.globals[globalIndex] = ref
|
||||
}
|
||||
|
||||
case code.OpAssign:
|
||||
ident := vm.pop()
|
||||
|
||||
Reference in New Issue
Block a user