[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1097628: Bug #1097628: poco: ftbfs with GCC-15



On Mon Feb 17, 2025 at 6:45 PM CET, Matthias Klose wrote:
> Package: src:poco
> Version: 1.13.0-6
>
> The package fails to build in a test rebuild on at least amd64 with
> gcc-15/g++-15, but succeeds to build with gcc-14/g++-14. The
> severity of this report will be raised before the forky release.
>
> The full build log can be found at:
> http://qa-logs.debian.net/2025/02/16/amd64exp/poco_1.13.0-6_unstable_gccexp.log.gz
> The last lines of the build log are at the end of this report.

http? really?

Anyway, those last lines are useless, this is the relevant part:

```
[ 29%] Building CXX object Data/CMakeFiles/Data.dir/src/DataException.cpp.o
cd /build/reproducible-path/poco-1.13.0/obj-x86_64-linux-gnu/Data && /usr/bin/c++ -DData_EXPORTS -DPOCO_DATA_NO_SQL_PARSER=1 -DPOCO_ENABLE_CPP11 -DPOCO_ENABLE_CPP14 -DPOCO_HAVE_FD_EPOLL -DPOCO_OS_FAMILY_UNIX -DPOCO_UNBUNDLED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_XOPEN_SOURCE=500 -I/build/reproducible-path/poco-1.13.0/Data/include -I/build/reproducible-path/poco-1.13.0/Data/src -I/build/reproducible-path/poco-1.13.0/Foundation/include -g -O2 -ffile-prefix-map=/build/reproducible-path/poco-1.13.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=gnu++17 -fPIC -MD -MT Data/CMakeFiles/Data.dir/src/DataException.cpp.o -MF CMakeFiles/Data.dir/src/DataException.cpp.o.d -o CMakeFiles/Data.dir/src/DataException.cpp.o -c /build/reproducible-path/poco-1.13.0/Data/src/DataException.cpp
In file included from /build/reproducible-path/poco-1.13.0/Foundation/include/Poco/Foundation.h:26,
                 from /build/reproducible-path/poco-1.13.0/Data/include/Poco/Data/Data.h:23,
                 from /build/reproducible-path/poco-1.13.0/Data/include/Poco/Data/DataException.h:21,
                 from /build/reproducible-path/poco-1.13.0/Data/src/DataException.cpp:15:
/build/reproducible-path/poco-1.13.0/Foundation/include/Poco/Config.h:218:9: warning: ‘POCO_DATA_NO_SQL_PARSER’ redefined
  218 | #define POCO_DATA_NO_SQL_PARSER
      |         ^~~~~~~~~~~~~~~~~~~~~~~
<command-line>: note: this is the location of the previous definition
[ 29%] Building CXX object Crypto/CMakeFiles/Crypto.dir/src/ECKey.cpp.o
cd /build/reproducible-path/poco-1.13.0/obj-x86_64-linux-gnu/Crypto && /usr/bin/c++ -DCrypto_EXPORTS -DPOCO_ENABLE_CPP11 -DPOCO_ENABLE_CPP14 -DPOCO_HAVE_FD_EPOLL -DPOCO_OS_FAMILY_UNIX -DPOCO_UNBUNDLED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_XOPEN_SOURCE=500 -I/build/reproducible-path/poco-1.13.0/Crypto/include -I/build/reproducible-path/poco-1.13.0/Crypto/src -I/build/reproducible-path/poco-1.13.0/Foundation/include -g -O2 -ffile-prefix-map=/build/reproducible-path/poco-1.13.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=gnu++17 -fPIC -MD -MT Crypto/CMakeFiles/Crypto.dir/src/ECKey.cpp.o -MF CMakeFiles/Crypto.dir/src/ECKey.cpp.o.d -o CMakeFiles/Crypto.dir/src/ECKey.cpp.o -c /build/reproducible-path/poco-1.13.0/Crypto/src/ECKey.cpp
In file included from /build/reproducible-path/poco-1.13.0/Data/include/Poco/Data/Statement.h:28,
                 from /build/reproducible-path/poco-1.13.0/Data/include/Poco/Data/Session.h:23,
                 from /build/reproducible-path/poco-1.13.0/Data/include/Poco/Data/ArchiveStrategy.h:22:
/build/reproducible-path/poco-1.13.0/Data/include/Poco/Data/SimpleRowFormatter.h:114:21: error: declaration of ‘std::_Require<std::__not_<std::__is_tuple_like<_Tp> >, std::is_move_constructible<_Tp>, std::is_move_assignable<_Tp> > std::swap(_Tp&, _Tp&) noexcept [with _Tp = Poco::Data::SimpleRowFormatter; _Require<__not_<__is_tuple_like<_Tp> >, is_move_constructible<_Tp>, is_move_assignable<_Tp> > = void]’ has a different exception specifier
  114 |         inline void swap<Poco::Data::SimpleRowFormatter>(Poco::Data::SimpleRowFormatter& s1,
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/15/bits/new_allocator.h:36,
                 from /usr/include/x86_64-linux-gnu/c++/15/bits/c++allocator.h:33,
                 from /usr/include/c++/15/bits/allocator.h:46,
                 from /usr/include/c++/15/string:45,
                 from /build/reproducible-path/poco-1.13.0/Foundation/include/Poco/Foundation.h:94:
/usr/include/c++/15/bits/move.h:227:5: note: from previous declaration ‘std::_Require<std::__not_<std::__is_tuple_like<_Tp> >, std::is_move_constructible<_Tp>, std::is_move_assignable<_Tp> > std::swap(_Tp&, _Tp&) noexcept (false) [with _Tp = Poco::Data::SimpleRowFormatter; _Require<__not_<__is_tuple_like<_Tp> >, is_move_constructible<_Tp>, is_move_assignable<_Tp> > = void]’
  227 |     swap(_Tp& __a, _Tp& __b)
      |     ^~~~
```

I included the warning as it is present numerous times in the build log,
but it's the second that causes a/the build failure.

While I'm at it, let's also quote another warning:

```
[ 51%] Building CXX object Net/CMakeFiles/Net.dir/src/RawSocket.cpp.o
cd /build/reproducible-path/poco-1.13.0/obj-x86_64-linux-gnu/Net && /usr/bin/c++ -DNet_EXPORTS -DPOCO_ENABLE_CPP11 -DPOCO_ENABLE_CPP14 -DPOCO_HAVE_FD_EPOLL -DPOCO_OS_FAMILY_UNIX -DPOCO_UNBUNDLED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_XOPEN_SOURCE=500 -I/build/reproducible-path/poco-1.13.0/Net/include -I/build/reproducible-path/poco-1.13.0/Net/src -I/build/reproducible-path/poco-1.13.0/Foundation/include -g -O2 -ffile-prefix-map=/build/reproducible-path/poco-1.13.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=gnu++17 -fPIC -MD -MT Net/CMakeFiles/Net.dir/src/RawSocket.cpp.o -MF CMakeFiles/Net.dir/src/RawSocket.cpp.o.d -o CMakeFiles/Net.dir/src/RawSocket.cpp.o -c /build/reproducible-path/poco-1.13.0/Net/src/RawSocket.cpp
/build/reproducible-path/poco-1.13.0/Net/src/PollSet.cpp: In member function ‘Poco::Net::PollSet::SocketModeMap Poco::Net::PollSetImpl::poll(const Poco::Timespan&)’:
/build/reproducible-path/poco-1.13.0/Net/src/PollSet.cpp:225:37: warning: ignoring return value of ‘ssize_t read(int, void*, size_t)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  225 |                                 read(_eventfd, &val, sizeof(val));
      |                                 ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/reproducible-path/poco-1.13.0/Net/src/PollSet.cpp: In member function ‘void Poco::Net::PollSetImpl::wakeUp()’:
/build/reproducible-path/poco-1.13.0/Net/src/PollSet.cpp:247:22: warning: ignoring return value of ‘ssize_t write(int, const void*, size_t)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  247 |                 write(_eventfd, &val, sizeof(val));
      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```

Interestingly enough, in the upstream repo there is this issue:
https://github.com/pocoproject/poco/issues/4695
"Build error with GCC-15 (class Poco::PriorityDelegate<TObj, void,
true>’ has no member named ‘_pTarget’)"

but that error is NOT present in the build log. I guess it fails before
it got to that?

There seems to be several issues with the build environment:

```
dpkg-deb: warning: root directory /build/reproducible-path/resolver-FT9kbW/sbuild-build-depends-main-dummy has unusual owner or group 104:110
dpkg-deb: hint: you might need to pass --root-owner-group, see <https://wiki.debian.org/Teams/Dpkg/RootlessBuilds> for further details
dpkg-deb: warning: ignoring 1 warning about the control file(s)
...
dpkg-source: warning: cannot verify inline signature for ./poco_1.13.0-6.dsc: unsupported subcommand
```
("..." denote several omitted lines)

HTH,
  Diederik

Attachment: signature.asc
Description: PGP signature


Reply to: