[Pkg-electronics-devel] Bug#1037788: nextpnr: ftbfs with GCC-13

Matthias Klose doko at debian.org
Wed Jun 14 10:28:58 BST 2023


Package: src:nextpnr
Version: 0.4-1
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/nextpnr_0.4-1_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

[...]
In file included from /<<PKGBUILDDIR>>/common/kernel/log.h:30,
                 from /<<PKGBUILDDIR>>/common/kernel/bits.cc:26:
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:79:29: error: ‘uint32_t’ was not declared in this scope
   79 | template <> struct hash_ops<uint32_t> : hash_int_ops
      |                             ^~~~~~~~
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:22:1: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
   21 | #include "nextpnr_assertions.h"
  +++ |+#include <cstdint>
   22 | #include "nextpnr_namespaces.h"
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:79:37: error: template argument 1 is invalid
   79 | template <> struct hash_ops<uint32_t> : hash_int_ops
      |                                     ^
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:83:29: error: ‘uint64_t’ was not declared in this scope
   83 | template <> struct hash_ops<uint64_t> : hash_int_ops
      |                             ^~~~~~~~
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:83:29: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:83:37: error: template argument 1 is invalid
   83 | template <> struct hash_ops<uint64_t> : hash_int_ops
      |                                     ^
/<<PKGBUILDDIR>>/common/kernel/hashlib.h: In static member function ‘static unsigned int nextpnr_generic::hash_ptr_ops::hash(const void*)’:
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:170:62: error: ‘uintptr_t’ was not declared in this scope
  170 |     static inline unsigned int hash(const void *a) { return (uintptr_t)a; }
      |                                                              ^~~~~~~~~
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:170:62: note: ‘uintptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:170:72: error: expected ‘;’ before ‘a’
  170 |     static inline unsigned int hash(const void *a) { return (uintptr_t)a; }
      |                                                                        ^
make[4]: *** [CMakeFiles/nextpnr-generic-test.dir/build.make:107: CMakeFiles/nextpnr-generic-test.dir/common/kernel/bits.cc.o] Error 1
make[4]: *** Waiting for unfinished jobs....
In file included from /<<PKGBUILDDIR>>/common/kernel/log.h:30,
                 from /<<PKGBUILDDIR>>/common/kernel/archcheck.cc:20:
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:79:29: error: ‘uint32_t’ was not declared in this scope
   79 | template <> struct hash_ops<uint32_t> : hash_int_ops
      |                             ^~~~~~~~
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:22:1: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
   21 | #include "nextpnr_assertions.h"
  +++ |+#include <cstdint>
   22 | #include "nextpnr_namespaces.h"
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:79:37: error: template argument 1 is invalid
   79 | template <> struct hash_ops<uint32_t> : hash_int_ops
      |                                     ^
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:83:29: error: ‘uint64_t’ was not declared in this scope
   83 | template <> struct hash_ops<uint64_t> : hash_int_ops
      |                             ^~~~~~~~
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:83:29: note: ‘uint64_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:83:37: error: template argument 1 is invalid
   83 | template <> struct hash_ops<uint64_t> : hash_int_ops
      |                                     ^
/<<PKGBUILDDIR>>/common/kernel/hashlib.h: In static member function ‘static unsigned int nextpnr_generic::hash_ptr_ops::hash(const void*)’:
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:170:62: error: ‘uintptr_t’ was not declared in this scope
  170 |     static inline unsigned int hash(const void *a) { return (uintptr_t)a; }
      |                                                              ^~~~~~~~~
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:170:62: note: ‘uintptr_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/common/kernel/hashlib.h:170:72: error: expected ‘;’ before ‘a’
  170 |     static inline unsigned int hash(const void *a) { return (uintptr_t)a; }
      |                                                                        ^
make[4]: Leaving directory '/<<PKGBUILDDIR>>/debian/build/generic'
make[3]: *** [CMakeFiles/Makefile2:124: CMakeFiles/nextpnr-generic.dir/all] Error 2
make[3]: *** Waiting for unfinished jobs....
make[4]: *** [CMakeFiles/nextpnr-generic-test.dir/build.make:79: CMakeFiles/nextpnr-generic-test.dir/common/kernel/archcheck.cc.o] Error 1
make[4]: Leaving directory '/<<PKGBUILDDIR>>/debian/build/generic'
make[3]: *** [CMakeFiles/Makefile2:151: CMakeFiles/nextpnr-generic-test.dir/all] Error 2
make[3]: Leaving directory '/<<PKGBUILDDIR>>/debian/build/generic'
make[2]: *** [Makefile:149: all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/debian/build/generic'
dh_auto_build: error: cd debian/build/generic && make -j8 "INSTALL=install --strip-program=true" VERBOSE=1 returned exit code 2
make[1]: *** [debian/rules:60: override_dh_auto_build] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:16: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-electronics-devel mailing list