diff options
author | Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr> | 2017-07-11 00:59:53 +0200 |
---|---|---|
committer | Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr> | 2017-07-11 14:50:47 +0200 |
commit | 40ec7bc85b78f68257593234016f82d8e78d6384 (patch) | |
tree | 66d0a6fa9645dd43a17f281dd6a5e2c7fb8c6d0d /vernac/himsg.ml | |
parent | e1d4ad82b1557a8cf808e0374ece9c39ed349ea2 (diff) |
Properly handling polymorphic inductive subtyping in the kernel.
Before this patch, inductive subtyping was enforcing syntactic equality
of the variable instance, instead of reasoning up to alpha-renaming.
Diffstat (limited to 'vernac/himsg.ml')
-rw-r--r-- | vernac/himsg.ml | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/vernac/himsg.ml b/vernac/himsg.ml index ca3fb392f..86dcb6d4d 100644 --- a/vernac/himsg.ml +++ b/vernac/himsg.ml @@ -909,6 +909,7 @@ let explain_not_match_error = function quote (Printer.safe_pr_lconstr_env env Evd.empty t2) | IncompatibleConstraints cst -> str " the expected (polymorphic) constraints do not imply " ++ + let cst = Univ.UContext.constraints (Univ.instantiate_univ_context cst) in quote (Univ.pr_constraints (Termops.pr_evd_level Evd.empty) cst) let explain_signature_mismatch l spec why = |