aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/algorithm.ixx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2020-06-25 09:00:12 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2020-06-25 09:00:12 +0200
commita17b6b40510b8ec5ca18dd5203e4b229aa6fee8a (patch)
treefccf8e19b16775cbcf714a19a386bdc86ef1ec05 /libbuild2/algorithm.ixx
parent3875999b2642013dfddd6cb1fa7b3ee7ac14f9d7 (diff)
Add more instrumentation for unassigned path race
Diffstat (limited to 'libbuild2/algorithm.ixx')
-rw-r--r--libbuild2/algorithm.ixx10
1 files changed, 5 insertions, 5 deletions
diff --git a/libbuild2/algorithm.ixx b/libbuild2/algorithm.ixx
index 5f9143a..d75ad16 100644
--- a/libbuild2/algorithm.ixx
+++ b/libbuild2/algorithm.ixx
@@ -312,7 +312,7 @@ namespace build2
return r;
}
- inline bool
+ inline pair<bool, target_state>
match (action a, const target& t, unmatch um)
{
assert (t.ctx.phase == run_phase::match);
@@ -328,7 +328,7 @@ namespace build2
case unmatch::unchanged:
{
if (s == target_state::unchanged)
- return true;
+ return make_pair (true, s);
break;
}
@@ -340,14 +340,14 @@ namespace build2
//
if (s == target_state::unchanged ||
t[a].dependents.load (memory_order_consume) != 0)
- return true;
+ return make_pair (true, s);
break;
}
}
match_inc_dependens (a, t);
- return false;
+ return make_pair (false, s);;
}
inline target_state
@@ -437,7 +437,7 @@ namespace build2
return match (a.inner_action (), t);
}
- inline bool
+ inline pair<bool, target_state>
match_inner (action a, const target& t, unmatch um)
{
assert (a.outer ());