aboutsummaryrefslogtreecommitdiffstats
path: root/src/trace
diff options
context:
space:
mode:
authorChantal Keller <Chantal.Keller@lri.fr>2021-05-05 16:07:47 +0200
committerChantal Keller <Chantal.Keller@lri.fr>2021-05-05 16:07:47 +0200
commit9d45fd745ecfd02cb21b3f0e93566b6ee864db38 (patch)
treef358d6a1ca84dd2d71c8dddc20bdfa2444427190 /src/trace
parent64517cd829de743338ee3df7e94ecd262dc51505 (diff)
parent907cb562f511e3bbd3f84011e5d3e101f00c4252 (diff)
downloadsmtcoq-9d45fd745ecfd02cb21b3f0e93566b6ee864db38.tar.gz
smtcoq-9d45fd745ecfd02cb21b3f0e93566b6ee864db38.zip
Merge branch 'master' of github.com:smtcoq/smtcoq into coq-8.10
Diffstat (limited to 'src/trace')
-rw-r--r--src/trace/smtAtom.ml8
-rw-r--r--src/trace/smtBtype.ml2
2 files changed, 8 insertions, 2 deletions
diff --git a/src/trace/smtAtom.ml b/src/trace/smtAtom.ml
index ff6db6a..f0a907a 100644
--- a/src/trace/smtAtom.ml
+++ b/src/trace/smtAtom.ml
@@ -1338,10 +1338,16 @@ module Atom =
| _ -> assert false
and mk_unknown c args ty =
+ (* Collecting types and CompDec allows to reify applied
+ polymorphic functions *)
let rec collect_types = function
| [] -> ([],[])
| x::xs as l ->
- if Constr.iskind (Structures.retyping_get_type_of env sigma x) then
+ let ty = Structures.retyping_get_type_of env sigma x in
+ if Constr.iskind ty ||
+ let c, _ = Structures.decompose_app ty in
+ Structures.eq_constr c (Lazy.force cCompDec)
+ then
let (l1, l2) = collect_types xs in
(x::l1, l2)
else
diff --git a/src/trace/smtBtype.ml b/src/trace/smtBtype.ml
index 94339f6..1e05dc4 100644
--- a/src/trace/smtBtype.ml
+++ b/src/trace/smtBtype.ml
@@ -13,7 +13,7 @@
open SmtMisc
open CoqTerms
-(** Syntaxified version of Coq type *)
+(** Reified version of Coq type *)
type uninterpreted_type =
(* Uninterpreted type for which a CompDec is already known