AIX unistd.h defines a static function without a parameter, which
justifiably upsets C++ code when the header is included and
referenced. This patch to fixincludes adjusts the header to declare
the parameter as void.
Bootstrapped on powerpc-ibm-aix7.2.0.0 and powerpc64le-linux
Thanks, David
* inclhack.def (aix_unistd): New.
* fixincl.x: Regenerate.
* tests/base/unistd.h [AIX_UNISTD_CHECK]: New test.
Index: inclhack.def
===================================================================
--- inclhack.def (revision 262934)
+++ inclhack.def (working copy)
@@ -924,6 +924,20 @@
};
/*
+ * AIX unistd.h defines a static function with an empty parameter list.
+ */
+fix = {
+ hackname = aix_unistd;
+ mach = "*-*-aix*";
+ files = unistd.h;
+
+ select = "[ \t]+static[ \t]+int[ \t]+getdtablesize\\(\\)";
+ c_fix = format;
+ c_fix_arg = "\tstatic int\t\tgetdtablesize(void)";
+ test_text = " static int getdtablesize()";
+};
+
+/*
* Fix __assert declaration in assert.h on Alpha OSF/1.
*/
fix = {