source-highlight FTBFS with GCC 12

Bug #1986671 reported by Graham Inggs
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
source-highlight (Debian)
Fix Released
Unknown
source-highlight (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

I've copied what I hope is the relevant part of the log below.

g++ -DHAVE_CONFIG_H -I. -I../.. -I../../gl -I../../gl -I../../src -I./.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -c -o test_wordtokenizer_main.o test_wordtokenizer_main.cpp
In file included from test_wordtokenizer_main.cpp:9:
./../srchilite/tostringcollection.h: In instantiation of ‘const std::string srchilite::collectionToString(const T*, char) [with T = std::__cxx11::list<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >; std::string = std::__cxx11::basic_string<char>]’:
test_wordtokenizer_main.cpp:31:45: required from here
./../srchilite/tostringcollection.h:103:9: error: no match for ‘operator<<’ (operand types are ‘std::ostringstream’ {aka ‘std::__cxx11::basic_ostringstream<char>’} and ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’)
  103 | buf << (*it);
      | ~~~~^~~~~~~~
In file included from /usr/include/c++/12/iostream:39,
                 from test_wordtokenizer_main.cpp:5:
/usr/include/c++/12/ostream:108:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(__ostream_type& (*)(__ostream_type&)) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  108 | operator<<(__ostream_type& (*__pf)(__ostream_type&))
      | ^~~~~~~~
/usr/include/c++/12/ostream:108:36: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘std::basic_ostream<char>::__ostream_type& (*)(std::basic_ostream<char>::__ostream_type&)’ {aka ‘std::basic_ostream<char>& (*)(std::basic_ostream<char>&)’}
  108 | operator<<(__ostream_type& (*__pf)(__ostream_type&))
      | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12/ostream:117:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(__ios_type& (*)(__ios_type&)) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>; __ios_type = std::basic_ios<char>]’
  117 | operator<<(__ios_type& (*__pf)(__ios_type&))
      | ^~~~~~~~
/usr/include/c++/12/ostream:117:32: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘std::basic_ostream<char>::__ios_type& (*)(std::basic_ostream<char>::__ios_type&)’ {aka ‘std::basic_ios<char>& (*)(std::basic_ios<char>&)’}
  117 | operator<<(__ios_type& (*__pf)(__ios_type&))
      | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/usr/include/c++/12/ostream:127:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(std::ios_base& (*)(std::ios_base&)) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  127 | operator<<(ios_base& (*__pf) (ios_base&))
      | ^~~~~~~~
/usr/include/c++/12/ostream:127:30: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘std::ios_base& (*)(std::ios_base&)’
  127 | operator<<(ios_base& (*__pf) (ios_base&))
      | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/c++/12/ostream:166:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(long int) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  166 | operator<<(long __n)
      | ^~~~~~~~
/usr/include/c++/12/ostream:166:23: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘long int’
  166 | operator<<(long __n)
      | ~~~~~^~~
/usr/include/c++/12/ostream:170:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(long unsigned int) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  170 | operator<<(unsigned long __n)
      | ^~~~~~~~
/usr/include/c++/12/ostream:170:32: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘long unsigned int’
  170 | operator<<(unsigned long __n)
      | ~~~~~~~~~~~~~~^~~
/usr/include/c++/12/ostream:174:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(bool) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  174 | operator<<(bool __n)
      | ^~~~~~~~
/usr/include/c++/12/ostream:174:23: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘bool’
  174 | operator<<(bool __n)
      | ~~~~~^~~
In file included from /usr/include/c++/12/ostream:833:
/usr/include/c++/12/bits/ostream.tcc:91:5: note: candidate: ‘std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(short int) [with _CharT = char; _Traits = std::char_traits<char>]’
   91 | basic_ostream<_CharT, _Traits>::
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12/bits/ostream.tcc:92:22: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘short int’
   92 | operator<<(short __n)
      | ~~~~~~^~~
/usr/include/c++/12/ostream:181:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(short unsigned int) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  181 | operator<<(unsigned short __n)
      | ^~~~~~~~
/usr/include/c++/12/ostream:181:33: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘short unsigned int’
  181 | operator<<(unsigned short __n)
      | ~~~~~~~~~~~~~~~^~~
/usr/include/c++/12/bits/ostream.tcc:105:5: note: candidate: ‘std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(int) [with _CharT = char; _Traits = std::char_traits<char>]’
  105 | basic_ostream<_CharT, _Traits>::
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12/bits/ostream.tcc:106:20: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘int’
  106 | operator<<(int __n)
      | ~~~~^~~
/usr/include/c++/12/ostream:192:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(unsigned int) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  192 | operator<<(unsigned int __n)
      | ^~~~~~~~
/usr/include/c++/12/ostream:192:31: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘unsigned int’
  192 | operator<<(unsigned int __n)
      | ~~~~~~~~~~~~~^~~
/usr/include/c++/12/ostream:201:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(long long int) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  201 | operator<<(long long __n)
      | ^~~~~~~~
