aboutsummaryrefslogtreecommitdiffhomepage
path: root/pretyping/reductionops.mli
diff options
context:
space:
mode:
authorGravatar Maxime Dénès <mail@maximedenes.fr>2015-10-08 18:06:55 +0200
committerGravatar Maxime Dénès <mail@maximedenes.fr>2015-10-15 14:36:30 +0200
commit3116aeff0cdc51e6801f3e8ae4a6c0533e1a75ac (patch)
treeb6b33c6c6167656b1ca9799407eeb56aa1de749f /pretyping/reductionops.mli
parentd08aa6b4f742a7162e726920810765258802c176 (diff)
Fix #4346 1/2: native casts were not inferring universe constraints.
Diffstat (limited to 'pretyping/reductionops.mli')
-rw-r--r--pretyping/reductionops.mli9
1 files changed, 8 insertions, 1 deletions
diff --git a/pretyping/reductionops.mli b/pretyping/reductionops.mli
index 1df2a73b2..b179dbc95 100644
--- a/pretyping/reductionops.mli
+++ b/pretyping/reductionops.mli
@@ -266,7 +266,7 @@ val is_trans_fconv : conv_pb -> transparent_state -> env -> evar_map -> constr
*)
val check_conv : ?pb:conv_pb -> ?ts:transparent_state -> env -> evar_map -> constr -> constr -> bool
-(** [infer_fconv] Adds necessary universe constraints to the evar map.
+(** [infer_conv] Adds necessary universe constraints to the evar map.
pb defaults to CUMUL and ts to a full transparent state.
@raises UniverseInconsistency iff catch_incon is set to false,
otherwise returns false in that case.
@@ -274,6 +274,13 @@ val check_conv : ?pb:conv_pb -> ?ts:transparent_state -> env -> evar_map -> con
val infer_conv : ?catch_incon:bool -> ?pb:conv_pb -> ?ts:transparent_state ->
env -> evar_map -> constr -> constr -> evar_map * bool
+(** [infer_conv_gen] behaves like [infer_conv] but is parametrized by a
+conversion function. Used to pretype vm and native casts. *)
+val infer_conv_gen : (conv_pb -> l2r:bool -> evar_map -> transparent_state ->
+ (constr, evar_map) Reduction.generic_conversion_function) ->
+ ?catch_incon:bool -> ?pb:conv_pb -> ?ts:transparent_state -> env ->
+ evar_map -> constr -> constr -> evar_map * bool
+
(** {6 Special-Purpose Reduction Functions } *)
val whd_meta : evar_map -> constr -> constr