diff options
| author | herbelin | 2009-11-27 19:48:59 +0000 |
|---|---|---|
| committer | herbelin | 2009-11-27 19:48:59 +0000 |
| commit | 93a5f1e03e29e375be69a2361ffd6323f5300f86 (patch) | |
| tree | 713b89aeac45df6b697d5b2a928c5808bb72d9fd /pretyping | |
| parent | 82d94b8af248edcd14d737ec005d560ecf0ee9e0 (diff) | |
Added support for definition of fixpoints using tactics.
Fixed some bugs in -beautify and robustness of {struct} clause.
Note: I tried to make the Automatic Introduction mode on by default
for version >= 8.3 but it is to complicated to adapt even in the
standard library.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12546 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'pretyping')
| -rw-r--r-- | pretyping/cases.ml | 2 | ||||
| -rw-r--r-- | pretyping/pretyping.ml | 2 | ||||
| -rw-r--r-- | pretyping/termops.ml | 2 | ||||
| -rw-r--r-- | pretyping/termops.mli | 2 |
4 files changed, 4 insertions, 4 deletions
diff --git a/pretyping/cases.ml b/pretyping/cases.ml index ae7106fb3c..177389c98a 100644 --- a/pretyping/cases.ml +++ b/pretyping/cases.ml @@ -1316,7 +1316,7 @@ let adjust_to_extended_env_and_remove_deps env extenv subst t = (* d1 ... dn dn+1 ... dn'-p+1 ... dn' *) (* \--env-/ (= x:ty) *) (* \--------------extenv------------/ *) - let (p,_) = lookup_rel_id x (rel_context extenv) in + let (p,_,_) = lookup_rel_id x (rel_context extenv) in let rec aux n (_,b,ty) = match b with | Some c -> diff --git a/pretyping/pretyping.ml b/pretyping/pretyping.ml index 10d9a1c4e2..288eb9da22 100644 --- a/pretyping/pretyping.ml +++ b/pretyping/pretyping.ml @@ -230,7 +230,7 @@ module Pretyping_F (Coercion : Coercion.S) = struct let pretype_id loc env (lvar,unbndltacvars) id = try - let (n,typ) = lookup_rel_id id (rel_context env) in + let (n,_,typ) = lookup_rel_id id (rel_context env) in { uj_val = mkRel n; uj_type = lift n typ } with Not_found -> try diff --git a/pretyping/termops.ml b/pretyping/termops.ml index 81c7405805..4de4bde2cb 100644 --- a/pretyping/termops.ml +++ b/pretyping/termops.ml @@ -221,7 +221,7 @@ let push_named_rec_types (lna,typarray,_) env = let rec lookup_rel_id id sign = let rec lookrec = function | (n, (Anonymous,_,_)::l) -> lookrec (n+1,l) - | (n, (Name id',_,t)::l) -> if id' = id then (n,t) else lookrec (n+1,l) + | (n, (Name id',b,t)::l) -> if id' = id then (n,b,t) else lookrec (n+1,l) | (_, []) -> raise Not_found in lookrec (1,sign) diff --git a/pretyping/termops.mli b/pretyping/termops.mli index 7f9ccb28ea..59f7750d3f 100644 --- a/pretyping/termops.mli +++ b/pretyping/termops.mli @@ -39,7 +39,7 @@ val print_env : env -> std_ppcmds val push_rel_assum : name * types -> env -> env val push_rels_assum : (name * types) list -> env -> env val push_named_rec_types : name array * types array * 'a -> env -> env -val lookup_rel_id : identifier -> rel_context -> int * types +val lookup_rel_id : identifier -> rel_context -> int * constr option * types (* builds argument lists matching a block of binders or a context *) val rel_vect : int -> int -> constr array |
