From 37b5c39e203ba01384577f76feac2bc79a5c1480 Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Thu, 23 Mar 2023 13:27:39 +0100 Subject: [PATCH 1/5] Fix compiler warnings by re-ordering member init in constructors --- lib/base/workqueue.cpp | 2 +- lib/icingadb/redisconnection.cpp | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/base/workqueue.cpp b/lib/base/workqueue.cpp index 0b1214baf..711f05124 100644 --- a/lib/base/workqueue.cpp +++ b/lib/base/workqueue.cpp @@ -16,7 +16,7 @@ boost::thread_specific_ptr l_ThreadWorkQueue; WorkQueue::WorkQueue(size_t maxItems, int threadCount, LogSeverity statsLogLevel) : m_ID(m_NextID++), m_ThreadCount(threadCount), m_MaxItems(maxItems), - m_TaskStats(15 * 60), m_StatsLogLevel(statsLogLevel) + m_StatsLogLevel(statsLogLevel), m_TaskStats(15 * 60) { /* Initialize logger. */ m_StatusTimerTimeout = Utility::GetTime(); diff --git a/lib/icingadb/redisconnection.cpp b/lib/icingadb/redisconnection.cpp index e0b026239..2e1fbb67e 100644 --- a/lib/icingadb/redisconnection.cpp +++ b/lib/icingadb/redisconnection.cpp @@ -41,11 +41,11 @@ RedisConnection::RedisConnection(const String& host, int port, const String& pat RedisConnection::RedisConnection(boost::asio::io_context& io, String host, int port, String path, String username, String password, int db, bool useTls, bool insecure, String certPath, String keyPath, String caPath, String crlPath, String tlsProtocolmin, String cipherList, double connectTimeout, DebugInfo di, const RedisConnection::Ptr& parent) - : m_Host(std::move(host)), m_Port(port), m_Path(std::move(path)), m_Username(std::move(username)), m_Password(std::move(password)), + : m_Path(std::move(path)), m_Host(std::move(host)), m_Port(port), m_Username(std::move(username)), m_Password(std::move(password)), m_DbIndex(db), m_CertPath(std::move(certPath)), m_KeyPath(std::move(keyPath)), m_Insecure(insecure), m_CaPath(std::move(caPath)), m_CrlPath(std::move(crlPath)), m_TlsProtocolmin(std::move(tlsProtocolmin)), - m_CipherList(std::move(cipherList)), m_ConnectTimeout(connectTimeout), m_DebugInfo(std::move(di)), m_Connecting(false), m_Connected(false), - m_Started(false), m_Strand(io), m_QueuedWrites(io), m_QueuedReads(io), m_LogStatsTimer(io), m_Parent(parent) + m_CipherList(std::move(cipherList)), m_ConnectTimeout(connectTimeout), m_DebugInfo(std::move(di)), m_Strand(io), + m_Connecting(false), m_Connected(false), m_Started(false), m_QueuedWrites(io), m_QueuedReads(io), m_LogStatsTimer(io), m_Parent(parent) { if (useTls && m_Path.IsEmpty()) { UpdateTLSContext(); From 315c9a3692fa5b474a21fc8f3ca88ba744edbd70 Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Fri, 24 Mar 2023 15:38:50 +0100 Subject: [PATCH 2/5] Fix compiler warnings by replacing x&&y||z with (x&&y)||z --- lib/base/tcpsocket.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/base/tcpsocket.hpp b/lib/base/tcpsocket.hpp index 7e64d57a5..9fc57d28e 100644 --- a/lib/base/tcpsocket.hpp +++ b/lib/base/tcpsocket.hpp @@ -54,7 +54,7 @@ void Connect(Socket& socket, const String& node, const String& service) } catch (const std::exception& ex) { auto se (dynamic_cast(&ex)); - if (se && se->code() == boost::asio::error::operation_aborted || ++current == result.end()) { + if ((se && se->code() == boost::asio::error::operation_aborted) || ++current == result.end()) { throw; } @@ -84,7 +84,7 @@ void Connect(Socket& socket, const String& node, const String& service, boost::a } catch (const std::exception& ex) { auto se (dynamic_cast(&ex)); - if (se && se->code() == boost::asio::error::operation_aborted || ++current == result.end()) { + if ((se && se->code() == boost::asio::error::operation_aborted) || ++current == result.end()) { throw; } From 78631fa3197b53e30c277cf7831b85775786b3a6 Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Fri, 24 Mar 2023 18:07:51 +0100 Subject: [PATCH 3/5] Fix compiler warnings by ensuring variable initialization --- lib/base/tcpsocket.cpp | 8 ++++---- lib/icinga/legacytimeperiod.cpp | 2 +- tools/mkclass/class_lexer.ll | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/base/tcpsocket.cpp b/lib/base/tcpsocket.cpp index a9390e5a7..01594fdf3 100644 --- a/lib/base/tcpsocket.cpp +++ b/lib/base/tcpsocket.cpp @@ -32,8 +32,8 @@ void TcpSocket::Bind(const String& node, const String& service, int family) { addrinfo hints; addrinfo *result; - int error; - const char *func; + int error = 0; + const char *func = nullptr; memset(&hints, 0, sizeof(hints)); hints.ai_family = family; @@ -126,8 +126,8 @@ void TcpSocket::Connect(const String& node, const String& service) { addrinfo hints; addrinfo *result; - int error; - const char *func; + int error = 0; + const char *func = nullptr; memset(&hints, 0, sizeof(hints)); hints.ai_family = AF_UNSPEC; diff --git a/lib/icinga/legacytimeperiod.cpp b/lib/icinga/legacytimeperiod.cpp index adcd85b8c..a1ae91230 100644 --- a/lib/icinga/legacytimeperiod.cpp +++ b/lib/icinga/legacytimeperiod.cpp @@ -541,7 +541,7 @@ Dictionary::Ptr LegacyTimePeriod::FindNextSegment(const String& daydef, const St ProcessTimeRanges(timeranges, &iter, segments); Dictionary::Ptr bestSegment; - double bestBegin; + double bestBegin = 0; ObjectLock olock(segments); for (Dictionary::Ptr segment : segments) { diff --git a/tools/mkclass/class_lexer.ll b/tools/mkclass/class_lexer.ll index 217ca492c..719cc40e3 100644 --- a/tools/mkclass/class_lexer.ll +++ b/tools/mkclass/class_lexer.ll @@ -26,8 +26,8 @@ do { \ } while (0) struct lex_buf { - char *buf; - size_t size; + char *buf = NULL; + size_t size = 0; }; static void lb_init(lex_buf *lb) From 9612de881ad1790fab7c76d412a78fc3d42f2cc5 Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Wed, 29 Mar 2023 17:05:22 +0200 Subject: [PATCH 4/5] Fix compiler warnings by not std::move()ing where redundant --- lib/base/object-packer.cpp | 2 +- lib/config/config_parser.yy | 2 +- lib/config/configcompiler.cpp | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/base/object-packer.cpp b/lib/base/object-packer.cpp index 123ddad9e..f4f9d4e4e 100644 --- a/lib/base/object-packer.cpp +++ b/lib/base/object-packer.cpp @@ -242,5 +242,5 @@ String icinga::PackObject(const Value& value) std::string builder; PackAny(value, builder); - return std::move(builder); + return builder; } diff --git a/lib/config/config_parser.yy b/lib/config/config_parser.yy index 939681e68..c84e79cd2 100644 --- a/lib/config/config_parser.yy +++ b/lib/config/config_parser.yy @@ -280,7 +280,7 @@ std::unique_ptr ConfigCompiler::Compile() std::unique_ptr expr{new DictExpression(std::move(dlist))}; expr->MakeInline(); - return std::move(expr); + return expr; } #define scanner (context->GetScanner()) diff --git a/lib/config/configcompiler.cpp b/lib/config/configcompiler.cpp index 62f02ba19..227e7106c 100644 --- a/lib/config/configcompiler.cpp +++ b/lib/config/configcompiler.cpp @@ -146,7 +146,7 @@ std::unique_ptr ConfigCompiler::HandleInclude(const String& relative std::unique_ptr expr{new DictExpression(std::move(expressions))}; expr->MakeInline(); - return std::move(expr); + return expr; } /** @@ -174,7 +174,7 @@ std::unique_ptr ConfigCompiler::HandleIncludeRecursive(const String& std::unique_ptr dict{new DictExpression(std::move(expressions))}; dict->MakeInline(); - return std::move(dict); + return dict; } void ConfigCompiler::HandleIncludeZone(const String& relativeBase, const String& tag, const String& path, const String& pattern, const String& package, std::vector >& expressions) From d877e818db0be08834bf840b48f0437c613854c6 Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Fri, 17 Oct 2025 16:47:21 +0200 Subject: [PATCH 5/5] Fix compiler warnings --- lib/icingadb/icingadb-objects.cpp | 4 ++-- lib/icingadb/redisconnection.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/icingadb/icingadb-objects.cpp b/lib/icingadb/icingadb-objects.cpp index a8c2ed0b2..ae9829b53 100644 --- a/lib/icingadb/icingadb-objects.cpp +++ b/lib/icingadb/icingadb-objects.cpp @@ -1929,10 +1929,10 @@ unsigned short GetPreviousState(const Checkable::Ptr& checkable, const Service:: { auto phs ((type == StateTypeHard ? checkable->GetLastHardStatesRaw() : checkable->GetLastSoftStatesRaw()) % 100u); - if (service) { + if (service || phs == 99) { return phs; } else { - return phs == 99 ? phs : Host::CalculateState(ServiceState(phs)); + return Host::CalculateState(ServiceState(phs)); } } diff --git a/lib/icingadb/redisconnection.cpp b/lib/icingadb/redisconnection.cpp index 2e1fbb67e..426567997 100644 --- a/lib/icingadb/redisconnection.cpp +++ b/lib/icingadb/redisconnection.cpp @@ -224,7 +224,7 @@ void RedisConnection::EnqueueCallback(const std::function