Did you know ... Search Documentation:
Pack xtools -- prolog/mark_preds.pl
PublicShow source
 gen_lit_marks(:Goal, Ref)
Generalization step, we lose precision but avoid loops --EMM

The order of this clauses matters, because we record as marked from the most specific to the most generic one !!!

The logic is: a call to a predicate will potentially use:

(1) all the assertions (2) the clauses that match, and (3) the dynamic calls that match

Undocumented predicates

The following predicates are exported, but not or incorrectly documented.

 cleanup_marked
 marked(Arg1)
 match_head_clause(Arg1, Arg2)
 mark_compile_time_called
 put_mark(Arg1)