Bug#811821: eclib: FTBFS with GCC 6: no match for

Martin Michlmayr tbm at hpe.com
Wed Jan 20 02:19:10 UTC 2016


Package: eclib
Version: 20160101-1
Severity: important
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-6 gcc-6-no-match

This package fails to build with GCC 6.  GCC 6 has not been released
yet, but it's expected that GCC 6 will become the default compiler for
stretch.

Note that only the first error is reported; there might be more.  You
can find a snapshot of GCC 6 in experimental.  To build with GCC 6,
you can set CC=gcc-6 CXX=g++-6 explicitly.

You may be able to find out more about this issue at
https://gcc.gnu.org/gcc-6/changes.html

> sbuild (Debian sbuild) 0.67.0 (26 Dec 2015) on dl580gen9-02.hlinux
...
> libtool: compile:  g++ -DPACKAGE_NAME=\"eclib\" -DPACKAGE_TARNAME=\"eclib\" -DPACKAGE_VERSION=\"20160101\" "-DPACKAGE_STRING=\"eclib 20160101\"" -DPACKAGE_BUGREPORT=\"john.cremona at gmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"eclib\" -DVERSION=\"20160101\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_STDCXX_0X=1 -DHAVE_TR1_UNORDERED_MAP=1 -DHAVE_STDCXX_0X=1 -DHAVE_UNORDERED_MAP=1 -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1 -DHAVE__BOOL=1 -DHAVE_STDBOOL_H=1 -Drestrict=__restrict -DHAVE_MEMMOVE=1 -DHAVE_MEMSET=1 -DHAVE_STRCHR=1 -I. -DFLINT_LEVEL=0 -D NTL_ALL -Wdate-time -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -c curvered.cc  -fPIC -DPIC -o .libs/curvered.o
> timer.cc: In destructor 'timer::~timer()':
> timer.cc:77:13: error: no match for 'operator!=' (operand types are 'std::ofstream {aka std::basic_ofstream<char>}' and 'long int')
>    if( file_ != NULL ) {
>        ~~~~~~^~~~
> 
> timer.cc:77:13: note: candidate: operator!=(int, long int) <built-in>
> timer.cc:77:13: note:   no known conversion for argument 1 from 'std::ofstream {aka std::basic_ofstream<char>}' to 'int'
> In file included from /usr/include/NTL/ZZ.h:20:0,
>                  from ./eclib/interface.h:68,
>                  from timer.cc:27:
> /usr/include/NTL/vector.h:693:6: note: candidate: template<class T> long int NTL::operator!=(const NTL::Vec<T>&, const NTL::Vec<T>&)
>  long operator!=(const Vec<T>& a, const Vec<T>& b)
>       ^~~~~~~~
> 
> /usr/include/NTL/vector.h:693:6: note:   template argument deduction/substitution failed:
> In file included from /usr/include/_G_config.h:15:0,
>                  from /usr/include/libio.h:31,
>                  from /usr/include/stdio.h:74,
>                  from /usr/include/c++/6/cstdio:42,
>                  from /usr/include/c++/6/ext/string_conversions.h:43,
>                  from /usr/include/c++/6/bits/basic_string.h:5402,
>                  from /usr/include/c++/6/string:52,
>                  from /usr/include/c++/6/bits/locale_classes.h:40,
>                  from /usr/include/c++/6/bits/ios_base.h:41,
>                  from /usr/include/c++/6/ios:42,
>                  from /usr/include/c++/6/ostream:38,
>                  from /usr/include/c++/6/iostream:39,
>                  from timer.cc:25:
> timer.cc:77:16: note:   'std::ofstream {aka std::basic_ofstream<char>}' is not derived from 'const NTL::Vec<T>'
>    if( file_ != NULL ) {
>                 ^
> 
> In file included from ./eclib/interface.h:68:0,
>                  from timer.cc:27:
> /usr/include/NTL/ZZ.h:279:13: note: candidate: long int NTL::operator!=(const NTL::ZZ&, const NTL::ZZ&)
>  inline long operator!=(const ZZ& a, const ZZ& b)
>              ^~~~~~~~
> 
> /usr/include/NTL/ZZ.h:279:13: note:   no known conversion for argument 1 from 'std::ofstream {aka std::basic_ofstream<char>}' to 'const NTL::ZZ&'
> /usr/include/NTL/ZZ.h:296:13: note: candidate: long int NTL::operator!=(const NTL::ZZ&, long int)
>  inline long operator!=(const ZZ& a, long b) { return NTL_zscompare(a.rep, b) != 0; }
>              ^~~~~~~~
> 
> /usr/include/NTL/ZZ.h:296:13: note:   no known conversion for argument 1 from 'std::ofstream {aka std::basic_ofstream<char>}' to 'const NTL::ZZ&'
> /usr/include/NTL/ZZ.h:304:13: note: candidate: long int NTL::operator!=(long int, const NTL::ZZ&)
>  inline long operator!=(long a, const ZZ& b) { return b != a; }
>              ^~~~~~~~
> 
> /usr/include/NTL/ZZ.h:304:13: note:   no known conversion for argument 1 from 'std::ofstream {aka std::basic_ofstream<char>}' to 'long int'
> In file included from /usr/include/NTL/lzz_pX.h:6:0,
>                  from /usr/include/NTL/ZZX.h:6,
>                  from /usr/include/NTL/ZZXFactoring.h:5,
>                  from ./eclib/interface.h:69,
>                  from timer.cc:27:
> /usr/include/NTL/lzz_p.h:382:13: note: candidate: long int NTL::operator!=(NTL::zz_p, NTL::zz_p)
>  inline long operator!=(zz_p a, zz_p b)
>              ^~~~~~~~
> 
> /usr/include/NTL/lzz_p.h:382:13: note:   no known conversion for argument 1 from 'std::ofstream {aka std::basic_ofstream<char>}' to 'NTL::zz_p'
> /usr/include/NTL/lzz_p.h:388:13: note: candidate: long int NTL::operator!=(NTL::zz_p, long int)
>  inline long operator!=(zz_p a, long b) { return !(a == b); }
>              ^~~~~~~~
> 
> /usr/include/NTL/lzz_p.h:388:13: note:   no known conversion for argument 1 from 'std::ofstream {aka std::basic_ofstream<char>}' to 'NTL::zz_p'
> /usr/include/NTL/lzz_p.h:389:13: note: candidate: long int NTL::operator!=(long int, NTL::zz_p)
>  inline long operator!=(long a, zz_p b) { return !(a == b); }
>              ^~~~~~~~
...

-- 
Martin Michlmayr
Linux for HPE Helion, Hewlett Packard Enterprise



More information about the debian-science-maintainers mailing list