/usr/include/c++/12/ostream:201:28: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘long long int’
  201 | operator<<(long long __n)
      | ~~~~~~~~~~^~~
/usr/include/c++/12/ostream:205:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(long long unsigned int) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  205 | operator<<(unsigned long long __n)
      | ^~~~~~~~
/usr/include/c++/12/ostream:205:37: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘long long unsigned int’
  205 | operator<<(unsigned long long __n)
      | ~~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/12/ostream:220:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(double) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  220 | operator<<(double __f)
      | ^~~~~~~~
/usr/include/c++/12/ostream:220:25: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘double’
  220 | operator<<(double __f)
      | ~~~~~~~^~~
/usr/include/c++/12/ostream:224:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(float) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  224 | operator<<(float __f)
      | ^~~~~~~~
/usr/include/c++/12/ostream:224:24: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘float’
  224 | operator<<(float __f)
      | ~~~~~~^~~
/usr/include/c++/12/ostream:232:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(long double) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  232 | operator<<(long double __f)
      | ^~~~~~~~
/usr/include/c++/12/ostream:232:30: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘long double’
  232 | operator<<(long double __f)
      | ~~~~~~~~~~~~^~~
/usr/include/c++/12/ostream:245:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(const void*) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>]’
  245 | operator<<(const void* __p)
      | ^~~~~~~~
/usr/include/c++/12/ostream:245:30: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘const void*’
  245 | operator<<(const void* __p)
      | ~~~~~~~~~~~~^~~
/usr/include/c++/12/ostream:250:7: note: candidate: ‘std::basic_ostream<_CharT, _Traits>::__ostream_type& std::basic_ostream<_CharT, _Traits>::operator<<(std::nullptr_t) [with _CharT = char; _Traits = std::char_traits<char>; __ostream_type = std::basic_ostream<char>; std::nullptr_t = std::nullptr_t]’
  250 | operator<<(nullptr_t)
      | ^~~~~~~~
/usr/include/c++/12/ostream:250:18: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘std::nullptr_t’
  250 | operator<<(nullptr_t)
      | ^~~~~~~~~
/usr/include/c++/12/bits/ostream.tcc:119:5: note: candidate: ‘std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(__streambuf_type*) [with _CharT = char; _Traits = std::char_traits<char>; __streambuf_type = std::basic_streambuf<char>]’
  119 | basic_ostream<_CharT, _Traits>::
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/12/bits/ostream.tcc:120:34: note: no known conversion for argument 1 from ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ to ‘std::basic_ostream<char>::__streambuf_type*’ {aka ‘std::basic_streambuf<char>*’}
  120 | operator<<(__streambuf_type* __sbin)
      | ~~~~~~~~~~~~~~~~~~^~~~~~
In file included from /usr/include/c++/12/bits/basic_string.h:47,
                 from /usr/include/c++/12/string:53,
                 from /usr/include/c++/12/bits/locale_classes.h:40,
                 from /usr/include/c++/12/bits/ios_base.h:41,
                 from /usr/include/c++/12/ios:42,
                 from /usr/include/c++/12/ostream:38:
/usr/include/c++/12/string_view:672:5: note: candidate: ‘template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, basic_string_view<_CharT, _Traits>)’
  672 | operator<<(basic_ostream<_CharT, _Traits>& __os,
      | ^~~~~~~~
/usr/include/c++/12/string_view:672:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: ‘std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ is not derived from ‘std::basic_string_view<_CharT, _Traits>’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/bits/basic_string.h:3883:5: note: candidate: ‘template<class _CharT, class _Traits, class _Alloc> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, const __cxx11::basic_string<_CharT, _Traits, _Allocator>&)’
 3883 | operator<<(basic_ostream<_CharT, _Traits>& __os,
      | ^~~~~~~~
/usr/include/c++/12/bits/basic_string.h:3883:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’ is not derived from ‘const std::__cxx11::basic_string<_CharT, _Traits, _Allocator>’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
In file included from /usr/include/c++/12/bits/ios_base.h:46:
/usr/include/c++/12/system_error:279:5: note: candidate: ‘template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, const error_code&)’
  279 | operator<<(basic_ostream<_CharT, _Traits>& __os, const error_code& __e)
      | ^~~~~~~~
/usr/include/c++/12/system_error:279:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: cannot convert ‘it.std::_List_const_iterator<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >::operator*()’ (type ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’) to type ‘const std::error_code&’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/ostream:507:5: note: candidate: ‘template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, _CharT)’
  507 | operator<<(basic_ostream<_CharT, _Traits>& __out, _CharT __c)
      | ^~~~~~~~
/usr/include/c++/12/ostream:507:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: deduced conflicting types for parameter ‘_CharT’ (‘char’ and ‘std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’)
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/ostream:517:5: note: candidate: ‘template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, char)’
  517 | operator<<(basic_ostream<_CharT, _Traits>& __out, char __c)
      | ^~~~~~~~
