As previously discussed in
<https://sourceware.org/ml/libc-alpha/2012-11/msg00798.html>, MIPS (o32)
waitid has build warnings (now errors) because a function is declared
inline but functions with five-argument syscalls cannot be inlined for
MIPS o32.
This patch disables the -Winline warnings for waitid.c using a
MIPS-specific wrapper file. As it's whole-file disabling, there's no
point in using push and pop, so just DIAG_IGNORE_NEEDS_COMMENT is
used.
* sysdeps/unix/sysv/linux/mips/mips32/waitid.c: New file.
2014-12-10 Joseph Myers <joseph@codesourcery.com>
+ * sysdeps/unix/sysv/linux/mips/mips32/waitid.c: New file.
+
* sysdeps/unix/sysv/linux/mips/mips64/Makefile
[$(subdir) == signal] (CFLAGS-sigaction.c): New variable.
[$(subdir) == nptl] (CFLAGS-sigaction.c): Likewise.
--- /dev/null
+#include <libc-internal.h>
+
+/* MIPS forces a frame pointer for five-argument syscalls using
+ alloca, so resulting in "inlining failed in call to 'do_waitid':
+ function not inlinable". */
+DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Winline");
+#include <sysdeps/unix/sysv/linux/waitid.c>