aboutsummaryrefslogtreecommitdiff
path: root/libbuild2
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2020-02-12 13:58:28 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2020-02-12 13:58:28 +0200
commit5524dcb9a9b10a65e450458eb76c84451a283ccc (patch)
tree3b7eadbb32e37608e6d176884f54b6074dcaf1a4 /libbuild2
parent67617fc444600cad5de2338f4d6f49d7a46fd915 (diff)
Defer failure to compiler diagnostics even if not in "keep going" mode
Diffstat (limited to 'libbuild2')
-rw-r--r--libbuild2/cc/compile-rule.cxx9
1 files changed, 6 insertions, 3 deletions
diff --git a/libbuild2/cc/compile-rule.cxx b/libbuild2/cc/compile-rule.cxx
index 3b79b39..a5c4cfb 100644
--- a/libbuild2/cc/compile-rule.cxx
+++ b/libbuild2/cc/compile-rule.cxx
@@ -3287,9 +3287,12 @@ namespace build2
context& ctx (t.ctx);
// We can only defer the failure if we will be running the compiler.
- // Let's also only do it in the "keep going" mode.
//
- bool df (!ctx.match_only && !ctx.dry_run_option && ctx.keep_going);
+ // We also used to only do it in the "keep going" mode but that proved
+ // to be inconvenient: some users like to re-run a failed build with
+ // -s not to get "swamped" with errors.
+ //
+ bool df (!ctx.match_only && !ctx.dry_run_option);
const file* ht (enter_header (a, bs, t, li,
move (hp), cache,
@@ -3351,7 +3354,7 @@ namespace build2
this] (path hp, path bp, timestamp mt) -> optional<bool>
{
context& ctx (t.ctx);
- bool df (!ctx.match_only && !ctx.dry_run_option && ctx.keep_going);
+ bool df (!ctx.match_only && !ctx.dry_run_option);
const file* ht (enter_header (a, bs, t, li,
move (hp), true /* cache */,