Harald Maier wrote: > They __THROW and __nonnull are defined in „getopt_cdefs.h“. Thanks, I think I see the problem. Either the compiler or some macOS header does "#define __nonnull _Nonnull", and this collides with glibc's use of __nonnull. Presumably Clang uses _Nonnull as a type qualifier and some Clang headers use __nonnull as an alias for _Nonnull. Please try the attached patch against Emacs master. If it works I plan to install it into Emacs and propagate it into Gnulib.