aboutsummaryrefslogtreecommitdiff
path: root/build2/b.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2018-02-12 14:45:19 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2018-02-12 14:46:07 +0200
commitf5bc31da2a84b81fef5da8a59da66a2386adbea6 (patch)
tree7101f9552d098ca68cccfb6c6b877d55400ffbf1 /build2/b.cxx
parent82674ef0da3785713dd295059c0f63a4e9e7a926 (diff)
Make sure operation failure diagnostics is printed for pre/post-operations
Diffstat (limited to 'build2/b.cxx')
-rw-r--r--build2/b.cxx15
1 files changed, 9 insertions, 6 deletions
diff --git a/build2/b.cxx b/build2/b.cxx
index b88fd5e..b0a9abf 100644
--- a/build2/b.cxx
+++ b/build2/b.cxx
@@ -1246,12 +1246,13 @@ main (int argc, char* argv[])
{
result_printer p (tgs);
+ uint16_t diag (ops.structured_result () ? 0 : 1);
if (mif->match != nullptr)
- mif->match (mparams, a, tgs, true /* quiet */);
+ mif->match (mparams, a, tgs, diag);
if (mif->execute != nullptr && !ops.match_only ())
- mif->execute (mparams, a, tgs, true /* quiet */);
+ mif->execute (mparams, a, tgs, diag);
}
if (mif->operation_post != nullptr)
@@ -1269,12 +1270,13 @@ main (int argc, char* argv[])
{
result_printer p (tgs);
+ uint16_t diag (ops.structured_result () ? 0 : 2);
if (mif->match != nullptr)
- mif->match (mparams, a, tgs, ops.structured_result () /*quiet*/);
+ mif->match (mparams, a, tgs, diag);
if (mif->execute != nullptr && !ops.match_only ())
- mif->execute (mparams, a, tgs, ops.structured_result () /*quiet*/);
+ mif->execute (mparams, a, tgs, diag);
}
if (post_oid != 0)
@@ -1293,12 +1295,13 @@ main (int argc, char* argv[])
{
result_printer p (tgs);
+ uint16_t diag (ops.structured_result () ? 0 : 1);
if (mif->match != nullptr)
- mif->match (mparams, a, tgs, true /* quiet */);
+ mif->match (mparams, a, tgs, diag);
if (mif->execute != nullptr && !ops.match_only ())
- mif->execute (mparams, a, tgs, true /* quiet */);
+ mif->execute (mparams, a, tgs, diag);
}
if (mif->operation_post != nullptr)