Package: src:openfst Version: 1.7.9-5 Severity: important Tags: sid trixie User: [email protected] Usertags: ftbfs-gcc-14
[This bug is targeted to the upcoming trixie release] Please keep this issue open in the bug tracker for the package it was filed for. If a fix in another package is required, please file a bug for the other package (or clone), and add a block in this package. Please keep the issue open until the package can be built in a follow-up test rebuild. The package fails to build in a test rebuild on at least amd64 with gcc-14/g++-14, but succeeds to build with gcc-13/g++-13. The severity of this report will be raised before the trixie release. The full build log can be found at: http://qa-logs.debian.net/2024/07/01/openfst_1.7.9-5_unstable_gccexp.log The last lines of the build log are at the end of this report. To build with GCC 14, either set CC=gcc-14 CXX=g++-14 explicitly, or install the gcc, g++, gfortran, ... packages from experimental. apt-get -t=experimental install g++ Common build failures are new warnings resulting in build failures with -Werror turned on, or new/dropped symbols in Debian symbols files. For other C/C++ related build failures see the porting guide at http://gcc.gnu.org/gcc-14/porting_to.html [...] from fst.cc:13: ./../include/fst/replace.h: In member function ‘bool fst::internal::ReplaceFstImpl<Arc, StateTable, CacheStore>::ComputeArc(const StateTuple&, const Arc&, Arc*, uint8)’: ./../include/fst/replace.h:804:32: warning: expected ‘template’ keyword before dependent template name [-Wmissing-template-keyword] 804 | if (arc.olabel == 0 || arc.olabel < *nonterminal_set_.begin() || | ^~~~~~ | template make[5]: *** [Makefile:479: fst.lo] Error 1 In file included from ./../include/fst/symbol-table-ops.h:12, from symbol-table-ops.cc:5: ./../include/fst/fst.h: In member function ‘fst::internal::FstImpl<Arc>& fst::internal::FstImpl<Arc>::operator=(const fst::internal::FstImpl<Arc>&)’: ./../include/fst/fst.h:679:59: error: no match for ‘operator=’ (operand types are ‘std::unique_ptr<fst::SymbolTable>’ and ‘fst::SymbolTable*’) 679 | isymbols_ = impl.isymbols_ ? impl.isymbols_->Copy() : nullptr; | ^~~~~~~ In file included from /usr/include/c++/14/memory:78, from ./../include/fst/fst.h:16: /usr/include/c++/14/bits/unique_ptr.h:424:9: note: candidate: ‘template<class _Up, class _Ep> typename std::enable_if<std::__and_<std::__and_<std::is_convertible<typename std::unique_ptr<_Up, _Ep>::pointer, typename std::__uniq_ptr_impl<_Tp, _Dp>::pointer>, std::__not_<std::is_array<_Up> > >, std::is_assignable<_T2&, _U2&&> >::value, std::unique_ptr<_Tp, _Dp>&>::type std::unique_ptr<_Tp, _Dp>::operator=(std::unique_ptr<_Up, _Ep>&&) [with _Ep = _Up; _Tp = fst::SymbolTable; _Dp = std::default_delete<fst::SymbolTable>]’ 424 | operator=(unique_ptr<_Up, _Ep>&& __u) noexcept | ^~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:424:9: note: template argument deduction/substitution failed: ./../include/fst/fst.h:679:59: note: mismatched types ‘std::unique_ptr<_Tp, _Dp>’ and ‘fst::SymbolTable*’ 679 | isymbols_ = impl.isymbols_ ? impl.isymbols_->Copy() : nullptr; | ^~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:408:19: note: candidate: ‘std::unique_ptr<_Tp, _Dp>& std::unique_ptr<_Tp, _Dp>::operator=(std::unique_ptr<_Tp, _Dp>&&) [with _Tp = fst::SymbolTable; _Dp = std::default_delete<fst::SymbolTable>]’ 408 | unique_ptr& operator=(unique_ptr&&) = default; | ^~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:408:29: note: no known conversion for argument 1 from ‘fst::SymbolTable*’ to ‘std::unique_ptr<fst::SymbolTable>&&’ 408 | unique_ptr& operator=(unique_ptr&&) = default; | ^~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:434:7: note: candidate: ‘std::unique_ptr<_Tp, _Dp>& std::unique_ptr<_Tp, _Dp>::operator=(std::nullptr_t) [with _Tp = fst::SymbolTable; _Dp = std::default_delete<fst::SymbolTable>; std::nullptr_t = std::nullptr_t]’ 434 | operator=(nullptr_t) noexcept | ^~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:434:17: note: no known conversion for argument 1 from ‘fst::SymbolTable*’ to ‘std::nullptr_t’ 434 | operator=(nullptr_t) noexcept | ^~~~~~~~~ ./../include/fst/fst.h:680:59: error: no match for ‘operator=’ (operand types are ‘std::unique_ptr<fst::SymbolTable>’ and ‘fst::SymbolTable*’) 680 | osymbols_ = impl.osymbols_ ? impl.osymbols_->Copy() : nullptr; | ^~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:424:9: note: candidate: ‘template<class _Up, class _Ep> typename std::enable_if<std::__and_<std::__and_<std::is_convertible<typename std::unique_ptr<_Up, _Ep>::pointer, typename std::__uniq_ptr_impl<_Tp, _Dp>::pointer>, std::__not_<std::is_array<_Up> > >, std::is_assignable<_T2&, _U2&&> >::value, std::unique_ptr<_Tp, _Dp>&>::type std::unique_ptr<_Tp, _Dp>::operator=(std::unique_ptr<_Up, _Ep>&&) [with _Ep = _Up; _Tp = fst::SymbolTable; _Dp = std::default_delete<fst::SymbolTable>]’ 424 | operator=(unique_ptr<_Up, _Ep>&& __u) noexcept | ^~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:424:9: note: template argument deduction/substitution failed: ./../include/fst/fst.h:680:59: note: mismatched types ‘std::unique_ptr<_Tp, _Dp>’ and ‘fst::SymbolTable*’ 680 | osymbols_ = impl.osymbols_ ? impl.osymbols_->Copy() : nullptr; | ^~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:408:19: note: candidate: ‘std::unique_ptr<_Tp, _Dp>& std::unique_ptr<_Tp, _Dp>::operator=(std::unique_ptr<_Tp, _Dp>&&) [with _Tp = fst::SymbolTable; _Dp = std::default_delete<fst::SymbolTable>]’ 408 | unique_ptr& operator=(unique_ptr&&) = default; | ^~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:408:29: note: no known conversion for argument 1 from ‘fst::SymbolTable*’ to ‘std::unique_ptr<fst::SymbolTable>&&’ 408 | unique_ptr& operator=(unique_ptr&&) = default; | ^~~~~~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:434:7: note: candidate: ‘std::unique_ptr<_Tp, _Dp>& std::unique_ptr<_Tp, _Dp>::operator=(std::nullptr_t) [with _Tp = fst::SymbolTable; _Dp = std::default_delete<fst::SymbolTable>; std::nullptr_t = std::nullptr_t]’ 434 | operator=(nullptr_t) noexcept | ^~~~~~~~ /usr/include/c++/14/bits/unique_ptr.h:434:17: note: no known conversion for argument 1 from ‘fst::SymbolTable*’ to ‘std::nullptr_t’ 434 | operator=(nullptr_t) noexcept | ^~~~~~~~~ make[5]: *** [Makefile:479: symbol-table-ops.lo] Error 1 make[5]: *** [Makefile:479: fst-types.lo] Error 1 make[5]: Leaving directory '/<<PKGBUILDDIR>>/src/lib' make[4]: *** [Makefile:371: all-recursive] Error 1 make[4]: Leaving directory '/<<PKGBUILDDIR>>/src' make[3]: *** [Makefile:428: all-recursive] Error 1 make[3]: Leaving directory '/<<PKGBUILDDIR>>' make[2]: *** [Makefile:352: all] Error 2 make[2]: Leaving directory '/<<PKGBUILDDIR>>' dh_auto_build: error: make -j8 returned exit code 2 make[1]: *** [debian/rules:29: override_dh_auto_build] Error 25 make[1]: Leaving directory '/<<PKGBUILDDIR>>' make: *** [debian/rules:13: binary] Error 2 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 -- debian-science-maintainers mailing list [email protected] https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-science-maintainers
