diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2017-12-17 08:01:36 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2017-12-17 08:01:36 +0200 |
commit | 733aa97b5c0024a7856df7a571b542742f0f3e65 (patch) | |
tree | f36bdd700b637aa5070aabcd3e30555d7b01db95 | |
parent | ae5cab7489fe014dd3aa818cf2655d7a4714af83 (diff) |
Don't look for group recipe if target state is failed
-rw-r--r-- | build2/target.ixx | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/build2/target.ixx b/build2/target.ixx index 9b4b9d8..6225aef 100644 --- a/build2/target.ixx +++ b/build2/target.ixx @@ -73,12 +73,13 @@ namespace build2 group_state () const { // We go an extra step and short-circuit to the target state even if the - // raw state is not group provided the recipe is group_recipe. + // raw state is not group provided the recipe is group_recipe and the + // state is not failed. if (state_ == target_state::group) return true; - if (group != nullptr) + if (state_ != target_state::failed && group != nullptr) { if (recipe_function* const* f = recipe_.target<recipe_function*> ()) return *f == &group_action; |