summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2016-02-26 20:44:10 +0000
committerPeter Powell <petpow@saberuk.com>2016-02-26 20:52:50 +0000
commitb972020b391485d92bd46ce662421fa036ca4ca6 (patch)
treec4c7569d3ca188ddd0b5ab469766749dfef62adf /src
parentde4b1863536348520c6498e11d910acd050092a7 (diff)
Fix GCC 6 warning about null checking this.
As with 402a1bb010522a35600325c1a3084e092b40ca22 this is known to be undefined behaviour but changing it is too risky for the 2.0 branch.
Diffstat (limited to 'src')
-rw-r--r--src/configparser.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/configparser.cpp b/src/configparser.cpp
index 94192a71b..409ebdd39 100644
--- a/src/configparser.cpp
+++ b/src/configparser.cpp
@@ -388,19 +388,20 @@ bool ParseStack::ParseExec(const std::string& name, int flags, const std::string
return ok;
}
-bool ConfigTag::readString(const std::string& key, std::string& value, bool allow_lf)
-{
#ifdef __clang__
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wunknown-pragmas"
# pragma clang diagnostic ignored "-Wundefined-bool-conversion"
+#elif defined __GNUC__
+# pragma GCC diagnostic push
+# pragma GCC diagnostic ignored "-Wpragmas"
+# pragma GCC diagnostic ignored "-Wnonnull-compare"
#endif
+bool ConfigTag::readString(const std::string& key, std::string& value, bool allow_lf)
+{
// TODO: this is undefined behaviour but changing the API is too risky for 2.0.
if (!this)
return false;
-#ifdef __clang__
-# pragma clang diagnostic pop
-#endif
for(std::vector<KeyVal>::iterator j = items.begin(); j != items.end(); ++j)
{
if(j->first != key)
@@ -418,6 +419,11 @@ bool ConfigTag::readString(const std::string& key, std::string& value, bool allo
}
return false;
}
+#ifdef __clang__
+# pragma clang diagnostic pop
+#elif defined __GNUC__
+# pragma GCC diagnostic pop
+#endif
std::string ConfigTag::getString(const std::string& key, const std::string& def)
{