Bug#701347: rheolef: ftbfs with GCC-4.8

Matthias Klose doko at debian.org
Sat Feb 23 11:21:51 UTC 2013


Package: src:rheolef
Version: 6.1-2.1
Severity: important
Tags: sid jessie
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-4.8

The package fails to build in a test rebuild on at least amd64 with
gcc-4.8/g++-4.8, but succeeds to build with gcc-4.7/g++-4.7. The
severity of this report may be raised before the jessie release.

  stl_tree.h:403:8: error: no matching function for call to 'rheolef::heap_allocator<std::_Rb_tree_node<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > > >::construct(std::_Rb_tree_node<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >*&, const std::piecewise_construct_t&, std::tuple<const long unsigned int&>, std::tuple<>)'

The full build log can be found at:
http://people.debian.org/~doko/logs-20130217/gcc48/rheolef_6.1-2.1_unstable_gcc48.log
The last lines of the build log are at the end of this report.

To build with GCC 4.8, either set CC=gcc-4.8 CXX=g++-4.8 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t experimental install g++ g++-4.7 g++-4.8 libc6-dev

The test rebuild was done with eglibc-2.17 and GCC-4.8, so some issues
might be caused by the updated glibc.

[...]
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../config -I../../include -I../../skit/plib2 -pthread -I/usr/lib/openmpi/include -fno-strict-aliasing -std=c++11 -Wall -Wno-unused -Werror -Wno-strict-aliasing -O2 -MT geo_mpi_dual.lo -MD -MP -MF .deps/geo_mpi_dual.Tpo -c geo_mpi_dual.cc  -fPIC -DPIC -o .libs/geo_mpi_dual.o
mv -f .deps/geo_mpi_dual.Tpo .deps/geo_mpi_dual.Plo
/bin/bash ../../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../config -I../../include -I../../skit/plib2  -pthread -I/usr/lib/openmpi/include  -fno-strict-aliasing   -std=c++11 -Wall -Wno-unused -Werror -Wno-strict-aliasing -O2  -MT geo_seq_put_vtk.lo -MD -MP -MF .deps/geo_seq_put_vtk.Tpo -c -o geo_seq_put_vtk.lo geo_seq_put_vtk.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../config -I../../include -I../../skit/plib2 -pthread -I/usr/lib/openmpi/include -fno-strict-aliasing -std=c++11 -Wall -Wno-unused -Werror -Wno-strict-aliasing -O2 -MT geo_seq_put_vtk.lo -MD -MP -MF .deps/geo_seq_put_vtk.Tpo -c geo_seq_put_vtk.cc  -fPIC -DPIC -o .libs/geo_seq_put_vtk.o
mv -f .deps/geo_seq_put_vtk.Tpo .deps/geo_seq_put_vtk.Plo
/bin/bash ../../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../config -I../../include -I../../skit/plib2  -pthread -I/usr/lib/openmpi/include  -fno-strict-aliasing   -std=c++11 -Wall -Wno-unused -Werror -Wno-strict-aliasing -O2  -MT geo_seq_get_vtk.lo -MD -MP -MF .deps/geo_seq_get_vtk.Tpo -c -o geo_seq_get_vtk.lo geo_seq_get_vtk.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../config -I../../include -I../../skit/plib2 -pthread -I/usr/lib/openmpi/include -fno-strict-aliasing -std=c++11 -Wall -Wno-unused -Werror -Wno-strict-aliasing -O2 -MT geo_seq_get_vtk.lo -MD -MP -MF .deps/geo_seq_get_vtk.Tpo -c geo_seq_get_vtk.cc  -fPIC -DPIC -o .libs/geo_seq_get_vtk.o
mv -f .deps/geo_seq_get_vtk.Tpo .deps/geo_seq_get_vtk.Plo
/bin/bash ../../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../config -I../../include -I../../skit/plib2  -pthread -I/usr/lib/openmpi/include  -fno-strict-aliasing   -std=c++11 -Wall -Wno-unused -Werror -Wno-strict-aliasing -O2  -MT geo_seq_put_bamg.lo -MD -MP -MF .deps/geo_seq_put_bamg.Tpo -c -o geo_seq_put_bamg.lo geo_seq_put_bamg.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../config -I../../include -I../../skit/plib2 -pthread -I/usr/lib/openmpi/include -fno-strict-aliasing -std=c++11 -Wall -Wno-unused -Werror -Wno-strict-aliasing -O2 -MT geo_seq_put_bamg.lo -MD -MP -MF .deps/geo_seq_put_bamg.Tpo -c geo_seq_put_bamg.cc  -fPIC -DPIC -o .libs/geo_seq_put_bamg.o
mv -f .deps/geo_seq_put_bamg.Tpo .deps/geo_seq_put_bamg.Plo
/bin/bash ../../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../config -I../../include -I../../skit/plib2  -pthread -I/usr/lib/openmpi/include  -fno-strict-aliasing   -std=c++11 -Wall -Wno-unused -Werror -Wno-strict-aliasing -O2  -MT geo_seq_get_bamg.lo -MD -MP -MF .deps/geo_seq_get_bamg.Tpo -c -o geo_seq_get_bamg.lo geo_seq_get_bamg.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../config -I../../include -I../../skit/plib2 -pthread -I/usr/lib/openmpi/include -fno-strict-aliasing -std=c++11 -Wall -Wno-unused -Werror -Wno-strict-aliasing -O2 -MT geo_seq_get_bamg.lo -MD -MP -MF .deps/geo_seq_get_bamg.Tpo -c geo_seq_get_bamg.cc  -fPIC -DPIC -o .libs/geo_seq_get_bamg.o
In file included from /usr/include/c++/4.8/set:60:0,
                 from ../../include/rheolef/compiler.h:286,
                 from ../../include/rheolef/point.h:28,
                 from ../../include/rheolef/reference_element.h:27,
                 from ../../include/rheolef/geo_element_v4.h:40,
                 from ../../include/rheolef/geo_element.h:27,
                 from ../../include/rheolef/geo.h:24,
                 from geo_seq_get_bamg.cc:28:
