Enable log macros to work with no args (#4475)

This is enabled by the C++20 __VA_OPT__ feature.
Uses of "{}" format string were updated.
Some warning suppressions were required for older clang versions.
Also improve codegen of wpi::Logger::Log(), frc::ReportError(), and frc::MakeError();
these generate better and less redundant code if they use fmt::string_view for the
format string instead of templating on it.
This commit is contained in:
Tyler Veness
2022-10-19 10:49:27 -07:00
committed by GitHub
parent 878cc8defb
commit 1fc098e696
70 changed files with 373 additions and 338 deletions

View File

@@ -22,7 +22,7 @@ DsClient::DsClient(wpi::uv::Loop& loop, wpi::Logger& logger,
m_tcp{uv::Tcp::Create(loop)},
m_timer{uv::Timer::Create(loop)} {
m_tcp->end.connect([this] {
WPI_DEBUG4(m_logger, "{}", "DS connection closed");
WPI_DEBUG4(m_logger, "DS connection closed");
clearIp();
// try to connect again
m_tcp->Reuse([this] { m_timer->Start(kReconnectTime); });
@@ -56,7 +56,7 @@ void DsClient::Connect() {
m_tcp->Reuse([this] { m_timer->Start(kReconnectTime); });
};
WPI_DEBUG4(m_logger, "{}", "Starting DS connection attempt");
WPI_DEBUG4(m_logger, "Starting DS connection attempt");
m_tcp->Connect("127.0.0.1", 1742, connreq);
}

View File

@@ -26,7 +26,7 @@ ParallelTcpConnector::ParallelTcpConnector(
m_reconnectTimer{uv::Timer::Create(loop)} {
m_reconnectTimer->timeout.connect([this] {
if (!IsConnected()) {
WPI_DEBUG1(m_logger, "{}", "timed out, reconnecting");
WPI_DEBUG1(m_logger, "timed out, reconnecting");
Connect();
}
});
@@ -70,7 +70,7 @@ void ParallelTcpConnector::Connect() {
CancelAll();
m_reconnectTimer->Start(m_reconnectRate);
WPI_DEBUG3(m_logger, "{}", "starting new connection attempts");
WPI_DEBUG3(m_logger, "starting new connection attempts");
// kick off parallel lookups
for (auto&& server : m_servers) {
@@ -154,7 +154,7 @@ void ParallelTcpConnector::Connect() {
}
void ParallelTcpConnector::CancelAll(wpi::uv::Tcp* except) {
WPI_DEBUG4(m_logger, "{}", "canceling previous attempts");
WPI_DEBUG4(m_logger, "canceling previous attempts");
for (auto&& resolverWeak : m_resolvers) {
if (auto resolver = resolverWeak.lock()) {
WPI_DEBUG4(m_logger, "canceling GetAddrInfo({})",

View File

@@ -74,7 +74,7 @@ int UDPClient::start(int port) {
m_lsd = socket(AF_INET, SOCK_DGRAM, 0);
if (m_lsd < 0) {
WPI_ERROR(m_logger, "{}", "could not create socket");
WPI_ERROR(m_logger, "could not create socket");
return -1;
}
@@ -142,7 +142,7 @@ int UDPClient::send(std::span<const uint8_t> data, std::string_view server,
addr.sin_family = AF_INET;
SmallString<128> remoteAddr{server};
if (remoteAddr.empty()) {
WPI_ERROR(m_logger, "{}", "server must be passed");
WPI_ERROR(m_logger, "server must be passed");
return -1;
}
@@ -171,7 +171,7 @@ int UDPClient::send(std::string_view data, std::string_view server, int port) {
addr.sin_family = AF_INET;
SmallString<128> remoteAddr{server};
if (remoteAddr.empty()) {
WPI_ERROR(m_logger, "{}", "server must be passed");
WPI_ERROR(m_logger, "server must be passed");
return -1;
}
@@ -243,7 +243,7 @@ int UDPClient::set_timeout(double timeout) {
int ret = setsockopt(m_lsd, SOL_SOCKET, SO_RCVTIMEO,
reinterpret_cast<char*>(&tv), sizeof(tv));
if (ret < 0) {
WPI_ERROR(m_logger, "{}", "set timeout failed");
WPI_ERROR(m_logger, "set timeout failed");
}
return ret;
}