diff options
author | cpm <cpm@FreeBSD.org> | 2017-01-21 03:38:56 +0800 |
---|---|---|
committer | cpm <cpm@FreeBSD.org> | 2017-01-21 03:38:56 +0800 |
commit | b2697ea30baf7624788fa930d0cb4826e9fb5b3a (patch) | |
tree | 9d05cb254c98156a4223c366550eca44369cb054 /dns | |
parent | 95b3247b3cc6d4002a8e33d21477c6c3a4098c88 (diff) | |
download | freebsd-ports-gnome-b2697ea30baf7624788fa930d0cb4826e9fb5b3a.tar.gz freebsd-ports-gnome-b2697ea30baf7624788fa930d0cb4826e9fb5b3a.tar.zst freebsd-ports-gnome-b2697ea30baf7624788fa930d0cb4826e9fb5b3a.zip |
dns/powerdns and dns/powerdns-recursor: unbreak build with clang 4.0
json11.cpp:153:24: error: invalid operands to binary expression ('nullptr_t' and 'nullptr_t')
return m_value < static_cast<const Value<tag, T> *>(other)->m_value;
~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
json11.cpp:209:5: note: in instantiation of member function 'json11::Value<json11::Json::Type::NUL,
nullptr_t>::less' requested here
JsonNull() : Value(nullptr) {}
^
PR: 216071
Submitted by: cpm
Reported by: jbeich
Reviewed by: jbeich
Approved by: Ralf van der Enden <tremere@cainites.net> (maintainer)
Obtained from: upstream
MFH: 2017Q1 (blanket)
Diffstat (limited to 'dns')
-rw-r--r-- | dns/powerdns-recursor/Makefile | 1 | ||||
-rw-r--r-- | dns/powerdns-recursor/files/patch-ext_json11_json11.cpp | 37 | ||||
-rw-r--r-- | dns/powerdns/Makefile | 1 | ||||
-rw-r--r-- | dns/powerdns/files/patch-ext_json11_json11.cpp | 37 |
4 files changed, 76 insertions, 0 deletions
diff --git a/dns/powerdns-recursor/Makefile b/dns/powerdns-recursor/Makefile index 3d0263f211d9..cb9bc1fc3407 100644 --- a/dns/powerdns-recursor/Makefile +++ b/dns/powerdns-recursor/Makefile @@ -3,6 +3,7 @@ PORTNAME= recursor PORTVERSION= 4.0.4 +PORTREVISION= 1 CATEGORIES= dns ipv6 MASTER_SITES= http://downloads.powerdns.com/releases/ PKGNAMEPREFIX= powerdns- diff --git a/dns/powerdns-recursor/files/patch-ext_json11_json11.cpp b/dns/powerdns-recursor/files/patch-ext_json11_json11.cpp new file mode 100644 index 000000000000..65252fe28a63 --- /dev/null +++ b/dns/powerdns-recursor/files/patch-ext_json11_json11.cpp @@ -0,0 +1,37 @@ +--- ext/json11/json11.cpp.orig 2017-01-18 18:06:37 UTC ++++ ext/json11/json11.cpp +@@ -37,11 +37,21 @@ using std::make_shared; + using std::initializer_list; + using std::move; + ++/* Helper for representing null - just a do-nothing struct, plus comparison ++ * operators so the helpers in JsonValue work. We can't use nullptr_t because ++ * it may not be orderable. ++*/ ++ ++struct NullStruct { ++ bool operator==(NullStruct) const { return true; } ++ bool operator<(NullStruct) const { return false; } ++}; ++ + /* * * * * * * * * * * * * * * * * * * * + * Serialization + */ + +-static void dump(std::nullptr_t, string &out) { ++static void dump(NullStruct, string &out) { + out += "null"; + } + +@@ -204,9 +214,9 @@ public: + explicit JsonObject(Json::object &&value) : Value(move(value)) {} + }; + +-class JsonNull final : public Value<Json::NUL, std::nullptr_t> { ++class JsonNull final : public Value<Json::NUL, NullStruct> { + public: +- JsonNull() : Value(nullptr) {} ++ JsonNull() : Value({}) {} + }; + + /* * * * * * * * * * * * * * * * * * * * diff --git a/dns/powerdns/Makefile b/dns/powerdns/Makefile index f4b70f58253d..342e8750a97b 100644 --- a/dns/powerdns/Makefile +++ b/dns/powerdns/Makefile @@ -2,6 +2,7 @@ PORTNAME= powerdns PORTVERSION= 4.0.3 +PORTREVISION= 1 CATEGORIES= dns ipv6 MASTER_SITES= http://downloads.powerdns.com/releases/ DISTNAME= pdns-${PORTVERSION} diff --git a/dns/powerdns/files/patch-ext_json11_json11.cpp b/dns/powerdns/files/patch-ext_json11_json11.cpp new file mode 100644 index 000000000000..65252fe28a63 --- /dev/null +++ b/dns/powerdns/files/patch-ext_json11_json11.cpp @@ -0,0 +1,37 @@ +--- ext/json11/json11.cpp.orig 2017-01-18 18:06:37 UTC ++++ ext/json11/json11.cpp +@@ -37,11 +37,21 @@ using std::make_shared; + using std::initializer_list; + using std::move; + ++/* Helper for representing null - just a do-nothing struct, plus comparison ++ * operators so the helpers in JsonValue work. We can't use nullptr_t because ++ * it may not be orderable. ++*/ ++ ++struct NullStruct { ++ bool operator==(NullStruct) const { return true; } ++ bool operator<(NullStruct) const { return false; } ++}; ++ + /* * * * * * * * * * * * * * * * * * * * + * Serialization + */ + +-static void dump(std::nullptr_t, string &out) { ++static void dump(NullStruct, string &out) { + out += "null"; + } + +@@ -204,9 +214,9 @@ public: + explicit JsonObject(Json::object &&value) : Value(move(value)) {} + }; + +-class JsonNull final : public Value<Json::NUL, std::nullptr_t> { ++class JsonNull final : public Value<Json::NUL, NullStruct> { + public: +- JsonNull() : Value(nullptr) {} ++ JsonNull() : Value({}) {} + }; + + /* * * * * * * * * * * * * * * * * * * * |