Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 20 Jan 2017 19:44:50 +0000 (UTC)
From:      "Carlos J. Puga Medina" <cpm@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org
Subject:   svn commit: r431992 - in branches/2017Q1/dns: powerdns powerdns-recursor powerdns-recursor/files powerdns/files
Message-ID:  <201701201944.v0KJioN3002917@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: cpm
Date: Fri Jan 20 19:44:49 2017
New Revision: 431992
URL: https://svnweb.freebsd.org/changeset/ports/431992

Log:
  MFH: r431990
  
  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
  
  Approved by:	ports-secteam (blanket)

Added:
  branches/2017Q1/dns/powerdns-recursor/files/patch-ext_json11_json11.cpp
     - copied unchanged from r431990, head/dns/powerdns-recursor/files/patch-ext_json11_json11.cpp
  branches/2017Q1/dns/powerdns/files/patch-ext_json11_json11.cpp
     - copied unchanged from r431990, head/dns/powerdns/files/patch-ext_json11_json11.cpp
Modified:
  branches/2017Q1/dns/powerdns-recursor/Makefile
  branches/2017Q1/dns/powerdns/Makefile
Directory Properties:
  branches/2017Q1/   (props changed)

Modified: branches/2017Q1/dns/powerdns-recursor/Makefile
==============================================================================
--- branches/2017Q1/dns/powerdns-recursor/Makefile	Fri Jan 20 19:39:25 2017	(r431991)
+++ branches/2017Q1/dns/powerdns-recursor/Makefile	Fri Jan 20 19:44:49 2017	(r431992)
@@ -3,6 +3,7 @@
 
 PORTNAME=	recursor
 PORTVERSION=	4.0.4
+PORTREVISION=	1
 CATEGORIES=	dns ipv6
 MASTER_SITES=	http://downloads.powerdns.com/releases/
 PKGNAMEPREFIX=	powerdns-

Copied: branches/2017Q1/dns/powerdns-recursor/files/patch-ext_json11_json11.cpp (from r431990, head/dns/powerdns-recursor/files/patch-ext_json11_json11.cpp)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/2017Q1/dns/powerdns-recursor/files/patch-ext_json11_json11.cpp	Fri Jan 20 19:44:49 2017	(r431992, copy of r431990, head/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({}) {}
+ };
+ 
+ /* * * * * * * * * * * * * * * * * * * *

Modified: branches/2017Q1/dns/powerdns/Makefile
==============================================================================
--- branches/2017Q1/dns/powerdns/Makefile	Fri Jan 20 19:39:25 2017	(r431991)
+++ branches/2017Q1/dns/powerdns/Makefile	Fri Jan 20 19:44:49 2017	(r431992)
@@ -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}

Copied: branches/2017Q1/dns/powerdns/files/patch-ext_json11_json11.cpp (from r431990, head/dns/powerdns/files/patch-ext_json11_json11.cpp)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/2017Q1/dns/powerdns/files/patch-ext_json11_json11.cpp	Fri Jan 20 19:44:49 2017	(r431992, copy of r431990, head/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({}) {}
+ };
+ 
+ /* * * * * * * * * * * * * * * * * * * *



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201701201944.v0KJioN3002917>