diff options
author | Stephane Glondu <steph@glondu.net> | 2010-07-01 17:21:14 +0200 |
---|---|---|
committer | Stephane Glondu <steph@glondu.net> | 2010-07-01 17:21:14 +0200 |
commit | da178a880e3ace820b41d38b191d3785b82991f5 (patch) | |
tree | 6356ab3164a5ad629f4161dc6c44ead74edc2937 /kernel | |
parent | e4282ea99c664d8d58067bee199cbbcf881b60d5 (diff) |
Imported Upstream version 8.2pl2+dfsgupstream/8.2.pl2+dfsg
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/indtypes.ml | 4 | ||||
-rw-r--r-- | kernel/modops.ml | 8 |
2 files changed, 7 insertions, 5 deletions
diff --git a/kernel/indtypes.ml b/kernel/indtypes.ml index 06764834..941ab046 100644 --- a/kernel/indtypes.ml +++ b/kernel/indtypes.ml @@ -6,7 +6,7 @@ (* * GNU Lesser General Public License Version 2.1 *) (************************************************************************) -(* $Id: indtypes.ml 11784 2009-01-14 11:36:32Z herbelin $ *) +(* $Id: indtypes.ml 12616 2009-12-30 15:02:26Z herbelin $ *) open Util open Names @@ -494,7 +494,7 @@ let check_positivity_one (env, _,ntypes,_ as ienv) hyps i nargs lcnames indlc = raise (IllFormedInd LocalNotConstructor) else if not (List.for_all (noccur_between n ntypes) largs) - then raise (IllFormedInd (LocalNonPos n)); + then failwith_non_pos_list n ntypes largs; (nmr,List.rev lrec) in check_constr_rec ienv nmr [] c in diff --git a/kernel/modops.ml b/kernel/modops.ml index 949a7402..34d9e930 100644 --- a/kernel/modops.ml +++ b/kernel/modops.ml @@ -6,7 +6,7 @@ (* * GNU Lesser General Public License Version 2.1 *) (************************************************************************) -(*i $Id: modops.ml 11923 2009-02-13 12:20:27Z soubiran $ i*) +(*i $Id: modops.ml 12234 2009-07-09 09:14:09Z soubiran $ i*) (*i*) open Util @@ -143,11 +143,13 @@ let rec subst_with_body sub = function and subst_modtype sub mtb = let typ_expr' = subst_struct_expr sub mtb.typ_expr in - if typ_expr'==mtb.typ_expr then + let sub_mtb = join_alias mtb.typ_alias sub in + if typ_expr'==mtb.typ_expr && sub_mtb==mtb.typ_alias then mtb else { mtb with - typ_expr = typ_expr'} + typ_expr = typ_expr'; + typ_alias = sub_mtb} and subst_structure sub sign = let subst_body = function |