v43.0 Fails to Build With Clang >= 15 Due to Default '`-Werror=int-conversion`'
Affected version
- Passwords and Keys (Seahorse) version: 43.0
- Application provider: Gentoo
- Related info:
- This is on a Gentoo instance I have running under:
- Windows Subsystem for Linux v2
- 64-bit Windows 11 Pro 22H2, build 22621.819, with Windows Feature Experience Pack 1000.22636.1000.0
- This is on a Gentoo instance I have running under:
Steps to reproduce
On a Gentoo system that you've 'emerge --sync
'ed between the release of Seahorse v42.0 and v43.0, run either of:
- '
emerge --verbose --update --deep --newuse --changed-slot=y --with-bdeps=y @world
' with 'app-crypt/seahorse
' in the set of packages selected for upgrading - '
emerge --verbose --update --deep --newuse --changed-slot=y --with-bdeps=y app-crypt/seahorse
'
Current behavior
The package fails to build with the following error:
⁝
[190/263] clang -Issh/libseahorse-ssh.a.p -Issh -I../seahorse-43.0/ssh -Icommon -I../seahorse-43.0/common -I. -I../seahorse-43.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gio-unix-2.0 -I/usr/include/gcr-3 -I/usr/include/gck-1 -I/usr/include/p11-kit-1 -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/lzo -I/usr/include/libpng16 -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/libhandy-1 -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -w -DGCR_API_SUBJECT_TO_CHANGE -DGCK_API_SUBJECT_TO_CHANGE -DSECRET_WITH_UNSTABLE -include config.h -Wno-unused-parameter -Wno-missing-field-initializers -march=native -mtune=native -O2 -pipe -flto=thin -fPIC -pthread -MD -MQ ssh/libseahorse-ssh.a.p/meson-generated_operation.c.o -MF ssh/libseahorse-ssh.a.p/meson-generated_operation.c.o.d -o ssh/libseahorse-ssh.a.p/meson-generated_operation.c.o -c ssh/libseahorse-ssh.a.p/operation.c
FAILED: ssh/libseahorse-ssh.a.p/meson-generated_operation.c.o
clang -Issh/libseahorse-ssh.a.p -Issh -I../seahorse-43.0/ssh -Icommon -I../seahorse-43.0/common -I. -I../seahorse-43.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gio-unix-2.0 -I/usr/include/gcr-3 -I/usr/include/gck-1 -I/usr/include/p11-kit-1 -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/lzo -I/usr/include/libpng16 -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/libhandy-1 -fcolor-diagnostics -D_FILE_OFFSET_BITS=64 -w -DGCR_API_SUBJECT_TO_CHANGE -DGCK_API_SUBJECT_TO_CHANGE -DSECRET_WITH_UNSTABLE -include config.h -Wno-unused-parameter -Wno-missing-field-initializers -march=native -mtune=native -O2 -pipe -flto=thin -fPIC -pthread -MD -MQ ssh/libseahorse-ssh.a.p/meson-generated_operation.c.o -MF ssh/libseahorse-ssh.a.p/meson-generated_operation.c.o.d -o ssh/libseahorse-ssh.a.p/meson-generated_operation.c.o -c ssh/libseahorse-ssh.a.p/operation.c
ssh/libseahorse-ssh.a.p/operation.c:536:2: error: incompatible pointer to integer conversion returning 'void *' from a function with result type 'gboolean' (aka 'int') [-Wint-conversion]
g_return_val_if_fail (_data_->_tmp0_, NULL);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
⁝
ninja: build stopped: subcommand failed.
* ERROR: app-crypt/seahorse-43.0::gentoo failed (compile phase):
* compile failed
⁝
Expected behavior
I'd expect Seahorse v43.0 to build successfully.
Additional information
- I first notified Gentoo downstream that this was an issue in this Gentoo Forums thread.
- I then formally reported it to Gentoo downstream as this Gentoo Bugzilla ticket.
- I've posted full build/Gentoo '
emerge
' logs in this GitHub repositor. - I was able to work around this issue by having '
emerge
' build Seahorse using GCC instead.
Edited by Bryce Glover