Mon May 22 23:41:22 2017 UTC ()
Don't try to order null pointers.


(joerg)
diff -r1.1 -r1.2 pkgsrc/net/dnsdist/distinfo
diff -r0 -r1.1 pkgsrc/net/dnsdist/patches/patch-ext_json11_json11.cpp

cvs diff -r1.1 -r1.2 pkgsrc/net/dnsdist/distinfo (expand / switch to unified diff)

--- pkgsrc/net/dnsdist/distinfo 2017/03/31 20:49:51 1.1
+++ pkgsrc/net/dnsdist/distinfo 2017/05/22 23:41:22 1.2
@@ -1,11 +1,12 @@ @@ -1,11 +1,12 @@
1$NetBSD: distinfo,v 1.1 2017/03/31 20:49:51 fhajny Exp $ 1$NetBSD: distinfo,v 1.2 2017/05/22 23:41:22 joerg Exp $
2 2
3SHA1 (dnsdist-1.1.0.tar.bz2) = 9b6372fc5f606ee83dac465e1dc9c824242f5905 3SHA1 (dnsdist-1.1.0.tar.bz2) = 9b6372fc5f606ee83dac465e1dc9c824242f5905
4RMD160 (dnsdist-1.1.0.tar.bz2) = 7724641b2be1c3611dd0b2c685cf6e8b7a365e67 4RMD160 (dnsdist-1.1.0.tar.bz2) = 7724641b2be1c3611dd0b2c685cf6e8b7a365e67
5SHA512 (dnsdist-1.1.0.tar.bz2) = 91da716997c2440e153944f510a39dd86c9cf8ba8093a7f51a9a5d58ab0a1c230bd99ec57fe8ff0721279c8c4429ad576fe797c1fbe4cde2b9fb8f0405025320 5SHA512 (dnsdist-1.1.0.tar.bz2) = 91da716997c2440e153944f510a39dd86c9cf8ba8093a7f51a9a5d58ab0a1c230bd99ec57fe8ff0721279c8c4429ad576fe797c1fbe4cde2b9fb8f0405025320
6Size (dnsdist-1.1.0.tar.bz2) = 874837 bytes 6Size (dnsdist-1.1.0.tar.bz2) = 874837 bytes
7SHA1 (patch-dns.hh) = 13834e3d9f48b3095ce4912540c7d0d275c3a3a3 7SHA1 (patch-dns.hh) = 13834e3d9f48b3095ce4912540c7d0d275c3a3a3
8SHA1 (patch-dnsdist-console.cc) = 51fee0e89b648e0f9c2e6c0d9a6859ef2991a1b7 8SHA1 (patch-dnsdist-console.cc) = 51fee0e89b648e0f9c2e6c0d9a6859ef2991a1b7
9SHA1 (patch-dnsdist.cc) = 2b2bf569c134019dd8a5d4f3df104fdd16a47a31 9SHA1 (patch-dnsdist.cc) = 2b2bf569c134019dd8a5d4f3df104fdd16a47a31
 10SHA1 (patch-ext_json11_json11.cpp) = 9fb12578d80103b8b92e984a483cbda98fd83db8
10SHA1 (patch-iputils.hh) = 666fe81cc651b2c7e85164b8246283e301bcce1a 11SHA1 (patch-iputils.hh) = 666fe81cc651b2c7e85164b8246283e301bcce1a
11SHA1 (patch-qtype.hh) = 4551be1e303a31d34030c363849398923f5ff987 12SHA1 (patch-qtype.hh) = 4551be1e303a31d34030c363849398923f5ff987

File Added: pkgsrc/net/dnsdist/patches/patch-ext_json11_json11.cpp
$NetBSD: patch-ext_json11_json11.cpp,v 1.1 2017/05/22 23:41:22 joerg Exp $

Clang rejects ordering relations for nullptr, so introduce a template
indirection.

--- ext/json11/json11.cpp.orig	2016-12-29 12:45:46.000000000 +0000
+++ ext/json11/json11.cpp
@@ -132,6 +132,13 @@ void Json::dump(string &out) const {
  * Value wrappers
  */
 
+template <typename T> bool json11_less(T a, T b) {
+  return a < b;
+}
+template <> bool json11_less(const std::nullptr_t a, const std::nullptr_t b) {
+  return false;
+}
+
 template <Json::Type tag, typename T>
 class Value : public JsonValue {
 protected:
@@ -150,7 +157,7 @@ protected:
         return m_value == static_cast<const Value<tag, T> *>(other)->m_value;
     }
     bool less(const JsonValue * other) const override {
-        return m_value < static_cast<const Value<tag, T> *>(other)->m_value;
+        return json11_less(m_value, static_cast<const Value<tag, T> *>(other)->m_value);
     }
 
     const T m_value;