[Debian-med-packaging] Bug#833493: cufflinks: FTBFS with gcc-6

Gianfranco Costamagna locutusofborg at debian.org
Fri Aug 5 06:37:44 UTC 2016


source: cufflinks
version: 2.2.1-2
severity: serious

Hi Andreas, as said in private emails, the package FTBFS with the new toolchain, but what you didn't
notice, is that the failure is not boost related, but gcc-6 (the default since yesterday) instead.

In file included from ./lemon/bits/base_extender.h:23:0,
from ./lemon/list_graph.h:26,
from ./lemon/dfs.h:26,
from ./lemon/topology.h:22,
from assemble.cpp:19:
./lemon/error.h: In member function 'lemon::ExceptionMember<_Type>& lemon::ExceptionMember<_Type>::operator=(const lemon::ExceptionMember<_Type>&)':
./lemon/error.h:70:27: error: return-statement with no value, in function returning 'lemon::ExceptionMember<_Type>&' [-fpermissive]
if (ptr.get() == 0) return;
^~~~~~
./lemon/error.h:72:21: error: return-statement with no value, in function returning 'lemon::ExceptionMember<_Type>&' [-fpermissive]
if (!copy.valid()) return;
^~~~~~

seems that you are returning nothing, in a method created to return an ExceptionMember& pointer
ExceptionMember& operator=(const ExceptionMember& copy) {


I don't have a patch, sorry!

something like this:
@@ -67,9 +67,9 @@ namespace lemon {
}

ExceptionMember& operator=(const ExceptionMember& copy) {
-      if (ptr.get() == 0) return;
+      if (ptr.get() == 0) return copy;
try {
-       if (!copy.valid()) return;
+       if (!copy.valid()) return copy;
*ptr = copy.get();
} catch (...) {}
}


makes it build, but of course this isn't a patch, it is just a dirty hack (wrong)
to see if the build works after that point, and yes, the boost can be switched back to the default
(so, 1.61 works)

http://debomatic-amd64.debian.net/distribution#unstable/cufflinks/2.2.1-2.1/buildlog

cheers,

G.



More information about the Debian-med-packaging mailing list