diff options
author | 2016-06-01 19:16:52 +0200 | |
---|---|---|
committer | 2016-06-01 19:37:41 +0200 | |
commit | cf5baeccf3cf7c24ccc69aa728bfe836fba5230a (patch) | |
tree | 4e530c6ef169bd61bab7f30098d544947e8d7431 /plugins/extraction/extraction.ml | |
parent | ad66acf99a85cf1dee3bb56f70121130c090b0c4 (diff) | |
parent | 4c66c7f9c370d2088dfa064e77f45b869c672e98 (diff) |
Merge branch 'v8.5'
Diffstat (limited to 'plugins/extraction/extraction.ml')
-rw-r--r-- | plugins/extraction/extraction.ml | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/plugins/extraction/extraction.ml b/plugins/extraction/extraction.ml index 4072109c4..e40621965 100644 --- a/plugins/extraction/extraction.ml +++ b/plugins/extraction/extraction.ml @@ -989,7 +989,10 @@ let extract_constant env kn cb = | (Info,TypeScheme) -> (match cb.const_body with | Undef _ -> warn_info (); mk_typ_ax () - | Def c -> mk_typ (Mod_subst.force_constr c) + | Def c -> + (match cb.const_proj with + | None -> mk_typ (Mod_subst.force_constr c) + | Some pb -> mk_typ pb.proj_body) | OpaqueDef c -> add_opaque r; if access_opaque () then @@ -998,7 +1001,10 @@ let extract_constant env kn cb = | (Info,Default) -> (match cb.const_body with | Undef _ -> warn_info (); mk_ax () - | Def c -> mk_def (Mod_subst.force_constr c) + | Def c -> + (match cb.const_proj with + | None -> mk_def (Mod_subst.force_constr c) + | Some pb -> mk_def pb.proj_body) | OpaqueDef c -> add_opaque r; if access_opaque () then |