OSDN Git Service

Regenerate fixincl.x from current template
[pf3gnuchains/gcc-fork.git] / fixincludes / fixincl.x
index 23e30eb..ead2c54 100644 (file)
@@ -2,11 +2,11 @@
  * 
  * DO NOT EDIT THIS FILE   (fixincl.x)
  * 
- * It has been AutoGen-ed  Friday May  6, 2005 at 09:31:52 AM PDT
+ * It has been AutoGen-ed  Thursday November 24, 2005 at 09:46:46 PM PST
  * From the definitions    inclhack.def
  * and the template file   fixincl
  */
-/* DO NOT CVS-MERGE THIS FILE, EITHER Fri May  6 09:31:52 PDT 2005
+/* DO NOT CVS-MERGE THIS FILE, EITHER Thu Nov 24 21:46:46 PST 2005
  *
  * 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 179 fixup descriptions.
+ * This file contains 193 fixup descriptions.
  *
  * See README for more information.
  *
@@ -26,7 +26,8 @@
  *  
  *  You may redistribute it and/or modify it under the terms of the
  *  GNU General Public License, as published by the Free Software
- *  Foundation; either version 2, or (at your option) any later version.
+ *  Foundation; either version 2 of the License, or (at your option)
+ *  any later version.
  *  
  *  inclhack is distributed in the hope that it will be useful,
  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  *  See the GNU General Public License for more details.
  *  
  *  You should have received a copy of the GNU General Public License
- *  along with inclhack.  See the file "COPYING".  If not,
- *  write to:  The Free Software Foundation, Inc.,
- *             59 Temple Place - Suite 330,
- *             Boston,  MA  02111-1307, USA.
+ *  along with inclhack.  If not, write to:
+ *     The Free Software Foundation, Inc.,
+ *     51 Franklin Street, Fifth Floor
+ *     Boston, MA  02110-1301, USA.
  */
 
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
  *
