diff options
Diffstat (limited to 'build/bin/rule.cxx')
-rw-r--r-- | build/bin/rule.cxx | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/build/bin/rule.cxx b/build/bin/rule.cxx index f02029b..0a7f2ee 100644 --- a/build/bin/rule.cxx +++ b/build/bin/rule.cxx @@ -114,23 +114,13 @@ namespace build if (current_mode == execution_mode::last) swap (m1, m2); - target_state r (target_state::unchanged), ts; + target_state r (target_state::unchanged); if (m1 != nullptr) - { - ts = execute (a, *m1); - if (ts == target_state::postponed || - (ts == target_state::changed && r == target_state::unchanged)) - r = ts; - } + r |= execute (a, *m1); if (m2 != nullptr) - { - ts = execute (a, *m2); - if (ts == target_state::postponed || - (ts == target_state::changed && r == target_state::unchanged)) - r = ts; - } + r |= execute (a, *m2); return r; } |