aboutsummaryrefslogtreecommitdiff
path: root/kernel/nativelambda.ml
diff options
context:
space:
mode:
authorPierre-Marie Pédrot2018-05-28 20:11:06 +0200
committerPierre-Marie Pédrot2018-05-28 20:11:06 +0200
commita205bb9f2a93396aad154ec50f6f122cbd46811c (patch)
treecd1ad9834fa9e6391193b377cc4533f9eba702c5 /kernel/nativelambda.ml
parent81535edc4b21015bd63d23e57ca9d707b4b71f6b (diff)
parent131ac2af3778a741f5f33e212ef4a57f7a91d20a (diff)
Merge PR #7521: Fix soundness bug with VM/native and cofixpoints
Diffstat (limited to 'kernel/nativelambda.ml')
-rw-r--r--kernel/nativelambda.ml3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/nativelambda.ml b/kernel/nativelambda.ml
index 12cd5fe83a..8b61ed0c5a 100644
--- a/kernel/nativelambda.ml
+++ b/kernel/nativelambda.ml
@@ -12,7 +12,7 @@ open Names
open Esubst
open Constr
open Declarations
-open Pre_env
+open Environ
open Nativevalues
open Nativeinstr
@@ -570,6 +570,7 @@ let rec lambda_of_constr env sigma c =
Lfix(rec_init, (names, ltypes, lbodies))
| CoFix(init,(names,type_bodies,rec_bodies)) ->
+ let rec_bodies = Array.map2 (Reduction.eta_expand !global_env) rec_bodies type_bodies in
let ltypes = lambda_of_args env sigma 0 type_bodies in
Renv.push_rels env names;
let lbodies = lambda_of_args env sigma 0 rec_bodies in