- let new_status,new_objs =
- match ast with
- | G.Executable (_, G.Command (_, G.Coercion _)) when dump ->
-(* FG: some commands can not be executed when mmas are parsed *************)
-(* To be removed when mmas will be executed *)
- status, `Old []
- | ast ->
- GrafiteEngine.eval_ast
- ~disambiguate_tactic:((* MATITA 1.0*) fun _ -> assert false)
- ~disambiguate_command:(disambiguate_command lexicon_status_ref)
- ~disambiguate_macro:((* MATITA 1.0*) fun _ -> assert false)
- ?do_heavy_checks status (text,prefix_len,ast)
- in
- let new_status =
- if !lexicon_status_ref#lstatus != status#lstatus then
- new_status#set_lstatus (!lexicon_status_ref#lstatus)
- else
- new_status in
- let new_status = LexiconSync.add_aliases_for_objs new_status new_objs in
- let new_aliases = LexiconSync.alias_diff ~from:status new_status in
+ let new_aliases,new_status =
+ GrafiteDisambiguate.eval_with_new_aliases status
+ (fun status ->
+ GrafiteEngine.eval_ast ~include_paths ?do_heavy_checks status
+ (text,prefix_len,ast)) in