#20928: eclib fails to build with gcc6 / c++11
-------------------------------------+-------------------------------------
Reporter: vbraun | Owner:
Type: defect | Status: needs_review
Priority: major | Milestone: sage-7.3
Component: packages: | Resolution:
standard |
Keywords: gcc6 c++11 | Merged in:
Authors: François Bissey | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/fbissey/eclib-20160206 | 7e03c9b79216da1079324eaa744eecec1897d59b
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Description changed by aapitzsch:
Old description:
> Current version fails with
> {{{
> libtool: compile: g++ -DPACKAGE_NAME=\"eclib\"
> -DPACKAGE_TARNAME=\"eclib\" -DPACKAGE_VERSION=\"20150827\"
> "-DPACKAGE_STRING=\"eclib 20150827\""
> -DPACKAGE_BUGREPORT=\"[email protected]\" -DPACKAGE_URL=\"\"
> -DPACKAGE=\"eclib\" -DVERSION=\"20150827\" -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=1
> -I/home/vbraun/Code/sage/local/include
> -I/home/vbraun/Code/sage/local/include
> -I/home/vbraun/Code/sage/local/include -DNTL_ALL -DUSE_PARI_FACTORING
> -DNEW_OP_ORDER -g -O3 -MT timer.lo -MD -MP -MF .deps/timer.Tpo -c
> timer.cc -fPIC -DPIC -o .libs/timer.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 ../../../../../../../include/NTL/ZZ.h:20:0,
> from ./eclib/interface.h:70,
> from timer.cc:27:
> ../../../../../../../include/NTL/vector.h:778: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)
> ^~~~~~~~
> ../../../../../../../include/NTL/vector.h:778:6: note: template
> argument deduction/substitution failed:
> timer.cc:77:15: note: 'std::ofstream {aka std::basic_ofstream<char>}'
> is not derived from 'const NTL::Vec<T>'
> if( file_ != NULL ) {
> ^~~~~~
> In file included from ../../../../../../../include/NTL/ZZ.h:21:0,
> from ./eclib/interface.h:70,
> from timer.cc:27:
> ../../../../../../../include/NTL/SmartPtr.h:308:6: note: candidate:
> template<class X, class Y> bool NTL::operator!=(const NTL::SmartPtr<T>&,
> const NTL::SmartPtr<Y>&)
> bool operator!=(const SmartPtr<X>& a, const SmartPtr<Y>& b)
> ^~~~~~~~
> }}}
>
> Newest upstream has fixes for C++ compatibility issues such as the one
> above let's upgrade to it.
>
> Tarball:
> [http://www.lmona.de/files/sage/eclib-20160720.tar.gz]
New description:
Current version fails with
{{{
libtool: compile: g++ -DPACKAGE_NAME=\"eclib\"
-DPACKAGE_TARNAME=\"eclib\" -DPACKAGE_VERSION=\"20150827\"
"-DPACKAGE_STRING=\"eclib 20150827\""
-DPACKAGE_BUGREPORT=\"[email protected]\" -DPACKAGE_URL=\"\"
-DPACKAGE=\"eclib\" -DVERSION=\"20150827\" -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=1
-I/home/vbraun/Code/sage/local/include
-I/home/vbraun/Code/sage/local/include
-I/home/vbraun/Code/sage/local/include -DNTL_ALL -DUSE_PARI_FACTORING
-DNEW_OP_ORDER -g -O3 -MT timer.lo -MD -MP -MF .deps/timer.Tpo -c timer.cc
-fPIC -DPIC -o .libs/timer.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 ../../../../../../../include/NTL/ZZ.h:20:0,
from ./eclib/interface.h:70,
from timer.cc:27:
../../../../../../../include/NTL/vector.h:778: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)
^~~~~~~~
../../../../../../../include/NTL/vector.h:778:6: note: template argument
deduction/substitution failed:
timer.cc:77:15: note: 'std::ofstream {aka std::basic_ofstream<char>}' is
not derived from 'const NTL::Vec<T>'
if( file_ != NULL ) {
^~~~~~
In file included from ../../../../../../../include/NTL/ZZ.h:21:0,
from ./eclib/interface.h:70,
from timer.cc:27:
../../../../../../../include/NTL/SmartPtr.h:308:6: note: candidate:
template<class X, class Y> bool NTL::operator!=(const NTL::SmartPtr<T>&,
const NTL::SmartPtr<Y>&)
bool operator!=(const SmartPtr<X>& a, const SmartPtr<Y>& b)
^~~~~~~~
}}}
Newest upstream has fixes for C++ compatibility issues such as the one
above let's upgrade to it.
Tarball:
[http://www.lmona.de/files/sage/eclib-20160720.tar.bz2]
--
--
Ticket URL: <https://trac.sagemath.org/ticket/20928#comment:9>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.