about summary refs log tree commit diff
path: root/pkg/lang
diff options
context:
space:
mode:
authorMel <einebeere@gmail.com>2022-08-29 22:32:56 +0000
committerMel <einebeere@gmail.com>2022-08-29 22:32:56 +0000
commit646b2fbe0dc12b89f807569d554e23051cf17ffb (patch)
tree92a639a59aa723c35c3f6264c9c3bdb22eb29f37 /pkg/lang
parent40b5571547b33ab3749aebfeca716777b744cdec (diff)
downloadjinx-646b2fbe0dc12b89f807569d554e23051cf17ffb.tar.zst
jinx-646b2fbe0dc12b89f807569d554e23051cf17ffb.zip
Drop native function arguments after usage
Diffstat (limited to 'pkg/lang')
-rw-r--r--pkg/lang/vm/exec.go7
1 files changed, 7 insertions, 0 deletions
diff --git a/pkg/lang/vm/exec.go b/pkg/lang/vm/exec.go
index c2d847f..0ace13a 100644
--- a/pkg/lang/vm/exec.go
+++ b/pkg/lang/vm/exec.go
@@ -1012,6 +1012,13 @@ func (vm *VM) execCall(argCount uint) error {
 			return err
 		}
 
+		// Also drop all the arguments
+		for _, arg := range args {
+			if err := arg.Drop(vm.memory); err != nil {
+				return err
+			}
+		}
+
 		return nil
 	}