+ *  Description of Aab_Darwin7_9_Long_Double_Funcs fix
+ */
+tSCC zAab_Darwin7_9_Long_Double_FuncsName[] =
+     "AAB_darwin7_9_long_double_funcs";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zAab_Darwin7_9_Long_Double_FuncsList[] =
+  "|architecture/ppc/math.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+tSCC* apzAab_Darwin7_9_Long_Double_FuncsMachs[] = {
+        "*-*-darwin7.9*",
+        (const char*)NULL };
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zAab_Darwin7_9_Long_Double_FuncsBypass0[] =
+       "powl";
+
+#define    AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT  1
+static tTestDesc aAab_Darwin7_9_Long_Double_FuncsTests[] = {
+  { TT_NEGREP,   zAab_Darwin7_9_Long_Double_FuncsBypass0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Aab_Darwin7_9_Long_Double_Funcs
+ */
+static const char* apzAab_Darwin7_9_Long_Double_FuncsPatch[] = {
+"/* This file prototypes the long double functions available on Mac OS\n\
+   10.3.9.  */\n\
+#ifndef __MATH__\n\
+# include_next <architecture/ppc/math.h>\n\
+# ifndef __LIBMLDBL_COMPAT\n\
+#  ifdef __LONG_DOUBLE_128__\n\
+#   define __LIBMLDBL_COMPAT(sym) __asm(\"_\" #sym \"$LDBL128\")\n\
+#  else\n\
+#   define __LIBMLDBL_COMPAT(sym)\n\
+#  endif /* __LONG_DOUBLE_128__ */\n\
+# endif /* __LIBMLDBL_COMPAT */\n\
+# ifdef __cplusplus\n\
+   extern \"C\" {\n\
+# endif\n\
+  extern long double acosl( long double ) __LIBMLDBL_COMPAT(acosl);\n\
+  extern long double asinl( long double ) __LIBMLDBL_COMPAT(asinl);\n\
+  extern long double atanl( long double ) __LIBMLDBL_COMPAT(atanl);\n\
+  extern long double atan2l( long double, long double ) __LIBMLDBL_COMPAT(atan2l);\n\
+  extern long double cosl( long double ) __LIBMLDBL_COMPAT(cosl);\n\
+  extern long double sinl( long double ) __LIBMLDBL_COMPAT(sinl);\n\
+  extern long double tanl( long double ) __LIBMLDBL_COMPAT(tanl);\n\
+  extern long double acoshl( long double ) __LIBMLDBL_COMPAT(acoshl);\n\
+  extern long double asinhl( long double ) __LIBMLDBL_COMPAT(asinhl);\n\
+  extern long double atanhl( long double ) __LIBMLDBL_COMPAT(atanhl);\n\
+  extern long double coshl( long double ) __LIBMLDBL_COMPAT(coshl);\n\
+  extern long double sinhl( long double ) __LIBMLDBL_COMPAT(sinhl);\n\
+  extern long double tanhl( long double ) __LIBMLDBL_COMPAT(tanhl);\n\
+  extern long double expl( long double ) __LIBMLDBL_COMPAT(expl);\n\
+  extern long double exp2l( long double ) __LIBMLDBL_COMPAT(exp2l);\n\
+  extern long double expm1l( long double ) __LIBMLDBL_COMPAT(expm1l);\n\
+  extern long double logl( long double ) __LIBMLDBL_COMPAT(logl);\n\
+  extern long double log10l( long double ) __LIBMLDBL_COMPAT(log10l);\n\
+  extern long double log2l( long double ) __LIBMLDBL_COMPAT(log2l);\n\
+  extern long double log1pl( long double ) __LIBMLDBL_COMPAT(log1pl);\n\
+  extern long double logbl( long double ) __LIBMLDBL_COMPAT(logbl);\n\
+  extern long double modfl( long double, long double * ) __LIBMLDBL_COMPAT(modfl);\n\
+  extern long double ldexpl( long double, int ) __LIBMLDBL_COMPAT(ldexpl);\n\
+  extern long double frexpl( long double, int * ) __LIBMLDBL_COMPAT(frexpl);\n\
+  extern int ilogbl( long double ) __LIBMLDBL_COMPAT(ilogbl);\n\
+  extern long double scalbnl( long double, int ) __LIBMLDBL_COMPAT(scalbnl);\n\
+  extern long double scalblnl( long double, long int ) __LIBMLDBL_COMPAT(scalblnl);\n\
+  extern long double fabsl( long double ) __LIBMLDBL_COMPAT(fabsl);\n\
+  extern long double cbrtl( long double ) __LIBMLDBL_COMPAT(cbrtl);\n\
+  extern long double hypotl( long double, long double ) __LIBMLDBL_COMPAT(hypotl);\n\
+  extern long double powl( long double, long double ) __LIBMLDBL_COMPAT(powl);\n\
+  extern long double sqrtl( long double ) __LIBMLDBL_COMPAT(sqrtl);\n\
+  extern long double erfl( long double ) __LIBMLDBL_COMPAT(erfl);\n\
+  extern long double erfcl( long double ) __LIBMLDBL_COMPAT(erfcl);\n\
+  extern long double lgammal( long double ) __LIBMLDBL_COMPAT(lgammal);\n\
+  extern long double tgammal( long double ) __LIBMLDBL_COMPAT(tgammal);\n\
+  extern long double ceill( long double ) __LIBMLDBL_COMPAT(ceill);\n\
+  extern long double floorl( long double ) __LIBMLDBL_COMPAT(floorl);\n\
+  extern long double nearbyintl( long double ) __LIBMLDBL_COMPAT(nearbyintl);\n\
+  extern long double rintl( long double ) __LIBMLDBL_COMPAT(rintl);\n\
+  extern long int lrintl( long double ) __LIBMLDBL_COMPAT(lrintl);\n\
+  extern long long int llrintl( long double ) __LIBMLDBL_COMPAT(llrintl);\n\
+  extern long double roundl( long double ) __LIBMLDBL_COMPAT(roundl);\n\
+  extern long int lroundl( long double ) __LIBMLDBL_COMPAT(lroundl);\n\
+  extern long long int llroundl( long double ) __LIBMLDBL_COMPAT(llroundl);\n\
+  extern long double truncl( long double ) __LIBMLDBL_COMPAT(truncl);\n\
+  extern long double fmodl( long double, long double) __LIBMLDBL_COMPAT(fmodl);\n\
+  extern long double remainderl( long double, long double ) __LIBMLDBL_COMPAT(remainderl);\n\
+  extern long double remquol( long double, long double, int * ) __LIBMLDBL_COMPAT(remquol);\n\
+  extern long double copysignl( long double, long double ) __LIBMLDBL_COMPAT(copysignl);\n\
+  extern long double nanl( const char * ) __LIBMLDBL_COMPAT(nanl);\n\
+  extern long double nextafterl( long double, long double ) __LIBMLDBL_COMPAT(nextafterl);\n\
+  extern long double nexttowardl( long double, long double ) __LIBMLDBL_COMPAT(nexttowardl);\n\
+  extern long double fdiml( long double, long double ) __LIBMLDBL_COMPAT(fdiml);\n\
+  extern long double fmaxl( long double, long double ) __LIBMLDBL_COMPAT(fmaxl);\n\
+  extern long double fminl( long double, long double ) __LIBMLDBL_COMPAT(fminl);\n\
+  extern long double fmal( long double, long double, long double ) __LIBMLDBL_COMPAT(fmal);\n\
+# ifdef __cplusplus\n\
+   }\n\
+# endif\n\
+#endif /* __MATH__ */",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Aab_Darwin7_9_Long_Double_Funcs_2 fix
+ */
+tSCC zAab_Darwin7_9_Long_Double_Funcs_2Name[] =
+     "AAB_darwin7_9_long_double_funcs_2";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zAab_Darwin7_9_Long_Double_Funcs_2List[] =
+  "|math.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+tSCC* apzAab_Darwin7_9_Long_Double_Funcs_2Machs[] = {
+        "*-*-darwin7.9*",
+        (const char*)NULL };
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zAab_Darwin7_9_Long_Double_Funcs_2Select0[] =
+       "#include[ \\t]+\\\"";
+
+#define    AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_TEST_CT  1
+static tTestDesc aAab_Darwin7_9_Long_Double_Funcs_2Tests[] = {
+  { TT_EGREP,    zAab_Darwin7_9_Long_Double_Funcs_2Select0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Aab_Darwin7_9_Long_Double_Funcs_2
+ */
+static const char* apzAab_Darwin7_9_Long_Double_Funcs_2Patch[] = {
+    "format",
+    "%1<%2.h>",
+    "([ \\t]*#[ \\t]*include[ \\t]+)\"([a-z0-9/]+)\\.h\"",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
  *  Description of Aab_Fd_Zero_Asm_Posix_Types_H fix
  */
 tSCC zAab_Fd_Zero_Asm_Posix_Types_HName[] =
@@ -1511,7 +1660,7 @@ tSCC zBroken_CabsList[] =
  *  content selection pattern - do fix if pattern found
  */
 tSCC zBroken_CabsSelect0[] =
-       "^extern[ \\t]+double[ \\t]+cabs";
+       "^extern[ \t]+double[ \t]+cabs";
 
 #define    BROKEN_CABS_TEST_CT  1
 static tTestDesc aBroken_CabsTests[] = {
@@ -2765,6 +2914,132 @@ static const char* apzHpux_SystimePatch[] = {
 
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
  *
+ *  Description of Huge_Val_Hex fix
+ */
+tSCC zHuge_Val_HexName[] =
+     "huge_val_hex";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zHuge_Val_HexList[] =
+  "|bits/huge_val.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzHuge_Val_HexMachs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zHuge_Val_HexSelect0[] =
+       "^#[ \t]*define[ \t]*HUGE_VAL[ \t].*0x1\\.0p.*";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zHuge_Val_HexBypass0[] =
+       "__builtin_huge_val";
+
+#define    HUGE_VAL_HEX_TEST_CT  2
+static tTestDesc aHuge_Val_HexTests[] = {
+  { TT_NEGREP,   zHuge_Val_HexBypass0, (regex_t*)NULL },
+  { TT_EGREP,    zHuge_Val_HexSelect0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Huge_Val_Hex
+ */
+static const char* apzHuge_Val_HexPatch[] = {
+    "format",
+    "#define HUGE_VAL (__builtin_huge_val())\n",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Huge_Valf_Hex fix
+ */
+tSCC zHuge_Valf_HexName[] =
+     "huge_valf_hex";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zHuge_Valf_HexList[] =
+  "|bits/huge_val.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzHuge_Valf_HexMachs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zHuge_Valf_HexSelect0[] =
+       "^#[ \t]*define[ \t]*HUGE_VALF[ \t].*0x1\\.0p.*";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zHuge_Valf_HexBypass0[] =
+       "__builtin_huge_valf";
+
+#define    HUGE_VALF_HEX_TEST_CT  2
+static tTestDesc aHuge_Valf_HexTests[] = {
+  { TT_NEGREP,   zHuge_Valf_HexBypass0, (regex_t*)NULL },
+  { TT_EGREP,    zHuge_Valf_HexSelect0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Huge_Valf_Hex
+ */
+static const char* apzHuge_Valf_HexPatch[] = {
+    "format",
+    "#define HUGE_VALF (__builtin_huge_valf())\n",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Huge_Vall_Hex fix
+ */
+tSCC zHuge_Vall_HexName[] =
+     "huge_vall_hex";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zHuge_Vall_HexList[] =
+  "|bits/huge_val.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzHuge_Vall_HexMachs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zHuge_Vall_HexSelect0[] =
+       "^#[ \t]*define[ \t]*HUGE_VALL[ \t].*0x1\\.0p.*";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zHuge_Vall_HexBypass0[] =
+       "__builtin_huge_vall";
+
+#define    HUGE_VALL_HEX_TEST_CT  2
+static tTestDesc aHuge_Vall_HexTests[] = {
+  { TT_NEGREP,   zHuge_Vall_HexBypass0, (regex_t*)NULL },
+  { TT_EGREP,    zHuge_Vall_HexSelect0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Huge_Vall_Hex
+ */
+static const char* apzHuge_Vall_HexPatch[] = {
+    "format",
+    "#define HUGE_VALL (__builtin_huge_vall())\n",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
  *  Description of Int_Abort_Free_And_Exit fix
  */
 tSCC zInt_Abort_Free_And_ExitName[] =
@@ -4607,6 +4882,419 @@ static const char* apzSco_UtimePatch[] = {
 
 /* * * * * * * * * * * * * * * * * * * * * * * * * *
  *
+ *  Description of Solaris_Math_1 fix
+ */
+tSCC zSolaris_Math_1Name[] =
+     "solaris_math_1";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zSolaris_Math_1List[] =
+  "|iso/math_c99.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzSolaris_Math_1Machs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zSolaris_Math_1Select0[] =
+       "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zSolaris_Math_1Bypass0[] =
+       "__GNUC__";
+
+#define    SOLARIS_MATH_1_TEST_CT  2
+static tTestDesc aSolaris_Math_1Tests[] = {
+  { TT_NEGREP,   zSolaris_Math_1Bypass0, (regex_t*)NULL },
+  { TT_EGREP,    zSolaris_Math_1Select0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Solaris_Math_1
+ */
+static const char* apzSolaris_Math_1Patch[] = {
+    "format",
+    "#define\tHUGE_VA%1\t(__builtin_huge_va%2())",
+    "^#define[ \t]+HUGE_VA([LF]+)[ \t]+__builtin_huge_va([lf]+)",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Solaris_Math_2 fix
+ */
+tSCC zSolaris_Math_2Name[] =
+     "solaris_math_2";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zSolaris_Math_2List[] =
+  "|iso/math_c99.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzSolaris_Math_2Machs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zSolaris_Math_2Select0[] =
+       "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zSolaris_Math_2Bypass0[] =
+       "__GNUC__";
+
+#define    SOLARIS_MATH_2_TEST_CT  2
+static tTestDesc aSolaris_Math_2Tests[] = {
+  { TT_NEGREP,   zSolaris_Math_2Bypass0, (regex_t*)NULL },
+  { TT_EGREP,    zSolaris_Math_2Select0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Solaris_Math_2
+ */
+static const char* apzSolaris_Math_2Patch[] = {
+    "format",
+    "#define\tINFINITY\t(__builtin_inff())",
+    "^#define[ \t]+INFINITY[ \t]+__builtin_infinity",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Solaris_Math_3 fix
+ */
+tSCC zSolaris_Math_3Name[] =
+     "solaris_math_3";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zSolaris_Math_3List[] =
+  "|iso/math_c99.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzSolaris_Math_3Machs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zSolaris_Math_3Select0[] =
+       "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zSolaris_Math_3Bypass0[] =
+       "__GNUC__";
+
+#define    SOLARIS_MATH_3_TEST_CT  2
+static tTestDesc aSolaris_Math_3Tests[] = {
+  { TT_NEGREP,   zSolaris_Math_3Bypass0, (regex_t*)NULL },
+  { TT_EGREP,    zSolaris_Math_3Select0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Solaris_Math_3
+ */
+static const char* apzSolaris_Math_3Patch[] = {
+    "format",
+    "#define\tNAN\t\t(__builtin_nanf(\"\"))",
+    "^#define[ \t]+NAN[ \t]+__builtin_nan",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Solaris_Math_4 fix
+ */
+tSCC zSolaris_Math_4Name[] =
+     "solaris_math_4";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zSolaris_Math_4List[] =
+  "|iso/math_c99.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzSolaris_Math_4Machs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zSolaris_Math_4Select0[] =
+       "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zSolaris_Math_4Bypass0[] =
+       "__GNUC__";
+
+#define    SOLARIS_MATH_4_TEST_CT  2
+static tTestDesc aSolaris_Math_4Tests[] = {
+  { TT_NEGREP,   zSolaris_Math_4Bypass0, (regex_t*)NULL },
+  { TT_EGREP,    zSolaris_Math_4Select0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Solaris_Math_4
+ */
+static const char* apzSolaris_Math_4Patch[] = {
+    "format",
+    "#define\tfpclassify(x) \\\n\
+  __extension__ ({ __typeof(x) __x_fp = (x); \\\n\
+\t\t   isnan(__x_fp) \\\n\
+\t\t     ? FP_NAN \\\n\
+\t\t     : isinf(__x_fp) \\\n\
+\t\t       ? FP_INFINITE \\\n\
+\t\t       : isnormal(__x_fp) \\\n\
+\t\t\t ? FP_NORMAL \\\n\
+\t\t\t : __x_fp == 0.0 \\\n\
+\t\t\t   ? FP_ZERO \\\n\
+\t\t\t   : FP_SUBNORMAL; })",
+    "^#define[ \t]+fpclassify\\(x\\)[ \t]+__builtin_fpclassify\\(x\\)",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Solaris_Math_5 fix
+ */
+tSCC zSolaris_Math_5Name[] =
+     "solaris_math_5";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zSolaris_Math_5List[] =
+  "|iso/math_c99.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzSolaris_Math_5Machs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zSolaris_Math_5Select0[] =
+       "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zSolaris_Math_5Bypass0[] =
+       "__GNUC__";
+
+#define    SOLARIS_MATH_5_TEST_CT  2
+static tTestDesc aSolaris_Math_5Tests[] = {
+  { TT_NEGREP,   zSolaris_Math_5Bypass0, (regex_t*)NULL },
+  { TT_EGREP,    zSolaris_Math_5Select0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Solaris_Math_5
+ */
+static const char* apzSolaris_Math_5Patch[] = {
+    "format",
+    "#define\tisfinite(x) \\\n\
+  __extension__ ({ __typeof (x) __x_f = (x); \\\n\
+\t\t   __builtin_expect(!isnan(__x_f - __x_f), 1); })",
+    "^#define[ \t]+isfinite\\(x\\)[ \t]+__builtin_isfinite\\(x\\)",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Solaris_Math_6 fix
+ */
+tSCC zSolaris_Math_6Name[] =
+     "solaris_math_6";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zSolaris_Math_6List[] =
+  "|iso/math_c99.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzSolaris_Math_6Machs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zSolaris_Math_6Select0[] =
+       "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zSolaris_Math_6Bypass0[] =
+       "__GNUC__";
+
+#define    SOLARIS_MATH_6_TEST_CT  2
+static tTestDesc aSolaris_Math_6Tests[] = {
+  { TT_NEGREP,   zSolaris_Math_6Bypass0, (regex_t*)NULL },
+  { TT_EGREP,    zSolaris_Math_6Select0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Solaris_Math_6
+ */
+static const char* apzSolaris_Math_6Patch[] = {
+    "format",
+    "#define\tisinf(x) \\\n\
+  __extension__ ({ __typeof (x) __x_i = (x); \\\n\
+\t\t   __builtin_expect(!isnan(__x_i) && !isfinite(__x_i), 0); })",
+    "^#define[ \t]+isinf\\(x\\)[ \t]+__builtin_isinf\\(x\\)",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Solaris_Math_7 fix
+ */
+tSCC zSolaris_Math_7Name[] =
+     "solaris_math_7";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zSolaris_Math_7List[] =
+  "|iso/math_c99.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzSolaris_Math_7Machs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zSolaris_Math_7Select0[] =
+       "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zSolaris_Math_7Bypass0[] =
+       "__GNUC__";
+
+#define    SOLARIS_MATH_7_TEST_CT  2
+static tTestDesc aSolaris_Math_7Tests[] = {
+  { TT_NEGREP,   zSolaris_Math_7Bypass0, (regex_t*)NULL },
+  { TT_EGREP,    zSolaris_Math_7Select0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Solaris_Math_7
+ */
+static const char* apzSolaris_Math_7Patch[] = {
+    "format",
+    "#define\tisnormal(x) \\\n\
+  __extension__ ({ __typeof(x) __x_n = (x); \\\n\
+\t\t   if (__x_n < 0.0) __x_n = -__x_n; \\\n\
+\t\t   __builtin_expect(isfinite(__x_n) \\\n\
+\t\t\t\t    && (sizeof(__x_n) == sizeof(float) \\\n\
+\t\t\t\t\t  ? __x_n >= __FLT_MIN__ \\\n\
+\t\t\t\t\t  : sizeof(__x_n) == sizeof(long double) \\\n\
+\t\t\t\t\t    ? __x_n >= __LDBL_MIN__ \\\n\
+\t\t\t\t\t    : __x_n >= __DBL_MIN__), 1); })",
+    "^#define[ \t]+isnormal\\(x\\)[ \t]+__builtin_isnormal\\(x\\)",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Solaris_Math_8 fix
+ */
+tSCC zSolaris_Math_8Name[] =
+     "solaris_math_8";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zSolaris_Math_8List[] =
+  "|iso/math_c99.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzSolaris_Math_8Machs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zSolaris_Math_8Select0[] =
+       "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zSolaris_Math_8Bypass0[] =
+       "__GNUC__";
+
+#define    SOLARIS_MATH_8_TEST_CT  2
+static tTestDesc aSolaris_Math_8Tests[] = {
+  { TT_NEGREP,   zSolaris_Math_8Bypass0, (regex_t*)NULL },
+  { TT_EGREP,    zSolaris_Math_8Select0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Solaris_Math_8
+ */
+static const char* apzSolaris_Math_8Patch[] = {
+    "format",
+    "#define\tsignbit(x)\t(sizeof(x) == sizeof(float) \\\n\
+\t\t\t   ? __builtin_signbitf(x) \\\n\
+\t\t\t   : sizeof(x) == sizeof(long double) \\\n\
+\t\t\t     ? __builtin_signbitl(x) \\\n\
+\t\t\t     : __builtin_signbit(x))",
+    "^#define[ \t]+signbit\\(x\\)[ \t]+__builtin_signbit\\(x\\)",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ *  Description of Solaris_Math_9 fix
+ */
+tSCC zSolaris_Math_9Name[] =
+     "solaris_math_9";
+
+/*
+ *  File name selection pattern
+ */
+tSCC zSolaris_Math_9List[] =
+  "|iso/math_c99.h|";
+/*
+ *  Machine/OS name selection pattern
+ */
+#define apzSolaris_Math_9Machs (const char**)NULL
+
+/*
+ *  content selection pattern - do fix if pattern found
+ */
+tSCC zSolaris_Math_9Select0[] =
+       "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
+
+/*
+ *  content bypass pattern - skip fix if pattern found
+ */
+tSCC zSolaris_Math_9Bypass0[] =
+       "__GNUC__";
+
+#define    SOLARIS_MATH_9_TEST_CT  2
+static tTestDesc aSolaris_Math_9Tests[] = {
+  { TT_NEGREP,   zSolaris_Math_9Bypass0, (regex_t*)NULL },
+  { TT_EGREP,    zSolaris_Math_9Select0, (regex_t*)NULL }, };
+
+/*
+ *  Fix Command Arguments for Solaris_Math_9
+ */
+static const char* apzSolaris_Math_9Patch[] = {
+    "format",
+    "#define\t%1(x, y)%2__builtin_%1(x, y)",
+    "^#define[ \t]+([a-z]+)\\(x, y\\)([ \t]+)\\(\\(x\\) __builtin_[a-z]+\\(y\\)\\)",
+    (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
  *  Description of Solaris_Mutex_Init_1 fix
  */
 tSCC zSolaris_Mutex_Init_1Name[] =
@@ -4898,7 +5586,7 @@ tSCC zStdio_Stdarg_HList[] =
  *  Machine/OS name selection pattern
  */
 tSCC* apzStdio_Stdarg_HMachs[] = {
-        "*-*-solaris2.1[0-9]",
+        "*-*-solaris2.1[0-9]*",
         (const char*)NULL };
 
 /*
@@ -4936,7 +5624,7 @@ tSCC zStdio_Va_ListList[] =
  *  Machine/OS name selection pattern
  */
 tSCC* apzStdio_Va_ListMachs[] = {
-        "*-*-solaris2.1[0-9]",
+        "*-*-solaris2.1[0-9]*",
         (const char*)NULL };
 
 /*
@@ -7161,14 +7849,16 @@ static const char* apzX11_SprintfPatch[] = {
  *
  *  List of all fixes
  */
-#define REGEX_COUNT          209
+#define REGEX_COUNT          235
 #define MACH_LIST_SIZE_LIMIT 261
-#define FIX_COUNT            179
+#define FIX_COUNT            193
 
 /*
  *  Enumerate the fixes
  */
 typedef enum {
+    AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_FIXIDX,
+    AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_FIXIDX,
     AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
     AAB_FD_ZERO_GNU_TYPES_H_FIXIDX,
     AAB_FD_ZERO_SELECTBITS_H_FIXIDX,
@@ -7235,6 +7925,9 @@ typedef enum {
     HPUX_HTONL_FIXIDX,
     HPUX_LONG_DOUBLE_FIXIDX,
     HPUX_SYSTIME_FIXIDX,
+    HUGE_VAL_HEX_FIXIDX,
+    HUGE_VALF_HEX_FIXIDX,
+    HUGE_VALL_HEX_FIXIDX,
     INT_ABORT_FREE_AND_EXIT_FIXIDX,
     IO_QUOTES_DEF_FIXIDX,
     IO_QUOTES_USE_FIXIDX,
@@ -7283,6 +7976,15 @@ typedef enum {
     SCO_REGSET_FIXIDX,
     SCO_STATIC_FUNC_FIXIDX,
     SCO_UTIME_FIXIDX,
+    SOLARIS_MATH_1_FIXIDX,
+    SOLARIS_MATH_2_FIXIDX,
+    SOLARIS_MATH_3_FIXIDX,
+    SOLARIS_MATH_4_FIXIDX,
+    SOLARIS_MATH_5_FIXIDX,
+    SOLARIS_MATH_6_FIXIDX,
+    SOLARIS_MATH_7_FIXIDX,
+    SOLARIS_MATH_8_FIXIDX,
+    SOLARIS_MATH_9_FIXIDX,
     SOLARIS_MUTEX_INIT_1_FIXIDX,
     SOLARIS_MUTEX_INIT_2_FIXIDX,
     SOLARIS_SOCKET_FIXIDX,
@@ -7351,6 +8053,16 @@ typedef enum {
 } t_fixinc_idx;
 
 tFixDesc fixDescList[ FIX_COUNT ] = {
+  {  zAab_Darwin7_9_Long_Double_FuncsName,    zAab_Darwin7_9_Long_Double_FuncsList,
+     apzAab_Darwin7_9_Long_Double_FuncsMachs,
+     AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
+     aAab_Darwin7_9_Long_Double_FuncsTests,   apzAab_Darwin7_9_Long_Double_FuncsPatch, 0 },
+
+  {  zAab_Darwin7_9_Long_Double_Funcs_2Name,    zAab_Darwin7_9_Long_Double_Funcs_2List,
+     apzAab_Darwin7_9_Long_Double_Funcs_2Machs,
+     AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aAab_Darwin7_9_Long_Double_Funcs_2Tests,   apzAab_Darwin7_9_Long_Double_Funcs_2Patch, 0 },
+
   {  zAab_Fd_Zero_Asm_Posix_Types_HName,    zAab_Fd_Zero_Asm_Posix_Types_HList,
      apzAab_Fd_Zero_Asm_Posix_Types_HMachs,
      AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
@@ -7681,6 +8393,21 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
      HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
      aHpux_SystimeTests,   apzHpux_SystimePatch, 0 },
 
+  {  zHuge_Val_HexName,    zHuge_Val_HexList,
+     apzHuge_Val_HexMachs,
+     HUGE_VAL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aHuge_Val_HexTests,   apzHuge_Val_HexPatch, 0 },
+
+  {  zHuge_Valf_HexName,    zHuge_Valf_HexList,
+     apzHuge_Valf_HexMachs,
+     HUGE_VALF_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aHuge_Valf_HexTests,   apzHuge_Valf_HexPatch, 0 },
+
+  {  zHuge_Vall_HexName,    zHuge_Vall_HexList,
+     apzHuge_Vall_HexMachs,
+     HUGE_VALL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aHuge_Vall_HexTests,   apzHuge_Vall_HexPatch, 0 },
+
   {  zInt_Abort_Free_And_ExitName,    zInt_Abort_Free_And_ExitList,
      apzInt_Abort_Free_And_ExitMachs,
      INT_ABORT_FREE_AND_EXIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
@@ -7921,6 +8648,51 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
      SCO_UTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
      aSco_UtimeTests,   apzSco_UtimePatch, 0 },
 
+  {  zSolaris_Math_1Name,    zSolaris_Math_1List,
+     apzSolaris_Math_1Machs,
+     SOLARIS_MATH_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aSolaris_Math_1Tests,   apzSolaris_Math_1Patch, 0 },
+
+  {  zSolaris_Math_2Name,    zSolaris_Math_2List,
+     apzSolaris_Math_2Machs,
+     SOLARIS_MATH_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aSolaris_Math_2Tests,   apzSolaris_Math_2Patch, 0 },
+
+  {  zSolaris_Math_3Name,    zSolaris_Math_3List,
+     apzSolaris_Math_3Machs,
+     SOLARIS_MATH_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aSolaris_Math_3Tests,   apzSolaris_Math_3Patch, 0 },
+
+  {  zSolaris_Math_4Name,    zSolaris_Math_4List,
+     apzSolaris_Math_4Machs,
+     SOLARIS_MATH_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aSolaris_Math_4Tests,   apzSolaris_Math_4Patch, 0 },
+
+  {  zSolaris_Math_5Name,    zSolaris_Math_5List,
+     apzSolaris_Math_5Machs,
+     SOLARIS_MATH_5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aSolaris_Math_5Tests,   apzSolaris_Math_5Patch, 0 },
+
+  {  zSolaris_Math_6Name,    zSolaris_Math_6List,
+     apzSolaris_Math_6Machs,
+     SOLARIS_MATH_6_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aSolaris_Math_6Tests,   apzSolaris_Math_6Patch, 0 },
+
+  {  zSolaris_Math_7Name,    zSolaris_Math_7List,
+     apzSolaris_Math_7Machs,
+     SOLARIS_MATH_7_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aSolaris_Math_7Tests,   apzSolaris_Math_7Patch, 0 },
+
+  {  zSolaris_Math_8Name,    zSolaris_Math_8List,
+     apzSolaris_Math_8Machs,
+     SOLARIS_MATH_8_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aSolaris_Math_8Tests,   apzSolaris_Math_8Patch, 0 },
+
+  {  zSolaris_Math_9Name,    zSolaris_Math_9List,
+     apzSolaris_Math_9Machs,
+     SOLARIS_MATH_9_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+     aSolaris_Math_9Tests,   apzSolaris_Math_9Patch, 0 },
+
   {  zSolaris_Mutex_Init_1Name,    zSolaris_Mutex_Init_1List,
      apzSolaris_Mutex_Init_1Machs,
      SOLARIS_MUTEX_INIT_1_TEST_CT, FD_MACH_ONLY,