#1133520 libkkc: ftbfs with GCC-16

Package:
src:libkkc
Source:
src:libkkc
Submitter:
Emanuele Rocca
Date:
2026-04-13 13:06:13 UTC
Severity:
normal
Tags:
#1133520#5
Date:
2026-04-13 13:05:41 UTC
From:
To:
Hi,

libkkc fails to build in a test rebuild on at least amd64 and arm64 with
gcc-16/g++-16, but builds properly with gcc-15/g++-15. The severity of this
report will be raised before the forky release.

The full build log can be found at:
https://people.debian.org/~ema/gcc-16-rebuilds/output-1/libkkc_arm64.build.xz

The last lines of the build log are at the end of this report.

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

  apt-get -t=experimental install g++

Common build failures include unused (but set) variables, array subscripts
partly outside array bounds, and new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-16/porting_to.html

Please only close this issue after double-checking that the package can be
built correctly with GCC 16.

Please do not reassign this bug to another package. If a fix in another package
is required, then file a bug for the other package (or clone), and mark this
bug as blocked by the bug in the other package.

[...]


/usr/include/marisa/agent.h:49:21: note: 'std::string_view' is only available from C++17 onwards
/usr/include/marisa/agent.h: In member function 'void marisa::Agent::set_query(int)':
/usr/include/marisa/agent.h:36:19: error: request for member 'data' in 'str', which is of non-class type 'int'
   36 |     set_query(str.data(), str.length());
      |                   ^~~~
/usr/include/marisa/agent.h:36:31: error: request for member 'length' in 'str', which is of non-class type 'int'
   36 |     set_query(str.data(), str.length());
      |                               ^~~~~~
/usr/include/marisa/agent.h: In member function 'void marisa::Agent::set_key(int)':
/usr/include/marisa/agent.h:50:17: error: request for member 'data' in 'str', which is of non-class type 'int'
   50 |     set_key(str.data(), str.length());
      |                 ^~~~
In file included from /usr/include/marisa/agent.h:9,
                 from marisa-glib-private.h:4:
/usr/include/marisa/query.h: At global scope:
/usr/include/marisa/query.h:23:21: error: 'std::string_view' has not been declared
   23 |   void set_str(std::string_view str) {
      |                     ^~~~~~~~~~~
/usr/include/marisa/query.h:23:21: note: 'std::string_view' is only available from C++17 onwards
/usr/include/marisa/agent.h:50:29: error: request for member 'length' in 'str', which is of non-class type 'int'
   50 |     set_key(str.data(), str.length());
      |                             ^~~~~~
/usr/include/marisa/query.h:44:8: error: 'string_view' in namespace 'std' does not name a type
   44 |   std::string_view str() const {
      |        ^~~~~~~~~~~
/usr/include/marisa/query.h:44:3: note: 'std::string_view' is only available from C++17 onwards
   44 |   std::string_view str() const {
      |   ^~~
/usr/include/marisa/query.h: In member function 'void marisa::Query::set_str(int)':
/usr/include/marisa/query.h:24:17: error: request for member 'data' in 'str', which is of non-class type 'int'
   24 |     set_str(str.data(), str.length());
      |                 ^~~~
/usr/include/marisa/query.h:24:29: error: request for member 'length' in 'str', which is of non-class type 'int'
   24 |     set_str(str.data(), str.length());
      |                             ^~~~~~
/usr/include/marisa/agent.h: At global scope:
/usr/include/marisa/agent.h:35:23: error: 'std::string_view' has not been declared
   35 |   void set_query(std::string_view str) {
      |                       ^~~~~~~~~~~
/usr/include/marisa/agent.h:35:23: note: 'std::string_view' is only available from C++17 onwards
/usr/include/marisa/agent.h:49:21: error: 'std::string_view' has not been declared
   49 |   void set_key(std::string_view str) {
      |                     ^~~~~~~~~~~
/usr/include/marisa/agent.h:49:21: note: 'std::string_view' is only available from C++17 onwards
/usr/include/marisa/agent.h: In member function 'void marisa::Agent::set_query(int)':
/usr/include/marisa/agent.h:36:19: error: request for member 'data' in 'str', which is of non-class type 'int'
   36 |     set_query(str.data(), str.length());
      |                   ^~~~
/usr/include/marisa/agent.h:36:31: error: request for member 'length' in 'str', which is of non-class type 'int'
   36 |     set_query(str.data(), str.length());
      |                               ^~~~~~
/usr/include/marisa/agent.h: In member function 'void marisa::Agent::set_key(int)':
/usr/include/marisa/agent.h:50:17: error: request for member 'data' in 'str', which is of non-class type 'int'
   50 |     set_key(str.data(), str.length());
      |                 ^~~~
/usr/include/marisa/agent.h:50:29: error: request for member 'length' in 'str', which is of non-class type 'int'
   50 |     set_key(str.data(), str.length());
      |                             ^~~~~~
make[3]: *** [Makefile:545: libmarisa_glib_la-marisa-trie.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: *** [Makefile:538: libmarisa_glib_la-marisa-agent.lo] Error 1
make[3]: *** [Makefile:531: libmarisa_glib_la-marisa-keyset.lo] Error 1
make[3]: *** [Makefile:524: libmarisa_glib_la-marisa-key.lo] Error 1
make[3]: Leaving directory '/build/reproducible-path/libkkc-0.3.5/marisa-glib'
make[2]: *** [Makefile:524: all-recursive] Error 1
make[2]: Leaving directory '/build/reproducible-path/libkkc-0.3.5'
make[1]: *** [Makefile:455: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/libkkc-0.3.5'
dh_auto_build: error: make -j128 returned exit code 2
make: *** [debian/rules:15: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2