diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog
index 8471e02..de62123 100644
--- a/fixincludes/ChangeLog
+++ b/fixincludes/ChangeLog
@@ -1,3 +1,12 @@
+2013-07-08  Alexander Ivchenko  <alexander.ivchenko@intel.com>
+
+	* inclhack.def (complier_h_tradcpp): Rename to obsolete_builtin_warning.
+	* inclhack.def (obsolete_builtin_warning.): New.
+	* inclhack.def (obstack_lvalue_cast): Put on the alphabetically
+	correct place.
+	* fixincl.x: Rebuilt.
+	* tests/base/linux/compiler.h: Update.
+
 2013-07-06  Bruce Korb  <bkorb@gnu.org>
 
 	* inclhack.def (cdef_cplusplus): removed, per Bug 51776
diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x
index 1fbe3fa..5518122 100644
--- a/fixincludes/fixincl.x
+++ b/fixincludes/fixincl.x
@@ -1,12 +1,12 @@
 /*  -*- buffer-read-only: t -*- vi: set ro:
- *
+ * 
  * DO NOT EDIT THIS FILE   (fixincl.x)
- *
- * It has been AutoGen-ed  July  6, 2013 at 10:40:53 AM by AutoGen 5.17.5pre10
+ * 
+ * It has been AutoGen-ed  July  8, 2013 at 03:13:20 PM by AutoGen 5.12
  * From the definitions    inclhack.def
  * and the template file   fixincl
  */
-/* DO NOT SVN-MERGE THIS FILE, EITHER Sat Jul  6 10:40:53 PDT 2013
+/* DO NOT SVN-MERGE THIS FILE, EITHER Mon Jul  8 15:13:20 MSK 2013
  *
  * You must regenerate it.  Use the ./genfixes script.
  *
@@ -5589,56 +5589,37 @@ static const char* apzNodeent_SyntaxPatch[] = {
 
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
  *
- *  Description of Openbsd_Null_Definition fix
+ *  Description of Obsolete_Builtin_Warning fix
  */
-tSCC zOpenbsd_Null_DefinitionName[] =
-     "openbsd_null_definition";
+tSCC zObsolete_Builtin_WarningName[] =
+     "obsolete_builtin_warning";
 
 /*
  *  File name selection pattern
  */
-tSCC zOpenbsd_Null_DefinitionList[] =
-  "locale.h\0stddef.h\0stdio.h\0string.h\0time.h\0unistd.h\0wchar.h\0sys/param.h\0";
+tSCC zObsolete_Builtin_WarningList[] =
+  "linux/compiler.h\0";
 /*
  *  Machine/OS name selection pattern
  */
-tSCC* apzOpenbsd_Null_DefinitionMachs[] = {
-        "*-*-openbsd*",
-        (const char*)NULL };
+#define apzObsolete_Builtin_WarningMachs (const char**)NULL
 
 /*
  *  content selection pattern - do fix if pattern found
  */
-tSCC zOpenbsd_Null_DefinitionSelect0[] =
-       "__GNUG__";
+tSCC zObsolete_Builtin_WarningSelect0[] =
+       "#define __builtin_warning\\(x, y\\.\\.\\.\\) \\(1\\)";
 
-#define    OPENBSD_NULL_DEFINITION_TEST_CT  1
-static tTestDesc aOpenbsd_Null_DefinitionTests[] = {
-  { TT_EGREP,    zOpenbsd_Null_DefinitionSelect0, (regex_t*)NULL }, };
+#define    OBSOLETE_BUILTIN_WARNING_TEST_CT  1
+static tTestDesc aObsolete_Builtin_WarningTests[] = {
+  { TT_EGREP,    zObsolete_Builtin_WarningSelect0, (regex_t*)NULL }, };
 
 /*
- *  Fix Command Arguments for Openbsd_Null_Definition
+ *  Fix Command Arguments for Obsolete_Builtin_Warning
  */
