On 2024-03-04 16:01 +0100, Axel Beckert wrote: > Source: aptitude > Version: 0.8.13-5 > Severity: serious > Tags: ftbfs > X-Debbugs-Cc: a...@debian.org, z...@debian.org > > Citing from https://buildd.debian.org/status/package.php?p=aptitude: > > BinNMU changelog for aptitude on amd64, arm64, armel, armhf, i386, > mips64el, ppc64el, riscv64, s390x, alpha, hppa, hurd-i386, ia64, > loong64, m68k, powerpc, ppc64, sh4, sparc64 and x32: > > Rebuild for time_t > > Tail of log for aptitude on armel: > > /usr/include/cppunit/TestAssert.h:161:6: note: candidate: > ‘template<class T> void CppUnit::assertEquals(const T&, const T&, > SourceLine, const std::string&)’ > 161 | void assertEquals( const T& expected, > | ^~~~~~~~~~~~ > /usr/include/cppunit/TestAssert.h:161:6: note: template argument > deduction/substitution failed: > ../../tests/test_misc.cc:187:5: note: deduced conflicting types for > parameter ‘const T’ (‘long int’ and ‘__suseconds64_t’ {aka ‘long long > int’}) > 187 | CPPUNIT_ASSERT_EQUAL(static_cast<suseconds_t>(999999), c.tv_usec); > | ^ > make[3]: *** [Makefile:869: test_misc.o] Error 1 > make[3]: Leaving directory '/<<PKGBUILDDIR>>/build/tests' > make[2]: *** [Makefile:1169: check-am] Error 2 > make[2]: Leaving directory '/<<PKGBUILDDIR>>/build/tests' > /bin/sh: 1: ./cppunit_test: not found > make[1]: *** [debian/rules:39: override_dh_auto_test-arch] Error 127 > make[1]: Leaving directory '/<<PKGBUILDDIR>>' > make: *** [debian/rules:22: binary-arch] Error 2 > > Tail of log for aptitude on armhf: > > /usr/include/cppunit/TestAssert.h:161:6: note: candidate: > ‘template<class T> void CppUnit::assertEquals(const T&, const T&, > SourceLine, const std::string&)’ > 161 | void assertEquals( const T& expected, > | ^~~~~~~~~~~~ > /usr/include/cppunit/TestAssert.h:161:6: note: template argument > deduction/substitution failed: > ../../tests/test_misc.cc:187:5: note: deduced conflicting types for > parameter ‘const T’ (‘long int’ and ‘__suseconds64_t’ {aka ‘long long > int’}) > 187 | CPPUNIT_ASSERT_EQUAL(static_cast<suseconds_t>(999999), c.tv_usec); > | ^ > make[3]: *** [Makefile:869: test_misc.o] Error 1 > make[3]: Leaving directory '/<<PKGBUILDDIR>>/build/tests' > make[2]: *** [Makefile:1169: check-am] Error 2 > make[2]: Leaving directory '/<<PKGBUILDDIR>>/build/tests' > /bin/sh: 1: ./cppunit_test: not found > make[1]: *** [debian/rules:39: override_dh_auto_test-arch] Error 127 > make[1]: Leaving directory '/<<PKGBUILDDIR>>' > make: *** [debian/rules:22: binary-arch] Error 2 > > Given the time and the architectures failing, this is probably related > to dpkg switching on -Werror=implicit-function-declaration on these > architectures (see https://bugs.debian.org/1065371 and a good summary > of a similar case in https://bugs.debian.org/1065431 against lintian).
Not really, these arches now default to a 64-bit time_t and therefore you get the conflicting types (suseconds_t is a long int, __suseconds64_t a long long int). This has nothing to do with implicit function declarations. Cheers, Sven