X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fgrafite_parser%2FgrafiteDisambiguator.ml;h=8827e709b42328072edcb01591e9422ef73ba9e1;hb=6a5e51c1cf9a56c74a8b53a9b8bc5aa686c9780e;hp=76d44421c62452edb280d6e0bad8b7e9f7c2f496;hpb=f48ba5edb4602e663ee746964ec88ff673642388;p=helm.git diff --git a/helm/software/components/grafite_parser/grafiteDisambiguator.ml b/helm/software/components/grafite_parser/grafiteDisambiguator.ml index 76d44421c..8827e709b 100644 --- a/helm/software/components/grafite_parser/grafiteDisambiguator.ml +++ b/helm/software/components/grafite_parser/grafiteDisambiguator.ml @@ -27,10 +27,17 @@ open Printf +let debug = false;; +let debug_print s = + if debug then prerr_endline (Lazy.force s);; + exception Ambiguous_input (* the integer is an offset to be added to each location *) exception DisambiguationError of - int * (Token.flocation option * string Lazy.t) list list + int * + ((Stdpp.location list * string * string) list * + (DisambiguateTypes.domain_item * DisambiguateTypes.codomain_item) list * + Stdpp.location option * string Lazy.t * bool) list list (** parameters are: option name, error message *) exception Unbound_identifier of string @@ -39,7 +46,7 @@ type choose_uris_callback = type choose_interp_callback = string -> int -> - (Token.flocation list * string * string) list list -> int list + (Stdpp.location list * string * string) list list -> int list let mono_uris_callback ~id = if Helm_registry.get_opt_default Helm_registry.get_bool ~default:true @@ -108,15 +115,15 @@ let disambiguate_thing ~aliases ~universe f ~fresh_instances ~aliases ~universe thing in let set_aliases (instances,(use_mono_aliases,_,_),_) (_, user_asked as res) = - if use_mono_aliases && not instances then - drop_aliases res + if use_mono_aliases then + drop_aliases ~minimize_instances:true res (* one shot aliases *) else if user_asked then drop_aliases ~minimize_instances:true res (* one shot aliases *) else drop_aliases_and_clear_diff res in let rec aux i errors passes = -(*prerr_endline ("Pass: " ^ string_of_int i);*) + debug_print (lazy ("Pass: " ^ string_of_int i)); match passes with [ pass ] -> (try