We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gcc 15 is now in Fedora rawhide. wgrib2 fails to build with it by default due to the change to the C23 standard. Errors include:
[ 21%] Building C object wgrib2/CMakeFiles/wgrib2_lib.dir/fnlist.c.o cd /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/redhat-linux-build/wgrib2 && /usr/bin/gcc -Dwgrib2_lib_EXPORTS -I/builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/redhat-linux-build -I/builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/gctpc/source/include -g -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -DGFORTRAN -fPIC -fopenmp -MD -MT wgrib2/CMakeFiles/wgrib2_lib.dir/fnlist.c.o -MF CMakeFiles/wgrib2_lib.dir/fnlist.c.o.d -o CMakeFiles/wgrib2_lib.dir/fnlist.c.o -c /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:9:12: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char **, float *, unsigned int, char *, void **)’ [-Wincompatible-pointer-types] 9 | {"else",f_else, Else, 0, "else, -if ... -else ... -endif", 100}, | ^~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:9:12: note: (near initialization for ‘functions[0].fn’) In file included from /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:4: /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.h:11:5: note: ‘f_else’ declared here 11 | int f_else(int mode, unsigned char **sec, float *data, unsigned int ndata, char *inv, void **local); | ^~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:10:14: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char **, float *, unsigned int, char *, void **, const char *)’ [-Wincompatible-pointer-types] 10 | {"elseif",f_if, Elseif, 1, "elseif X (POSIX regular expression) conditional on match, -if ... -elseif ... -endif", 200}, | ^~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:10:14: note: (near initialization for ‘functions[1].fn’) /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.h:18:5: note: ‘f_if’ declared here 18 | int f_if(int mode, unsigned char **sec, float *data, unsigned int ndata, char *inv, void **local, const char *arg1); | ^~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:11:17: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char **, float *, unsigned int, char *, void **, const char *)’ [-Wincompatible-pointer-types] 11 | {"elseif_fs",f_if_fs, Elseif, 1, "elseif X (fixed string) conditional execution", 200}, | ^~~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:11:17: note: (near initialization for ‘functions[2].fn’) /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.h:20:5: note: ‘f_if_fs’ declared here 20 | int f_if_fs(int mode, unsigned char **sec, float *data, unsigned int ndata, char *inv, void **local, const char *arg1); | ^~~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:12:16: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char **, float *, unsigned int, char *, void **, const char *)’ [-Wincompatible-pointer-types] 12 | {"elseif_n",f_if_n, Elseif, 1, "elseif (inv numbers in range), X=(start:end:step)", 200}, | ^~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:12:16: note: (near initialization for ‘functions[3].fn’) /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.h:21:5: note: ‘f_if_n’ declared here 21 | int f_if_n(int mode, unsigned char **sec, float *data, unsigned int ndata, char *inv, void **local, const char *arg1); | ^~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:13:18: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char **, float *, unsigned int, char *, void **, const char *)’ [-Wincompatible-pointer-types] 13 | {"elseif_rec",f_if_rec, Elseif, 1, "elseif (record numbers in range), X=(start:end:step)", 200}, | ^~~~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:13:18: note: (near initialization for ‘functions[4].fn’) /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.h:22:5: note: ‘f_if_rec’ declared here 22 | int f_if_rec(int mode, unsigned char **sec, float *data, unsigned int ndata, char *inv, void **local, const char *arg1); | ^~~~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:14:18: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char **, float *, unsigned int, char *, void **, const char *)’ [-Wincompatible-pointer-types] 14 | {"elseif_reg",f_if_reg, Elseif, 1, "elseif rpn registers defined, X = A, A:B, A:B:C, etc A = register number", 200}, | ^~~~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:14:18: note: (near initialization for ‘functions[5].fn’) /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.h:23:5: note: ‘f_if_reg’ declared here 23 | int f_if_reg(int mode, unsigned char **sec, float *data, unsigned int ndata, char *inv, void **local, const char *arg1); | ^~~~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:15:13: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char **, float *, unsigned int, char *, void **)’ [-Wincompatible-pointer-types] 15 | {"endif",f_endif, Endif, 0, "terminates if block", 100}, | ^~~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:15:13: note: (near initialization for ‘functions[6].fn’) /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.h:17:5: note: ‘f_endif’ declared here 17 | int f_endif(int mode, unsigned char **sec, float *data, unsigned int ndata, char *inv, void **local); | ^~~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:16:10: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char **, float *, unsigned int, char *, void **, const char *)’ [-Wincompatible-pointer-types] 16 | {"if",f_if, If, 1, "if X (POSIX regular expression), conditional execution on match", 100}, | ^~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:16:10: note: (near initialization for ‘functions[7].fn’) /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.h:18:5: note: ‘f_if’ declared here 18 | int f_if(int mode, unsigned char **sec, float *data, unsigned int ndata, char *inv, void **local, const char *arg1); | ^~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:17:24: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char **, float *, unsigned int, char *, void **)’ [-Wincompatible-pointer-types] 17 | {"if_delayed_error",f_if_delayed_error, If, 0, "if delayed error", 100}, | ^~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:17:24: note: (near initialization for ‘functions[8].fn’) /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.h:19:5: note: ‘f_if_delayed_error’ declared here 19 | int f_if_delayed_error(int mode, unsigned char **sec, float *data, unsigned int ndata, char *inv, void **local); | ^~~~~~~~~~~~~~~~~~ /builddir/build/BUILD/wgrib2-3.5.0-build/wgrib2-3.5.0/wgrib2/fnlist.c:18:13: error: initialization of ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char **, float *, unsigned int, char *, void **, const char *)’ [-Wincompatible-pointer-types] 18 | {"if_fs",f_if_fs, If, 1, "if X (fixed string), conditional execution on match", 100}, | ^~~~~~~
this is just a few but I think you get the gist. See https://gcc.gnu.org/gcc-15/porting_to.html#c23 for some more info.
The text was updated successfully, but these errors were encountered:
No branches or pull requests
gcc 15 is now in Fedora rawhide. wgrib2 fails to build with it by default due to the change to the C23 standard. Errors include:
this is just a few but I think you get the gist. See https://gcc.gnu.org/gcc-15/porting_to.html#c23 for some more info.
The text was updated successfully, but these errors were encountered: