diff options
author | 2004-06-25 00:00:12 +0000 | |
---|---|---|
committer | 2004-06-25 00:00:12 +0000 | |
commit | 4a602e4d159c68eaa127e636df0d3445bfe998a2 (patch) | |
tree | 6d93fbfdeb31a62e4d9e7f44909768b18acf3307 /toplevel | |
parent | 31c8ed3ac64af0792401e13d086b13833e818c08 (diff) |
correspondance des records et noms de champs de records entre un module et sa signature
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@5823 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'toplevel')
-rw-r--r-- | toplevel/command.ml | 4 | ||||
-rw-r--r-- | toplevel/discharge.ml | 4 | ||||
-rw-r--r-- | toplevel/record.ml | 3 |
3 files changed, 8 insertions, 3 deletions
diff --git a/toplevel/command.ml b/toplevel/command.ml index fc2c2cb29..411d42df5 100644 --- a/toplevel/command.ml +++ b/toplevel/command.ml @@ -358,7 +358,9 @@ let interp_mutual lparams lnamearconstrs finite = (List.rev arityl) lnamearconstrs in States.unfreeze fs; - notations, { mind_entry_finite = finite; mind_entry_inds = mispecvec } + notations, { mind_entry_record = false; + mind_entry_finite = finite; + mind_entry_inds = mispecvec } with e -> States.unfreeze fs; raise e let declare_mutual_with_eliminations isrecord mie = diff --git a/toplevel/discharge.ml b/toplevel/discharge.ml index 5f2c068fd..12c5056ee 100644 --- a/toplevel/discharge.ml +++ b/toplevel/discharge.ml @@ -118,6 +118,7 @@ let abstract_inductive sec_sp ids_to_abs hyps inds = let process_inductive sec_sp osecsp nsecsp oldenv (ids_to_discard,modlist) mib = assert (Array.length mib.mind_packets > 0); + let record = mib.mind_record in let finite = mib.mind_finite in let inds = array_map_to_list @@ -153,7 +154,8 @@ let process_inductive sec_sp osecsp nsecsp oldenv (ids_to_discard,modlist) mib = in let indmodifs,cstrmodifs = List.split (list_tabulate lmodif_one_mind mib.mind_ntypes) in - ({ mind_entry_finite = finite; + ({ mind_entry_record = record; + mind_entry_finite = finite; mind_entry_inds = inds' }, indmodifs, List.flatten cstrmodifs, diff --git a/toplevel/record.ml b/toplevel/record.ml index acddd2e61..843e4e074 100644 --- a/toplevel/record.ml +++ b/toplevel/record.ml @@ -226,7 +226,8 @@ let definition_structure ((is_coe,(_,idstruc)),ps,cfs,idbuild,s) = mind_entry_consnames = [idbuild]; mind_entry_lc = [type_constructor] } in let mie = - { mind_entry_finite = true; + { mind_entry_record = true; + mind_entry_finite = true; mind_entry_inds = [mie_ind] } in let sp = declare_mutual_with_eliminations true mie in let rsp = (sp,0) in (* This is ind path of idstruc *) |