-static const char* apzOpenbsd_Null_DefinitionPatch[] = {
+static const char* apzObsolete_Builtin_WarningPatch[] = {
     "format",
-    "#ifndef NULL\n\
-#ifdef __cplusplus\n\
-#ifdef __GNUG__\n\
-#define NULL\t__null\n\
-#else\t /* ! __GNUG__  */\n\
-#define NULL\t0L\n\
-#endif\t /* __GNUG__  */\n\
-#else\t /* ! __cplusplus  */\n\
-#define NULL\t((void *)0)\n\
-#endif\t /* __cplusplus  */\n\
-#endif\t /* !NULL  */",
-    "^#ifndef[ \t]*NULL\n\
-^#ifdef[ \t]*__GNUG__\n\
-^#define[ \t]*NULL[ \t]*__null\n\
-^#else\n\
-^#define[ \t]*NULL[ \t]*0L\n\
-^#endif\n\
-^#endif",
+    "/* __builtin_warning(x, y...) is obsolete */",
     (char*)NULL };
 
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
@@ -5678,6 +5659,60 @@ static const char* apzObstack_Lvalue_CastPatch[] = {
 
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
  *
+ *  Description of Openbsd_Null_Definition fix
+ */
+tSCC zOpenbsd_Null_DefinitionName[] =
+     "openbsd_null_definition";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zOpenbsd_Null_DefinitionList[] =
+  "locale.h\0stddef.h\0stdio.h\0string.h\0time.h\0unistd.h\0wchar.h\0sys/param.h\0";
+/*
+ *  Machine/OS name selection pattern
+ */
+tSCC* apzOpenbsd_Null_DefinitionMachs[] = {
+        "*-*-openbsd*",
+        (const char*)NULL };
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zOpenbsd_Null_DefinitionSelect0[] =
+       "__GNUG__";
+
+#define    OPENBSD_NULL_DEFINITION_TEST_CT  1
+static tTestDesc aOpenbsd_Null_DefinitionTests[] = {
+  { TT_EGREP,    zOpenbsd_Null_DefinitionSelect0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Openbsd_Null_Definition
+ */
+static const char* apzOpenbsd_Null_DefinitionPatch[] = {
+    "format",
+    "#ifndef NULL\n\
+#ifdef __cplusplus\n\
+#ifdef __GNUG__\n\
+#define NULL\t__null\n\
+#else\t /* ! __GNUG__  */\n\
+#define NULL\t0L\n\
+#endif\t /* __GNUG__  */\n\
+#else\t /* ! __cplusplus  */\n\
+#define NULL\t((void *)0)\n\
+#endif\t /* __cplusplus  */\n\
+#endif\t /* !NULL  */",
+    "^#ifndef[ \t]*NULL\n\
+^#ifdef[ \t]*__GNUG__\n\
+^#define[ \t]*NULL[ \t]*__null\n\
+^#else\n\
+^#define[ \t]*NULL[ \t]*0L\n\
+^#endif\n\
+^#endif",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
  *  Description of Openbsd_Va_Start fix
  */
 tSCC zOpenbsd_Va_StartName[] =
@@ -9289,41 +9324,6 @@ static const char* apzFeraiseexcept_Nosse_DivbyzeroPatch[] = {
 # endif",
     (char*)NULL };
 
-/* * * * * * * * * * * * * * * * * * * * * * * * * *
- *
- *  Description of Complier_H_Tradcpp fix
- */
-tSCC zComplier_H_TradcppName[] =
-     "complier_h_tradcpp";
-
-/*
- *  File name selection pattern
- */
-tSCC zComplier_H_TradcppList[] =
-  "linux/compiler.h\0";
-/*
- *  Machine/OS name selection pattern
- */
-#define apzComplier_H_TradcppMachs (const char**)NULL
-
-/*
- *  content selection pattern - do fix if pattern found
- */
-tSCC zComplier_H_TradcppSelect0[] =
-       "#define __builtin_warning\\(x, y\\.\\.\\.\\) \\(1\\)";
-
-#define    COMPLIER_H_TRADCPP_TEST_CT  1
-static tTestDesc aComplier_H_TradcppTests[] = {
-  { TT_EGREP,    zComplier_H_TradcppSelect0, (regex_t*)NULL }, };
-
-/*
- *  Fix Command Arguments for Complier_H_Tradcpp
- */
-static const char* apzComplier_H_TradcppPatch[] = {
-    "format",
-    "/* __builtin_warning(x, y...) is obsolete */",
-    (char*)NULL };
-
 
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
  *
@@ -9471,8 +9471,9 @@ typedef enum {
     NEXT_VOLITILE_FIXIDX,
     NEXT_WAIT_UNION_FIXIDX,
     NODEENT_SYNTAX_FIXIDX,
-    OPENBSD_NULL_DEFINITION_FIXIDX,
+    OBSOLETE_BUILTIN_WARNING_FIXIDX,
     OBSTACK_LVALUE_CAST_FIXIDX,
+    OPENBSD_NULL_DEFINITION_FIXIDX,
     OPENBSD_VA_START_FIXIDX,
     OSF_NAMESPACE_A_FIXIDX,
     OSF_NAMESPACE_C_FIXIDX,
@@ -9562,8 +9563,7 @@ typedef enum {
     X11_NEW_FIXIDX,
     X11_SPRINTF_FIXIDX,
     FERAISEEXCEPT_NOSSE_INVALID_FIXIDX,
-    FERAISEEXCEPT_NOSSE_DIVBYZERO_FIXIDX,
-    COMPLIER_H_TRADCPP_FIXIDX
+    FERAISEEXCEPT_NOSSE_DIVBYZERO_FIXIDX
 } t_fixinc_idx;
 
 tFixDesc fixDescList[ FIX_COUNT ] = {
@@ -10237,16 +10237,21 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
      NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
      aNodeent_SyntaxTests,   apzNodeent_SyntaxPatch, 0 },
 
-  {  zOpenbsd_Null_DefinitionName,    zOpenbsd_Null_DefinitionList,
-     apzOpenbsd_Null_DefinitionMachs,
-     OPENBSD_NULL_DEFINITION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
-     aOpenbsd_Null_DefinitionTests,   apzOpenbsd_Null_DefinitionPatch, 0 },
+  {  zObsolete_Builtin_WarningName,    zObsolete_Builtin_WarningList,
+     apzObsolete_Builtin_WarningMachs,
+     OBSOLETE_BUILTIN_WARNING_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aObsolete_Builtin_WarningTests,   apzObsolete_Builtin_WarningPatch, 0 },
 
   {  zObstack_Lvalue_CastName,    zObstack_Lvalue_CastList,
      apzObstack_Lvalue_CastMachs,
      OBSTACK_LVALUE_CAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
      aObstack_Lvalue_CastTests,   apzObstack_Lvalue_CastPatch, 0 },
 
+  {  zOpenbsd_Null_DefinitionName,    zOpenbsd_Null_DefinitionList,
+     apzOpenbsd_Null_DefinitionMachs,
+     OPENBSD_NULL_DEFINITION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aOpenbsd_Null_DefinitionTests,   apzOpenbsd_Null_DefinitionPatch, 0 },
+
   {  zOpenbsd_Va_StartName,    zOpenbsd_Va_StartList,
      apzOpenbsd_Va_StartMachs,
      OPENBSD_VA_START_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -10695,10 +10700,5 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
   {  zFeraiseexcept_Nosse_DivbyzeroName,    zFeraiseexcept_Nosse_DivbyzeroList,
      apzFeraiseexcept_Nosse_DivbyzeroMachs,
      FERAISEEXCEPT_NOSSE_DIVBYZERO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
-     aFeraiseexcept_Nosse_DivbyzeroTests,   apzFeraiseexcept_Nosse_DivbyzeroPatch, 0 },
-
-  {  zComplier_H_TradcppName,    zComplier_H_TradcppList,
-     apzComplier_H_TradcppMachs,
-     COMPLIER_H_TRADCPP_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
-     aComplier_H_TradcppTests,   apzComplier_H_TradcppPatch, 0 }
+     aFeraiseexcept_Nosse_DivbyzeroTests,   apzFeraiseexcept_Nosse_DivbyzeroPatch, 0 }
 };
diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def
index c92170f..a7f1349 100644
--- a/fixincludes/inclhack.def
+++ b/fixincludes/inclhack.def
@@ -2919,6 +2919,44 @@ fix = {
     test_text = "char *na_addr\t";
 };
 
+/*
+ *  Old Linux kernel's <compiler.h> header breaks Traditional CPP
+ */
+fix = {
+    hackname  = obsolete_builtin_warning;
+    files     = linux/compiler.h;
+
+    select    = "#define __builtin_warning\\(x, y\\.\\.\\.\\) \\(1\\)";
+    c_fix     = format;
+    c_fix_arg = "/* __builtin_warning(x, y...) is obsolete */";
+
+    test_text = "#define __builtin_warning(x, y...) (1)";
+    };
+
+/*
+ *  obstack.h used casts as lvalues.
+ *
+ *  We need to change postincrements of casted pointers (which are
+ *  then dereferenced and assigned into) of the form
+ *
+ *    *((TYPE*)PTRVAR)++ = (VALUE)
+ *
+ *  into expressions like
+ *
+ *    ((*((TYPE*)PTRVAR) = (VALUE)), (PTRVAR += sizeof (TYPE)))
+ *
+ *  which is correct for the cases used in obstack.h since PTRVAR is
+ *  of type char * and the value of the expression is not used.
+ */
+fix = {
+    hackname  = obstack_lvalue_cast;
+    files     = obstack.h;
+    select    = '\*\(\(([^()]*)\*\)(.*)\)\+\+ = \(([^()]*)\)';
+    c_fix     = format;
+    c_fix_arg = "((*((%1*)%2) = (%3)), (%2 += sizeof (%1)))";
+    test_text = "*((void **) (h)->next_free)++ = (aptr)";
+};
+
 /* 
  * Fix OpenBSD's NULL definition.
  */
@@ -2958,30 +2996,6 @@ fix = {
 	"#endif\n";
 };
 
-/*
- *  obstack.h used casts as lvalues.
- *
- *  We need to change postincrements of casted pointers (which are
- *  then dereferenced and assigned into) of the form
- *
- *    *((TYPE*)PTRVAR)++ = (VALUE)
- *
- *  into expressions like
- *
- *    ((*((TYPE*)PTRVAR) = (VALUE)), (PTRVAR += sizeof (TYPE)))
- *
- *  which is correct for the cases used in obstack.h since PTRVAR is
- *  of type char * and the value of the expression is not used.
- */
-fix = {
-    hackname  = obstack_lvalue_cast;
-    files     = obstack.h;
-    select    = '\*\(\(([^()]*)\*\)(.*)\)\+\+ = \(([^()]*)\)';
-    c_fix     = format;
-    c_fix_arg = "((*((%1*)%2) = (%3)), (%2 += sizeof (%1)))";
-    test_text = "*((void **) (h)->next_free)++ = (aptr)";
-};
-
 /* 
  * Fix OpenBSD's va_start define.
  */
@@ -4800,18 +4814,4 @@ fix = {
 	_EOText_;
 };
 
-/*
- *  Old Linux kernel's <compiler.h> header breaks Traditional CPP
- */
-fix = {
-    hackname  = complier_h_tradcpp;
-    files     = linux/compiler.h;
-
-    select    = "#define __builtin_warning\\(x, y\\.\\.\\.\\) \\(1\\)";
-    c_fix     = format;
-    c_fix_arg = "/* __builtin_warning(x, y...) is obsolete */";
-
-    test_text = "#define __builtin_warning(x, y...) (1)";
-};
-
 /*EOF*/
diff --git a/fixincludes/tests/base/linux/compiler.h b/fixincludes/tests/base/linux/compiler.h
index 7135276..cffb178 100644
--- a/fixincludes/tests/base/linux/compiler.h
+++ b/fixincludes/tests/base/linux/compiler.h
@@ -9,6 +9,6 @@
 
 
 
-#if defined( COMPLIER_H_TRADCPP_CHECK )
+#if defined( OBSOLETE_BUILTIN_WARNING_CHECK )
 /* __builtin_warning(x, y...) is obsolete */
-#endif  /* COMPLIER_H_TRADCPP_CHECK */
+#endif  /* OBSOLETE_BUILTIN_WARNING_CHECK */
