> On Wed, Feb 7, 2024 at 9:04 AM Eduard Zingerman <eddyz87@xxxxxxxxx> wrote: >> >> On Tue, 2024-02-06 at 14:04 -0800, Alexei Starovoitov wrote: >> [...] >> >> > diff --git a/tools/testing/selftests/bpf/bpf_arena_list.h b/tools/testing/selftests/bpf/bpf_arena_list.h >> > new file mode 100644 >> > index 000000000000..9f34142b0f65 >> > --- /dev/null >> > +++ b/tools/testing/selftests/bpf/bpf_arena_list.h >> >> [...] >> >> > +#ifndef __BPF__ >> > +static inline void *bpf_iter_num_new(struct bpf_iter_num *, int, int) { return NULL; } >> > +static inline void bpf_iter_num_destroy(struct bpf_iter_num *) {} >> > +static inline bool bpf_iter_num_next(struct bpf_iter_num *) { return true; } >> > +#endif >> >> Note: when compiling using current clang 'main' (make test_progs) this reports the following errors: >> >> In file included from tools/testing/selftests/bpf/prog_tests/arena_list.c:9: >> ./bpf_arena_list.h:28:59: error: omitting the parameter name in a function >> definition is a C23 extension [-Werror,-Wc23-extensions] >> 28 | static inline void *bpf_iter_num_new(struct bpf_iter_num *, int, int) { return NULL; } >> ... >> >> So I had to give parameter names for the above functions. > > Thanks. Fixed. Too bad gcc 12 didn't catch it. I'm opening a GCC bugzilla for this.a