/usr/include/c++/4.8/bits/stl_tree.h: In instantiation of 'std::_Rb_tree_node<_Val>* std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_create_node(_Args&& ...) [with _Args = {const std::piecewise_construct_t&, std::tuple<const long unsigned int&>, std::tuple<>}; _Key = long unsigned int; _Val = std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> >; _KeyOfValue = std::_Select1st<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >; _Compare = std::less<long unsigned int>; _Alloc = rheolef::heap_allocator<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Link_type = std::_Rb_tree_node<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >*]':
/usr/include/c++/4.8/bits/stl_tree.h:1662:64:   required from 'std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_emplace_hint_unique(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator, _Args&& ...) [with _Args = {const std::piecewise_construct_t&, std::tuple<const long unsigned int&>, std::tuple<>}; _Key = long unsigned int; _Val = std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> >; _KeyOfValue = std::_Select1st<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >; _Compare = std::less<long unsigned int>; _Alloc = rheolef::heap_allocator<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator = std::_Rb_tree_iterator<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >]'
/usr/include/c++/4.8/bits/stl_map.h:465:8:   required from 'std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const key_type&) [with _Key = long unsigned int; _Tp = std::pair<long unsigned int, long unsigned int>; _Compare = std::less<long unsigned int>; _Alloc = rheolef::heap_allocator<long unsigned int>; std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type = std::pair<long unsigned int, long unsigned int>; std::map<_Key, _Tp, _Compare, _Alloc>::key_type = long unsigned int]'
geo_seq_get_bamg.cc:102:35:   required from 'void rheolef::build_domains(size_t, const rheolef::array<rheolef::geo_element_auto<A>, sequential, A>&, const rheolef::array<long unsigned int, sequential, A>&, const std::vector<std::basic_string<char> >&, const rheolef::geo_basic<T, sequential>&, std::vector<rheolef::index_set>*) [with T = double; A = rheolef::heap_allocator<long unsigned int>; size_t = long unsigned int]'
geo_seq_get_bamg.cc:298:76:   required from 'rheolef::idiststream& rheolef::geo_get_bamg(rheolef::idiststream&, rheolef::geo_basic<T, sequential>&) [with T = double]'
geo_seq_get_bamg.cc:306:86:   required from here
/usr/include/c++/4.8/bits/stl_tree.h:403:8: error: no matching function for call to 'rheolef::heap_allocator<std::_Rb_tree_node<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > > >::construct(std::_Rb_tree_node<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >*&, const std::piecewise_construct_t&, std::tuple<const long unsigned int&>, std::tuple<>)'
        _M_get_Node_allocator().construct(__tmp,
        ^
/usr/include/c++/4.8/bits/stl_tree.h:403:8: note: candidates are:
In file included from ../../include/rheolef/geo_element_v4.h:42:0,
                 from ../../include/rheolef/geo_element.h:27,
                 from ../../include/rheolef/geo.h:24,
                 from geo_seq_get_bamg.cc:28:
../../include/rheolef/heap_allocator.h:123:10: note: void rheolef::heap_allocator<T>::construct(rheolef::heap_allocator<T>::pointer, rheolef::heap_allocator<T>::const_reference) [with T = std::_Rb_tree_node<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >; rheolef::heap_allocator<T>::pointer = std::_Rb_tree_node<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >*; rheolef::heap_allocator<T>::const_reference = const std::_Rb_tree_node<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >&]
     void construct (pointer p, const_reference c)
          ^
../../include/rheolef/heap_allocator.h:123:10: note:   candidate expects 2 arguments, 4 provided
../../include/rheolef/heap_allocator.h:129:10: note: void rheolef::heap_allocator<T>::construct(rheolef::heap_allocator<T>::pointer) [with T = std::_Rb_tree_node<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >; rheolef::heap_allocator<T>::pointer = std::_Rb_tree_node<std::pair<const long unsigned int, std::pair<long unsigned int, long unsigned int> > >*]
     void construct (pointer p) { new ( reinterpret_cast<void*>(p) ) T(); }
          ^
../../include/rheolef/heap_allocator.h:129:10: note:   candidate expects 1 argument, 4 provided
make[4]: *** [geo_seq_get_bamg.lo] Error 1
make[3]: *** [all] Error 2
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/«PKGBUILDDIR»'
make: *** [build-stamp] Error 2
dpkg-buildpackage: error: debian/rules build-arch gave error exit status 2



More information about the debian-science-maintainers mailing list