Re: [PATCH] wired: fix -std=c23 build failure
Denis Kenzior <[email protected]>
| Newsgroups | dev.linux.lists.iwd |
|---|---|
| Message-ID | <[email protected]> |
Hi Sergei,
On 11/19/24 4:28 PM, Sergei Trofimovich wrote:
> gcc-15 switched to -std=c23 by default:
>
> https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=55e3bd376b2214e200fa76d12b67ff259b06c212
>
> As a result `iwd` fails the build as:
>
> wired/ethdev.c: In function 'pae_open':
> wired/ethdev.c:340:55:
> error: passing argument 4 of 'l_io_set_read_handler'
> from incompatible pointer type [-Wincompatible-pointer-types]
> 340 | l_io_set_read_handler(pae_io, pae_read, NULL, pae_destroy);
> | ^~~~~~~~~~~
> | |
> | void (*)(void)
> In file included from ...-ell-0.70-dev/include/ell/ell.h:19,
> from wired/ethdev.c:38:
> ...-ell-0.70-dev/include/ell/io.h:33:68:
> note: expected 'l_io_destroy_cb_t' {aka 'void (*)(void *)'}
> but argument is of type 'void (*)(void)'
> 33 | void *user_data, l_io_destroy_cb_t destroy);
> | ~~~~~~~~~~~~~~~~~~^~~~~~~
>
> C23 changed the meaning of `void (*)()` from partially defined prototype
> to `void (*)(void)`.
> ---
> wired/ethdev.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
Applied, thanks.
Regards,
-Denis