Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 600802 - www-client/jd-2.8.5_p120826 : /.../drawareabase.h:309:51: error: cannot convert ‘Glib::RefPtr<Gdk::Window>’ to ‘const bool’ in return
Summary: www-client/jd-2.8.5_p120826 : /.../drawareabase.h:309:51: error: cannot conve...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: CJK Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: gcc-5 gcc-6
  Show dependency tree
 
Reported: 2016-11-25 13:28 UTC by Toralf Förster
Modified: 2018-08-06 12:54 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
config.log (config.log,53.62 KB, text/plain)
2016-11-25 13:28 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,291.45 KB, text/plain)
2016-11-25 13:28 UTC, Toralf Förster
Details
environment (environment,117.74 KB, text/plain)
2016-11-25 13:28 UTC, Toralf Förster
Details
www-client:jd-2.8.5_p120826:20161125-103429.log (www-client:jd-2.8.5_p120826:20161125-103429.log,73.55 KB, text/plain)
2016-11-25 13:28 UTC, Toralf Förster
Details
explicitly cast Glib::RefPtr to bool (explicit_refptr_bool.patch,608 bytes, patch)
2017-04-30 05:12 UTC, nanikata15
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2016-11-25 13:28:17 UTC
In file included from /var/tmp/portage/www-client/jd-2.8.5_p120826/work/jd-2.8.5-120826/src/article/drawareabase.cpp:9:0:
/var/tmp/portage/www-client/jd-2.8.5_p120826/work/jd-2.8.5-120826/src/article/drawareabase.h: In member function ‘const bool ARTICLE::DrawAreaBase::is_drawarea_realized()’:
/var/tmp/portage/www-client/jd-2.8.5_p120826/work/jd-2.8.5-120826/src/article/drawareabase.h:309:51: error: cannot convert ‘Glib::RefPtr<Gdk::Window>’ to ‘const bool’ in return
         const bool is_drawarea_realized(){ return m_window; }
                                                   ^
make[3]: *** [Makefile:463: drawareabase.o] Error 1


$ cat emerge-info.txt
  -----------------------------------------------------------------

  This is an unstable amd64 chroot image (named amd64-plasma-unstable_20161120-162302) at a hardened host acting as a tinderbox.

  -----------------------------------------------------------------
  USE flags ...

  ... in make.conf:
