From a0ebf29806f7ce066f7815f79c08ae4cb73be865 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 23 Oct 2023 09:53:59 +0200 Subject: WIP: drag options through all the match_*() functions --- libbuild2/algorithm.cxx | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) (limited to 'libbuild2/algorithm.cxx') diff --git a/libbuild2/algorithm.cxx b/libbuild2/algorithm.cxx index a414356..b34c175 100644 --- a/libbuild2/algorithm.cxx +++ b/libbuild2/algorithm.cxx @@ -1145,7 +1145,8 @@ namespace build2 dr << info << "while matching group rule to " << diag_do (a, t); }); - pair r (match_impl (a, g, 0, nullptr, try_match)); + pair r ( + match_impl (a, g, 0 /* options */, 0, nullptr, try_match)); if (r.first) { @@ -1285,15 +1286,11 @@ namespace build2 // the first half of the result. // pair - match_impl (action a, - const target& ct, - size_t start_count, - atomic_count* task_count, + match_impl (action a, const target& ct, + uint64_t options, + size_t start_count, atomic_count* task_count, bool try_match) { - - uint64_t options (match_extra::all_options); // @@ TMP - // If we are blocking then work our own queue one task at a time. The // logic here is that we may have already queued other tasks before this // one and there is nothing bad (except a potentially deep stack trace) @@ -1384,12 +1381,10 @@ namespace build2 } void - match_only_sync (action a, const target& t) + match_only_sync (action a, const target& t, uint64_t options) { assert (t.ctx.phase == run_phase::match); - uint64_t options (match_extra::all_options); // @@ TMP - target_lock l (lock_impl (a, t, scheduler::work_none, options)); if (l.target != nullptr) -- cgit v1.1