Fails to build with: quant_chooser.cpp:343:49: error: invalid operands of types '__gnu_cxx::__enable_if<true, double>::__type' and 'int' to binary 'operator<<' quant_chooser.cpp: In member function 'dirac::CoeffType dirac::QuantChooser::BlockAbsMax(const dirac::Subband&)': quant_chooser.cpp:358:64: error: no matching function for call to 'max(int&, __gnu_cxx::__enable_if<true, double>::__type)' make[1]: *** [libdirac_encoder_la-quant_chooser.lo] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory `/var/tmp/portage/media-video/dirac-1.0.2/work/dirac-1.0.2/libdirac_encoder' make: *** [all-recursive] Error 1 * ERROR: media-video/dirac-1.0.2 failed (compile phase): * emake failed Reproducible: Always There is the same bug in debian linux: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=564976 To fix: ~# wget 'http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=10;filename=dirac.patch;att=1;bug=564976' -O /usr/portage/media-video/dirac/files/dirac.patch edit /usr/portage/media-video/dirac/dirac-1.0.2.ebuild, add to section: src_prepare() { ... epatch "${FILESDIR}"/dirac.patch ... } ~# ebuild /usr/portage/media-video/dirac/dirac-1.0.2.ebuild and remerge again
I can confirm that the bug exists as stated, and that the supplied patch now compiles without errors.
this compiles with gcc6 in current stable with profiles 17.x