[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#831125: polygraph: FTBFS with GCC 6: ContainerBodyIter.cc:75:22: error: no match for 'operator!=' (operand types are 'ofixedstream' and 'int')



Source: polygraph
Version: 4.3.2-3
Severity: serious
Tags: stretch sid
User: debian-qa@lists.debian.org
Usertags: qa-ftbfs-20160713 qa-ftbfs
Justification: FTBFS with GCC 6 on amd64

Hi,

During a rebuild of all packages in sid using the gcc-defaults package
available in experimental to make GCC default to version 6, your package failed
to build on amd64. For more information about GCC 6 and Stretch, see:
- https://wiki.debian.org/GCC6
- https://lists.debian.org/debian-devel-announce/2016/06/msg00007.html

Relevant part (hopefully):
> g++ -DHAVE_CONFIG_H   -I../.. -I../../src -I../.. -I../../src -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include  -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -c -o ContainerBodyIter.o ContainerBodyIter.cc
> ContainerBodyIter.cc: In member function 'Size ContainerBodyIter::embed()':
> ContainerBodyIter.cc:75:22: error: no match for 'operator!=' (operand types are 'ofixedstream' and 'int')
>   const bool fit = os != 0;
>                    ~~~^~~~
> ContainerBodyIter.cc:75:22: note: candidate: operator!=(int, int) <built-in>
> ContainerBodyIter.cc:75:22: note:   no known conversion for argument 1 from 'ofixedstream' to 'int'
> In file included from /usr/include/c++/6/iosfwd:40:0,
>                  from ../../src/xstd/h/iosfwd.h:12,
>                  from ../../src/xstd/Time.h:9,
>                  from ../../src/base/polygraph.h:17,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/postypes.h:221:5: note: candidate: template<class _StateT> bool std::operator!=(const std::fpos<_StateT>&, const std::fpos<_StateT>&)
>      operator!=(const fpos<_StateT>& __lhs, const fpos<_StateT>& __rhs)
>      ^~~~~~~~
> /usr/include/c++/6/bits/postypes.h:221:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::fpos<_StateT>'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/bits/stl_algobase.h:64:0,
>                  from /usr/include/c++/6/bits/char_traits.h:39,
>                  from /usr/include/c++/6/ios:40,
>                  from ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/stl_pair.h:376:5: note: candidate: template<class _T1, class _T2> constexpr bool std::operator!=(const std::pair<_T1, _T2>&, const std::pair<_T1, _T2>&)
>      operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
>      ^~~~~~~~
> /usr/include/c++/6/bits/stl_pair.h:376:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::pair<_T1, _T2>'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/bits/stl_algobase.h:67:0,
>                  from /usr/include/c++/6/bits/char_traits.h:39,
>                  from /usr/include/c++/6/ios:40,
>                  from ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/stl_iterator.h:304:5: note: candidate: template<class _Iterator> bool std::operator!=(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_Iterator>&)
>      operator!=(const reverse_iterator<_Iterator>& __x,
>      ^~~~~~~~
> /usr/include/c++/6/bits/stl_iterator.h:304:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::reverse_iterator<_Iterator>'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/bits/stl_algobase.h:67:0,
>                  from /usr/include/c++/6/bits/char_traits.h:39,
>                  from /usr/include/c++/6/ios:40,
>                  from ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/stl_iterator.h:354:5: note: candidate: template<class _IteratorL, class _IteratorR> bool std::operator!=(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&)
>      operator!=(const reverse_iterator<_IteratorL>& __x,
>      ^~~~~~~~
> /usr/include/c++/6/bits/stl_iterator.h:354:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::reverse_iterator<_Iterator>'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/bits/stl_algobase.h:67:0,
>                  from /usr/include/c++/6/bits/char_traits.h:39,
>                  from /usr/include/c++/6/ios:40,
>                  from ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/stl_iterator.h:1118:5: note: candidate: template<class _IteratorL, class _IteratorR> bool std::operator!=(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorR>&)
>      operator!=(const move_iterator<_IteratorL>& __x,
>      ^~~~~~~~
> /usr/include/c++/6/bits/stl_iterator.h:1118:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::move_iterator<_IteratorL>'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/bits/stl_algobase.h:67:0,
>                  from /usr/include/c++/6/bits/char_traits.h:39,
>                  from /usr/include/c++/6/ios:40,
>                  from ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/stl_iterator.h:1124:5: note: candidate: template<class _Iterator> bool std::operator!=(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorL>&)
>      operator!=(const move_iterator<_Iterator>& __x,
>      ^~~~~~~~
> /usr/include/c++/6/bits/stl_iterator.h:1124:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::move_iterator<_IteratorL>'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/string:41:0,
>                  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 ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/allocator.h:143:5: note: candidate: template<class _T1, class _T2> bool std::operator!=(const std::allocator<_CharT>&, const std::allocator<_T2>&)
>      operator!=(const allocator<_T1>&, const allocator<_T2>&)
>      ^~~~~~~~
> /usr/include/c++/6/bits/allocator.h:143:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::allocator<_CharT>'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/string:41:0,
>                  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 ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/allocator.h:149:5: note: candidate: template<class _Tp> bool std::operator!=(const std::allocator<_CharT>&, const std::allocator<_CharT>&)
>      operator!=(const allocator<_Tp>&, const allocator<_Tp>&)
>      ^~~~~~~~
> /usr/include/c++/6/bits/allocator.h:149:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::allocator<_CharT>'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/string:52:0,
>                  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 ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/basic_string.h:5097:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)
>      operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
>      ^~~~~~~~
> /usr/include/c++/6/bits/basic_string.h:5097:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/string:52:0,
>                  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 ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/basic_string.h:5110:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const _CharT*, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)
>      operator!=(const _CharT* __lhs,
>      ^~~~~~~~
> /usr/include/c++/6/bits/basic_string.h:5110:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   mismatched types 'const _CharT*' and 'ofixedstream'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/string:52:0,
>                  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 ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/basic_string.h:5122:5: note: candidate: template<class _CharT, class _Traits, class _Alloc> bool std::operator!=(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _CharT*)
>      operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
>      ^~~~~~~~
> /usr/include/c++/6/bits/basic_string.h:5122:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>'
>   const bool fit = os != 0;
>                          ^
> In file included from /usr/include/c++/6/bits/ios_base.h:46:0,
>                  from /usr/include/c++/6/ios:42,
>                  from ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/system_error:311:3: note: candidate: bool std::operator!=(const std::error_code&, const std::error_code&)
>    operator!=(const error_code& __lhs, const error_code& __rhs) noexcept
>    ^~~~~~~~
> /usr/include/c++/6/system_error:311:3: note:   no known conversion for argument 1 from 'ofixedstream' to 'const std::error_code&'
> /usr/include/c++/6/system_error:315:3: note: candidate: bool std::operator!=(const std::error_code&, const std::error_condition&)
>    operator!=(const error_code& __lhs, const error_condition& __rhs) noexcept
>    ^~~~~~~~
> /usr/include/c++/6/system_error:315:3: note:   no known conversion for argument 1 from 'ofixedstream' to 'const std::error_code&'
> /usr/include/c++/6/system_error:319:3: note: candidate: bool std::operator!=(const std::error_condition&, const std::error_code&)
>    operator!=(const error_condition& __lhs, const error_code& __rhs) noexcept
>    ^~~~~~~~
> /usr/include/c++/6/system_error:319:3: note:   no known conversion for argument 1 from 'ofixedstream' to 'const std::error_condition&'
> /usr/include/c++/6/system_error:323:3: note: candidate: bool std::operator!=(const std::error_condition&, const std::error_condition&)
>    operator!=(const error_condition& __lhs,
>    ^~~~~~~~
> /usr/include/c++/6/system_error:323:3: note:   no known conversion for argument 1 from 'ofixedstream' to 'const std::error_condition&'
> In file included from /usr/include/c++/6/bits/locale_facets.h:48:0,
>                  from /usr/include/c++/6/bits/basic_ios.h:37,
>                  from /usr/include/c++/6/ios:44,
>                  from ../../src/xstd/h/iostream.h:13,
>                  from ../../src/xstd/Size.h:9,
>                  from ../../src/base/polygraph.h:18,
>                  from ContainerBodyIter.cc:6:
> /usr/include/c++/6/bits/streambuf_iterator.h:210:5: note: candidate: template<class _CharT, class _Traits> bool std::operator!=(const std::istreambuf_iterator<_CharT, _Traits>&, const std::istreambuf_iterator<_CharT, _Traits>&)
>      operator!=(const istreambuf_iterator<_CharT, _Traits>& __a,
>      ^~~~~~~~
> /usr/include/c++/6/bits/streambuf_iterator.h:210:5: note:   template argument deduction/substitution failed:
> ContainerBodyIter.cc:75:25: note:   'ofixedstream' is not derived from 'const std::istreambuf_iterator<_CharT, _Traits>'
>   const bool fit = os != 0;
>                          ^
> ContainerBodyIter.cc:80:27: error: in argument to unary !
>   if (sizeLeft() < sz || (!fit && theBuf->empty())) {
>                            ^~~
> make[4]: *** [ContainerBodyIter.o] Error 1

The full build log is available from:
   http://people.debian.org/~lucas/logs/2016/07/13/polygraph_4.3.2-3_unstable_gcc6.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.


Reply to: