2008-12-31 Andreas Tobler <a.tobler@schweiz.org>
authorandreast <andreast@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 31 Dec 2008 13:52:53 +0000 (13:52 +0000)
committerandreast <andreast@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 31 Dec 2008 13:52:53 +0000 (13:52 +0000)
PR target/35460
* inclhack.def (openbsd_va_start): Use __builtin_va_start
for OpenBSD.
* fixincl.x: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@142980 138bc75d-0d04-0410-961f-82ee72b054a4

fixincludes/ChangeLog
fixincludes/fixincl.x
fixincludes/inclhack.def

index b47156f..876b2c7 100644 (file)
@@ -1,3 +1,10 @@
+2008-12-31  Andreas Tobler  <a.tobler@schweiz.org>
+
+       PR target/35460
+       * inclhack.def (openbsd_va_start): Use __builtin_va_start
+       for OpenBSD.
+       * fixincl.x: Regenerate.
+
 2008-12-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
        * configure: Regenerate.
index ab584b7..0e28396 100644 (file)
@@ -2,11 +2,11 @@
  * 
  * DO NOT EDIT THIS FILE   (fixincl.x)
  * 
- * It has been AutoGen-ed  Wednesday December 10, 2008 at 10:13:23 AM PST
+ * It has been AutoGen-ed  Wednesday December 31, 2008 at 02:49:07 PM CET
  * From the definitions    inclhack.def
  * and the template file   fixincl
  */
-/* DO NOT SVN-MERGE THIS FILE, EITHER Wed Dec 10 10:13:23 PST 2008
+/* DO NOT SVN-MERGE THIS FILE, EITHER Wed Dec 31 14:49:07 CET 2008
  *
  * You must regenerate it.  Use the ./genfixes script.
  *
@@ -15,7 +15,7 @@
  * certain ANSI-incompatible system header files which are fixed to work
  * correctly with ANSI C and placed in a directory that GNU C will search.
  *
- * This file contains 177 fixup descriptions.
+ * This file contains 178 fixup descriptions.
  *
  * See README for more information.
  *
@@ -4734,6 +4734,43 @@ static const char* apzObstack_Lvalue_CastPatch[] = {
 
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
  *
+ *  Description of Openbsd_Va_Start fix
+ */
+tSCC zOpenbsd_Va_StartName[] =
+     "openbsd_va_start";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zOpenbsd_Va_StartList[] =
+  "stdarg.h\0";
+/*
+ *  Machine/OS name selection pattern
+ */
+tSCC* apzOpenbsd_Va_StartMachs[] = {
+        "*-*-openbsd*",
+        (const char*)NULL };
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zOpenbsd_Va_StartSelect0[] =
+       "__builtin_stdarg_start";
+
+#define    OPENBSD_VA_START_TEST_CT  1
+static tTestDesc aOpenbsd_Va_StartTests[] = {
+  { TT_EGREP,    zOpenbsd_Va_StartSelect0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Openbsd_Va_Start
+ */
+static const char* apzOpenbsd_Va_StartPatch[] = {
+    "format",
+    "__builtin_va_start",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
  *  Description of Osf_Namespace_A fix
  */
 tSCC zOsf_Namespace_AName[] =
@@ -7182,9 +7219,9 @@ static const char* apzX11_SprintfPatch[] = {
  *
  *  List of all fixes
  */
-#define REGEX_COUNT          223
+#define REGEX_COUNT          224
 #define MACH_LIST_SIZE_LIMIT 181
-#define FIX_COUNT            177
+#define FIX_COUNT            178
 
 /*
  *  Enumerate the fixes
@@ -7307,6 +7344,7 @@ typedef enum {
     NEXT_WAIT_UNION_FIXIDX,
     NODEENT_SYNTAX_FIXIDX,
     OBSTACK_LVALUE_CAST_FIXIDX,
+    OPENBSD_VA_START_FIXIDX,
     OSF_NAMESPACE_A_FIXIDX,
     OSF_NAMESPACE_C_FIXIDX,
     PTHREAD_PAGE_SIZE_FIXIDX,
@@ -7955,6 +7993,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
      OBSTACK_LVALUE_CAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
      aObstack_Lvalue_CastTests,   apzObstack_Lvalue_CastPatch, 0 },
 
+  {  zOpenbsd_Va_StartName,    zOpenbsd_Va_StartList,
+     apzOpenbsd_Va_StartMachs,
+     OPENBSD_VA_START_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aOpenbsd_Va_StartTests,   apzOpenbsd_Va_StartPatch, 0 },
+
   {  zOsf_Namespace_AName,    zOsf_Namespace_AList,
      apzOsf_Namespace_AMachs,
      OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
index 8d50abf..63871c4 100644 (file)
@@ -2541,6 +2541,19 @@ fix = {
     test_text = "*((void **) (h)->next_free)++ = (aptr)";
 };
 
+/* 
+ * Fix OpenBSD's va_start define.
+ */
+fix = {
+  hackname  = openbsd_va_start;
+  mach      = "*-*-openbsd*";
+  files     = stdarg.h;
+  select    = '__builtin_stdarg_start';
+  c_fix     = format;
+  c_fix_arg = __builtin_va_start;
+
+  test_text = "#define va_start(v,l)   __builtin_stdarg_start((v),l)";
+};
 
 /*
  *  sys/lc_core.h on some versions of OSF1/4.x pollutes the namespace by