aboutsummaryrefslogtreecommitdiff
path: root/build2/target.ixx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2017-03-06 10:29:00 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2017-03-06 10:29:00 +0200
commit4da38e50a096e9aa19a75149bcc9dbb6e1de901e (patch)
tree9bac645e06f419f9bfa56bc93503d1390514ef53 /build2/target.ixx
parentd1d1d444f0b4abbb628625240025bfe3cfe77459 (diff)
Iterate over group members in test rule only if resolvable
Diffstat (limited to 'build2/target.ixx')
-rw-r--r--build2/target.ixx6
1 files changed, 4 insertions, 2 deletions
diff --git a/build2/target.ixx b/build2/target.ixx
index f581e5e..0be5aed 100644
--- a/build2/target.ixx
+++ b/build2/target.ixx
@@ -198,7 +198,7 @@ namespace build2
{
if (k_ != nullptr) // Iterating over an ad hoc group.
k_ = k_->member;
- else if (r_->members_)
+ else if (r_->mode_ != members_mode::never)
{
// Get the target if one has been resolved and see if it's an ad hoc
// group. If so, switch to the ad hoc mode.
@@ -223,7 +223,9 @@ namespace build2
{
++i_;
- if (r_->members_ && i_ != r_->e_ && i_->type.see_through)
+ if (r_->mode_ != members_mode::never &&
+ i_ != r_->e_ &&
+ i_->type.see_through)
switch_mode ();
}