aboutsummaryrefslogtreecommitdiffhomepage
path: root/pretyping/detyping.ml
diff options
context:
space:
mode:
authorGravatar Maxime Dénès <mail@maximedenes.fr>2018-06-19 08:27:51 +0200
committerGravatar Maxime Dénès <mail@maximedenes.fr>2018-06-19 08:27:51 +0200
commit981864d47efca1d42f43dc5b7c5439638a86f315 (patch)
treea835613a0143b6cfc2ab8f94361afda62840954e /pretyping/detyping.ml
parentf0ae8e82ea53ce72ddac1fb8f7f40fd1beacf787 (diff)
parente43710b391c278ac7fcb808ec28d720b4317660c (diff)
Merge PR #7714: Remove primitive-projection related data from the kernel
Diffstat (limited to 'pretyping/detyping.ml')
-rw-r--r--pretyping/detyping.ml5
1 files changed, 4 insertions, 1 deletions
diff --git a/pretyping/detyping.ml b/pretyping/detyping.ml
index df89d9eac..5a54c6f05 100644
--- a/pretyping/detyping.ml
+++ b/pretyping/detyping.ml
@@ -690,7 +690,10 @@ and detype_r d flags avoid env sigma t =
let c' =
try
let pb = Environ.lookup_projection p (snd env) in
- let body = pb.Declarations.proj_body in
+ (** FIXME: handle mutual records *)
+ let ind = (pb.Declarations.proj_ind, 0) in
+ let bodies = Inductiveops.legacy_match_projection (snd env) ind in
+ let body = bodies.(pb.Declarations.proj_arg) in
let ty = Retyping.get_type_of (snd env) sigma c in
let ((ind,u), args) = Inductiveops.find_mrectype (snd env) sigma ty in
let body' = strip_lam_assum body in