Bug#1133525: liborcus: ftbfs with GCC-16
Emanuele Rocca <[email protected]> Mon, 13 Apr 2026 15:05:55 +0200
| Newsgroups | gmane.linux.debian.devel.openoffice |
|---|---|
| Message-ID | <[email protected]> |
Package: src:liborcus Version: 0.21.0-9 Severity: important Tags: sid forky ftbfs User: [email protected] Usertags: ftbfs-gcc-16 Hi, liborcus 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/liborcus_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. [...] 162 | ORCUS_PSR_DLLPUBLIC line_with_offset locate_line_with_offset(std::string_view strm, std::ptrdiff_t offset); | ^~~~~~~~~~~ ../../include/orcus/stream.hpp:162:67: note: ‘std::string_view’ is only available from C++17 onwards ../../include/orcus/stream.hpp:162:100: error: expected primary-expression before ‘offset’ 162 | ORCUS_PSR_DLLPUBLIC line_with_offset locate_line_with_offset(std::string_view strm, std::ptrdiff_t offset); | ^~~~~~ ../../include/orcus/stream.hpp:175:66: error: ‘string_view’ is not a member of ‘std’ 175 | ORCUS_PSR_DLLPUBLIC std::size_t locate_first_different_char(std::string_view left, std::string_view right); | ^~~~~~~~~~~ ../../include/orcus/stream.hpp:175:66: note: ‘std::string_view’ is only available from C++17 onwards ../../include/orcus/stream.hpp:175:89: error: ‘string_view’ is not a member of ‘std’ 175 | ORCUS_PSR_DLLPUBLIC std::size_t locate_first_different_char(std::string_view left, std::string_view right); | ^~~~~~~~~~~ ../../include/orcus/stream.hpp:175:89: note: ‘std::string_view’ is only available from C++17 onwards ../../include/orcus/stream.hpp:175:106: error: expression list treated as compound expression in initializer [-fpermissive] 175 | ORCUS_PSR_DLLPUBLIC std::size_t locate_first_different_char(std::string_view left, std::string_view right); | ^ ../../include/orcus/stream.hpp:183:65: error: ‘string_view’ is not a member of ‘std’ 183 | ORCUS_PSR_DLLPUBLIC std::size_t calc_logical_string_length(std::string_view s); | ^~~~~~~~~~~ ../../include/orcus/stream.hpp:183:65: note: ‘std::string_view’ is only available from C++17 onwards In file included from test_global.cpp:11: ../../include/orcus/parser_global.hpp:81:45: error: ‘std::string_view’ has not been declared 81 | ORCUS_PSR_DLLPUBLIC bool is_in(char c, std::string_view allowed); | ^~~~~~~~~~~ ../../include/orcus/parser_global.hpp:81:45: note: ‘std::string_view’ is only available from C++17 onwards ../../include/orcus/parser_global.hpp:156:26: error: ‘string_view’ in namespace ‘std’ does not name a type 156 | ORCUS_PSR_DLLPUBLIC std::string_view trim(std::string_view str); | ^~~~~~~~~~~ ../../include/orcus/parser_global.hpp:156:21: note: ‘std::string_view’ is only available from C++17 onwards 156 | ORCUS_PSR_DLLPUBLIC std::string_view trim(std::string_view str); | ^~~ test_global.cpp:47:48: error: ‘std::string_view’ has not been declared 47 | const char* filename, size_t line_no, std::string_view expected, const std::string& actual) | ^~~~~~~~~~~ test_global.cpp:47:48: note: ‘std::string_view’ is only available from C++17 onwards test_global.cpp: In function ‘void orcus::test::verify_content(const char*, size_t, int, const std::string&)’: test_global.cpp:49:10: error: ‘string_view’ is not a member of ‘std’ 49 | std::string_view s1 = expected; | ^~~~~~~~~~~ test_global.cpp:49:10: note: ‘std::string_view’ is only available from C++17 onwards test_global.cpp:50:10: error: ‘string_view’ is not a member of ‘std’ 50 | std::string_view s2(actual.data(), actual.size()); | ^~~~~~~~~~~ test_global.cpp:50:10: note: ‘std::string_view’ is only available from C++17 onwards test_global.cpp:51:5: error: ‘s1’ was not declared in this scope 51 | s1 = trim(s1); | ^~ test_global.cpp:51:10: error: ‘trim’ was not declared in this scope; did you mean ‘tm’? 51 | s1 = trim(s1); | ^~~~ | tm test_global.cpp:52:5: error: ‘s2’ was not declared in this scope 52 | s2 = trim(s2); | ^~ test_global.cpp:58:54: error: ‘orcus::locate_first_different_char’ cannot be used as a function 58 | size_t diff_pos = locate_first_different_char(s1, s2); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ make[5]: *** [Makefile:446: test_global.o] Error 1 make[5]: Leaving directory '/build/reproducible-path/liborcus-0.21.0/src/test' make[4]: *** [Makefile:2749: all-recursive] Error 1 make[4]: Leaving directory '/build/reproducible-path/liborcus-0.21.0/src' make[3]: *** [Makefile:1538: all-recursive] Error 1 make[3]: Leaving directory '/build/reproducible-path/liborcus-0.21.0' make[2]: *** [Makefile:1447: all] Error 2 make[2]: Leaving directory '/build/reproducible-path/liborcus-0.21.0' dh_auto_build: error: make -j128 returned exit code 2 make[1]: *** [debian/rules:43: override_dh_auto_build-arch] Error 25 make[1]: Leaving directory '/build/reproducible-path/liborcus-0.21.0' make: *** [debian/rules:23: binary] Error 2 dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2