USE="  pax_kernel xtpax -cdinstall -oci8 -bindist ssp compat curl -evdev extraengine -fpm freetds gcj gles2 gnomecanvas gpg gstreamer gzip -icu inifile -jadetex javascript javaxml libvirtd modplug -mysqli ncurses nscd obj -openexr scripts scrypt -sourceview spice -udev utils -uxa vaapi vim vorbis wayland xcb xmlreader -xz"

  ... in /etc/portage/package.use/*:
  mail-mta/ssmtp      mta ssl
  net-misc/wget       ssl
  app-editors/xemacs  -nopie
  dev-db/sqlite           secure-delete
  dev-lang/python         sqlite
  dev-qt/qtsql            sqlite
  mail-client/thunderbird -pulseaudio system-icu
  media-libs/libvpx       postproc
  media-libs/libpng       apng
  media-video/ffmpeg      sdl
  net-dns/libidn          -mono
  sys-libs/ntdb           python
  sys-libs/tdb            python
  sys-libs/tevent         python
  x11-libs/cairo          X
  x11-libs/libxcb         xkb
  www-client/firefox      -pulseaudio system-icu
  app-crypt/mit-krb5      -pkinit
  sys-libs/zlib           minizip
  x11-base/xorg-server    glamor -minimal
  app-crypt/pinentry  -qt4
  app-editors/emacs   -dbus -gtk -gtk3 -ssl -svg
  app-text/docbook-xsl-stylesheets  -ruby
  app-text/xmlto      -latex
  dev-libs/boehm-gc   threads
  dev-libs/libpcre    pcre16
  dev-lang/python     threads
  dev-qt/qtgui        egl eglfs
  dev-util/cmake      -qt4 -qt5
  dev-vcs/git         -gtk -perl
  gnome-base/librsvg  -tools
  media-libs/mesa     -vaapi -video_cards_radeonsi -video_cards_radeon
  net-nds/openldap    -sasl
  sys-apps/kmod       tools
  sys-libs/ncurses    -gpm
  x11-libs/gtk+       -cups
  net-misc/openssh    ssl
  sys-apps/busybox    -pam
  dev-lang/mono       minimal
  net-libs/libproxy   -webkit
  x11-libs/gdk-pixbuf X
  net-misc/iputils -caps -filecaps
  >=sys-apps/hwids-20161103 udev

  entries in /etc/portage/package.unmask/*:
  ~sys-apps/sandbox-2.11
  media-video/ffmpeg
  -----------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-5.4.0 *
llvm-config --version:
3.9.0
Available Java Virtual Machines:
  [1]   icedtea-bin-8  system-vm
Available Python interpreters, in order of preference:
  [1]   python2.7
  [2]   python3.4
  [3]   python3.5 (fallback)
Available Ruby profiles:
  [1]   ruby20 (with Rubygems) *
  [2]   ruby21 (with Rubygems)
java-config:
The following VMs are available for generation-2:
*)	IcedTea JDK 3.2.0 [icedtea-bin-8]
  -----------------------------------------------------------------

Portage 2.3.2 (python 2.7.12-final-0, default/linux/amd64/13.0/desktop/plasma, gcc-5.4.0, glibc-2.23-r3, 4.8.10-hardened x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.8.10-hardened-x86_64-Intel-R-_Core-TM-_i7-3930K_CPU_@_3.20GHz-with-gentoo-2.3
KiB Mem:    65285560 total,   7309472 free
KiB Swap:   67108860 total,  67108860 free
Timestamp of repository gentoo: Fri, 25 Nov 2016 08:03:01 +0000
sh bash 4.4_p5
ld GNU ld (Gentoo 2.27 p1.0) 2.27
app-shells/bash:          4.4_p5::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.24.1_rc4::gentoo
dev-lang/python:          2.7.12::gentoo, 3.4.5::gentoo, 3.5.2::gentoo
dev-util/cmake:           3.7.0::gentoo
sys-apps/baselayout:      2.3::gentoo
sys-apps/openrc:          0.22.4::gentoo
sys-apps/sandbox:         2.11-r3::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r2::gentoo
sys-devel/automake:       1.11.6-r2::gentoo, 1.13.4-r1::gentoo, 1.14.1-r1::gentoo, 1.15-r2::gentoo
sys-devel/binutils:       2.27::gentoo
sys-devel/gcc:            5.4.0::gentoo
sys-devel/gcc-config:     1.8-r1::gentoo
sys-devel/libtool:        2.4.6-r2::gentoo
sys-devel/make:           4.2.1::gentoo
sys-kernel/linux-headers: 4.8::gentoo (virtual/os-headers)
sys-libs/glibc:           2.23-r3::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: 1

tinderbox
    location: /tmp/tb/data/portage
    masters: gentoo
    priority: 2

local
    location: /usr/local/portage
    masters: gentoo
    priority: 3

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/stunnel/stunnel.conf /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.3/conf /var/lib/hsqldb /var/lib/i2pd/certificates"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/var/tmp/distfiles"
EMERGE_DEFAULT_OPTS="--verbose --verbose-conflicts --color=n --nospinner --tree --quiet-build"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync network-sandbox parallel-fetch preserve-libs protect-owned sandbox sfperms strict test-fail-continue unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://ftp.uni-erlangen.de/pub/mirrors/gentoo rsync://mirror.netcologne.de/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gor.bytemark.co.uk/gentoo/ rsync://ftp.snt.utwente.nl/gentoo"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi alsa amd64 berkdb bluetooth branding bzip2 cairo cdda cdr cli compat consolekit cracklib crypt cups curl cxx dbus declarative dri dts dvd dvdr emboss encode exif extraengine fam firefox flac fortran freetds gcj gdbm gif glamor gles2 gnomecanvas gpg gpm gstreamer gtk gzip iconv inifile ipv6 javascript javaxml jpeg kde kipi lcms ldap libnotify libvirtd mad mmx mmxext mng modplug modules mp3 mp4 mpeg multilib ncurses nls nptl nscd obj ogg opengl openmp pam pango pax_kernel pcre pdf phonon plasma png policykit ppds qml qt3support qt4 qt5 readline scripts scrypt sdl seccomp semantic-desktop session spell spice sse sse2 ssl ssp startup-notification svg tcpd tiff truetype udisks unicode upower usb utils vaapi vim vorbis wayland widgets wxwidgets x264 xattr xcb xcomposite xinerama xml xmlreader xscreensaver xtpax xv xvid zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" L10N="es-AR sq" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Toralf Förster gentoo-dev 2016-11-25 13:28:19 UTC
Created attachment 454328 [details]
config.log
Comment 2 Toralf Förster gentoo-dev 2016-11-25 13:28:22 UTC
Created attachment 454330 [details]
emerge-history.txt
Comment 3 Toralf Förster gentoo-dev 2016-11-25 13:28:25 UTC
Created attachment 454332 [details]
environment
Comment 4 Toralf Förster gentoo-dev 2016-11-25 13:28:28 UTC
Created attachment 454334 [details]
www-client:jd-2.8.5_p120826:20161125-103429.log
Comment 5 nanikata15 2017-04-30 05:11:25 UTC
The error appears to happen because
Glib::RefPtr no longer implicitly converts to bool with gcc 5.
A simple solution is to explicitly cast it.

I've attached a simple patch demonstrating the solution and confirmed
that both the version in portage and the latest svn version compile
with gcc-5.4.0 

A few words of warning:
1. The portage version JD is outdated and no longer works (segfaults)
with some external textboards.
2. JDs main use case is to browse 2channel,
but because of change in API and policy of the 2channel board,
JD can no longer be used with it without major user intervention,
like setting up a local proxy to scrape the html version of 2channel
and convert it to a format JD understands.
3. Because of the previously mentioned change of 2channel policy,
the author of JD stated that the requirements to use the new API
are incompatible with open source, therefore there is very little chance
JD will work with 2channel again. Development also seems to have stopped.
4. JD is still fully usable with other boards,
but for some of them a newer version than what is available in portage is needed.
Comment 6 nanikata15 2017-04-30 05:12:59 UTC
Created attachment 471340 [details, diff]
explicitly cast Glib::RefPtr to bool
Comment 7 Pacho Ramos gentoo-dev 2018-01-12 16:35:13 UTC
this still happens with gcc6  too
Comment 8 Larry the Git Cow gentoo-dev 2018-08-06 12:54:00 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d93be79561a120db88087a6ebe1733ad98041c5a

commit d93be79561a120db88087a6ebe1733ad98041c5a
Author:     Akinori Hattori <hattya@gentoo.org>
AuthorDate: 2018-08-06 12:47:08 +0000
Commit:     Akinori Hattori <hattya@gentoo.org>
CommitDate: 2018-08-06 12:47:08 +0000

    www-client/jd: fix build with >=sys-devel/gcc-5
    
    Closes: https://bugs.gentoo.org/600802
    Package-Manager: Portage-2.3.40, Repoman-2.3.9

 www-client/jd/files/jd-gcc-5.patch    | 15 +++++++++++++++
 www-client/jd/jd-2.8.5_p120826.ebuild |  2 ++
 2 files changed, 17 insertions(+)