[Bug 281247] sysutils/grub2-pcbsd: Fails to build with GCC 14: error: passing argument 1 of 'grub_util_check_geom_label' from incompatible pointer type [-Wincompatible-pointer-types]
Date: Tue, 03 Sep 2024 14:00:32 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=281247 Bug ID: 281247 Summary: sysutils/grub2-pcbsd: Fails to build with GCC 14: error: passing argument 1 of 'grub_util_check_geom_label' from incompatible pointer type [-Wincompatible-pointer-types] Product: Ports & Packages Version: Latest Hardware: Any URL: https://pkg-status.freebsd.org/gohan04/data/140amd64-d efault-foo/2024-08-29_19h57m48s/logs/errors/grub2-pcbs d-2.02q_19.log OS: Any Status: New Severity: Affects Only Me Priority: --- Component: Individual Port(s) Assignee: ports-bugs@FreeBSD.org Reporter: salvadore@freebsd.org Blocks: 281091 Build fails with GCC 14. This blocks GCC_DEFAULT update to GCC 14. gcc14 -DHAVE_CONFIG_H -I. -Wall -W -DGRUB_UTIL=1 -D_FILE_OFFSET_BITS=64 -I./include -DGRUB_FILE=\"grub-core/osdep/unix/getroot.c\" -I. -I. -I. -I. -I./include -I./include -I./grub-core/lib/libgcrypt-grub/src/ -I./grub-core/gnulib -I./grub-core/gnulib -I/usr/local/include -D_FILE_OFFSET_BITS=64 -Wall -W -Wshadow -Wpointer-arith -Wundef -Wchar-subscripts -Wcomment -Wdeprecated-declarations -Wdisabled-optimization -Wdiv-by-zero -Wfloat-equal -Wformat-extra-args -Wformat-security -Wformat-y2k -Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Wmain -Wmissing-braces -Wmissing-format-attribute -Wmultichar -Wparentheses -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wswitch -Wtrigraphs -Wunknown-pragmas -Wunused -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value -Wunused-variable -Wwrite-strings -Wnested-externs -Wstrict-prototypes -Wcast-align -Wextra -Wattributes -Wendif-labels -Winit-self -Wint-to-pointer-cast -Winvalid-pch -Wmissing-field-initializers -Wnonnull -Woverflow -Wvla -Wpointer-to-int-cast -Wstrict-aliasing -Wvariadic-macros -Wvolatile-register-var -Wpointer-sign -Wmissing-include-dirs -Wmissing-prototypes -Wmissing-declarations -Wformat=2 -Wno-undef -Wno-sign-compare -Wno-unused -Wno-unused-parameter -Wno-redundant-decls -Wno-unreachable-code -Wno-conversion -O2 -pipe -Wl,-rpath=/usr/local/lib/gcc14 -fno-strict-aliasing -MT grub-core/osdep/unix/libgrubkern_a-getroot.o -MD -MP -MF grub-core/osdep/unix/.deps-util/libgrubkern_a-getroot.Tpo -c -o grub-core/osdep/unix/libgrubkern_a-getroot.o `test -f 'grub-core/osdep/unix/getroot.c' || echo './'`grub-core/osdep/unix/getroot.c grub-core/osdep/unix/getroot.c: In function 'grub_guess_root_devices': grub-core/osdep/unix/getroot.c:512:37: error: passing argument 1 of 'grub_util_check_geom_label' from incompatible pointer type [-Wincompatible-pointer-types] 512 | if ( grub_util_check_geom_label(os_dev) ) | ^~~~~~ | | | char ** In file included from grub-core/osdep/unix/getroot.c:73: ./include/grub/emu/getroot.h:47:44: note: expected 'const char *' but argument is of type 'char **' 47 | int grub_util_check_geom_label(const char *name); | ~~~~~~~~~~~~^~~~ grub-core/osdep/unix/getroot.c:513:79: error: passing argument 1 of 'grub_util_convert_geom_label_to_dev' from incompatible pointer type [-Wincompatible-pointer-types] 513 | os_dev = grub_util_convert_geom_label_to_dev (os_dev + sizeof ("/dev/") - 1, 1); | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ | | | char ** ./include/grub/emu/getroot.h:48:62: note: expected 'const char *' but argument is of type 'char **' 48 | const char *grub_util_convert_geom_label_to_dev (const char *name, int *full_path); | ~~~~~~~~~~~~^~~~ grub-core/osdep/unix/getroot.c:513:84: error: passing argument 2 of 'grub_util_convert_geom_label_to_dev' makes pointer from integer without a cast [-Wint-conversion] 513 | os_dev = grub_util_convert_geom_label_to_dev (os_dev + sizeof ("/dev/") - 1, 1); | ^ | | | int ./include/grub/emu/getroot.h:48:73: note: expected 'int *' but argument is of type 'int' 48 | const char *grub_util_convert_geom_label_to_dev (const char *name, int *full_path); | ~~~~~^~~~~~~~~ grub-core/osdep/unix/getroot.c:513:14: error: assignment to 'char **' from incompatible pointer type 'const char *' [-Wincompatible-pointer-types] 513 | os_dev = grub_util_convert_geom_label_to_dev (os_dev + sizeof ("/dev/") - 1, 1); | ^ gmake[2]: *** [Makefile:6022: grub-core/osdep/unix/libgrubkern_a-getroot.o] Error 1 gmake[2]: Leaving directory '/wrkdirs/usr/ports/sysutils/grub2-pcbsd/work/grub-2.02' gmake[1]: *** [Makefile:11107: all-recursive] Error 1 gmake[1]: Leaving directory '/wrkdirs/usr/ports/sysutils/grub2-pcbsd/work/grub-2.02' gmake: *** [Makefile:3497: all] Error 2 *** Error code 1 Stop. Full log: https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-08-29_19h57m48s/logs/errors/grub2-pcbsd-2.02q_19.log Useful link: https://gcc.gnu.org/gcc-14/porting_to.html Referenced Bugs: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=281091 [Bug 281091] [exp-run] Update GCC_DEFAULT to 14 etc. -- You are receiving this mail because: You are the assignee for the bug.