On Fri, Jun 7, 2019 at 11:43 AM Florian Weimer <fweimer@xxxxxxxxxx> wrote: > > On the glibc side, we nowadays deal with this by splitting headers > further. (We used to suppress definitions with macros, but that tended > to become convoluted.) In this case, moving the definition of > __kernel_long_t to its own header, so that > include/uapi/asm-generic/socket.h can include that should fix it. I think we should strive to do that on the kernel side too, since clearly we shouldn't expose that "val[]" thing in the core posix types due to namespace rules, but at the same time I think the patch to rename val[] is fundamentally broken too. Can you describe how you split things (perhaps even with a patch ;)? Is this literally the only issue you currently have? Because I'd expect similar issues to show up elsewhere too, but who knows.. You presumably do. Linus