- Debian 10
- g++-8 8.3.0-6
To reproduce:
git clone https://github.com/OCR-D/olena.git OCR-D-olena
cd OCR-D-olena
./configure --disable-dependency-tracking --enable-scribo
make -j8
make -j8 check # This fails
make check
fails with:
Making check in world
make[3]: Entering directory '/home/mike/2020-03-olena-build-fails/OCR-D-olena/milena/tests/world'
Making check in binary_2d
make[4]: Entering directory '/home/mike/2020-03-olena-build-fails/OCR-D-olena/milena/tests/world/binary_2d'
make enlarge subsample
make[5]: Entering directory '/home/mike/2020-03-olena-build-fails/OCR-D-olena/milena/tests/world/binary_2d'
CXX enlarge.o
In file included from enlarge.cc:28:
../../../../milena/mln/world/binary_2d/enlarge.hh: In instantiation of ‘typename mln::trait::concrete<I>::ret mln::world::binary_2d::internal::enlarge_dispatch(const mln::Image<I>&, unsigned int) [with I = mln::image2d<mln::value::int_u<8> >; typename mln::trait::concrete<I>::ret = mln::image2d<mln::value::int_u<8> >]’:
../../../../milena/mln/world/binary_2d/enlarge.hh:370:41: required from ‘typename mln::trait::concrete<I>::ret mln::world::binary_2d::enlarge(const mln::Image<I>&, unsigned int) [with I = mln::image2d<mln::value::int_u<8> >; typename mln::trait::concrete<I>::ret = mln::image2d<mln::value::int_u<8> >]’
enlarge.cc:53:72: required from here
../../../../milena/mln/world/binary_2d/enlarge.hh:346:27: error: call of overloaded ‘enlarge_dispatch(mln::internal::exact_<const mln::Image<mln::image2d<mln::value::int_u<8> > > >::ret&, mln::image2d<mln::value::int_u<8> >::value, unsigned int&)’ is ambiguous
return enlarge_dispatch(exact(input), mln_value(I)(), n);
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../milena/mln/world/binary_2d/enlarge.hh:316:2: note: candidate: ‘typename mln::trait::concrete<I>::ret mln::world::binary_2d::internal::enlarge_dispatch(const I&, const bool&, unsigned int) [with I = mln::image2d<mln::value::int_u<8> >; typename mln::trait::concrete<I>::ret = mln::image2d<mln::value::int_u<8> >]’
enlarge_dispatch(const I& input, const bool&, unsigned n)
^~~~~~~~~~~~~~~~
../../../../milena/mln/world/binary_2d/enlarge.hh:324:2: note: candidate: ‘typename mln::trait::concrete<I>::ret mln::world::binary_2d::internal::enlarge_dispatch(const I&, const int_u8&, unsigned int) [with I = mln::image2d<mln::value::int_u<8> >; typename mln::trait::concrete<I>::ret = mln::image2d<mln::value::int_u<8> >; mln::value::int_u8 = mln::value::int_u<8>]’
enlarge_dispatch(const I& input, const value::int_u8&, unsigned n)
^~~~~~~~~~~~~~~~
../../../../milena/mln/world/binary_2d/enlarge.hh:332:2: note: candidate: ‘typename mln::trait::concrete<I>::ret mln::world::binary_2d::internal::enlarge_dispatch(const I&, const typename I::value&, unsigned int) [with I = mln::image2d<mln::value::int_u<8> >; typename mln::trait::concrete<I>::ret = mln::image2d<mln::value::int_u<8> >; typename I::value = mln::value::int_u<8>]’
enlarge_dispatch(const I& input, const mln_value(I)&, unsigned n)
^~~~~~~~~~~~~~~~
../../../../milena/mln/world/binary_2d/enlarge.hh: In instantiation of ‘typename mln::trait::concrete<I>::ret mln::world::binary_2d::internal::enlarge_dispatch(const mln::Image<I>&, unsigned int) [with I = mln::image2d<bool>; typename mln::trait::concrete<I>::ret = mln::image2d<bool>]’:
../../../../milena/mln/world/binary_2d/enlarge.hh:370:41: required from ‘typename mln::trait::concrete<I>::ret mln::world::binary_2d::enlarge(const mln::Image<I>&, unsigned int) [with I = mln::image2d<bool>; typename mln::trait::concrete<I>::ret = mln::image2d<bool>]’
enlarge.cc:65:63: required from here
../../../../milena/mln/world/binary_2d/enlarge.hh:346:27: error: call of overloaded ‘enlarge_dispatch(mln::internal::exact_<const mln::Image<mln::image2d<bool> > >::ret&, bool, unsigned int&)’ is ambiguous
return enlarge_dispatch(exact(input), mln_value(I)(), n);
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../milena/mln/world/binary_2d/enlarge.hh:316:2: note: candidate: ‘typename mln::trait::concrete<I>::ret mln::world::binary_2d::internal::enlarge_dispatch(const I&, const bool&, unsigned int) [with I = mln::image2d<bool>; typename mln::trait::concrete<I>::ret = mln::image2d<bool>]’
enlarge_dispatch(const I& input, const bool&, unsigned n)
^~~~~~~~~~~~~~~~
../../../../milena/mln/world/binary_2d/enlarge.hh:324:2: note: candidate: ‘typename mln::trait::concrete<I>::ret mln::world::binary_2d::internal::enlarge_dispatch(const I&, const int_u8&, unsigned int) [with I = mln::image2d<bool>; typename mln::trait::concrete<I>::ret = mln::image2d<bool>; mln::value::int_u8 = mln::value::int_u<8>]’
enlarge_dispatch(const I& input, const value::int_u8&, unsigned n)
^~~~~~~~~~~~~~~~
../../../../milena/mln/world/binary_2d/enlarge.hh:332:2: note: candidate: ‘typename mln::trait::concrete<I>::ret mln::world::binary_2d::internal::enlarge_dispatch(const I&, const typename I::value&, unsigned int) [with I = mln::image2d<bool>; typename mln::trait::concrete<I>::ret = mln::image2d<bool>; typename I::value = bool]’
enlarge_dispatch(const I& input, const mln_value(I)&, unsigned n)
^~~~~~~~~~~~~~~~
make[5]: *** [Makefile:687: enlarge.o] Error 1
make[5]: Leaving directory '/home/mike/2020-03-olena-build-fails/OCR-D-olena/milena/tests/world/binary_2d'
make[4]: *** [Makefile:967: check-am] Error 2
make[4]: Leaving directory '/home/mike/2020-03-olena-build-fails/OCR-D-olena/milena/tests/world/binary_2d'
make[3]: *** [Makefile:462: check-recursive] Error 1
make[3]: Leaving directory '/home/mike/2020-03-olena-build-fails/OCR-D-olena/milena/tests/world'
make[2]: *** [Makefile:883: check-recursive] Error 1
make[2]: Leaving directory '/home/mike/2020-03-olena-build-fails/OCR-D-olena/milena/tests'
make[1]: *** [Makefile:1918: check-recursive] Error 1
make[1]: Leaving directory '/home/mike/2020-03-olena-build-fails/OCR-D-olena/milena'
make: *** [Makefile:605: check-recursive] Error 1
make clean
sudo apt-get install g++-7
make -j8 CXX=g++-7
make -j8 check CXX=g++-7