diff options
author | Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr> | 2017-07-30 16:10:14 +0200 |
---|---|---|
committer | Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr> | 2018-03-03 18:05:56 +0100 |
commit | e82856f3108a25f7b0cabff4190bc56d3a0cafa1 (patch) | |
tree | 712336a242276c7ceb9dcde72999ad0769faa669 /kernel/vm.ml | |
parent | df9d3a36e71d6d224286811fdc529ad5a955deb7 (diff) |
Handling evars in the VM.
We simply treat them as as an application of an atom to its instance,
and in the decompilation phase we reconstruct the instance from the stack.
This grants wish BZ#5659.
Diffstat (limited to 'kernel/vm.ml')
-rw-r--r-- | kernel/vm.ml | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/kernel/vm.ml b/kernel/vm.ml index 352ea74a4..0f6e09521 100644 --- a/kernel/vm.ml +++ b/kernel/vm.ml @@ -28,7 +28,6 @@ let popstop_code i = let stop = popstop_code 0 - (************************************************) (* Abstract machine *****************************) (************************************************) @@ -70,7 +69,6 @@ let apply_varray vf varray = interprete (fun_code vf) (fun_val vf) (fun_env vf) (n - 1) end -(* Functions over vfun *) let mkrel_vstack k arity = let max = k + arity - 1 in Array.init arity (fun i -> val_of_rel (max - i)) |