/usr/include/c++/12/ostream:517:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: cannot convert ‘it.std::_List_const_iterator<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >::operator*()’ (type ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’) to type ‘char’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/ostream:523:5: note: candidate: ‘template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(basic_ostream<char, _Traits>&, char)’
  523 | operator<<(basic_ostream<char, _Traits>& __out, char __c)
      | ^~~~~~~~
/usr/include/c++/12/ostream:523:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: cannot convert ‘it.std::_List_const_iterator<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >::operator*()’ (type ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’) to type ‘char’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/ostream:534:5: note: candidate: ‘template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(basic_ostream<char, _Traits>&, signed char)’
  534 | operator<<(basic_ostream<char, _Traits>& __out, signed char __c)
      | ^~~~~~~~
/usr/include/c++/12/ostream:534:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: cannot convert ‘it.std::_List_const_iterator<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >::operator*()’ (type ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’) to type ‘signed char’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/ostream:539:5: note: candidate: ‘template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(basic_ostream<char, _Traits>&, unsigned char)’
  539 | operator<<(basic_ostream<char, _Traits>& __out, unsigned char __c)
      | ^~~~~~~~
/usr/include/c++/12/ostream:539:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: cannot convert ‘it.std::_List_const_iterator<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >::operator*()’ (type ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’) to type ‘unsigned char’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/ostream:598:5: note: candidate: ‘template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, const _CharT*)’
  598 | operator<<(basic_ostream<_CharT, _Traits>& __out, const _CharT* __s)
      | ^~~~~~~~
/usr/include/c++/12/ostream:598:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: mismatched types ‘const _CharT*’ and ‘std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/bits/ostream.tcc:302:5: note: candidate: ‘template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, const char*)’
  302 | operator<<(basic_ostream<_CharT, _Traits>& __out, const char* __s)
      | ^~~~~~~~
/usr/include/c++/12/bits/ostream.tcc:302:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: cannot convert ‘it.std::_List_const_iterator<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >::operator*()’ (type ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’) to type ‘const char*’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/ostream:615:5: note: candidate: ‘template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(basic_ostream<char, _Traits>&, const char*)’
  615 | operator<<(basic_ostream<char, _Traits>& __out, const char* __s)
      | ^~~~~~~~
/usr/include/c++/12/ostream:615:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: cannot convert ‘it.std::_List_const_iterator<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >::operator*()’ (type ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’) to type ‘const char*’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/ostream:628:5: note: candidate: ‘template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(basic_ostream<char, _Traits>&, const signed char*)’
  628 | operator<<(basic_ostream<char, _Traits>& __out, const signed char* __s)
      | ^~~~~~~~
/usr/include/c++/12/ostream:628:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: cannot convert ‘it.std::_List_const_iterator<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >::operator*()’ (type ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’) to type ‘const signed char*’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/ostream:633:5: note: candidate: ‘template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(basic_ostream<char, _Traits>&, const unsigned char*)’
  633 | operator<<(basic_ostream<char, _Traits>& __out, const unsigned char* __s)
      | ^~~~~~~~
/usr/include/c++/12/ostream:633:5: note: template argument deduction/substitution failed:
./../srchilite/tostringcollection.h:103:9: note: cannot convert ‘it.std::_List_const_iterator<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >::operator*()’ (type ‘const std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >’) to type ‘const unsigned char*’
  103 | buf << (*it);
      | ~~~~^~~~~~~~
/usr/include/c++/12/ostream:754:5: note: candidate: ‘template<class _Ostream, class _Tp> _Ostream&& std::operator<<(_Ostream&&, const _Tp&)’
  754 | operator<<(_Ostream&& __os, const _Tp& __x)
      | ^~~~~~~~
/usr/include/c++/12/ostream:754:5: note: template argument deduction/substitution failed:
/usr/include/c++/12/ostream: In substitution of ‘template<class _Ostream, class _Tp> _Ostream&& std::operator<<(_Ostream&&, const _Tp&) [with _Ostream = std::__cxx11::basic_ostringstream<char>&; _Tp = std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >]’:
./../srchilite/tostringcollection.h:103:9: required from ‘const std::string srchilite::collectionToString(const T*, char) [with T = std::__cxx11::list<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >; std::string = std::__cxx11::basic_string<char>]’
test_wordtokenizer_main.cpp:31:45: required from here
/usr/include/c++/12/ostream:754:5: error: no type named ‘type’ in ‘struct std::enable_if<false, void>’

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package source-highlight - 3.1.9-4.1ubuntu1

---------------
source-highlight (3.1.9-4.1ubuntu1) kinetic; urgency=medium

  * Cherry-pick upstream commit to fix FTBFS with GCC 12 (LP: #1986671)

 -- Graham Inggs <email address hidden> Tue, 16 Aug 2022 14:11:08 +0000

Changed in source-highlight (Ubuntu):
status: New → Fix Released
Changed in source-highlight (Debian):
status: Unknown → Confirmed
Changed in source-highlight (Debian):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.