[Android-tools-devel] Bug#1037573: android-platform-art: ftbfs with GCC-13

Matthias Klose doko at debian.org
Wed Jun 14 10:21:23 BST 2023


Package: src:android-platform-art
Version: 11.0.0+r48-5
Severity: normal
Tags: sid trixie
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-13

[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-13/g++-13, but succeeds to build with gcc-12/g++-12. 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/2023/05/22/logs/android-platform-art_11.0.0+r48-5_unstable_gccexp.log
The last lines of the build log are at the end of this report.

To build with GCC 13, either set CC=gcc-13 CXX=g++-13 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-13/porting_to.html

[...]
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:178:14: note: during template argument deduction for class template partial specialization '__iterator_traits<_Iterator>' [with _Iterator = art::mirror::ArrayIter<art::mirror::Method, art::Handle<art::mirror::ObjectArray<art::mirror::Method>>>]
    : public __iterator_traits<_Iterator> { };
             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:178:14: note: in instantiation of template class 'std::__iterator_traits<art::mirror::ArrayIter<art::mirror::Method, art::Handle<art::mirror::ObjectArray<art::mirror::Method>>>>' requested here
libartbase/base/iteration_range.h:30:25: note: in instantiation of template class 'std::iterator_traits<art::mirror::ArrayIter<art::mirror::Method, art::Handle<art::mirror::ObjectArray<art::mirror::Method>>>>' requested here
  typedef typename std::iterator_traits<Iter>::difference_type difference_type;
                        ^
runtime/class_linker.cc:5019:48: note: in instantiation of template class 'art::IterationRange<art::mirror::ArrayIter<art::mirror::Method, art::Handle<art::mirror::ObjectArray<art::mirror::Method>>>>' requested here
  for (auto [mirror, idx] : ZipCount(h_methods.Iterate<mirror::Method>())) {
                                               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:127:12: note: 'iterator<std::forward_iterator_tag, art::ObjPtr<art::mirror::Method>>' has been explicitly marked deprecated here
    struct _GLIBCXX17_DEPRECATED iterator
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/x86_64-linux-gnu/c++/13/bits/c++config.h:121:34: note: expanded from macro '_GLIBCXX17_DEPRECATED'
# define _GLIBCXX17_DEPRECATED [[__deprecated__]]
                                 ^
In file included from runtime/class_linker.cc:50:
libartbase/base/stl_util.h:153:33: warning: 'iterator<std::forward_iterator_tag, std::pair<art::ObjPtr<art::mirror::Method>, unsigned long>>' is deprecated [-Wdeprecated-declarations]
class ZipLeftIter : public std::iterator<
                                ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:162:27: note: in instantiation of template class 'art::ZipLeftIter<art::mirror::ArrayIter<art::mirror::Method, art::Handle<art::mirror::ObjectArray<art::mirror::Method>>>, art::CountIter>' requested here
                             __void_t<typename _Iterator::iterator_category,
                                               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:178:14: note: during template argument deduction for class template partial specialization '__iterator_traits<_Iterator>' [with _Iterator = art::ZipLeftIter<art::mirror::ArrayIter<art::mirror::Method, art::Handle<art::mirror::ObjectArray<art::mirror::Method>>>, art::CountIter>]
    : public __iterator_traits<_Iterator> { };
             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:178:14: note: in instantiation of template class 'std::__iterator_traits<art::ZipLeftIter<art::mirror::ArrayIter<art::mirror::Method, art::Handle<art::mirror::ObjectArray<art::mirror::Method>>>, art::CountIter>>' requested here
libartbase/base/iteration_range.h:30:25: note: in instantiation of template class 'std::iterator_traits<art::ZipLeftIter<art::mirror::ArrayIter<art::mirror::Method, art::Handle<art::mirror::ObjectArray<art::mirror::Method>>>, art::CountIter>>' requested here
  typedef typename std::iterator_traits<Iter>::difference_type difference_type;
                        ^
runtime/class_linker.cc:5019:29: note: in instantiation of template class 'art::IterationRange<art::ZipLeftIter<art::mirror::ArrayIter<art::mirror::Method, art::Handle<art::mirror::ObjectArray<art::mirror::Method>>>, art::CountIter>>' requested here
  for (auto [mirror, idx] : ZipCount(h_methods.Iterate<mirror::Method>())) {
                            ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:127:12: note: 'iterator<std::forward_iterator_tag, std::pair<art::ObjPtr<art::mirror::Method>, unsigned long>>' has been explicitly marked deprecated here
    struct _GLIBCXX17_DEPRECATED iterator
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/x86_64-linux-gnu/c++/13/bits/c++config.h:121:34: note: expanded from macro '_GLIBCXX17_DEPRECATED'
# define _GLIBCXX17_DEPRECATED [[__deprecated__]]
                                 ^
In file included from runtime/class_linker.cc:50:
libartbase/base/stl_util.h:153:33: warning: 'iterator<std::forward_iterator_tag, std::pair<unsigned long, unsigned long>>' is deprecated [-Wdeprecated-declarations]
class ZipLeftIter : public std::iterator<
                                ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:162:27: note: in instantiation of template class 'art::ZipLeftIter<__gnu_cxx::__normal_iterator<unsigned long *, std::vector<unsigned long>>, art::CountIter>' requested here
                             __void_t<typename _Iterator::iterator_category,
                                               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:178:14: note: during template argument deduction for class template partial specialization '__iterator_traits<_Iterator>' [with _Iterator = art::ZipLeftIter<__gnu_cxx::__normal_iterator<unsigned long *, std::vector<unsigned long>>, art::CountIter>]
    : public __iterator_traits<_Iterator> { };
             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:178:14: note: in instantiation of template class 'std::__iterator_traits<art::ZipLeftIter<__gnu_cxx::__normal_iterator<unsigned long *, std::vector<unsigned long>>, art::CountIter>>' requested here
libartbase/base/iteration_range.h:30:25: note: in instantiation of template class 'std::iterator_traits<art::ZipLeftIter<__gnu_cxx::__normal_iterator<unsigned long *, std::vector<unsigned long>>, art::CountIter>>' requested here
  typedef typename std::iterator_traits<Iter>::difference_type difference_type;
                        ^
runtime/class_linker.cc:5048:37: note: in instantiation of template class 'art::IterationRange<art::ZipLeftIter<__gnu_cxx::__normal_iterator<unsigned long *, std::vector<unsigned long>>, art::CountIter>>' requested here
    for (auto [orig_idx, new_idx] : ZipCount(MakeIterationRange(proxied_throws_idx))) {
                                    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/stl_iterator_base_types.h:127:12: note: 'iterator<std::forward_iterator_tag, std::pair<unsigned long, unsigned long>>' has been explicitly marked deprecated here
    struct _GLIBCXX17_DEPRECATED iterator
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/x86_64-linux-gnu/c++/13/bits/c++config.h:121:34: note: expanded from macro '_GLIBCXX17_DEPRECATED'
# define _GLIBCXX17_DEPRECATED [[__deprecated__]]
                                 ^
11 warnings generated.
31 warnings generated.
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build: error: make -j8 "INSTALL=install --strip-program=true" --file=debian/libart.mk returned exit code 2
make[1]: *** [debian/rules:61: debian/out/libart.so] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:76: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Android-tools-devel mailing list