summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/buildtool/common/cli.hpp6
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_client_common.hpp14
-rw-r--r--src/buildtool/logging/log_sink_cmdline.hpp6
-rw-r--r--src/buildtool/logging/logger.hpp2
4 files changed, 19 insertions, 9 deletions
diff --git a/src/buildtool/common/cli.hpp b/src/buildtool/common/cli.hpp
index 7c2cd65c..feb58a6d 100644
--- a/src/buildtool/common/cli.hpp
+++ b/src/buildtool/common/cli.hpp
@@ -176,9 +176,9 @@ static inline auto SetupLogArguments(
},
fmt::format("Log limit (higher is more verbose) in interval [{},{}] "
"(Default: {}).",
- kFirstLogLevel,
- kLastLogLevel,
- kDefaultLogLevel))
+ static_cast<int>(kFirstLogLevel),
+ static_cast<int>(kLastLogLevel),
+ static_cast<int>(kDefaultLogLevel)))
->type_name("NUM");
app->add_flag("--plain-log",
clargs->plain_log,
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_client_common.hpp b/src/buildtool/execution_api/remote/bazel/bazel_client_common.hpp
index 60fb7860..188e0f43 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_client_common.hpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_client_common.hpp
@@ -50,10 +50,16 @@
LogLevel level,
grpc::Status const& s) noexcept {
if (logger == nullptr) {
- Logger::Log(level, "{}: {}", s.error_code(), s.error_message());
+ Logger::Log(level,
+ "{}: {}",
+ static_cast<int>(s.error_code()),
+ s.error_message());
}
else {
- logger->Emit(level, "{}: {}", s.error_code(), s.error_message());
+ logger->Emit(level,
+ "{}: {}",
+ static_cast<int>(s.error_code()),
+ s.error_message());
}
}
@@ -62,10 +68,10 @@
LogLevel level,
google::rpc::Status const& s) noexcept {
if (logger == nullptr) {
- Logger::Log(level, "{}: {}", s.code(), s.message());
+ Logger::Log(level, "{}: {}", static_cast<int>(s.code()), s.message());
}
else {
- logger->Emit(level, "{}: {}", s.code(), s.message());
+ logger->Emit(level, "{}: {}", static_cast<int>(s.code()), s.message());
}
}
diff --git a/src/buildtool/logging/log_sink_cmdline.hpp b/src/buildtool/logging/log_sink_cmdline.hpp
index 0488c240..7a565212 100644
--- a/src/buildtool/logging/log_sink_cmdline.hpp
+++ b/src/buildtool/logging/log_sink_cmdline.hpp
@@ -107,7 +107,11 @@ class LogSinkCmdLine final : public ILogSink {
break;
}
}
- return fmt::format(style, "{}", prefix);
+ try {
+ return fmt::format(style, "{}", prefix);
+ } catch (...) {
+ return prefix;
+ }
}
};
diff --git a/src/buildtool/logging/logger.hpp b/src/buildtool/logging/logger.hpp
index 74520639..6d7fd66d 100644
--- a/src/buildtool/logging/logger.hpp
+++ b/src/buildtool/logging/logger.hpp
@@ -127,7 +127,7 @@ class Logger {
}
else {
// format the message
- auto fmsg = fmt::format(msg, std::forward<T_Args>(args)...);
+ auto fmsg = fmt::vformat(msg, fmt::make_format_args(args...));
// recursive call without format arguments
FormatAndForward(logger, sinks, level, fmsg);
}