commit:     cf1f89cf9056c80498a07796b28092671688d316
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 18 13:07:37 2016 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sun Sep 18 13:08:10 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf1f89cf

net-libs/wvstreams: Allow for compiling with GCC 6

Gentoo-bug: 594058
* Add missing slot operators

Package-Manager: portage-2.3.0

 .../files/wvstreams-4.6.1-fix-c++14.patch          | 36 ++++++++++++++++++++++
 net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild       |  9 +++---
 2 files changed, 41 insertions(+), 4 deletions(-)

diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1-fix-c++14.patch 
b/net-libs/wvstreams/files/wvstreams-4.6.1-fix-c++14.patch
new file mode 100644
index 00000000..b2c2efd
--- /dev/null
+++ b/net-libs/wvstreams/files/wvstreams-4.6.1-fix-c++14.patch
@@ -0,0 +1,36 @@
+Fix building with C++14, which errors out due to explicit operator bool() 
conversion
+See also: https://bugs.gentoo.org/show_bug.cgi?id=594058
+
+--- a/streams/wvstream.cc
++++ b/streams/wvstream.cc
+@@ -907,9 +907,9 @@
+     
+     if (forceable)
+     {
+-      si.wants.readable = readcb;
+-      si.wants.writable = writecb;
+-      si.wants.isexception = exceptcb;
++      si.wants.readable = static_cast<bool>(readcb);
++      si.wants.writable = static_cast<bool>(writecb);
++      si.wants.isexception = static_cast<bool>(exceptcb);
+     }
+     else
+     {
+@@ -1019,7 +1019,7 @@
+ 
+ IWvStream::SelectRequest WvStream::get_select_request()
+ {
+-    return IWvStream::SelectRequest(readcb, writecb, exceptcb);
++    return IWvStream::SelectRequest(static_cast<bool>(readcb), 
static_cast<bool>(writecb), static_cast<bool>(exceptcb));
+ }
+ 
+ 
+@@ -1107,7 +1107,7 @@
+     // inefficient, because if the alarm was expired then pre_select()
+     // returned true anyway and short-circuited the previous select().
+     TRACE("hello-%p\n", this);
+-    return !alarm_was_ticking || select(0, readcb, writecb, exceptcb);
++    return !alarm_was_ticking || select(0, static_cast<bool>(readcb), 
static_cast<bool>(writecb), static_cast<bool>(exceptcb));
+ }
+ 
+ 

diff --git a/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild 
b/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
index 394d4d0..33711e8 100644
--- a/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
+++ b/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -21,10 +21,10 @@ RESTRICT="test"
 #It'll take a larger patching effort to get it extracted, since upstream 
integrated it
 #more tightly this time. Probably for the better since upstream xplc seems 
dead.
 
-RDEPEND="sys-libs/readline
+RDEPEND="sys-libs/readline:0=
        sys-libs/zlib
        dbus? ( >=sys-apps/dbus-1.4.20 )
-       dev-libs/openssl:0
+       dev-libs/openssl:0=
        pam? ( virtual/pam )"
 DEPEND="${RDEPEND}
        virtual/pkgconfig
@@ -48,7 +48,8 @@ src_prepare() {
                "${FILESDIR}"/${P}-parallel-make.patch \
                "${FILESDIR}"/${P}-openssl-1.0.0.patch \
                "${FILESDIR}"/${P}-glibc212.patch \
-               "${FILESDIR}"/${P}-gcc47.patch
+               "${FILESDIR}"/${P}-gcc47.patch \
+               "${FILESDIR}"/${P}-fix-c++14.patch
 
        sed -i \
                -e 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' \

Reply via email to