Package: src:libksane
Version: 24.12.0-1
Severity: important
Tags: sid forky
User: debian-...@lists.debian.org
Usertags: ftbfs-gcc-15

[This bug is NOT 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-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/libksane_24.12.0-1_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other 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-15/porting_to.html

[...]
      |                ^
/build/reproducible-path/libksane-24.12.0/src/ksaneviewer.cpp:648:36: warning: 
‘int QMouseEvent::y() const’ is deprecated: Use position() 
[-Wdeprecated-declarations]
  648 |             d->m_left_last_y = e->y();
      |                                ~~~~^~
/usr/include/x86_64-linux-gnu/qt6/QtGui/qevent.h:227:16: note: declared here
  227 |     inline int y() const { return qRound(position().y()); }
      |                ^
/build/reproducible-path/libksane-24.12.0/src/ksaneviewer.cpp: In member 
function ‘QPointF KSaneIface::KSaneViewer::scenePos(QMouseEvent*) const’:
/build/reproducible-path/libksane-24.12.0/src/ksaneviewer.cpp:1185:43: warning: 
‘QPointF QMouseEvent::screenPos() const’ is deprecated: Use globalPosition() 
[-Wdeprecated-declarations]
 1185 |     const QPointF screenPos = e->screenPos();
      |                               ~~~~~~~~~~~~^~
/usr/include/x86_64-linux-gnu/qt6/QtGui/qevent.h:238:13: note: declared here
  238 |     QPointF screenPos() const { return globalPosition(); }
      |             ^~~~~~~~~
[ 91%] Building CXX object src/CMakeFiles/KSaneWidgets.dir/ksane_debug.cpp.o
cd /build/reproducible-path/libksane-24.12.0/obj-x86_64-linux-gnu/src && 
/usr/bin/c++ -DHAVE_KWALLET -DKSANE_DEPRECATED_WARNINGS_SINCE=0x0 
-DKSANE_DISABLE_DEPRECATED_BEFORE_AND_AT=0x0 -DKSaneWidgets_EXPORTS 
-DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY 
-DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_KEYWORDS 
-DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_URL_CAST_FROM_STRING 
-DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB 
-DTRANSLATION_DOMAIN=\"libksane\" -D_GNU_SOURCE -D_LARGEFILE64_SOURCE 
-I/build/reproducible-path/libksane-24.12.0/obj-x86_64-linux-gnu/src 
-I/build/reproducible-path/libksane-24.12.0/src 
-I/build/reproducible-path/libksane-24.12.0/obj-x86_64-linux-gnu/src/KSaneWidgets_autogen/include
 -I/build/reproducible-path/libksane-24.12.0/src/widgets -isystem 
/usr/include/KF6/KWallet -isystem /usr/include/x86_64-linux-gnu/qt6/QtGui 
-isystem /usr/include/x86_64-linux-gnu/qt6 -isystem 
/usr/include/x86_64-linux-gnu/qt6/
 QtCore -isystem /usr/lib/x86_64-linux-gnu/qt6/mkspecs/linux-g++ -isystem 
/usr/include/x86_64-linux-gnu/qt6/QtWidgets -isystem /usr/include/KF6/KI18n 
-isystem /usr/include/KF6/KWidgetsAddons -isystem /usr/include/KF6/KTextWidgets 
-isystem /usr/include/KF6/SonnetUi -isystem /usr/include/KF6/Sonnet -isystem 
/usr/include/KSaneCore6 -g -O2 
-ffile-prefix-map=/build/reproducible-path/libksane-24.12.0=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 
-fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align 
-Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef 
-Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self 
-Werror=undef -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic 
-Wzero-as-null-pointer-constant -Wmissing-include-dirs -std=c++17 -fPIC 
-fvisibility=hidden -fvisibility-inlines-hidden -MD -MT 
src/CMakeFiles/KSaneWidgets.dir/ksane_debug.cpp.o
  -MF CMakeFiles/KSaneWidgets.dir/ksane_debug.cpp.o.d -o 
CMakeFiles/KSaneWidgets.dir/ksane_debug.cpp.o -c 
/build/reproducible-path/libksane-24.12.0/obj-x86_64-linux-gnu/src/ksane_debug.cpp
/build/reproducible-path/libksane-24.12.0/src/ksanewidget_p.cpp: In member 
function ‘void 
KSaneIface::KSaneWidgetPrivate::previewScanDone(KSaneCore::Interface::ScanStatus,
 const QString&)’:
/build/reproducible-path/libksane-24.12.0/src/ksanewidget_p.cpp:946:98: 
warning: unused parameter ‘strStatus’ [-Wunused-parameter]
  946 | void 
KSaneWidgetPrivate::previewScanDone(KSaneCore::Interface::ScanStatus status, 
const QString &strStatus)
      |                                                                         
          ~~~~~~~~~~~~~~~^~~~~~~~~
/build/reproducible-path/libksane-24.12.0/src/ksanewidget_p.cpp: In member 
function ‘void KSaneIface::KSaneWidgetPrivate::setPossibleScanSizes()’:
/build/reproducible-path/libksane-24.12.0/src/ksanewidget_p.cpp:1272:32: 
warning: ‘constexpr typename std::add_const<_Tp>::type& qAsConst(T&) [with T = 
QList<int>; typename std::add_const<_Tp>::type = const QList<int>]’ is 
deprecated: Use std::as_const() instead. [-Wdeprecated-declarations]
 1272 |     for (int sizeCode: qAsConst(m_sizeCodes)) {
      |                        ~~~~~~~~^~~~~~~~~~~~~
In file included from /usr/include/x86_64-linux-gnu/qt6/QtCore/qforeach.h:11,
                 from /usr/include/x86_64-linux-gnu/qt6/QtCore/qglobal.h:57,
                 from /usr/include/x86_64-linux-gnu/qt6/QtGui/qtguiglobal.h:7,
                 from 
/usr/include/x86_64-linux-gnu/qt6/QtWidgets/qtwidgetsglobal.h:7,
                 from /usr/include/x86_64-linux-gnu/qt6/QtWidgets/qwidget.h:7,
                 from /usr/include/x86_64-linux-gnu/qt6/QtWidgets/QWidget:1,
                 from 
/build/reproducible-path/libksane-24.12.0/src/ksanewidget_p.h:12,
                 from 
/build/reproducible-path/libksane-24.12.0/src/ksanewidget_p.cpp:10:
/usr/include/x86_64-linux-gnu/qt6/QtCore/qttypetraits.h:33:45: note: declared 
here
   33 | constexpr typename std::add_const<T>::type &qAsConst(T &t) noexcept { 
return t; }
      |                                             ^~~~~~~~
/build/reproducible-path/libksane-24.12.0/src/ksanewidget_p.cpp:1284:32: 
warning: ‘constexpr typename std::add_const<_Tp>::type& qAsConst(T&) [with T = 
QList<int>; typename std::add_const<_Tp>::type = const QList<int>]’ is 
deprecated: Use std::as_const() instead. [-Wdeprecated-declarations]
 1284 |     for (int sizeCode: qAsConst(m_sizeCodes)) {
      |                        ~~~~~~~~^~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/qt6/QtCore/qttypetraits.h:33:45: note: declared 
here
   33 | constexpr typename std::add_const<T>::type &qAsConst(T &t) noexcept { 
return t; }
      |                                             ^~~~~~~~
[ 95%] Linking CXX shared library ../bin/libKSaneWidgets6.so
cd /build/reproducible-path/libksane-24.12.0/obj-x86_64-linux-gnu/src && 
/usr/bin/cmake -E cmake_link_script CMakeFiles/KSaneWidgets.dir/link.txt 
--verbose=1
/usr/bin/ld: 
CMakeFiles/KSaneWidgets.dir/widgets/labeledgamma.cpp.o:(.rodata+0x118): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: 
CMakeFiles/KSaneWidgets.dir/widgets/labeledcheckbox.cpp.o:(.rodata+0xfc): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: 
CMakeFiles/KSaneWidgets.dir/widgets/labeledentry.cpp.o:(.rodata+0x154): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: 
CMakeFiles/KSaneWidgets.dir/widgets/labeledcombo.cpp.o:(.rodata+0x2c0): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: 
CMakeFiles/KSaneWidgets.dir/widgets/labeledfslider.cpp.o:(.rodata+0x298): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: 
CMakeFiles/KSaneWidgets.dir/widgets/labeledslider.cpp.o:(.rodata+0x274): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: 
CMakeFiles/KSaneWidgets.dir/widgets/ksanebutton.cpp.o:(.rodata+0xa8): multiple 
definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: 
CMakeFiles/KSaneWidgets.dir/widgets/ksaneoptionwidget.cpp.o:(.rodata+0xa8): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: CMakeFiles/KSaneWidgets.dir/ksaneviewer.cpp.o:(.rodata+0x648): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: CMakeFiles/KSaneWidgets.dir/selectionitem.cpp.o:(.rodata+0x0): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: CMakeFiles/KSaneWidgets.dir/hiderectitem.cpp.o:(.rodata+0x0): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: 
CMakeFiles/KSaneWidgets.dir/ksanedevicedialog.cpp.o:(.rodata+0x1f0): multiple 
definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: CMakeFiles/KSaneWidgets.dir/ksanewidget.cpp.o:(.rodata+0x40c): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: CMakeFiles/KSaneWidgets.dir/ksanewidget_p.cpp.o:(.rodata+0x71c): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: 
CMakeFiles/KSaneWidgets.dir/splittercollapser.cpp.o:(.rodata+0x158): multiple 
definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
/usr/bin/ld: CMakeFiles/KSaneWidgets.dir/ksane_debug.cpp.o:(.rodata+0x0): 
multiple definition of `QtPrivate::IsFloatType_v<_Float16>'; 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o:(.rodata+0x60): first 
defined here
collect2: error: ld returned 1 exit status
/usr/bin/c++ -fPIC -g -O2 
-ffile-prefix-map=/build/reproducible-path/libksane-24.12.0=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 
-fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align 
-Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef 
-Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self 
-Werror=undef -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic 
-Wzero-as-null-pointer-constant -Wmissing-include-dirs -Wl,--no-undefined 
-Wl,--fatal-warnings -Wl,--enable-new-dtags -Wl,-z,relro -Wl,-z,now -shared 
-Wl,-soname,libKSaneWidgets6.so.6 -o ../bin/libKSaneWidgets6.so.24.12.0 
CMakeFiles/KSaneWidgets.dir/KSaneWidgets_autogen/mocs_compilation.cpp.o 
CMakeFiles/KSaneWidgets.dir/widgets/gammadisp.cpp.o 
CMakeFiles/KSaneWidgets.dir/widgets/labeledgamma.cpp.o 
CMakeFiles/KSaneWidgets.dir/widgets/labeledcheckbox.cpp.o 
CMakeFiles/KSaneWidgets.dir/wi
 dgets/labeledentry.cpp.o 
CMakeFiles/KSaneWidgets.dir/widgets/labeledcombo.cpp.o 
CMakeFiles/KSaneWidgets.dir/widgets/labeledfslider.cpp.o 
CMakeFiles/KSaneWidgets.dir/widgets/labeledslider.cpp.o 
CMakeFiles/KSaneWidgets.dir/widgets/ksanebutton.cpp.o 
CMakeFiles/KSaneWidgets.dir/widgets/ksaneoptionwidget.cpp.o 
CMakeFiles/KSaneWidgets.dir/ksaneviewer.cpp.o 
CMakeFiles/KSaneWidgets.dir/selectionitem.cpp.o 
CMakeFiles/KSaneWidgets.dir/hiderectitem.cpp.o 
CMakeFiles/KSaneWidgets.dir/ksanedevicedialog.cpp.o 
CMakeFiles/KSaneWidgets.dir/ksanewidget.cpp.o 
CMakeFiles/KSaneWidgets.dir/ksanewidget_p.cpp.o 
CMakeFiles/KSaneWidgets.dir/splittercollapser.cpp.o 
CMakeFiles/KSaneWidgets.dir/ksane_debug.cpp.o  
/usr/lib/x86_64-linux-gnu/libKF6Wallet.so.6.10.0 
/usr/lib/x86_64-linux-gnu/libKF6TextWidgets.so.6.10.0 
/usr/lib/x86_64-linux-gnu/libKSaneCore6.so.24.12.0 
/usr/lib/x86_64-linux-gnu/libKF6WidgetsAddons.so.6.10.0 
/usr/lib/x86_64-linux-gnu/libKF6SonnetUi.so.6.10.0 
/usr/lib/x86_64-linux-gnu/libQt6Widgets.so.
 6.7.2 /usr/lib/x86_64-linux-gnu/libQt6Gui.so.6.7.2 
/usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libOpenGL.so 
/usr/lib/x86_64-linux-gnu/libKF6I18n.so.6.10.0 
/usr/lib/x86_64-linux-gnu/libQt6Core.so.6.7.2
make[3]: *** [src/CMakeFiles/KSaneWidgets.dir/build.make:383: 
bin/libKSaneWidgets6.so.24.12.0] Error 1
make[3]: Leaving directory 
'/build/reproducible-path/libksane-24.12.0/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:525: src/CMakeFiles/KSaneWidgets.dir/all] 
Error 2
make[2]: Leaving directory 
'/build/reproducible-path/libksane-24.12.0/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:149: all] Error 2
make[1]: Leaving directory 
'/build/reproducible-path/libksane-24.12.0/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j8 "INSTALL=install 
--strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:6: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

Reply via email to