let check_exceeding (candidates: candidates) : unit =
if not (candidates.cd_unprocessed_size = 0) then
failwith "Selection_split.check_exceeding";
candidates.cd_check_exceeding <- true;
begin
try
Context.iter
(fun element ->
if is_marked_exceeding candidates element then
Problem_literals.compute_for_element candidates.cd_problem_literals element Context_unifier.Split;
)
candidates.cd_context;
build_unprocessed ~force:true candidates;
with
| EXCEEDING_EXHAUSTED ->
()
end;
clear_unprocessed candidates;
candidates.cd_check_exceeding <- false