aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/config/operation.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2025-02-03 06:46:29 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2025-02-03 06:48:19 +0200
commit43eb1e43b6b22a0343104387431db7f32a88b16c (patch)
tree15b90b59ac4748bfa923190eb91952b5a613992b /libbuild2/config/operation.cxx
parent4ed0fe15d139748784adb40841028b36704b2f4f (diff)
Optimize maybe-used diag_record
It turns out the std::ostringstream member of butl::diag_record is quite expensive to construct but to never use.
Diffstat (limited to 'libbuild2/config/operation.cxx')
-rw-r--r--libbuild2/config/operation.cxx13
1 files changed, 6 insertions, 7 deletions
diff --git a/libbuild2/config/operation.cxx b/libbuild2/config/operation.cxx
index 77a1294..5c06f3c 100644
--- a/libbuild2/config/operation.cxx
+++ b/libbuild2/config/operation.cxx
@@ -302,8 +302,8 @@ namespace build2
continue;
}
- diag_record dr;
- dr << warn (on) << "saving no longer used variable " << *var;
+ diag_record dr (warn (on));
+ dr << "saving no longer used variable " << *var;
info_import (dr, var->name);
if (verb >= 2)
info_value (dr, v);
@@ -313,8 +313,8 @@ namespace build2
{
if (r.second) // warn
{
- diag_record dr;
- dr << warn (on) << "dropping no longer used variable " << *var;
+ diag_record dr (warn (on));
+ dr << "dropping no longer used variable " << *var;
info_import (dr, var->name);
info_value (dr, v);
}
@@ -479,9 +479,8 @@ namespace build2
//
if (checked && org == ovr)
{
- diag_record dr;
- dr << warn (on) << "saving previously inherited variable "
- << var;
+ diag_record dr (warn (on));
+ dr << "saving previously inherited variable " << var;
dr << info << "because project " << *r << " no longer uses "
<< "it in its configuration";