diff options
author | barras <barras@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2008-05-06 18:31:25 +0000 |
---|---|---|
committer | barras <barras@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2008-05-06 18:31:25 +0000 |
commit | 376e61185dadea415d6b7d2df45dc7236e901e5b (patch) | |
tree | 78b89a99eee6981ee309710500b1b55b030522a3 /checker/declarations.ml | |
parent | 8956bfb8dd63d0d76d3f67f313371318b7edc39d (diff) |
checker deals with polymorphic constants and module aliases
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@10892 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'checker/declarations.ml')
-rw-r--r-- | checker/declarations.ml | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/checker/declarations.ml b/checker/declarations.ml index d5c34d92b..94388f4ac 100644 --- a/checker/declarations.ml +++ b/checker/declarations.ml @@ -39,6 +39,14 @@ type resolver type substitution = (module_path * resolver option) Umap.t type 'a subst_fun = substitution -> 'a -> 'a +let fold_subst fs fb fp = + Umap.fold + (fun k (mp,_) acc -> + match k with + MSI msid -> fs msid mp acc + | MBI mbid -> fb mbid mp acc + | MPI mp1 -> fp mp1 mp acc) + let empty_subst = Umap.empty let add_msid msid mp = |