From: Gunnar Beutner Date: Wed, 24 Aug 2016 17:59:13 +0000 (+0200) Subject: Fix compiler warnings X-Git-Tag: v2.6.0~224 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=429d11daa89110f33cdf4b0dfd4f69c12695f34f;p=icinga2 Fix compiler warnings fixes #12534 --- diff --git a/icinga-app/icinga.cpp b/icinga-app/icinga.cpp index 0fea800ba..0887f4d5f 100644 --- a/icinga-app/icinga.cpp +++ b/icinga-app/icinga.cpp @@ -461,14 +461,14 @@ int Main(void) if (vm.count("arg")) args = vm["arg"].as >(); - if (args.size() < command->GetMinArguments()) { + if (static_cast(args.size()) < command->GetMinArguments()) { Log(LogCritical, "cli") << "Too few arguments. Command needs at least " << command->GetMinArguments() << " argument" << (command->GetMinArguments() != 1 ? "s" : "") << "."; return EXIT_FAILURE; } - if (command->GetMaxArguments() >= 0 && args.size() > command->GetMaxArguments()) { + if (command->GetMaxArguments() >= 0 && static_cast(args.size()) > command->GetMaxArguments()) { Log(LogCritical, "cli") << "Too many arguments. At most " << command->GetMaxArguments() << " argument" << (command->GetMaxArguments() != 1 ? "s" : "") << " may be specified."; diff --git a/icinga-studio/mainform.cpp b/icinga-studio/mainform.cpp index 0ca10814d..a441a7448 100644 --- a/icinga-studio/mainform.cpp +++ b/icinga-studio/mainform.cpp @@ -182,12 +182,10 @@ wxPGProperty *MainForm::ValueToProperty(const String& name, const Value& value) wxPGProperty *prop; if (value.IsNumber()) { - double val = value; prop = new wxFloatProperty(name.GetData(), wxPG_LABEL, value); prop->SetAttribute(wxPG_ATTR_UNITS, "Number"); return prop; } else if (value.IsBoolean()) { - bool val = value; prop = new wxBoolProperty(name.GetData(), wxPG_LABEL, value); prop->SetAttribute(wxPG_ATTR_UNITS, "Boolean"); return prop; diff --git a/lib/base/array.cpp b/lib/base/array.cpp index e849cc64a..f38e41e65 100644 --- a/lib/base/array.cpp +++ b/lib/base/array.cpp @@ -229,7 +229,7 @@ Value Array::GetFieldByName(const String& field, bool sandboxed, const DebugInfo ObjectLock olock(this); - if (index < 0 || index >= GetLength()) + if (index < 0 || static_cast(index) >= GetLength()) BOOST_THROW_EXCEPTION(ScriptError("Array index '" + Convert::ToString(index) + "' is out of bounds.", debugInfo)); return Get(index); @@ -240,7 +240,12 @@ void Array::SetFieldByName(const String& field, const Value& value, const DebugI ObjectLock olock(this); int index = Convert::ToLong(field); - if (index >= GetLength()) + + if (index < 0) + BOOST_THROW_EXCEPTION(ScriptError("Array index '" + Convert::ToString(index) + "' is out of bounds.", debugInfo)); + + if (static_cast(index) >= GetLength()) Resize(index + 1); + Set(index, value); } diff --git a/lib/base/configobject.ti b/lib/base/configobject.ti index 571a7045e..db4fedb99 100644 --- a/lib/base/configobject.ti +++ b/lib/base/configobject.ti @@ -59,10 +59,10 @@ public: m_DebugInfo = di; } - inline virtual void Start(bool runtimeCreated) + inline virtual void Start(bool /* runtimeCreated */) { } - inline virtual void Stop(bool runtimeRemoved) + inline virtual void Stop(bool /* runtimeRemoved */) { } private: diff --git a/lib/base/dictionary.cpp b/lib/base/dictionary.cpp index 6ac2fecae..df19aecb0 100644 --- a/lib/base/dictionary.cpp +++ b/lib/base/dictionary.cpp @@ -198,7 +198,7 @@ String Dictionary::ToString(void) const return msgbuf.str(); } -Value Dictionary::GetFieldByName(const String& field, bool sandboxed, const DebugInfo& debugInfo) const +Value Dictionary::GetFieldByName(const String& field, bool, const DebugInfo& debugInfo) const { Value value; @@ -208,7 +208,7 @@ Value Dictionary::GetFieldByName(const String& field, bool sandboxed, const Debu return GetPrototypeField(const_cast(this), field, false, debugInfo); } -void Dictionary::SetFieldByName(const String& field, const Value& value, const DebugInfo& debugInfo) +void Dictionary::SetFieldByName(const String& field, const Value& value, const DebugInfo&) { Set(field, value); } diff --git a/lib/base/exception.hpp b/lib/base/exception.hpp index 935eaecd0..04b20be24 100644 --- a/lib/base/exception.hpp +++ b/lib/base/exception.hpp @@ -106,7 +106,7 @@ I2_BASE_API void RethrowUncaughtException(void); typedef boost::error_info StackTraceErrorInfo; -inline std::string to_string(const StackTraceErrorInfo& e) +inline std::string to_string(const StackTraceErrorInfo&) { return ""; } diff --git a/lib/base/socketevents-poll.cpp b/lib/base/socketevents-poll.cpp index 3532f5658..a84b3bc4f 100644 --- a/lib/base/socketevents-poll.cpp +++ b/lib/base/socketevents-poll.cpp @@ -91,7 +91,7 @@ void SocketEventEnginePoll::ThreadProc(int tid) if (m_FDChanged[tid]) continue; - for (int i = 0; i < pfds.size(); i++) { + for (std::vector::size_type i = 0; i < pfds.size(); i++) { if ((pfds[i].revents & (POLLIN | POLLOUT | POLLHUP | POLLERR)) == 0) continue; diff --git a/lib/cli/clicommand.cpp b/lib/cli/clicommand.cpp index b1daec64d..2ef3128f2 100644 --- a/lib/cli/clicommand.cpp +++ b/lib/cli/clicommand.cpp @@ -176,7 +176,9 @@ bool CLICommand::ParseCommand(int argc, char **argv, po::options_description& vi BOOST_FOREACH(const CLIKeyValue& kv, GetRegistry()) { const std::vector& vname = kv.first; - for (int i = 0, k = 1; i < vname.size() && k < argc; i++, k++) { + std::vector::size_type i; + int k; + for (i = 0, k = 1; i < vname.size() && k < argc; i++, k++) { if (strcmp(argv[k], "--no-stack-rlimit") == 0 || strcmp(argv[k], "--autocomplete") == 0 || strcmp(argv[k], "--scm") == 0) { i--; continue; @@ -237,14 +239,16 @@ void CLICommand::ShowCommands(int argc, char **argv, po::options_description *vi arg_begin = 0; - for (int i = 0, k = 1; i < vname.size() && k < argc; i++, k++) { + std::vector::size_type i; + int k; + for (i = 0, k = 1; i < vname.size() && k < argc; i++, k++) { if (strcmp(argv[k], "--no-stack-rlimit") == 0 || strcmp(argv[k], "--autocomplete") == 0 || strcmp(argv[k], "--scm") == 0) { i--; arg_begin++; continue; } - if (autocomplete && i >= autoindex - 1) + if (autocomplete && static_cast(i) >= autoindex - 1) break; if (vname[i] != argv[k]) @@ -267,7 +271,7 @@ void CLICommand::ShowCommands(int argc, char **argv, po::options_description *vi if (autoindex < argc) aword = argv[autoindex]; - if (autoindex - 1 > best_match.size() && !command) + if (autoindex - 1 > static_cast(best_match.size()) && !command) return; } else std::cout << "Supported commands: " << std::endl; @@ -280,7 +284,7 @@ void CLICommand::ShowCommands(int argc, char **argv, po::options_description *vi bool match = true; - for (int i = 0; i < best_match.size(); i++) { + for (std::vector::size_type i = 0; i < best_match.size(); i++) { if (vname[i] != best_match[i]) { match = false; break; @@ -293,7 +297,7 @@ void CLICommand::ShowCommands(int argc, char **argv, po::options_description *vi if (autocomplete) { String cname; - if (autoindex - 1 < vname.size()) { + if (autoindex - 1 < static_cast(vname.size())) { cname = vname[autoindex - 1]; if (cname.Find(aword) == 0) diff --git a/lib/cli/consolecommand.cpp b/lib/cli/consolecommand.cpp index a5d78292d..786cf641f 100644 --- a/lib/cli/consolecommand.cpp +++ b/lib/cli/consolecommand.cpp @@ -175,7 +175,7 @@ char *ConsoleCommand::ConsoleCompleteHelper(const char *word, int state) } } - if (state >= matches.size()) + if (state >= static_cast(matches.size())) return NULL; return strdup(matches[state].CStr()); diff --git a/lib/cli/consolecommand.hpp b/lib/cli/consolecommand.hpp index 65a7061b6..978848e04 100644 --- a/lib/cli/consolecommand.hpp +++ b/lib/cli/consolecommand.hpp @@ -52,7 +52,6 @@ public: private: mutable boost::mutex m_Mutex; mutable boost::condition_variable m_CV; - mutable bool m_CommandReady; static void ExecuteScriptCompletionHandler(boost::mutex& mutex, boost::condition_variable& cv, bool& ready, boost::exception_ptr eptr, const Value& result, Value& resultOut, diff --git a/lib/config/config_parser.yy b/lib/config/config_parser.yy index e778bf1b2..b4038f0ed 100644 --- a/lib/config/config_parser.yy +++ b/lib/config/config_parser.yy @@ -281,7 +281,7 @@ Expression *ConfigCompiler::Compile(void) std::vector dlist; typedef std::pair EListItem; - int num = 0; + std::vector >::size_type num = 0; BOOST_FOREACH(const EListItem& litem, llist) { if (!litem.second.SideEffect && num != llist.size() - 1) { yyerror(&litem.second.DebugInfo, NULL, NULL, "Value computed is not used."); @@ -778,7 +778,7 @@ rterm_scope: '{' context->m_IgnoreNewlines.pop(); std::vector dlist; typedef std::pair EListItem; - int num = 0; + std::vector >::size_type num = 0; BOOST_FOREACH(const EListItem& litem, *$3) { if (!litem.second.SideEffect && num != $3->size() - 1) yyerror(&litem.second.DebugInfo, NULL, NULL, "Value computed is not used."); @@ -1006,7 +1006,7 @@ rterm_no_side_effect_no_dict: T_STRING std::vector dlist; typedef std::pair EListItem; - int num = 0; + std::vector >::size_type num = 0; BOOST_FOREACH(const EListItem& litem, *$3) { if (!litem.second.SideEffect && num != $3->size() - 1) yyerror(&litem.second.DebugInfo, NULL, NULL, "Value computed is not used."); diff --git a/lib/config/expression.hpp b/lib/config/expression.hpp index 47f2627cf..c20fe9d15 100644 --- a/lib/config/expression.hpp +++ b/lib/config/expression.hpp @@ -799,7 +799,7 @@ class I2_CONFIG_API FunctionExpression : public DebuggableExpression public: FunctionExpression(const String& name, const std::vector& args, std::map *closedVars, Expression *expression, const DebugInfo& debugInfo = DebugInfo()) - : DebuggableExpression(debugInfo), m_Args(args), m_Name(name), m_ClosedVars(closedVars), m_Expression(expression) + : DebuggableExpression(debugInfo), m_Name(name), m_Args(args), m_ClosedVars(closedVars), m_Expression(expression) { } ~FunctionExpression(void) diff --git a/lib/db_ido/dbconnection.cpp b/lib/db_ido/dbconnection.cpp index 329c93bac..973424d7d 100644 --- a/lib/db_ido/dbconnection.cpp +++ b/lib/db_ido/dbconnection.cpp @@ -39,8 +39,8 @@ Timer::Ptr DbConnection::m_ProgramStatusTimer; boost::once_flag DbConnection::m_OnceFlag = BOOST_ONCE_INIT; DbConnection::DbConnection(void) - : m_QueryStats(15 * 60), m_PendingQueries(0), m_PendingQueriesTimestamp(0), - m_IDCacheValid(false), m_ActiveChangedHandler(false) + : m_IDCacheValid(false), m_QueryStats(15 * 60), m_PendingQueries(0), + m_PendingQueriesTimestamp(0), m_ActiveChangedHandler(false) { } void DbConnection::OnConfigLoaded(void) @@ -255,7 +255,7 @@ void DbConnection::CleanUpHandler(void) { "downtimehistory", "entry_time" }, { "eventhandlers", "start_time" }, { "externalcommands", "entry_time" }, - { "flappinghistory" "event_time" }, + { "flappinghistory", "event_time" }, { "hostchecks", "start_time" }, { "logentries", "logentry_time" }, { "notifications", "start_time" }, diff --git a/lib/db_ido/hostdbobject.cpp b/lib/db_ido/hostdbobject.cpp index 30ef27a30..d607531f2 100644 --- a/lib/db_ido/hostdbobject.cpp +++ b/lib/db_ido/hostdbobject.cpp @@ -427,8 +427,6 @@ String HostDbObject::CalculateConfigHash(const Dictionary::Ptr& configFields) co if (!parent) continue; - int state_filter = dep->GetStateFilter(); - Array::Ptr depInfo = new Array(); depInfo->Add(parent->GetName()); depInfo->Add(dep->GetStateFilter()); diff --git a/lib/db_ido/servicedbobject.cpp b/lib/db_ido/servicedbobject.cpp index b9009097f..ca3a5a2e0 100644 --- a/lib/db_ido/servicedbobject.cpp +++ b/lib/db_ido/servicedbobject.cpp @@ -371,8 +371,6 @@ String ServiceDbObject::CalculateConfigHash(const Dictionary::Ptr& configFields) if (!parent) continue; - int state_filter = dep->GetStateFilter(); - Array::Ptr depInfo = new Array(); depInfo->Add(parent->GetName()); depInfo->Add(dep->GetStateFilter()); diff --git a/lib/db_ido_mysql/idomysqlconnection.hpp b/lib/db_ido_mysql/idomysqlconnection.hpp index 5920de67b..2115a9d2e 100644 --- a/lib/db_ido_mysql/idomysqlconnection.hpp +++ b/lib/db_ido_mysql/idomysqlconnection.hpp @@ -76,7 +76,7 @@ private: MYSQL m_Connection; int m_AffectedRows; - int m_MaxPacketSize; + unsigned int m_MaxPacketSize; std::vector m_AsyncQueries; diff --git a/lib/icinga/cib.cpp b/lib/icinga/cib.cpp index e8724c571..38aec3baa 100644 --- a/lib/icinga/cib.cpp +++ b/lib/icinga/cib.cpp @@ -198,7 +198,7 @@ CheckableCheckStatistics CIB::CalculateServiceCheckStats(void) ServiceStatistics CIB::CalculateServiceStats(void) { - ServiceStatistics ss = {0}; + ServiceStatistics ss = {}; BOOST_FOREACH(const Service::Ptr& service, ConfigType::GetObjectsByType()) { ObjectLock olock(service); @@ -232,7 +232,7 @@ ServiceStatistics CIB::CalculateServiceStats(void) HostStatistics CIB::CalculateHostStats(void) { - HostStatistics hs = {0}; + HostStatistics hs = {}; BOOST_FOREACH(const Host::Ptr& host, ConfigType::GetObjectsByType()) { ObjectLock olock(host); diff --git a/lib/livestatus/table.cpp b/lib/livestatus/table.cpp index c17610000..acec7be53 100644 --- a/lib/livestatus/table.cpp +++ b/lib/livestatus/table.cpp @@ -138,7 +138,7 @@ std::vector Table::FilterRows(const Filter::Ptr& filter, int bool Table::FilteredAddRow(std::vector& rs, const Filter::Ptr& filter, int limit, const Value& row, LivestatusGroupByType groupByType, const Object::Ptr& groupByObject) { - if (limit != -1 && rs.size() == limit) + if (limit != -1 && static_cast(rs.size()) == limit) return false; if (!filter || filter->Apply(this, row)) { diff --git a/lib/perfdata/influxdbwriter.cpp b/lib/perfdata/influxdbwriter.cpp index 239db8995..d401bf0ba 100644 --- a/lib/perfdata/influxdbwriter.cpp +++ b/lib/perfdata/influxdbwriter.cpp @@ -148,7 +148,6 @@ void InfluxdbWriter::CheckResultHandler(const Checkable::Ptr& checkable, const C Dictionary::Ptr tags = tmpl->Get("tags"); if (tags) { ObjectLock olock(tags); -retry: BOOST_FOREACH(const Dictionary::Pair& pair, tags) { // Prevent missing macros from warning; will return an empty value // which will be filtered out in SendMetric() @@ -318,7 +317,7 @@ void InfluxdbWriter::SendMetric(const Dictionary::Ptr& tmpl, const String& label m_DataBuffer->Add(String(msgbuf.str())); // Flush if we've buffered too much to prevent excessive memory use - if (m_DataBuffer->GetLength() >= GetFlushThreshold()) { + if (static_cast(m_DataBuffer->GetLength()) >= GetFlushThreshold()) { Log(LogDebug, "InfluxdbWriter") << "Data buffer overflow writing " << m_DataBuffer->GetLength() << " data points"; Flush(); diff --git a/lib/remote/createobjecthandler.cpp b/lib/remote/createobjecthandler.cpp index 848512be3..bcb0b256c 100644 --- a/lib/remote/createobjecthandler.cpp +++ b/lib/remote/createobjecthandler.cpp @@ -52,7 +52,6 @@ bool CreateObjectHandler::HandleRequest(const ApiUser::Ptr& user, HttpRequest& r Dictionary::Ptr attrs = params->Get("attrs"); Dictionary::Ptr result1 = new Dictionary(); - int code; String status; Array::Ptr errors = new Array(); diff --git a/lib/remote/eventqueue.hpp b/lib/remote/eventqueue.hpp index 6e62f5f07..b34b36c8b 100644 --- a/lib/remote/eventqueue.hpp +++ b/lib/remote/eventqueue.hpp @@ -64,7 +64,6 @@ private: std::set m_Types; Expression *m_Filter; - double m_Ttl; std::map > m_Events; }; diff --git a/lib/remote/httphandler.cpp b/lib/remote/httphandler.cpp index 24db6ce44..041136b47 100644 --- a/lib/remote/httphandler.cpp +++ b/lib/remote/httphandler.cpp @@ -67,7 +67,7 @@ void HttpHandler::ProcessRequest(const ApiUser::Ptr& user, HttpRequest& request, std::vector handlers; const std::vector& path = request.RequestUrl->GetPath(); - for (int i = 0; i <= path.size(); i++) { + for (std::vector::size_type i = 0; i <= path.size(); i++) { Array::Ptr current_handlers = node->Get("handlers"); if (current_handlers) { diff --git a/lib/remote/httpserverconnection.cpp b/lib/remote/httpserverconnection.cpp index d3f75868b..140fbde01 100644 --- a/lib/remote/httpserverconnection.cpp +++ b/lib/remote/httpserverconnection.cpp @@ -37,7 +37,7 @@ static boost::once_flag l_HttpServerConnectionOnceFlag = BOOST_ONCE_INIT; static Timer::Ptr l_HttpServerConnectionTimeoutTimer; HttpServerConnection::HttpServerConnection(const String& identity, bool authenticated, const TlsStream::Ptr& stream) - : m_Stream(stream), m_CurrentRequest(stream), m_Seen(Utility::GetTime()), m_PendingRequests(0) + : m_Stream(stream), m_Seen(Utility::GetTime()), m_CurrentRequest(stream), m_PendingRequests(0) { boost::call_once(l_HttpServerConnectionOnceFlag, &HttpServerConnection::StaticInitialize); diff --git a/lib/remote/jsonrpcconnection.cpp b/lib/remote/jsonrpcconnection.cpp index 69321a63e..ccc090bd5 100644 --- a/lib/remote/jsonrpcconnection.cpp +++ b/lib/remote/jsonrpcconnection.cpp @@ -64,7 +64,7 @@ void JsonRpcConnection::StaticInitialize(void) l_JsonRpcConnectionWorkQueueCount = Application::GetConcurrency(); l_JsonRpcConnectionWorkQueues = new WorkQueue[l_JsonRpcConnectionWorkQueueCount]; - for (int i = 0; i < l_JsonRpcConnectionWorkQueueCount; i++) { + for (size_t i = 0; i < l_JsonRpcConnectionWorkQueueCount; i++) { l_JsonRpcConnectionWorkQueues[i].SetName("JsonRpcConnection, #" + Convert::ToString(i)); } } diff --git a/tools/mkclass/classcompiler.cpp b/tools/mkclass/classcompiler.cpp index 1e8b1d2a0..6f88c8751 100644 --- a/tools/mkclass/classcompiler.cpp +++ b/tools/mkclass/classcompiler.cpp @@ -106,7 +106,7 @@ void ClassCompiler::HandleCode(const std::string& code, const ClassDebugInfo&) m_Header << code << std::endl; } -void ClassCompiler::HandleLibrary(const std::string& library, const ClassDebugInfo& locp) +void ClassCompiler::HandleLibrary(const std::string& library, const ClassDebugInfo&) { m_Library = library;