OSDN Git Service

Daily bump.
[pf3gnuchains/gcc-fork.git] / fixincludes / fixincl.x
1 /*  -*- buffer-read-only: t -*- vi: set ro:
2  * 
3  * DO NOT EDIT THIS FILE   (fixincl.x)
4  * 
5  * It has been AutoGen-ed  March 26, 2012 at 10:53:21 AM by AutoGen 5.10
6  * From the definitions    inclhack.def
7  * and the template file   fixincl
8  */
9 /* DO NOT SVN-MERGE THIS FILE, EITHER Mon Mar 26 10:53:21 EDT 2012
10  *
11  * You must regenerate it.  Use the ./genfixes script.
12  *
13  *
14  * This is part of the fixincl program used to install modified versions of
15  * certain ANSI-incompatible system header files which are fixed to work
16  * correctly with ANSI C and placed in a directory that GNU C will search.
17  *
18  * This file contains 224 fixup descriptions.
19  *
20  * See README for more information.
21  *
22  *  inclhack copyright (c) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
23  *                         2006, 2007, 2008
24  *  The Free Software Foundation, Inc.
25  *
26  *  inclhack is free software: you can redistribute it and/or modify it
27  *  under the terms of the GNU General Public License as published by the
28  *  Free Software Foundation, either version 3 of the License, or
29  *  (at your option) any later version.
30  *  
31  *  inclhack is distributed in the hope that it will be useful, but
32  *  WITHOUT ANY WARRANTY; without even the implied warranty of
33  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
34  *  See the GNU General Public License for more details.
35  *  
36  *  You should have received a copy of the GNU General Public License along
37  *  with this program.  If not, see <http://www.gnu.org/licenses/>.
38  */
39 #ifndef SED_PROGRAM
40 #define SED_PROGRAM "/usr/bin/sed"
41 #endif
42 static char const sed_cmd_z[] = SED_PROGRAM;
43
44 /* * * * * * * * * * * * * * * * * * * * * * * * * *
45  *
46  *  Description of Aab_Aix_Stdio fix
47  */
48 tSCC zAab_Aix_StdioName[] =
49      "AAB_aix_stdio";
50
51 /*
52  *  File name selection pattern
53  */
54 tSCC zAab_Aix_StdioList[] =
55   "stdio.h\0";
56 /*
57  *  Machine/OS name selection pattern
58  */
59 tSCC* apzAab_Aix_StdioMachs[] = {
60         "*-*-aix*",
61         (const char*)NULL };
62
63 /*
64  *  content selection pattern - do fix if pattern found
65  */
66 tSCC zAab_Aix_StdioSelect0[] =
67        "define fopen fopen64";
68
69 #define    AAB_AIX_STDIO_TEST_CT  1
70 static tTestDesc aAab_Aix_StdioTests[] = {
71   { TT_EGREP,    zAab_Aix_StdioSelect0, (regex_t*)NULL }, };
72
73 /*
74  *  Fix Command Arguments for Aab_Aix_Stdio
75  */
76 static const char* apzAab_Aix_StdioPatch[] = {
77     "wrap",
78     "",
79     "\n\
80 #if defined __GNUG__ && defined _LARGE_FILES && defined __cplusplus\n\
81 #define __need__aix_stdio_h_fix\n\
82 #ifdef __need__aix_stdio_h_fix\n\
83 #undef fseeko\n\
84 #undef ftello\n\
85 #undef fgetpos\n\
86 #undef fsetpos\n\
87 #undef fopen\n\
88 #undef freopen\n\
89 /* Alias the symbols using asm */\n\
90 extern \"C\" {\n\
91 extern int fgetpos(FILE *, fpos64_t *) __asm__(\"fgetpos64\");\n\
92 extern FILE *fopen(const char *, const char *) __asm__(\"fopen64\");\n\
93 extern FILE *freopen(const char *, const char *, FILE *) __asm__(\"freopen64\");\n\
94 extern int fseeko(FILE *, off64_t, int) __asm__(\"fseeko64\");\n\
95 extern int fsetpos(FILE *, const fpos64_t *) __asm__(\"fsetpos64\");\n\
96 extern off64_t ftello(FILE *) __asm__(\"ftello64\");\n\
97 }\n\
98 #endif\n\
99 #endif\n",
100     (char*)NULL };
101
102 /* * * * * * * * * * * * * * * * * * * * * * * * * *
103  *
104  *  Description of Aab_Darwin7_9_Long_Double_Funcs fix
105  */
106 tSCC zAab_Darwin7_9_Long_Double_FuncsName[] =
107      "AAB_darwin7_9_long_double_funcs";
108
109 /*
110  *  File name selection pattern
111  */
112 tSCC zAab_Darwin7_9_Long_Double_FuncsList[] =
113   "architecture/ppc/math.h\0";
114 /*
115  *  Machine/OS name selection pattern
116  */
117 tSCC* apzAab_Darwin7_9_Long_Double_FuncsMachs[] = {
118         "*-*-darwin7.9*",
119         (const char*)NULL };
120
121 /*
122  *  content bypass pattern - skip fix if pattern found
123  */
124 tSCC zAab_Darwin7_9_Long_Double_FuncsBypass0[] =
125        "powl";
126
127 #define    AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT  1
128 static tTestDesc aAab_Darwin7_9_Long_Double_FuncsTests[] = {
129   { TT_NEGREP,   zAab_Darwin7_9_Long_Double_FuncsBypass0, (regex_t*)NULL }, };
130
131 /*
132  *  Fix Command Arguments for Aab_Darwin7_9_Long_Double_Funcs
133  */
134 static const char* apzAab_Darwin7_9_Long_Double_FuncsPatch[] = {
135 "/* This file prototypes the long double functions available on Mac OS\n\
136    10.3.9.  */\n\
137 #ifndef __MATH__\n\
138 # undef __APPLE_CC__\n\
139 # define __APPLE_CC__  1345\n\
140 # include_next <architecture/ppc/math.h>\n\
141 # undef __APPLE_CC__\n\
142 # define __APPLE_CC__ 1\n\
143 # ifndef __LIBMLDBL_COMPAT\n\
144 #  ifdef __LONG_DOUBLE_128__\n\
145 #   define __LIBMLDBL_COMPAT(sym) __asm(\"_\" #sym \"$LDBL128\")\n\
146 #  else\n\
147 #   define __LIBMLDBL_COMPAT(sym)\n\
148 #  endif /* __LONG_DOUBLE_128__ */\n\
149 # endif /* __LIBMLDBL_COMPAT */\n\
150 # ifdef __cplusplus\n\
151    extern \"C\" {\n\
152 # endif\n\
153   extern long double acosl( long double ) __LIBMLDBL_COMPAT(acosl);\n\
154   extern long double asinl( long double ) __LIBMLDBL_COMPAT(asinl);\n\
155   extern long double atanl( long double ) __LIBMLDBL_COMPAT(atanl);\n\
156   extern long double atan2l( long double, long double ) __LIBMLDBL_COMPAT(atan2l);\n\
157   extern long double cosl( long double ) __LIBMLDBL_COMPAT(cosl);\n\
158   extern long double sinl( long double ) __LIBMLDBL_COMPAT(sinl);\n\
159   extern long double tanl( long double ) __LIBMLDBL_COMPAT(tanl);\n\
160   extern long double acoshl( long double ) __LIBMLDBL_COMPAT(acoshl);\n\
161   extern long double asinhl( long double ) __LIBMLDBL_COMPAT(asinhl);\n\
162   extern long double atanhl( long double ) __LIBMLDBL_COMPAT(atanhl);\n\
163   extern long double coshl( long double ) __LIBMLDBL_COMPAT(coshl);\n\
164   extern long double sinhl( long double ) __LIBMLDBL_COMPAT(sinhl);\n\
165   extern long double tanhl( long double ) __LIBMLDBL_COMPAT(tanhl);\n\
166   extern long double expl( long double ) __LIBMLDBL_COMPAT(expl);\n\
167   extern long double exp2l( long double ) __LIBMLDBL_COMPAT(exp2l);\n\
168   extern long double expm1l( long double ) __LIBMLDBL_COMPAT(expm1l);\n\
169   extern long double logl( long double ) __LIBMLDBL_COMPAT(logl);\n\
170   extern long double log10l( long double ) __LIBMLDBL_COMPAT(log10l);\n\
171   extern long double log2l( long double ) __LIBMLDBL_COMPAT(log2l);\n\
172   extern long double log1pl( long double ) __LIBMLDBL_COMPAT(log1pl);\n\
173   extern long double logbl( long double ) __LIBMLDBL_COMPAT(logbl);\n\
174   extern long double modfl( long double, long double * ) __LIBMLDBL_COMPAT(modfl);\n\
175   extern long double ldexpl( long double, int ) __LIBMLDBL_COMPAT(ldexpl);\n\
176   extern long double frexpl( long double, int * ) __LIBMLDBL_COMPAT(frexpl);\n\
177   extern int ilogbl( long double ) __LIBMLDBL_COMPAT(ilogbl);\n\
178   extern long double scalbnl( long double, int ) __LIBMLDBL_COMPAT(scalbnl);\n\
179   extern long double scalblnl( long double, long int ) __LIBMLDBL_COMPAT(scalblnl);\n\
180   extern long double fabsl( long double ) __LIBMLDBL_COMPAT(fabsl);\n\
181   extern long double cbrtl( long double ) __LIBMLDBL_COMPAT(cbrtl);\n\
182   extern long double hypotl( long double, long double ) __LIBMLDBL_COMPAT(hypotl);\n\
183   extern long double powl( long double, long double ) __LIBMLDBL_COMPAT(powl);\n\
184   extern long double sqrtl( long double ) __LIBMLDBL_COMPAT(sqrtl);\n\
185   extern long double erfl( long double ) __LIBMLDBL_COMPAT(erfl);\n\
186   extern long double erfcl( long double ) __LIBMLDBL_COMPAT(erfcl);\n\
187   extern long double lgammal( long double ) __LIBMLDBL_COMPAT(lgammal);\n\
188   extern long double tgammal( long double ) __LIBMLDBL_COMPAT(tgammal);\n\
189   extern long double ceill( long double ) __LIBMLDBL_COMPAT(ceill);\n\
190   extern long double floorl( long double ) __LIBMLDBL_COMPAT(floorl);\n\
191   extern long double nearbyintl( long double ) __LIBMLDBL_COMPAT(nearbyintl);\n\
192   extern long double rintl( long double ) __LIBMLDBL_COMPAT(rintl);\n\
193   extern long int lrintl( long double ) __LIBMLDBL_COMPAT(lrintl);\n\
194   extern long long int llrintl( long double ) __LIBMLDBL_COMPAT(llrintl);\n\
195   extern long double roundl( long double ) __LIBMLDBL_COMPAT(roundl);\n\
196   extern long int lroundl( long double ) __LIBMLDBL_COMPAT(lroundl);\n\
197   extern long long int llroundl( long double ) __LIBMLDBL_COMPAT(llroundl);\n\
198   extern long double truncl( long double ) __LIBMLDBL_COMPAT(truncl);\n\
199   extern long double fmodl( long double, long double) __LIBMLDBL_COMPAT(fmodl);\n\
200   extern long double remainderl( long double, long double ) __LIBMLDBL_COMPAT(remainderl);\n\
201   extern long double remquol( long double, long double, int * ) __LIBMLDBL_COMPAT(remquol);\n\
202   extern long double copysignl( long double, long double ) __LIBMLDBL_COMPAT(copysignl);\n\
203   extern long double nanl( const char * ) __LIBMLDBL_COMPAT(nanl);\n\
204   extern long double nextafterl( long double, long double ) __LIBMLDBL_COMPAT(nextafterl);\n\
205   extern long double nexttowardl( long double, long double ) __LIBMLDBL_COMPAT(nexttowardl);\n\
206   extern long double fdiml( long double, long double ) __LIBMLDBL_COMPAT(fdiml);\n\
207   extern long double fmaxl( long double, long double ) __LIBMLDBL_COMPAT(fmaxl);\n\
208   extern long double fminl( long double, long double ) __LIBMLDBL_COMPAT(fminl);\n\
209   extern long double fmal( long double, long double, long double ) __LIBMLDBL_COMPAT(fmal);\n\
210 # ifdef __cplusplus\n\
211    }\n\
212 # endif\n\
213 #endif /* __MATH__ */",
214     (char*)NULL };
215
216 /* * * * * * * * * * * * * * * * * * * * * * * * * *
217  *
218  *  Description of Aab_Darwin7_9_Long_Double_Funcs_2 fix
219  */
220 tSCC zAab_Darwin7_9_Long_Double_Funcs_2Name[] =
221      "AAB_darwin7_9_long_double_funcs_2";
222
223 /*
224  *  File name selection pattern
225  */
226 tSCC zAab_Darwin7_9_Long_Double_Funcs_2List[] =
227   "math.h\0";
228 /*
229  *  Machine/OS name selection pattern
230  */
231 tSCC* apzAab_Darwin7_9_Long_Double_Funcs_2Machs[] = {
232         "*-*-darwin7.9*",
233         (const char*)NULL };
234
235 /*
236  *  content selection pattern - do fix if pattern found
237  */
238 tSCC zAab_Darwin7_9_Long_Double_Funcs_2Select0[] =
239        "#include[ \\t]+\\\"";
240
241 #define    AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_TEST_CT  1
242 static tTestDesc aAab_Darwin7_9_Long_Double_Funcs_2Tests[] = {
243   { TT_EGREP,    zAab_Darwin7_9_Long_Double_Funcs_2Select0, (regex_t*)NULL }, };
244
245 /*
246  *  Fix Command Arguments for Aab_Darwin7_9_Long_Double_Funcs_2
247  */
248 static const char* apzAab_Darwin7_9_Long_Double_Funcs_2Patch[] = {
249     "format",
250     "%1<%2.h>",
251     "([ \\t]*#[ \\t]*include[ \\t]+)\"([a-z0-9/]+)\\.h\"",
252     (char*)NULL };
253
254 /* * * * * * * * * * * * * * * * * * * * * * * * * *
255  *
256  *  Description of Aab_Fd_Zero_Asm_Posix_Types_H fix
257  */
258 tSCC zAab_Fd_Zero_Asm_Posix_Types_HName[] =
259      "AAB_fd_zero_asm_posix_types_h";
260
261 /*
262  *  File name selection pattern
263  */
264 tSCC zAab_Fd_Zero_Asm_Posix_Types_HList[] =
265   "asm/posix_types.h\0";
266 /*
267  *  Machine/OS name selection pattern
268  */
269 tSCC* apzAab_Fd_Zero_Asm_Posix_Types_HMachs[] = {
270         "i[34567]86-*-linux*",
271         (const char*)NULL };
272
273 /*
274  *  content bypass pattern - skip fix if pattern found
275  */
276 tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass0[] =
277        "} while";
278 tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass1[] =
279        "x86_64";
280 tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass2[] =
281        "posix_types_64";
282
283 #define    AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT  3
284 static tTestDesc aAab_Fd_Zero_Asm_Posix_Types_HTests[] = {
285   { TT_NEGREP,   zAab_Fd_Zero_Asm_Posix_Types_HBypass0, (regex_t*)NULL },
286   { TT_NEGREP,   zAab_Fd_Zero_Asm_Posix_Types_HBypass1, (regex_t*)NULL },
287   { TT_NEGREP,   zAab_Fd_Zero_Asm_Posix_Types_HBypass2, (regex_t*)NULL }, };
288
289 /*
290  *  Fix Command Arguments for Aab_Fd_Zero_Asm_Posix_Types_H
291  */
292 static const char* apzAab_Fd_Zero_Asm_Posix_Types_HPatch[] = {
293 "/* This file fixes a bug in the __FD_ZERO macro\n\
294    for older versions of the Linux kernel. */\n\
295 #ifndef _POSIX_TYPES_H_WRAPPER\n\
296 #include <features.h>\n\
297  #include_next <asm/posix_types.h>\n\n\
298 #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
299 #undef __FD_ZERO\n\
300 #define __FD_ZERO(fdsetp) \\\n\
301   do { \\\n\
302     int __d0, __d1; \\\n\
303 __asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
304 : \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
305 : \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
306   \"1\" ((__kernel_fd_set *) (fdsetp)) :\"memory\"); \\\n\
307   } while (0)\n\
308 #endif\n\n\
309 #define _POSIX_TYPES_H_WRAPPER\n\
310 #endif /* _POSIX_TYPES_H_WRAPPER */",
311     (char*)NULL };
312
313 /* * * * * * * * * * * * * * * * * * * * * * * * * *
314  *
315  *  Description of Aab_Fd_Zero_Gnu_Types_H fix
316  */
317 tSCC zAab_Fd_Zero_Gnu_Types_HName[] =
318      "AAB_fd_zero_gnu_types_h";
319
320 /*
321  *  File name selection pattern
322  */
323 tSCC zAab_Fd_Zero_Gnu_Types_HList[] =
324   "gnu/types.h\0";
325 /*
326  *  Machine/OS name selection pattern
327  */
328 tSCC* apzAab_Fd_Zero_Gnu_Types_HMachs[] = {
329         "i[34567]86-*-linux*",
330         (const char*)NULL };
331 #define AAB_FD_ZERO_GNU_TYPES_H_TEST_CT  0
332 #define aAab_Fd_Zero_Gnu_Types_HTests   (tTestDesc*)NULL
333
334 /*
335  *  Fix Command Arguments for Aab_Fd_Zero_Gnu_Types_H
336  */
337 static const char* apzAab_Fd_Zero_Gnu_Types_HPatch[] = {
338 "/* This file fixes a bug in the __FD_ZERO macro present in glibc 1.x. */\n\
339 #ifndef _TYPES_H_WRAPPER\n\
340 #include <features.h>\n\
341 #include_next <gnu/types.h>\n\n\
342 #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
343 #undef __FD_ZERO\n\
344 # define __FD_ZERO(fdsetp) \\\n\
345   do { \\\n\
346     int __d0, __d1; \\\n\
347         __asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
348         : \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
349         : \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
350           \"1\" ((__fd_set *) (fdsetp)) :\"memory\"); \\\n\
351   } while (0)\n\
352 #endif\n\n\
353 #define _TYPES_H_WRAPPER\n\
354 #endif /* _TYPES_H_WRAPPER */",
355     (char*)NULL };
356
357 /* * * * * * * * * * * * * * * * * * * * * * * * * *
358  *
359  *  Description of Aab_Fd_Zero_Selectbits_H fix
360  */
361 tSCC zAab_Fd_Zero_Selectbits_HName[] =
362      "AAB_fd_zero_selectbits_h";
363
364 /*
365  *  File name selection pattern
366  */
367 tSCC zAab_Fd_Zero_Selectbits_HList[] =
368   "selectbits.h\0";
369 /*
370  *  Machine/OS name selection pattern
371  */
372 tSCC* apzAab_Fd_Zero_Selectbits_HMachs[] = {
373         "i[34567]86-*-linux*",
374         (const char*)NULL };
375 #define AAB_FD_ZERO_SELECTBITS_H_TEST_CT  0
376 #define aAab_Fd_Zero_Selectbits_HTests   (tTestDesc*)NULL
377
378 /*
379  *  Fix Command Arguments for Aab_Fd_Zero_Selectbits_H
380  */
381 static const char* apzAab_Fd_Zero_Selectbits_HPatch[] = {
382 "/* This file fixes a bug in the __FD_ZERO macro present in glibc 2.0.x. */\n\
383 #ifndef _SELECTBITS_H_WRAPPER\n\
384   #include <features.h>\n\
385   #include_next <selectbits.h>\n\n\
386   #if defined(__FD_ZERO) && defined(__GLIBC__) \\\\\n\
387   && defined(__GLIBC_MINOR__) && __GLIBC__ == 2 \\\\\n\
388   && __GLIBC_MINOR__ == 0\n\
389      #undef __FD_ZERO\n\
390      #define __FD_ZERO(fdsetp) \\\\\n\
391      do { \\\\\n\
392         int __d0, __d1; \\\\\n\
393       __asm__ __volatile__ (\"cld; rep; stosl\" \\\\\n\
394                         : \"=&c\" (__d0), \"=&D\" (__d1) \\\\\n\
395                         : \"a\" (0), \"0\" (sizeof (__fd_set) \\\\\n\
396                                         / sizeof (__fd_mask)), \\\\\n\
397                           \"1\" ((__fd_mask *) (fdsetp)) \\\\\n\
398                         : \"memory\"); \\\\\n\
399       } while (0)\n\
400   #endif\n\n\
401   #define _SELECTBITS_H_WRAPPER\n\
402 #endif /* _SELECTBITS_H_WRAPPER */",
403     (char*)NULL };
404
405 /* * * * * * * * * * * * * * * * * * * * * * * * * *
406  *
407  *  Description of Aab_Solaris_Sys_Varargs_H fix
408  */
409 tSCC zAab_Solaris_Sys_Varargs_HName[] =
410      "AAB_solaris_sys_varargs_h";
411
412 /*
413  *  File name selection pattern
414  */
415 tSCC zAab_Solaris_Sys_Varargs_HList[] =
416   "sys/varargs.h\0";
417 /*
418  *  Machine/OS name selection pattern
419  */
420 tSCC* apzAab_Solaris_Sys_Varargs_HMachs[] = {
421         "*-*-solaris*",
422         (const char*)NULL };
423 #define AAB_SOLARIS_SYS_VARARGS_H_TEST_CT  0
424 #define aAab_Solaris_Sys_Varargs_HTests   (tTestDesc*)NULL
425
426 /*
427  *  Fix Command Arguments for Aab_Solaris_Sys_Varargs_H
428  */
429 static const char* apzAab_Solaris_Sys_Varargs_HPatch[] = {
430 "#ifdef __STDC__\n\
431   #include <stdarg.h>\n\
432 #else\n\
433   #include <varargs.h>\n\
434 #endif",
435     (char*)NULL };
436
437 /* * * * * * * * * * * * * * * * * * * * * * * * * *
438  *
439  *  Description of Aab_Sun_Memcpy fix
440  */
441 tSCC zAab_Sun_MemcpyName[] =
442      "AAB_sun_memcpy";
443
444 /*
445  *  File name selection pattern
446  */
447 tSCC zAab_Sun_MemcpyList[] =
448   "memory.h\0";
449 /*
450  *  Machine/OS name selection pattern
451  */
452 #define apzAab_Sun_MemcpyMachs (const char**)NULL
453
454 /*
455  *  content selection pattern - do fix if pattern found
456  */
457 tSCC zAab_Sun_MemcpySelect0[] =
458        "/\\*\t@\\(#\\)(head/memory.h\t50.1\t |memory\\.h 1\\.[2-4] 8./../.. SMI; from S5R2 1\\.2\t)\\*/";
459
460 #define    AAB_SUN_MEMCPY_TEST_CT  1
461 static tTestDesc aAab_Sun_MemcpyTests[] = {
462   { TT_EGREP,    zAab_Sun_MemcpySelect0, (regex_t*)NULL }, };
463
464 /*
465  *  Fix Command Arguments for Aab_Sun_Memcpy
466  */
467 static const char* apzAab_Sun_MemcpyPatch[] = {
468 "/* This file was generated by fixincludes */\n\
469 #ifndef __memory_h__\n\
470   #define __memory_h__\n\n\
471   #ifdef __STDC__\n\
472     extern void *memccpy();\n\
473     extern void *memchr();\n\
474     extern void *memcpy();\n\
475     extern void *memset();\n\
476   #else\n\
477     extern char *memccpy();\n\
478     extern char *memchr();\n\
479     extern char *memcpy();\n\
480     extern char *memset();\n\
481   #endif /* __STDC__ */\n\n\
482   extern int memcmp();\n\n\
483 #endif /* __memory_h__ */",
484     (char*)NULL };
485
486 /* * * * * * * * * * * * * * * * * * * * * * * * * *
487  *
488  *  Description of Aix_Complex fix
489  */
490 tSCC zAix_ComplexName[] =
491      "aix_complex";
492
493 /*
494  *  File name selection pattern
495  */
496 tSCC zAix_ComplexList[] =
497   "complex.h\0";
498 /*
499  *  Machine/OS name selection pattern
500  */
501 tSCC* apzAix_ComplexMachs[] = {
502         "*-*-aix*",
503         (const char*)NULL };
504
505 /*
506  *  content selection pattern - do fix if pattern found
507  */
508 tSCC zAix_ComplexSelect0[] =
509        "#define[ \t]_Complex_I[ \t]__I";
510
511 #define    AIX_COMPLEX_TEST_CT  1
512 static tTestDesc aAix_ComplexTests[] = {
513   { TT_EGREP,    zAix_ComplexSelect0, (regex_t*)NULL }, };
514
515 /*
516  *  Fix Command Arguments for Aix_Complex
517  */
518 static const char* apzAix_ComplexPatch[] = {
519     "format",
520     "#define _Complex_I (__extension__ 1.0iF)",
521     (char*)NULL };
522
523 /* * * * * * * * * * * * * * * * * * * * * * * * * *
524  *
525  *  Description of Aix_Malloc fix
526  */
527 tSCC zAix_MallocName[] =
528      "aix_malloc";
529
530 /*
531  *  File name selection pattern
532  */
533 tSCC zAix_MallocList[] =
534   "malloc.h\0";
535 /*
536  *  Machine/OS name selection pattern
537  */
538 tSCC* apzAix_MallocMachs[] = {
539         "*-*-aix*",
540         (const char*)NULL };
541
542 /*
543  *  content selection pattern - do fix if pattern found
544  */
545 tSCC zAix_MallocSelect0[] =
546        "#ifdef __cplusplus";
547
548 #define    AIX_MALLOC_TEST_CT  1
549 static tTestDesc aAix_MallocTests[] = {
550   { TT_EGREP,    zAix_MallocSelect0, (regex_t*)NULL }, };
551
552 /*
553  *  Fix Command Arguments for Aix_Malloc
554  */
555 static const char* apzAix_MallocPatch[] = {
556     "format",
557     "#if (defined(__cplusplus) && defined(__IBMCPP__))",
558     (char*)NULL };
559
560 /* * * * * * * * * * * * * * * * * * * * * * * * * *
561  *
562  *  Description of Aix_Net_If_Arp fix
563  */
564 tSCC zAix_Net_If_ArpName[] =
565      "aix_net_if_arp";
566
567 /*
568  *  File name selection pattern
569  */
570 tSCC zAix_Net_If_ArpList[] =
571   "net/if_arp.h\0";
572 /*
573  *  Machine/OS name selection pattern
574  */
575 tSCC* apzAix_Net_If_ArpMachs[] = {
576         "*-*-aix*",
577         (const char*)NULL };
578
579 /*
580  *  content selection pattern - do fix if pattern found
581  */
582 tSCC zAix_Net_If_ArpSelect0[] =
583        "^struct  fc_softc \\{";
584
585 #define    AIX_NET_IF_ARP_TEST_CT  1
586 static tTestDesc aAix_Net_If_ArpTests[] = {
587   { TT_EGREP,    zAix_Net_If_ArpSelect0, (regex_t*)NULL }, };
588
589 /*
590  *  Fix Command Arguments for Aix_Net_If_Arp
591  */
592 static const char* apzAix_Net_If_ArpPatch[] = {
593     "format",
594     "typedef struct _fc_softc {",
595     (char*)NULL };
596
597 /* * * * * * * * * * * * * * * * * * * * * * * * * *
598  *
599  *  Description of Aix_Once_Init_1 fix
600  */
601 tSCC zAix_Once_Init_1Name[] =
602      "aix_once_init_1";
603
604 /*
605  *  File name selection pattern
606  */
607 tSCC zAix_Once_Init_1List[] =
608   "pthread.h\0";
609 /*
610  *  Machine/OS name selection pattern
611  */
612 tSCC* apzAix_Once_Init_1Machs[] = {
613         "*-*-aix*",
614         (const char*)NULL };
615
616 /*
617  *  content selection pattern - do fix if pattern found
618  */
619 tSCC zAix_Once_Init_1Select0[] =
620        "#define[ \t]PTHREAD_ONCE_INIT \\\\\n\
621 \\{ \\\\\n";
622
623 #define    AIX_ONCE_INIT_1_TEST_CT  1
624 static tTestDesc aAix_Once_Init_1Tests[] = {
625   { TT_EGREP,    zAix_Once_Init_1Select0, (regex_t*)NULL }, };
626
627 /*
628  *  Fix Command Arguments for Aix_Once_Init_1
629  */
630 static const char* apzAix_Once_Init_1Patch[] = {
631     "format",
632     "#define PTHREAD_ONCE_INIT \\\n\
633 {{ \\\n",
634     (char*)NULL };
635
636 /* * * * * * * * * * * * * * * * * * * * * * * * * *
637  *
638  *  Description of Aix_Once_Init_2 fix
639  */
640 tSCC zAix_Once_Init_2Name[] =
641      "aix_once_init_2";
642
643 /*
644  *  File name selection pattern
645  */
646 tSCC zAix_Once_Init_2List[] =
647   "pthread.h\0";
648 /*
649  *  Machine/OS name selection pattern
650  */
651 tSCC* apzAix_Once_Init_2Machs[] = {
652         "*-*-aix*",
653         (const char*)NULL };
654
655 /*
656  *  content selection pattern - do fix if pattern found
657  */
658 tSCC zAix_Once_Init_2Select0[] =
659        "[ \t]0 \\\\\n\
660 \\}\n";
661
662 #define    AIX_ONCE_INIT_2_TEST_CT  1
663 static tTestDesc aAix_Once_Init_2Tests[] = {
664   { TT_EGREP,    zAix_Once_Init_2Select0, (regex_t*)NULL }, };
665
666 /*
667  *  Fix Command Arguments for Aix_Once_Init_2
668  */
669 static const char* apzAix_Once_Init_2Patch[] = {
670     "format",
671     "\t0 \\\n\
672 }}\n",
673     (char*)NULL };
674
675 /* * * * * * * * * * * * * * * * * * * * * * * * * *
676  *
677  *  Description of Aix_Pthread fix
678  */
679 tSCC zAix_PthreadName[] =
680      "aix_pthread";
681
682 /*
683  *  File name selection pattern
684  */
685 tSCC zAix_PthreadList[] =
686   "pthread.h\0";
687 /*
688  *  Machine/OS name selection pattern
689  */
690 #define apzAix_PthreadMachs (const char**)NULL
691
692 /*
693  *  content selection pattern - do fix if pattern found
694  */
695 tSCC zAix_PthreadSelect0[] =
696        "(#define [A-Za-z_0-9]+)(\\\\\n\
697 [^A-Za-z_0-9 \t\n\
698 (])";
699
700 #define    AIX_PTHREAD_TEST_CT  1
701 static tTestDesc aAix_PthreadTests[] = {
702   { TT_EGREP,    zAix_PthreadSelect0, (regex_t*)NULL }, };
703
704 /*
705  *  Fix Command Arguments for Aix_Pthread
706  */
707 static const char* apzAix_PthreadPatch[] = {
708     "format",
709     "%1 %2",
710     (char*)NULL };
711
712 /* * * * * * * * * * * * * * * * * * * * * * * * * *
713  *
714  *  Description of Aix_Stdint_1 fix
715  */
716 tSCC zAix_Stdint_1Name[] =
717      "aix_stdint_1";
718
719 /*
720  *  File name selection pattern
721  */
722 tSCC zAix_Stdint_1List[] =
723   "stdint-aix.h\0stdint.h\0";
724 /*
725  *  Machine/OS name selection pattern
726  */
727 tSCC* apzAix_Stdint_1Machs[] = {
728         "*-*-aix*",
729         (const char*)NULL };
730
731 /*
732  *  content selection pattern - do fix if pattern found
733  */
734 tSCC zAix_Stdint_1Select0[] =
735        "#define[ \t]UINT8_MAX[ \t]\\(255U\\)\n\
736 #define[ \t]UINT16_MAX[ \t]\\(65535U\\)";
737
738 #define    AIX_STDINT_1_TEST_CT  1
739 static tTestDesc aAix_Stdint_1Tests[] = {
740   { TT_EGREP,    zAix_Stdint_1Select0, (regex_t*)NULL }, };
741
742 /*
743  *  Fix Command Arguments for Aix_Stdint_1
744  */
745 static const char* apzAix_Stdint_1Patch[] = {
746     "format",
747     "#define UINT8_MAX\t(255)\n\
748 #define UINT16_MAX\t(65535)",
749     (char*)NULL };
750
751 /* * * * * * * * * * * * * * * * * * * * * * * * * *
752  *
753  *  Description of Aix_Stdint_2 fix
754  */
755 tSCC zAix_Stdint_2Name[] =
756      "aix_stdint_2";
757
758 /*
759  *  File name selection pattern
760  */
761 tSCC zAix_Stdint_2List[] =
762   "stdint-aix.h\0stdint.h\0";
763 /*
764  *  Machine/OS name selection pattern
765  */
766 tSCC* apzAix_Stdint_2Machs[] = {
767         "*-*-aix*",
768         (const char*)NULL };
769
770 /*
771  *  content selection pattern - do fix if pattern found
772  */
773 tSCC zAix_Stdint_2Select0[] =
774        "#define[ \t]INTPTR_MIN[ \t]INT64_MIN\n\
775 #define[ \t]INTPTR_MAX[ \t]INT64_MAX\n\
776 #define[ \t]UINTPTR_MAX[ \t]UINT64_MAX\n\
777 #else\n\
778 #define[ \t]INTPTR_MIN[ \t]INT32_MIN\n\
779 #define[ \t]INTPTR_MAX[ \t]INT32_MAX\n\
780 #define[ \t]UINTPTR_MAX[ \t]UINT32_MAX";
781
782 #define    AIX_STDINT_2_TEST_CT  1
783 static tTestDesc aAix_Stdint_2Tests[] = {
784   { TT_EGREP,    zAix_Stdint_2Select0, (regex_t*)NULL }, };
785
786 /*
787  *  Fix Command Arguments for Aix_Stdint_2
788  */
789 static const char* apzAix_Stdint_2Patch[] = {
790     "format",
791     "#define INTPTR_MIN\t(-INTPTR_MAX-1)\n\
792 #define INTPTR_MAX\t9223372036854775807L\n\
793 #define UINTPTR_MAX\t18446744073709551615UL\n\
794 #else\n\
795 #define INTPTR_MIN\t(-INTPTR_MAX-1)\n\
796 #define INTPTR_MAX\t2147483647L\n\
797 #define UINTPTR_MAX\t4294967295UL",
798     (char*)NULL };
799
800 /* * * * * * * * * * * * * * * * * * * * * * * * * *
801  *
802  *  Description of Aix_Stdint_3 fix
803  */
804 tSCC zAix_Stdint_3Name[] =
805      "aix_stdint_3";
806
807 /*
808  *  File name selection pattern
809  */
810 tSCC zAix_Stdint_3List[] =
811   "stdint-aix.h\0stdint.h\0";
812 /*
813  *  Machine/OS name selection pattern
814  */
815 tSCC* apzAix_Stdint_3Machs[] = {
816         "*-*-aix*",
817         (const char*)NULL };
818
819 /*
820  *  content selection pattern - do fix if pattern found
821  */
822 tSCC zAix_Stdint_3Select0[] =
823        "#define[ \t]PTRDIFF_MIN[ \t]INT64_MIN\n\
824 #define[ \t]PTRDIFF_MAX[ \t]INT64_MAX\n\
825 #else\n\
826 #define[ \t]PTRDIFF_MIN[ \t]*INT32_MIN\n\
827 #define[ \t]PTRDIFF_MAX[ \t]*INT32_MAX";
828
829 #define    AIX_STDINT_3_TEST_CT  1
830 static tTestDesc aAix_Stdint_3Tests[] = {
831   { TT_EGREP,    zAix_Stdint_3Select0, (regex_t*)NULL }, };
832
833 /*
834  *  Fix Command Arguments for Aix_Stdint_3
835  */
836 static const char* apzAix_Stdint_3Patch[] = {
837     "format",
838     "#define PTRDIFF_MIN\t(-9223372036854775807L - 1)\n\
839 #define PTRDIFF_MAX\t9223372036854775807L\n\
840 #else\n\
841 #define PTRDIFF_MIN\t(-2147483647L - 1)\n\
842 #define PTRDIFF_MAX\t2147483647L",
843     (char*)NULL };
844
845 /* * * * * * * * * * * * * * * * * * * * * * * * * *
846  *
847  *  Description of Aix_Stdint_4 fix
848  */
849 tSCC zAix_Stdint_4Name[] =
850      "aix_stdint_4";
851
852 /*
853  *  File name selection pattern
854  */
855 tSCC zAix_Stdint_4List[] =
856   "stdint-aix.h\0stdint.h\0";
857 /*
858  *  Machine/OS name selection pattern
859  */
860 tSCC* apzAix_Stdint_4Machs[] = {
861         "*-*-aix*",
862         (const char*)NULL };
863
864 /*
865  *  content selection pattern - do fix if pattern found
866  */
867 tSCC zAix_Stdint_4Select0[] =
868        "#define[ \t]SIZE_MAX[ \t]UINT64_MAX\n\
869 #else\n\
870 #define[ \t]SIZE_MAX[ \t]*UINT32_MAX";
871
872 #define    AIX_STDINT_4_TEST_CT  1
873 static tTestDesc aAix_Stdint_4Tests[] = {
874   { TT_EGREP,    zAix_Stdint_4Select0, (regex_t*)NULL }, };
875
876 /*
877  *  Fix Command Arguments for Aix_Stdint_4
878  */
879 static const char* apzAix_Stdint_4Patch[] = {
880     "format",
881     "#define SIZE_MAX\t18446744073709551615UL\n\
882 #else\n\
883 #define SIZE_MAX\t4294967295UL",
884     (char*)NULL };
885
886 /* * * * * * * * * * * * * * * * * * * * * * * * * *
887  *
888  *  Description of Aix_Stdint_5 fix
889  */
890 tSCC zAix_Stdint_5Name[] =
891      "aix_stdint_5";
892
893 /*
894  *  File name selection pattern
895  */
896 tSCC zAix_Stdint_5List[] =
897   "stdint-aix.h\0stdint.h\0";
898 /*
899  *  Machine/OS name selection pattern
900  */
901 tSCC* apzAix_Stdint_5Machs[] = {
902         "*-*-aix*",
903         (const char*)NULL };
904
905 /*
906  *  content selection pattern - do fix if pattern found
907  */
908 tSCC zAix_Stdint_5Select0[] =
909        "#define[ \t]UINT8_C\\(c\\)[ \t]__CONCAT__\\(c,U\\)\n\
910 #define[ \t]UINT16_C\\(c\\)[ \t]__CONCAT__\\(c,U\\)";
911
912 #define    AIX_STDINT_5_TEST_CT  1
913 static tTestDesc aAix_Stdint_5Tests[] = {
914   { TT_EGREP,    zAix_Stdint_5Select0, (regex_t*)NULL }, };
915
916 /*
917  *  Fix Command Arguments for Aix_Stdint_5
918  */
919 static const char* apzAix_Stdint_5Patch[] = {
920     "format",
921     "#define UINT8_C(c)\tc\n\
922 #define UINT16_C(c)\tc",
923     (char*)NULL };
924
925 /* * * * * * * * * * * * * * * * * * * * * * * * * *
926  *
927  *  Description of Aix_Sysmachine fix
928  */
929 tSCC zAix_SysmachineName[] =
930      "aix_sysmachine";
931
932 /*
933  *  File name selection pattern
934  */
935 tSCC zAix_SysmachineList[] =
936   "sys/machine.h\0";
937 /*
938  *  Machine/OS name selection pattern
939  */
940 #define apzAix_SysmachineMachs (const char**)NULL
941
942 /*
943  *  content selection pattern - do fix if pattern found
944  */
945 tSCC zAix_SysmachineSelect0[] =
946        "\\\\ +\n";
947
948 #define    AIX_SYSMACHINE_TEST_CT  1
949 static tTestDesc aAix_SysmachineTests[] = {
950   { TT_EGREP,    zAix_SysmachineSelect0, (regex_t*)NULL }, };
951
952 /*
953  *  Fix Command Arguments for Aix_Sysmachine
954  */
955 static const char* apzAix_SysmachinePatch[] = {
956     "format",
957     "\\\n",
958     (char*)NULL };
959
960 /* * * * * * * * * * * * * * * * * * * * * * * * * *
961  *
962  *  Description of Aix_Syswait_2 fix
963  */
964 tSCC zAix_Syswait_2Name[] =
965      "aix_syswait_2";
966
967 /*
968  *  File name selection pattern
969  */
970 tSCC zAix_Syswait_2List[] =
971   "sys/wait.h\0";
972 /*
973  *  Machine/OS name selection pattern
974  */
975 #define apzAix_Syswait_2Machs (const char**)NULL
976
977 /*
978  *  content selection pattern - do fix if pattern found
979  */
980 tSCC zAix_Syswait_2Select0[] =
981        "\\? (\\(\\(\\(\\(unsigned[^)]*\\)[^)]*\\) >> [^)]*\\) \\& 0xff\\) : -1)";
982
983 #define    AIX_SYSWAIT_2_TEST_CT  1
984 static tTestDesc aAix_Syswait_2Tests[] = {
985   { TT_EGREP,    zAix_Syswait_2Select0, (regex_t*)NULL }, };
986
987 /*
988  *  Fix Command Arguments for Aix_Syswait_2
989  */
990 static const char* apzAix_Syswait_2Patch[] = {
991     "format",
992     "? (int)%1",
993     (char*)NULL };
994
995 /* * * * * * * * * * * * * * * * * * * * * * * * * *
996  *
997  *  Description of Aix_Volatile fix
998  */
999 tSCC zAix_VolatileName[] =
1000      "aix_volatile";
1001
1002 /*
1003  *  File name selection pattern
1004  */
1005 tSCC zAix_VolatileList[] =
1006   "sys/signal.h\0";
1007 /*
1008  *  Machine/OS name selection pattern
1009  */
1010 #define apzAix_VolatileMachs (const char**)NULL
1011
1012 /*
1013  *  content selection pattern - do fix if pattern found
1014  */
1015 tSCC zAix_VolatileSelect0[] =
1016        "typedef volatile int sig_atomic_t";
1017
1018 #define    AIX_VOLATILE_TEST_CT  1
1019 static tTestDesc aAix_VolatileTests[] = {
1020   { TT_EGREP,    zAix_VolatileSelect0, (regex_t*)NULL }, };
1021
1022 /*
1023  *  Fix Command Arguments for Aix_Volatile
1024  */
1025 static const char* apzAix_VolatilePatch[] = {
1026     "format",
1027     "typedef int sig_atomic_t",
1028     (char*)NULL };
1029
1030 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1031  *
1032  *  Description of Alpha___Assert fix
1033  */
1034 tSCC zAlpha___AssertName[] =
1035      "alpha___assert";
1036
1037 /*
1038  *  File name selection pattern
1039  */
1040 tSCC zAlpha___AssertList[] =
1041   "assert.h\0";
1042 /*
1043  *  Machine/OS name selection pattern
1044  */
1045 #define apzAlpha___AssertMachs (const char**)NULL
1046
1047 /*
1048  *  content selection pattern - do fix if pattern found
1049  */
1050 tSCC zAlpha___AssertSelect0[] =
1051        "__assert\\(char \\*, char \\*, int\\)";
1052
1053 #define    ALPHA___ASSERT_TEST_CT  1
1054 static tTestDesc aAlpha___AssertTests[] = {
1055   { TT_EGREP,    zAlpha___AssertSelect0, (regex_t*)NULL }, };
1056
1057 /*
1058  *  Fix Command Arguments for Alpha___Assert
1059  */
1060 static const char* apzAlpha___AssertPatch[] = {
1061     "format",
1062     "__assert(const char *, const char *, int)",
1063     (char*)NULL };
1064
1065 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1066  *
1067  *  Description of Alpha___Extern_Prefix fix
1068  */
1069 tSCC zAlpha___Extern_PrefixName[] =
1070      "alpha___extern_prefix";
1071
1072 /*
1073  *  File name selection pattern
1074  */
1075 #define zAlpha___Extern_PrefixList (char*)NULL
1076 /*
1077  *  Machine/OS name selection pattern
1078  */
1079 tSCC* apzAlpha___Extern_PrefixMachs[] = {
1080         "alpha*-dec-osf*",
1081         (const char*)NULL };
1082
1083 /*
1084  *  content selection pattern - do fix if pattern found
1085  */
1086 tSCC zAlpha___Extern_PrefixSelect0[] =
1087        "(.*)(defined\\(__DECC\\)|def[ \t]*__DECC)[ \t]*\n\
1088 (#[ \t]*pragma[ \t]*extern_prefix.*)";
1089
1090 #define    ALPHA___EXTERN_PREFIX_TEST_CT  1
1091 static tTestDesc aAlpha___Extern_PrefixTests[] = {
1092   { TT_EGREP,    zAlpha___Extern_PrefixSelect0, (regex_t*)NULL }, };
1093
1094 /*
1095  *  Fix Command Arguments for Alpha___Extern_Prefix
1096  */
1097 static const char* apzAlpha___Extern_PrefixPatch[] = {
1098     "format",
1099     "%1 (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))\n\
1100 %3",
1101     (char*)NULL };
1102
1103 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1104  *
1105  *  Description of Alpha___Extern_Prefix_Standards fix
1106  */
1107 tSCC zAlpha___Extern_Prefix_StandardsName[] =
1108      "alpha___extern_prefix_standards";
1109
1110 /*
1111  *  File name selection pattern
1112  */
1113 tSCC zAlpha___Extern_Prefix_StandardsList[] =
1114   "standards.h\0";
1115 /*
1116  *  Machine/OS name selection pattern
1117  */
1118 tSCC* apzAlpha___Extern_Prefix_StandardsMachs[] = {
1119         "alpha*-dec-osf*",
1120         (const char*)NULL };
1121
1122 /*
1123  *  content selection pattern - do fix if pattern found
1124  */
1125 tSCC zAlpha___Extern_Prefix_StandardsSelect0[] =
1126        ".*!defined\\(_LIBC_POLLUTION_H_\\) && !defined\\(__DECC\\)";
1127
1128 #define    ALPHA___EXTERN_PREFIX_STANDARDS_TEST_CT  1
1129 static tTestDesc aAlpha___Extern_Prefix_StandardsTests[] = {
1130   { TT_EGREP,    zAlpha___Extern_Prefix_StandardsSelect0, (regex_t*)NULL }, };
1131
1132 /*
1133  *  Fix Command Arguments for Alpha___Extern_Prefix_Standards
1134  */
1135 static const char* apzAlpha___Extern_Prefix_StandardsPatch[] = {
1136     "format",
1137     "%0 && !defined(__PRAGMA_EXTERN_PREFIX)",
1138     (char*)NULL };
1139
1140 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1141  *
1142  *  Description of Alpha___Extern_Prefix_Sys_Stat fix
1143  */
1144 tSCC zAlpha___Extern_Prefix_Sys_StatName[] =
1145      "alpha___extern_prefix_sys_stat";
1146
1147 /*
1148  *  File name selection pattern
1149  */
1150 tSCC zAlpha___Extern_Prefix_Sys_StatList[] =
1151   "sys/stat.h\0sys/mount.h\0";
1152 /*
1153  *  Machine/OS name selection pattern
1154  */
1155 tSCC* apzAlpha___Extern_Prefix_Sys_StatMachs[] = {
1156         "alpha*-dec-osf5*",
1157         (const char*)NULL };
1158
1159 /*
1160  *  content selection pattern - do fix if pattern found
1161  */
1162 tSCC zAlpha___Extern_Prefix_Sys_StatSelect0[] =
1163        "#[ \t]*if[ \t]*defined\\(__DECC\\)";
1164
1165 #define    ALPHA___EXTERN_PREFIX_SYS_STAT_TEST_CT  1
1166 static tTestDesc aAlpha___Extern_Prefix_Sys_StatTests[] = {
1167   { TT_EGREP,    zAlpha___Extern_Prefix_Sys_StatSelect0, (regex_t*)NULL }, };
1168
1169 /*
1170  *  Fix Command Arguments for Alpha___Extern_Prefix_Sys_Stat
1171  */
1172 static const char* apzAlpha___Extern_Prefix_Sys_StatPatch[] = {
1173     "format",
1174     "%0 || defined(__PRAGMA_EXTERN_PREFIX)",
1175     (char*)NULL };
1176
1177 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1178  *
1179  *  Description of Alpha_Assert fix
1180  */
1181 tSCC zAlpha_AssertName[] =
1182      "alpha_assert";
1183
1184 /*
1185  *  File name selection pattern
1186  */
1187 tSCC zAlpha_AssertList[] =
1188   "assert.h\0";
1189 /*
1190  *  Machine/OS name selection pattern
1191  */
1192 #define apzAlpha_AssertMachs (const char**)NULL
1193
1194 /*
1195  *  content selection pattern - do fix if pattern found
1196  */
1197 tSCC zAlpha_AssertSelect0[] =
1198        "(#[ \t]*define assert\\(EX\\).*)\\(\\(int\\) \\(EX\\)\\)";
1199
1200 #define    ALPHA_ASSERT_TEST_CT  1
1201 static tTestDesc aAlpha_AssertTests[] = {
1202   { TT_EGREP,    zAlpha_AssertSelect0, (regex_t*)NULL }, };
1203
1204 /*
1205  *  Fix Command Arguments for Alpha_Assert
1206  */
1207 static const char* apzAlpha_AssertPatch[] = {
1208     "format",
1209     "%1(EX)",
1210     (char*)NULL };
1211
1212 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1213  *
1214  *  Description of Alpha_Bad_Lval fix
1215  */
1216 tSCC zAlpha_Bad_LvalName[] =
1217      "alpha_bad_lval";
1218
1219 /*
1220  *  File name selection pattern
1221  */
1222 #define zAlpha_Bad_LvalList (char*)NULL
1223 /*
1224  *  Machine/OS name selection pattern
1225  */
1226 tSCC* apzAlpha_Bad_LvalMachs[] = {
1227         "alpha*-dec-osf*",
1228         (const char*)NULL };
1229
1230 /*
1231  *  content selection pattern - do fix if pattern found
1232  */
1233 tSCC zAlpha_Bad_LvalSelect0[] =
1234        "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
1235
1236 #define    ALPHA_BAD_LVAL_TEST_CT  1
1237 static tTestDesc aAlpha_Bad_LvalTests[] = {
1238   { TT_EGREP,    zAlpha_Bad_LvalSelect0, (regex_t*)NULL }, };
1239
1240 /*
1241  *  Fix Command Arguments for Alpha_Bad_Lval
1242  */
1243 static const char* apzAlpha_Bad_LvalPatch[] = { sed_cmd_z,
1244     "-e", "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
1245     (char*)NULL };
1246
1247 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1248  *
1249  *  Description of Alpha_Getopt fix
1250  */
1251 tSCC zAlpha_GetoptName[] =
1252      "alpha_getopt";
1253
1254 /*
1255  *  File name selection pattern
1256  */
1257 tSCC zAlpha_GetoptList[] =
1258   "stdio.h\0stdlib.h\0";
1259 /*
1260  *  Machine/OS name selection pattern
1261  */
1262 #define apzAlpha_GetoptMachs (const char**)NULL
1263
1264 /*
1265  *  content selection pattern - do fix if pattern found
1266  */
1267 tSCC zAlpha_GetoptSelect0[] =
1268        "getopt\\(int, char \\*\\[\\], *char \\*\\)";
1269
1270 #define    ALPHA_GETOPT_TEST_CT  1
1271 static tTestDesc aAlpha_GetoptTests[] = {
1272   { TT_EGREP,    zAlpha_GetoptSelect0, (regex_t*)NULL }, };
1273
1274 /*
1275  *  Fix Command Arguments for Alpha_Getopt
1276  */
1277 static const char* apzAlpha_GetoptPatch[] = {
1278     "format",
1279     "getopt(int, char *const[], const char *)",
1280     (char*)NULL };
1281
1282 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1283  *
1284  *  Description of Alpha_If_Semicolon fix
1285  */
1286 tSCC zAlpha_If_SemicolonName[] =
1287      "alpha_if_semicolon";
1288
1289 /*
1290  *  File name selection pattern
1291  */
1292 tSCC zAlpha_If_SemicolonList[] =
1293   "net/if.h\0";
1294 /*
1295  *  Machine/OS name selection pattern
1296  */
1297 #define apzAlpha_If_SemicolonMachs (const char**)NULL
1298
1299 /*
1300  *  content selection pattern - do fix if pattern found
1301  */
1302 tSCC zAlpha_If_SemicolonSelect0[] =
1303        "struct[ \t]+sockaddr[ \t]+vmif_paddr[ \t]+/\\*";
1304
1305 #define    ALPHA_IF_SEMICOLON_TEST_CT  1
1306 static tTestDesc aAlpha_If_SemicolonTests[] = {
1307   { TT_EGREP,    zAlpha_If_SemicolonSelect0, (regex_t*)NULL }, };
1308
1309 /*
1310  *  Fix Command Arguments for Alpha_If_Semicolon
1311  */
1312 static const char* apzAlpha_If_SemicolonPatch[] = {
1313     "format",
1314     "struct sockaddr vmif_paddr;\t/*",
1315     (char*)NULL };
1316
1317 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1318  *
1319  *  Description of Alpha_Parens fix
1320  */
1321 tSCC zAlpha_ParensName[] =
1322      "alpha_parens";
1323
1324 /*
1325  *  File name selection pattern
1326  */
1327 tSCC zAlpha_ParensList[] =
1328   "sym.h\0";
1329 /*
1330  *  Machine/OS name selection pattern
1331  */
1332 #define apzAlpha_ParensMachs (const char**)NULL
1333
1334 /*
1335  *  content selection pattern - do fix if pattern found
1336  */
1337 tSCC zAlpha_ParensSelect0[] =
1338        "#ifndef\\(__mips64\\)";
1339
1340 #define    ALPHA_PARENS_TEST_CT  1
1341 static tTestDesc aAlpha_ParensTests[] = {
1342   { TT_EGREP,    zAlpha_ParensSelect0, (regex_t*)NULL }, };
1343
1344 /*
1345  *  Fix Command Arguments for Alpha_Parens
1346  */
1347 static const char* apzAlpha_ParensPatch[] = {
1348     "format",
1349     "#ifndef __mips64",
1350     (char*)NULL };
1351
1352 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1353  *
1354  *  Description of Alpha_Pthread fix
1355  */
1356 tSCC zAlpha_PthreadName[] =
1357      "alpha_pthread";
1358
1359 /*
1360  *  File name selection pattern
1361  */
1362 tSCC zAlpha_PthreadList[] =
1363   "pthread.h\0";
1364 /*
1365  *  Machine/OS name selection pattern
1366  */
1367 tSCC* apzAlpha_PthreadMachs[] = {
1368         "alpha*-dec-osf*",
1369         (const char*)NULL };
1370
1371 /*
1372  *  content selection pattern - do fix if pattern found
1373  */
1374 tSCC zAlpha_PthreadSelect0[] =
1375        "((#[ \t]*if)([ \t]*defined[ \t]*\\(_PTHREAD_ENV_DECC\\)|def _PTHREAD_ENV_DECC)(.*))\n\
1376 (#[ \t]*define _PTHREAD_USE_PTDNAM_)";
1377
1378 #define    ALPHA_PTHREAD_TEST_CT  1
1379 static tTestDesc aAlpha_PthreadTests[] = {
1380   { TT_EGREP,    zAlpha_PthreadSelect0, (regex_t*)NULL }, };
1381
1382 /*
1383  *  Fix Command Arguments for Alpha_Pthread
1384  */
1385 static const char* apzAlpha_PthreadPatch[] = {
1386     "format",
1387     "%2 defined (_PTHREAD_ENV_DECC)%4 || defined (__PRAGMA_EXTERN_PREFIX)\n\
1388 %5",
1389     (char*)NULL };
1390
1391 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1392  *
1393  *  Description of Alpha_Pthread_Gcc fix
1394  */
1395 tSCC zAlpha_Pthread_GccName[] =
1396      "alpha_pthread_gcc";
1397
1398 /*
1399  *  File name selection pattern
1400  */
1401 tSCC zAlpha_Pthread_GccList[] =
1402   "pthread.h\0";
1403 /*
1404  *  Machine/OS name selection pattern
1405  */
1406 tSCC* apzAlpha_Pthread_GccMachs[] = {
1407         "alpha*-dec-osf*",
1408         (const char*)NULL };
1409
1410 /*
1411  *  content selection pattern - do fix if pattern found
1412  */
1413 tSCC zAlpha_Pthread_GccSelect0[] =
1414        "#else\n\
1415 # error <pthread.h>: unrecognized compiler.";
1416
1417 #define    ALPHA_PTHREAD_GCC_TEST_CT  1
1418 static tTestDesc aAlpha_Pthread_GccTests[] = {
1419   { TT_EGREP,    zAlpha_Pthread_GccSelect0, (regex_t*)NULL }, };
1420
1421 /*
1422  *  Fix Command Arguments for Alpha_Pthread_Gcc
1423  */
1424 static const char* apzAlpha_Pthread_GccPatch[] = {
1425     "format",
1426     "#elif defined (__GNUC__)\n\
1427 # define _PTHREAD_ENV_GCC\n\
1428 %0",
1429     (char*)NULL };
1430
1431 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1432  *
1433  *  Description of Alpha_Pthread_Init fix
1434  */
1435 tSCC zAlpha_Pthread_InitName[] =
1436      "alpha_pthread_init";
1437
1438 /*
1439  *  File name selection pattern
1440  */
1441 tSCC zAlpha_Pthread_InitList[] =
1442   "pthread.h\0";
1443 /*
1444  *  Machine/OS name selection pattern
1445  */
1446 tSCC* apzAlpha_Pthread_InitMachs[] = {
1447         "alpha*-dec-osf*",
1448         (const char*)NULL };
1449
1450 /*
1451  *  content selection pattern - do fix if pattern found
1452  */
1453 tSCC zAlpha_Pthread_InitSelect0[] =
1454        " \\* @\\(#\\).RCSfile: pthread\\.h,v \\$ .Revision: 1\\.1\\.33\\.21 \\$ \\(DEC\\) .Date: 2000/08/15 15:30:13 \\$";
1455
1456 #define    ALPHA_PTHREAD_INIT_TEST_CT  1
1457 static tTestDesc aAlpha_Pthread_InitTests[] = {
1458   { TT_EGREP,    zAlpha_Pthread_InitSelect0, (regex_t*)NULL }, };
1459
1460 /*
1461  *  Fix Command Arguments for Alpha_Pthread_Init
1462  */
1463 static const char* apzAlpha_Pthread_InitPatch[] = { sed_cmd_z,
1464     "-e", "s@MVALID\\(.*\\)A}@MVALID\\1A, 0, 0, 0, 0, 0, 0 }@\n\
1465 s@MVALID\\(.*\\)_}@MVALID\\1_, 0, 0, 0, 0 }@\n\
1466 s@CVALID\\(.*\\)A}@CVALID\\1A, 0, 0, 0, 0 }@\n\
1467 s@CVALID\\(.*\\)_}@CVALID\\1_, 0, 0 }@\n\
1468 s@WVALID\\(.*\\)A}@WVALID\\1A, 0, 0, 0, 0, 0, 0, 0, 0, 0 }@\n\
1469 s@WVALID\\(.*\\)_}@WVALID\\1_, 0, 0, 0, 0, 0, 0, 0 }@\n",
1470     (char*)NULL };
1471
1472 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1473  *
1474  *  Description of Alpha_Sbrk fix
1475  */
1476 tSCC zAlpha_SbrkName[] =
1477      "alpha_sbrk";
1478
1479 /*
1480  *  File name selection pattern
1481  */
1482 tSCC zAlpha_SbrkList[] =
1483   "unistd.h\0";
1484 /*
1485  *  Machine/OS name selection pattern
1486  */
1487 #define apzAlpha_SbrkMachs (const char**)NULL
1488
1489 /*
1490  *  content selection pattern - do fix if pattern found
1491  */
1492 tSCC zAlpha_SbrkSelect0[] =
1493        "char[ \t]*\\*[\t ]*sbrk[ \t]*\\(";
1494
1495 #define    ALPHA_SBRK_TEST_CT  1
1496 static tTestDesc aAlpha_SbrkTests[] = {
1497   { TT_EGREP,    zAlpha_SbrkSelect0, (regex_t*)NULL }, };
1498
1499 /*
1500  *  Fix Command Arguments for Alpha_Sbrk
1501  */
1502 static const char* apzAlpha_SbrkPatch[] = {
1503     "format",
1504     "void *sbrk(",
1505     (char*)NULL };
1506
1507 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1508  *
1509  *  Description of Avoid_Bool_Define fix
1510  */
1511 tSCC zAvoid_Bool_DefineName[] =
1512      "avoid_bool_define";
1513
1514 /*
1515  *  File name selection pattern
1516  */
1517 tSCC zAvoid_Bool_DefineList[] =
1518   "curses.h\0curses_colr/curses.h\0term.h\0tinfo.h\0";
1519 /*
1520  *  Machine/OS name selection pattern
1521  */
1522 #define apzAvoid_Bool_DefineMachs (const char**)NULL
1523
1524 /*
1525  *  content selection pattern - do fix if pattern found
1526  */
1527 tSCC zAvoid_Bool_DefineSelect0[] =
1528        "#[ \t]*define[ \t]+bool[ \t]";
1529
1530 /*
1531  *  content bypass pattern - skip fix if pattern found
1532  */
1533 tSCC zAvoid_Bool_DefineBypass0[] =
1534        "__cplusplus";
1535
1536 #define    AVOID_BOOL_DEFINE_TEST_CT  2
1537 static tTestDesc aAvoid_Bool_DefineTests[] = {
1538   { TT_NEGREP,   zAvoid_Bool_DefineBypass0, (regex_t*)NULL },
1539   { TT_EGREP,    zAvoid_Bool_DefineSelect0, (regex_t*)NULL }, };
1540
1541 /*
1542  *  Fix Command Arguments for Avoid_Bool_Define
1543  */
1544 static const char* apzAvoid_Bool_DefinePatch[] = {
1545     "format",
1546     "#ifndef __cplusplus\n\
1547 %0\n\
1548 #endif",
1549     "^[ \t]*#[ \t]*define[ \t]+bool[ \t].*",
1550     (char*)NULL };
1551
1552 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1553  *
1554  *  Description of Avoid_Bool_Type fix
1555  */
1556 tSCC zAvoid_Bool_TypeName[] =
1557      "avoid_bool_type";
1558
1559 /*
1560  *  File name selection pattern
1561  */
1562 tSCC zAvoid_Bool_TypeList[] =
1563   "curses.h\0curses_colr/curses.h\0term.h\0tinfo.h\0";
1564 /*
1565  *  Machine/OS name selection pattern
1566  */
1567 #define apzAvoid_Bool_TypeMachs (const char**)NULL
1568
1569 /*
1570  *  content selection pattern - do fix if pattern found
1571  */
1572 tSCC zAvoid_Bool_TypeSelect0[] =
1573        "^[ \t]*typedef[ \t].*[ \t]bool[ \t]*;";
1574
1575 /*
1576  *  content bypass pattern - skip fix if pattern found
1577  */
1578 tSCC zAvoid_Bool_TypeBypass0[] =
1579        "__cplusplus";
1580
1581 #define    AVOID_BOOL_TYPE_TEST_CT  2
1582 static tTestDesc aAvoid_Bool_TypeTests[] = {
1583   { TT_NEGREP,   zAvoid_Bool_TypeBypass0, (regex_t*)NULL },
1584   { TT_EGREP,    zAvoid_Bool_TypeSelect0, (regex_t*)NULL }, };
1585
1586 /*
1587  *  Fix Command Arguments for Avoid_Bool_Type
1588  */
1589 static const char* apzAvoid_Bool_TypePatch[] = {
1590     "format",
1591     "#ifndef __cplusplus\n\
1592 %0\n\
1593 #endif",
1594     (char*)NULL };
1595
1596 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1597  *
1598  *  Description of Avoid_Wchar_T_Type fix
1599  */
1600 tSCC zAvoid_Wchar_T_TypeName[] =
1601      "avoid_wchar_t_type";
1602
1603 /*
1604  *  File name selection pattern
1605  */
1606 #define zAvoid_Wchar_T_TypeList (char*)NULL
1607 /*
1608  *  Machine/OS name selection pattern
1609  */
1610 #define apzAvoid_Wchar_T_TypeMachs (const char**)NULL
1611
1612 /*
1613  *  content selection pattern - do fix if pattern found
1614  */
1615 tSCC zAvoid_Wchar_T_TypeSelect0[] =
1616        "^[ \t]*typedef[ \t].*[ \t]wchar_t[ \t]*;";
1617
1618 /*
1619  *  content bypass pattern - skip fix if pattern found
1620  */
1621 tSCC zAvoid_Wchar_T_TypeBypass0[] =
1622        "__cplusplus";
1623 tSCC zAvoid_Wchar_T_TypeBypass1[] =
1624        "_LINUX_NLS_H";
1625 tSCC zAvoid_Wchar_T_TypeBypass2[] =
1626        "XFree86: xc/lib/X11/Xlib\\.h";
1627
1628 #define    AVOID_WCHAR_T_TYPE_TEST_CT  4
1629 static tTestDesc aAvoid_Wchar_T_TypeTests[] = {
1630   { TT_NEGREP,   zAvoid_Wchar_T_TypeBypass0, (regex_t*)NULL },
1631   { TT_NEGREP,   zAvoid_Wchar_T_TypeBypass1, (regex_t*)NULL },
1632   { TT_NEGREP,   zAvoid_Wchar_T_TypeBypass2, (regex_t*)NULL },
1633   { TT_EGREP,    zAvoid_Wchar_T_TypeSelect0, (regex_t*)NULL }, };
1634
1635 /*
1636  *  Fix Command Arguments for Avoid_Wchar_T_Type
1637  */
1638 static const char* apzAvoid_Wchar_T_TypePatch[] = {
1639     "format",
1640     "#ifndef __cplusplus\n\
1641 %0\n\
1642 #endif",
1643     (char*)NULL };
1644
1645 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1646  *
1647  *  Description of Bad_Struct_Term fix
1648  */
1649 tSCC zBad_Struct_TermName[] =
1650      "bad_struct_term";
1651
1652 /*
1653  *  File name selection pattern
1654  */
1655 tSCC zBad_Struct_TermList[] =
1656   "curses.h\0";
1657 /*
1658  *  Machine/OS name selection pattern
1659  */
1660 #define apzBad_Struct_TermMachs (const char**)NULL
1661
1662 /*
1663  *  content selection pattern - do fix if pattern found
1664  */
1665 tSCC zBad_Struct_TermSelect0[] =
1666        "^[ \t]*typedef[ \t]+struct[ \t]+term[ \t]*;";
1667
1668 #define    BAD_STRUCT_TERM_TEST_CT  1
1669 static tTestDesc aBad_Struct_TermTests[] = {
1670   { TT_EGREP,    zBad_Struct_TermSelect0, (regex_t*)NULL }, };
1671
1672 /*
1673  *  Fix Command Arguments for Bad_Struct_Term
1674  */
1675 static const char* apzBad_Struct_TermPatch[] = {
1676     "format",
1677     "struct term;",
1678     (char*)NULL };
1679
1680 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1681  *
1682  *  Description of Badquote fix
1683  */
1684 tSCC zBadquoteName[] =
1685      "badquote";
1686
1687 /*
1688  *  File name selection pattern
1689  */
1690 tSCC zBadquoteList[] =
1691   "sundev/vuid_event.h\0";
1692 /*
1693  *  Machine/OS name selection pattern
1694  */
1695 #define apzBadquoteMachs (const char**)NULL
1696
1697 /*
1698  *  content selection pattern - do fix if pattern found
1699  */
1700 tSCC zBadquoteSelect0[] =
1701        "doesn't";
1702
1703 #define    BADQUOTE_TEST_CT  1
1704 static tTestDesc aBadquoteTests[] = {
1705   { TT_EGREP,    zBadquoteSelect0, (regex_t*)NULL }, };
1706
1707 /*
1708  *  Fix Command Arguments for Badquote
1709  */
1710 static const char* apzBadquotePatch[] = {
1711     "format",
1712     "does not",
1713     (char*)NULL };
1714
1715 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1716  *
1717  *  Description of Broken_Assert_Stdio fix
1718  */
1719 tSCC zBroken_Assert_StdioName[] =
1720      "broken_assert_stdio";
1721
1722 /*
1723  *  File name selection pattern
1724  */
1725 tSCC zBroken_Assert_StdioList[] =
1726   "assert.h\0";
1727 /*
1728  *  Machine/OS name selection pattern
1729  */
1730 #define apzBroken_Assert_StdioMachs (const char**)NULL
1731
1732 /*
1733  *  content selection pattern - do fix if pattern found
1734  */
1735 tSCC zBroken_Assert_StdioSelect0[] =
1736        "stderr";
1737
1738 /*
1739  *  content bypass pattern - skip fix if pattern found
1740  */
1741 tSCC zBroken_Assert_StdioBypass0[] =
1742        "include.*stdio\\.h";
1743
1744 #define    BROKEN_ASSERT_STDIO_TEST_CT  2
1745 static tTestDesc aBroken_Assert_StdioTests[] = {
1746   { TT_NEGREP,   zBroken_Assert_StdioBypass0, (regex_t*)NULL },
1747   { TT_EGREP,    zBroken_Assert_StdioSelect0, (regex_t*)NULL }, };
1748
1749 /*
1750  *  Fix Command Arguments for Broken_Assert_Stdio
1751  */
1752 static const char* apzBroken_Assert_StdioPatch[] = {
1753     "wrap",
1754     "#include <stdio.h>\n",
1755     (char*)NULL };
1756
1757 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1758  *
1759  *  Description of Broken_Assert_Stdlib fix
1760  */
1761 tSCC zBroken_Assert_StdlibName[] =
1762      "broken_assert_stdlib";
1763
1764 /*
1765  *  File name selection pattern
1766  */
1767 tSCC zBroken_Assert_StdlibList[] =
1768   "assert.h\0";
1769 /*
1770  *  Machine/OS name selection pattern
1771  */
1772 #define apzBroken_Assert_StdlibMachs (const char**)NULL
1773
1774 /*
1775  *  content selection pattern - do fix if pattern found
1776  */
1777 tSCC zBroken_Assert_StdlibSelect0[] =
1778        "exit *\\(|abort *\\(";
1779
1780 /*
1781  *  content bypass pattern - skip fix if pattern found
1782  */
1783 tSCC zBroken_Assert_StdlibBypass0[] =
1784        "include.*stdlib\\.h";
1785
1786 #define    BROKEN_ASSERT_STDLIB_TEST_CT  2
1787 static tTestDesc aBroken_Assert_StdlibTests[] = {
1788   { TT_NEGREP,   zBroken_Assert_StdlibBypass0, (regex_t*)NULL },
1789   { TT_EGREP,    zBroken_Assert_StdlibSelect0, (regex_t*)NULL }, };
1790
1791 /*
1792  *  Fix Command Arguments for Broken_Assert_Stdlib
1793  */
1794 static const char* apzBroken_Assert_StdlibPatch[] = {
1795     "wrap",
1796     "#ifdef __cplusplus\n\
1797 #include <stdlib.h>\n\
1798 #endif\n",
1799     (char*)NULL };
1800
1801 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1802  *
1803  *  Description of Broken_Cabs fix
1804  */
1805 tSCC zBroken_CabsName[] =
1806      "broken_cabs";
1807
1808 /*
1809  *  File name selection pattern
1810  */
1811 tSCC zBroken_CabsList[] =
1812   "math.h\0architecture/*/math.h\0";
1813 /*
1814  *  Machine/OS name selection pattern
1815  */
1816 #define apzBroken_CabsMachs (const char**)NULL
1817
1818 /*
1819  *  content selection pattern - do fix if pattern found
1820  */
1821 tSCC zBroken_CabsSelect0[] =
1822        "^extern[ \t]+double[ \t]+cabs";
1823
1824 #define    BROKEN_CABS_TEST_CT  1
1825 static tTestDesc aBroken_CabsTests[] = {
1826   { TT_EGREP,    zBroken_CabsSelect0, (regex_t*)NULL }, };
1827
1828 /*
1829  *  Fix Command Arguments for Broken_Cabs
1830  */
1831 static const char* apzBroken_CabsPatch[] = { sed_cmd_z,
1832     "-e", "s/^extern[ \t]*double[ \t]*cabs[ \t]*([^\\)]*);//",
1833     "-e", "s/^extern[ \t]*long[ \t]*double[ \t]*cabsl[ \t]*([^\\)]*);//",
1834     (char*)NULL };
1835
1836 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1837  *
1838  *  Description of Broken_Nan fix
1839  */
1840 tSCC zBroken_NanName[] =
1841      "broken_nan";
1842
1843 /*
1844  *  File name selection pattern
1845  */
1846 tSCC zBroken_NanList[] =
1847   "architecture/ppc/math.h\0architecture/*/math.h\0";
1848 /*
1849  *  Machine/OS name selection pattern
1850  */
1851 #define apzBroken_NanMachs (const char**)NULL
1852
1853 /*
1854  *  content selection pattern - do fix if pattern found
1855  */
1856 tSCC zBroken_NanSelect0[] =
1857        "#if defined(__APPLE_CC__) && (__APPLE_CC__ >= 1345)";
1858
1859 /*
1860  *  content bypass pattern - skip fix if pattern found
1861  */
1862 tSCC zBroken_NanBypass0[] =
1863        "powl";
1864
1865 #define    BROKEN_NAN_TEST_CT  2
1866 static tTestDesc aBroken_NanTests[] = {
1867   { TT_NEGREP,   zBroken_NanBypass0, (regex_t*)NULL },
1868   { TT_EGREP,    zBroken_NanSelect0, (regex_t*)NULL }, };
1869
1870 /*
1871  *  Fix Command Arguments for Broken_Nan
1872  */
1873 static const char* apzBroken_NanPatch[] = {
1874     "format",
1875     "#if 1",
1876     (char*)NULL };
1877
1878 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1879  *
1880  *  Description of Bsd_Stdio_Attrs_Conflict fix
1881  */
1882 tSCC zBsd_Stdio_Attrs_ConflictName[] =
1883      "bsd_stdio_attrs_conflict";
1884
1885 /*
1886  *  File name selection pattern
1887  */
1888 tSCC zBsd_Stdio_Attrs_ConflictList[] =
1889   "stdio.h\0";
1890 /*
1891  *  Machine/OS name selection pattern
1892  */
1893 tSCC* apzBsd_Stdio_Attrs_ConflictMachs[] = {
1894         "*-*-*bsd*",
1895         "*-*-*darwin*",
1896         (const char*)NULL };
1897
1898 /*
1899  *  content selection pattern - do fix if pattern found
1900  */
1901 tSCC zBsd_Stdio_Attrs_ConflictSelect0[] =
1902        "^#define[ \t]*vfscanf[ \t]*__svfscanf[ \t]*$";
1903
1904 #define    BSD_STDIO_ATTRS_CONFLICT_TEST_CT  1
1905 static tTestDesc aBsd_Stdio_Attrs_ConflictTests[] = {
1906   { TT_EGREP,    zBsd_Stdio_Attrs_ConflictSelect0, (regex_t*)NULL }, };
1907
1908 /*
1909  *  Fix Command Arguments for Bsd_Stdio_Attrs_Conflict
1910  */
1911 static const char* apzBsd_Stdio_Attrs_ConflictPatch[] = {
1912     "format",
1913     "#define _BSD_STRING(_BSD_X) _BSD_STRINGX(_BSD_X)\n\
1914 #define _BSD_STRINGX(_BSD_X) #_BSD_X\n\
1915 int vfscanf(FILE *, const char *, __builtin_va_list) __asm__ (_BSD_STRING(__USER_LABEL_PREFIX__) \"__svfscanf\");",
1916     (char*)NULL };
1917
1918 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1919  *
1920  *  Description of Cdef_Cplusplus fix
1921  */
1922 tSCC zCdef_CplusplusName[] =
1923      "cdef_cplusplus";
1924
1925 /*
1926  *  File name selection pattern
1927  */
1928 tSCC zCdef_CplusplusList[] =
1929   "sys/cdefs.h\0";
1930 /*
1931  *  Machine/OS name selection pattern
1932  */
1933 #define apzCdef_CplusplusMachs (const char**)NULL
1934
1935 /*
1936  *  content selection pattern - do fix if pattern found
1937  */
1938 tSCC zCdef_CplusplusSelect0[] =
1939        "\\[\\[noreturn\\]\\]";
1940
1941 #define    CDEF_CPLUSPLUS_TEST_CT  1
1942 static tTestDesc aCdef_CplusplusTests[] = {
1943   { TT_EGREP,    zCdef_CplusplusSelect0, (regex_t*)NULL }, };
1944
1945 /*
1946  *  Fix Command Arguments for Cdef_Cplusplus
1947  */
1948 static const char* apzCdef_CplusplusPatch[] = {
1949     "format",
1950     "__attribute__((__noreturn__))",
1951     (char*)NULL };
1952
1953 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1954  *
1955  *  Description of Ctrl_Quotes_Def fix
1956  */
1957 tSCC zCtrl_Quotes_DefName[] =
1958      "ctrl_quotes_def";
1959
1960 /*
1961  *  File name selection pattern
1962  */
1963 #define zCtrl_Quotes_DefList (char*)NULL
1964 /*
1965  *  Machine/OS name selection pattern
1966  */
1967 #define apzCtrl_Quotes_DefMachs (const char**)NULL
1968
1969 /*
1970  *  content selection pattern - do fix if pattern found
1971  */
1972 tSCC zCtrl_Quotes_DefSelect0[] =
1973        "define[ \t]+[A-Z0-9_]+CTRL\\([a-zA-Z][,)]";
1974
1975 #define    CTRL_QUOTES_DEF_TEST_CT  1
1976 static tTestDesc aCtrl_Quotes_DefTests[] = {
1977   { TT_EGREP,    zCtrl_Quotes_DefSelect0, (regex_t*)NULL }, };
1978
1979 /*
1980  *  Fix Command Arguments for Ctrl_Quotes_Def
1981  */
1982 static const char* apzCtrl_Quotes_DefPatch[] = {
1983     "char_macro_def",
1984     "CTRL",
1985     (char*)NULL };
1986
1987 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1988  *
1989  *  Description of Ctrl_Quotes_Use fix
1990  */
1991 tSCC zCtrl_Quotes_UseName[] =
1992      "ctrl_quotes_use";
1993
1994 /*
1995  *  File name selection pattern
1996  */
1997 #define zCtrl_Quotes_UseList (char*)NULL
1998 /*
1999  *  Machine/OS name selection pattern
2000  */
2001 #define apzCtrl_Quotes_UseMachs (const char**)NULL
2002
2003 /*
2004  *  content selection pattern - do fix if pattern found
2005  */
2006 tSCC zCtrl_Quotes_UseSelect0[] =
2007        "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+CTRL[ \t]*\\( *[^,']";
2008
2009 #define    CTRL_QUOTES_USE_TEST_CT  1
2010 static tTestDesc aCtrl_Quotes_UseTests[] = {
2011   { TT_EGREP,    zCtrl_Quotes_UseSelect0, (regex_t*)NULL }, };
2012
2013 /*
2014  *  Fix Command Arguments for Ctrl_Quotes_Use
2015  */
2016 static const char* apzCtrl_Quotes_UsePatch[] = {
2017     "char_macro_use",
2018     "CTRL",
2019     (char*)NULL };
2020
2021 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2022  *
2023  *  Description of Cxx_Unready fix
2024  */
2025 tSCC zCxx_UnreadyName[] =
2026      "cxx_unready";
2027
2028 /*
2029  *  File name selection pattern
2030  */
2031 tSCC zCxx_UnreadyList[] =
2032   "sys/mman.h\0rpc/types.h\0";
2033 /*
2034  *  Machine/OS name selection pattern
2035  */
2036 #define apzCxx_UnreadyMachs (const char**)NULL
2037
2038 /*
2039  *  content selection pattern - do fix if pattern found
2040  */
2041 tSCC zCxx_UnreadySelect0[] =
2042        "[^#]+malloc.*;";
2043
2044 /*
2045  *  content bypass pattern - skip fix if pattern found
2046  */
2047 tSCC zCxx_UnreadyBypass0[] =
2048        "\"C\"|__BEGIN_DECLS";
2049
2050 #define    CXX_UNREADY_TEST_CT  2
2051 static tTestDesc aCxx_UnreadyTests[] = {
2052   { TT_NEGREP,   zCxx_UnreadyBypass0, (regex_t*)NULL },
2053   { TT_EGREP,    zCxx_UnreadySelect0, (regex_t*)NULL }, };
2054
2055 /*
2056  *  Fix Command Arguments for Cxx_Unready
2057  */
2058 static const char* apzCxx_UnreadyPatch[] = {
2059     "wrap",
2060     "#ifdef __cplusplus\n\
2061 extern \"C\" {\n\
2062 #endif\n",
2063     "#ifdef __cplusplus\n\
2064 }\n\
2065 #endif\n",
2066     (char*)NULL };
2067
2068 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2069  *
2070  *  Description of Darwin_Externc fix
2071  */
2072 tSCC zDarwin_ExterncName[] =
2073      "darwin_externc";
2074
2075 /*
2076  *  File name selection pattern
2077  */
2078 tSCC zDarwin_ExterncList[] =
2079   "mach-o/swap.h\0mach/mach_time.h\0mach/mach_traps.h\0mach/message.h\0mach/mig.h\0mach/semaphore.h\0";
2080 /*
2081  *  Machine/OS name selection pattern
2082  */
2083 tSCC* apzDarwin_ExterncMachs[] = {
2084         "*-*-darwin*",
2085         (const char*)NULL };
2086
2087 /*
2088  *  content bypass pattern - skip fix if pattern found
2089  */
2090 tSCC zDarwin_ExterncBypass0[] =
2091        "extern \"C\"";
2092 tSCC zDarwin_ExterncBypass1[] =
2093        "__BEGIN_DECLS";
2094
2095 #define    DARWIN_EXTERNC_TEST_CT  2
2096 static tTestDesc aDarwin_ExterncTests[] = {
2097   { TT_NEGREP,   zDarwin_ExterncBypass0, (regex_t*)NULL },
2098   { TT_NEGREP,   zDarwin_ExterncBypass1, (regex_t*)NULL }, };
2099
2100 /*
2101  *  Fix Command Arguments for Darwin_Externc
2102  */
2103 static const char* apzDarwin_ExterncPatch[] = {
2104     "wrap",
2105     "#ifdef __cplusplus\n\
2106 extern \"C\" {\n\
2107 #endif\n",
2108     "#ifdef __cplusplus\n\
2109 }\n\
2110 #endif\n",
2111     (char*)NULL };
2112
2113 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2114  *
2115  *  Description of Darwin_Gcc4_Breakage fix
2116  */
2117 tSCC zDarwin_Gcc4_BreakageName[] =
2118      "darwin_gcc4_breakage";
2119
2120 /*
2121  *  File name selection pattern
2122  */
2123 tSCC zDarwin_Gcc4_BreakageList[] =
2124   "AvailabilityMacros.h\0";
2125 /*
2126  *  Machine/OS name selection pattern
2127  */
2128 tSCC* apzDarwin_Gcc4_BreakageMachs[] = {
2129         "*-*-darwin*",
2130         (const char*)NULL };
2131
2132 /*
2133  *  content selection pattern - do fix if pattern found
2134  */
2135 tSCC zDarwin_Gcc4_BreakageSelect0[] =
2136        "\\(__GNUC__ >= 3\\) && \\(__GNUC_MINOR__ >= 1\\)";
2137
2138 #define    DARWIN_GCC4_BREAKAGE_TEST_CT  1
2139 static tTestDesc aDarwin_Gcc4_BreakageTests[] = {
2140   { TT_EGREP,    zDarwin_Gcc4_BreakageSelect0, (regex_t*)NULL }, };
2141
2142 /*
2143  *  Fix Command Arguments for Darwin_Gcc4_Breakage
2144  */
2145 static const char* apzDarwin_Gcc4_BreakagePatch[] = {
2146     "format",
2147     "((__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))",
2148     (char*)NULL };
2149
2150 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2151  *
2152  *  Description of Darwin_Private_Extern fix
2153  */
2154 tSCC zDarwin_Private_ExternName[] =
2155      "darwin_private_extern";
2156
2157 /*
2158  *  File name selection pattern
2159  */
2160 tSCC zDarwin_Private_ExternList[] =
2161   "mach-o/dyld.h\0";
2162 /*
2163  *  Machine/OS name selection pattern
2164  */
2165 tSCC* apzDarwin_Private_ExternMachs[] = {
2166         "*-*-darwin*",
2167         (const char*)NULL };
2168
2169 /*
2170  *  content selection pattern - do fix if pattern found
2171  */
2172 tSCC zDarwin_Private_ExternSelect0[] =
2173        "__private_extern__ [a-z_]+ _dyld_";
2174
2175 #define    DARWIN_PRIVATE_EXTERN_TEST_CT  1
2176 static tTestDesc aDarwin_Private_ExternTests[] = {
2177   { TT_EGREP,    zDarwin_Private_ExternSelect0, (regex_t*)NULL }, };
2178
2179 /*
2180  *  Fix Command Arguments for Darwin_Private_Extern
2181  */
2182 static const char* apzDarwin_Private_ExternPatch[] = {
2183     "format",
2184     "extern",
2185     "__private_extern__",
2186     (char*)NULL };
2187
2188 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2189  *
2190  *  Description of Darwin_Stdint_1 fix
2191  */
2192 tSCC zDarwin_Stdint_1Name[] =
2193      "darwin_stdint_1";
2194
2195 /*
2196  *  File name selection pattern
2197  */
2198 tSCC zDarwin_Stdint_1List[] =
2199   "stdint-darwin.h\0stdint.h\0";
2200 /*
2201  *  Machine/OS name selection pattern
2202  */
2203 tSCC* apzDarwin_Stdint_1Machs[] = {
2204         "*-*-darwin*",
2205         (const char*)NULL };
2206
2207 /*
2208  *  content selection pattern - do fix if pattern found
2209  */
2210 tSCC zDarwin_Stdint_1Select0[] =
2211        "#define UINT8_C\\(v\\)[ \t]+\\(v ## U\\)\n\
2212 #define UINT16_C\\(v\\)[ \t]+\\(v ## U\\)";
2213
2214 #define    DARWIN_STDINT_1_TEST_CT  1
2215 static tTestDesc aDarwin_Stdint_1Tests[] = {
2216   { TT_EGREP,    zDarwin_Stdint_1Select0, (regex_t*)NULL }, };
2217
2218 /*
2219  *  Fix Command Arguments for Darwin_Stdint_1
2220  */
2221 static const char* apzDarwin_Stdint_1Patch[] = {
2222     "format",
2223     "#define UINT8_C(v)\tv\n\
2224 #define UINT16_C(v)\tv",
2225     (char*)NULL };
2226
2227 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2228  *
2229  *  Description of Darwin_Stdint_2 fix
2230  */
2231 tSCC zDarwin_Stdint_2Name[] =
2232      "darwin_stdint_2";
2233
2234 /*
2235  *  File name selection pattern
2236  */
2237 tSCC zDarwin_Stdint_2List[] =
2238   "stdint-darwin.h\0stdint.h\0";
2239 /*
2240  *  Machine/OS name selection pattern
2241  */
2242 tSCC* apzDarwin_Stdint_2Machs[] = {
2243         "*-*-darwin*",
2244         (const char*)NULL };
2245
2246 /*
2247  *  content selection pattern - do fix if pattern found
2248  */
2249 tSCC zDarwin_Stdint_2Select0[] =
2250        "#if __WORDSIZE == 64\n\
2251 #define INTPTR_MIN[ \t]+INT64_MIN\n\
2252 #define INTPTR_MAX[ \t]+INT64_MAX\n\
2253 #else\n\
2254 #define INTPTR_MIN[ \t]+INT32_MIN\n\
2255 #define INTPTR_MAX[ \t]+INT32_MAX\n\
2256 #endif";
2257
2258 #define    DARWIN_STDINT_2_TEST_CT  1
2259 static tTestDesc aDarwin_Stdint_2Tests[] = {
2260   { TT_EGREP,    zDarwin_Stdint_2Select0, (regex_t*)NULL }, };
2261
2262 /*
2263  *  Fix Command Arguments for Darwin_Stdint_2
2264  */
2265 static const char* apzDarwin_Stdint_2Patch[] = {
2266     "format",
2267     "#if __WORDSIZE == 64\n\
2268 #define INTPTR_MAX 9223372036854775807L\n\
2269 #define INTPTR_MIN (-INTPTR_MAX-1)\n\
2270 #else\n\
2271 #define INTPTR_MAX 2147483647L\n\
2272 #define INTPTR_MIN (-INTPTR_MAX-1)\n\
2273 #endif",
2274     (char*)NULL };
2275
2276 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2277  *
2278  *  Description of Darwin_Stdint_3 fix
2279  */
2280 tSCC zDarwin_Stdint_3Name[] =
2281      "darwin_stdint_3";
2282
2283 /*
2284  *  File name selection pattern
2285  */
2286 tSCC zDarwin_Stdint_3List[] =
2287   "stdint-darwin.h\0stdint.h\0";
2288 /*
2289  *  Machine/OS name selection pattern
2290  */
2291 tSCC* apzDarwin_Stdint_3Machs[] = {
2292         "*-*-darwin*",
2293         (const char*)NULL };
2294
2295 /*
2296  *  content selection pattern - do fix if pattern found
2297  */
2298 tSCC zDarwin_Stdint_3Select0[] =
2299        "#if __WORDSIZE == 64\n\
2300 #define UINTPTR_MAX[ \t]+UINT64_MAX\n\
2301 #else\n\
2302 #define UINTPTR_MAX[ \t]+UINT32_MAX\n\
2303 #endif";
2304
2305 #define    DARWIN_STDINT_3_TEST_CT  1
2306 static tTestDesc aDarwin_Stdint_3Tests[] = {
2307   { TT_EGREP,    zDarwin_Stdint_3Select0, (regex_t*)NULL }, };
2308
2309 /*
2310  *  Fix Command Arguments for Darwin_Stdint_3
2311  */
2312 static const char* apzDarwin_Stdint_3Patch[] = {
2313     "format",
2314     "#if __WORDSIZE == 64\n\
2315 #define UINTPTR_MAX 18446744073709551615UL\n\
2316 #else\n\
2317 #define UINTPTR_MAX 4294967295UL\n\
2318 #endif",
2319     (char*)NULL };
2320
2321 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2322  *
2323  *  Description of Darwin_Stdint_4 fix
2324  */
2325 tSCC zDarwin_Stdint_4Name[] =
2326      "darwin_stdint_4";
2327
2328 /*
2329  *  File name selection pattern
2330  */
2331 tSCC zDarwin_Stdint_4List[] =
2332   "stdint-darwin.h\0stdint.h\0";
2333 /*
2334  *  Machine/OS name selection pattern
2335  */
2336 tSCC* apzDarwin_Stdint_4Machs[] = {
2337         "*-*-darwin*",
2338         (const char*)NULL };
2339
2340 /*
2341  *  content selection pattern - do fix if pattern found
2342  */
2343 tSCC zDarwin_Stdint_4Select0[] =
2344        "#if __WORDSIZE == 64\n\
2345 #define SIZE_MAX[ \t]+UINT64_MAX\n\
2346 #else\n\
2347 #define SIZE_MAX[ \t]+UINT32_MAX\n\
2348 #endif";
2349
2350 #define    DARWIN_STDINT_4_TEST_CT  1
2351 static tTestDesc aDarwin_Stdint_4Tests[] = {
2352   { TT_EGREP,    zDarwin_Stdint_4Select0, (regex_t*)NULL }, };
2353
2354 /*
2355  *  Fix Command Arguments for Darwin_Stdint_4
2356  */
2357 static const char* apzDarwin_Stdint_4Patch[] = {
2358     "format",
2359     "#if __WORDSIZE == 64\n\
2360 #define SIZE_MAX 18446744073709551615UL\n\
2361 #else\n\
2362 #define SIZE_MAX 4294967295UL\n\
2363 #endif",
2364     (char*)NULL };
2365
2366 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2367  *
2368  *  Description of Darwin_Stdint_5 fix
2369  */
2370 tSCC zDarwin_Stdint_5Name[] =
2371      "darwin_stdint_5";
2372
2373 /*
2374  *  File name selection pattern
2375  */
2376 tSCC zDarwin_Stdint_5List[] =
2377   "stdint-darwin.h\0stdint.h\0";
2378 /*
2379  *  Machine/OS name selection pattern
2380  */
2381 tSCC* apzDarwin_Stdint_5Machs[] = {
2382         "*-*-darwin*",
2383         (const char*)NULL };
2384
2385 /*
2386  *  content selection pattern - do fix if pattern found
2387  */
2388 tSCC zDarwin_Stdint_5Select0[] =
2389        "#define INTMAX_MIN[ \t]+INT64_MIN\n\
2390 #define INTMAX_MAX[ \t]+INT64_MAX\n\n\
2391 #define UINTMAX_MAX[ \t]+UINT64_MAX";
2392
2393 #define    DARWIN_STDINT_5_TEST_CT  1
2394 static tTestDesc aDarwin_Stdint_5Tests[] = {
2395   { TT_EGREP,    zDarwin_Stdint_5Select0, (regex_t*)NULL }, };
2396
2397 /*
2398  *  Fix Command Arguments for Darwin_Stdint_5
2399  */
2400 static const char* apzDarwin_Stdint_5Patch[] = {
2401     "format",
2402     "#if __WORDSIZE == 64\n\
2403 #define INTMAX_MIN   (-9223372036854775807L - 1)\n\
2404 #define INTMAX_MAX   9223372036854775807L\n\
2405 #define UINTMAX_MAX  18446744073709551615UL\n\
2406 #else\n\
2407 #define INTMAX_MIN   (-9223372036854775807LL - 1)\n\
2408 #define INTMAX_MAX   9223372036854775807LL\n\
2409 #define UINTMAX_MAX  18446744073709551615ULL\n\
2410 #endif",
2411     (char*)NULL };
2412
2413 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2414  *
2415  *  Description of Darwin_Stdint_6 fix
2416  */
2417 tSCC zDarwin_Stdint_6Name[] =
2418      "darwin_stdint_6";
2419
2420 /*
2421  *  File name selection pattern
2422  */
2423 tSCC zDarwin_Stdint_6List[] =
2424   "stdint-darwin.h\0stdint.h\0";
2425 /*
2426  *  Machine/OS name selection pattern
2427  */
2428 tSCC* apzDarwin_Stdint_6Machs[] = {
2429         "*-*-darwin*",
2430         (const char*)NULL };
2431
2432 /*
2433  *  content selection pattern - do fix if pattern found
2434  */
2435 tSCC zDarwin_Stdint_6Select0[] =
2436        "#if __WORDSIZE == 64\n\
2437 #define PTRDIFF_MIN[ \t]+INT64_MIN\n\
2438 #define PTRDIFF_MAX[ \t]+INT64_MAX\n\
2439 #else\n\
2440 #define PTRDIFF_MIN[ \t]+INT32_MIN\n\
2441 #define PTRDIFF_MAX[ \t]+INT32_MAX\n\
2442 #endif";
2443
2444 #define    DARWIN_STDINT_6_TEST_CT  1
2445 static tTestDesc aDarwin_Stdint_6Tests[] = {
2446   { TT_EGREP,    zDarwin_Stdint_6Select0, (regex_t*)NULL }, };
2447
2448 /*
2449  *  Fix Command Arguments for Darwin_Stdint_6
2450  */
2451 static const char* apzDarwin_Stdint_6Patch[] = {
2452     "format",
2453     "#if __WORDSIZE == 64\n\
2454 #define PTRDIFF_MIN (-9223372036854775807L - 1)\n\
2455 #define PTRDIFF_MAX 9223372036854775807L\n\
2456 #else\n\
2457 #define PTRDIFF_MIN (-2147483647 - 1)\n\
2458 #define PTRDIFF_MAX 2147483647\n\
2459 #endif",
2460     (char*)NULL };
2461
2462 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2463  *
2464  *  Description of Darwin_Stdint_7 fix
2465  */
2466 tSCC zDarwin_Stdint_7Name[] =
2467      "darwin_stdint_7";
2468
2469 /*
2470  *  File name selection pattern
2471  */
2472 tSCC zDarwin_Stdint_7List[] =
2473   "stdint-darwin.h\0stdint.h\0";
2474 /*
2475  *  Machine/OS name selection pattern
2476  */
2477 tSCC* apzDarwin_Stdint_7Machs[] = {
2478         "*-*-darwin*",
2479         (const char*)NULL };
2480
2481 /*
2482  *  content selection pattern - do fix if pattern found
2483  */
2484 tSCC zDarwin_Stdint_7Select0[] =
2485        "#define INTMAX_C\\(v\\)[ \t]+\\(v ## LL\\)\n\
2486 #define UINTMAX_C\\(v\\)[ \t]+\\(v ## ULL\\)";
2487
2488 #define    DARWIN_STDINT_7_TEST_CT  1
2489 static tTestDesc aDarwin_Stdint_7Tests[] = {
2490   { TT_EGREP,    zDarwin_Stdint_7Select0, (regex_t*)NULL }, };
2491
2492 /*
2493  *  Fix Command Arguments for Darwin_Stdint_7
2494  */
2495 static const char* apzDarwin_Stdint_7Patch[] = {
2496     "format",
2497     "#if __WORDSIZE == 64\n\
2498 #define INTMAX_C(v)  (v ## L)\n\
2499 #define UINTMAX_C(v) (v ## UL)\n\
2500 #else\n\
2501 #define INTMAX_C(v)  (v ## LL)\n\
2502 #define UINTMAX_C(v) (v ## ULL)\n\
2503 #endif",
2504     (char*)NULL };
2505
2506 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2507  *
2508  *  Description of Dec_Intern_Asm fix
2509  */
2510 tSCC zDec_Intern_AsmName[] =
2511      "dec_intern_asm";
2512
2513 /*
2514  *  File name selection pattern
2515  */
2516 tSCC zDec_Intern_AsmList[] =
2517   "c_asm.h\0";
2518 /*
2519  *  Machine/OS name selection pattern
2520  */
2521 #define apzDec_Intern_AsmMachs (const char**)NULL
2522 #define DEC_INTERN_ASM_TEST_CT  0
2523 #define aDec_Intern_AsmTests   (tTestDesc*)NULL
2524
2525 /*
2526  *  Fix Command Arguments for Dec_Intern_Asm
2527  */
2528 static const char* apzDec_Intern_AsmPatch[] = { sed_cmd_z,
2529     "-e", "/^[ \t]*float[ \t]*fasm/i\\\n\
2530 #ifdef __DECC\n",
2531     "-e", "/^[ \t]*#[ \t]*pragma[ \t]*intrinsic([ \t]*dasm/a\\\n\
2532 #endif\n",
2533     (char*)NULL };
2534
2535 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2536  *
2537  *  Description of Djgpp_Wchar_H fix
2538  */
2539 tSCC zDjgpp_Wchar_HName[] =
2540      "djgpp_wchar_h";
2541
2542 /*
2543  *  File name selection pattern
2544  */
2545 #define zDjgpp_Wchar_HList (char*)NULL
2546 /*
2547  *  Machine/OS name selection pattern
2548  */
2549 #define apzDjgpp_Wchar_HMachs (const char**)NULL
2550
2551 /*
2552  *  content selection pattern - do fix if pattern found
2553  */
2554 tSCC zDjgpp_Wchar_HSelect0[] =
2555        "__DJ_wint_t";
2556
2557 /*
2558  *  content bypass pattern - skip fix if pattern found
2559  */
2560 tSCC zDjgpp_Wchar_HBypass0[] =
2561        "sys/djtypes.h";
2562
2563 #define    DJGPP_WCHAR_H_TEST_CT  2
2564 static tTestDesc aDjgpp_Wchar_HTests[] = {
2565   { TT_NEGREP,   zDjgpp_Wchar_HBypass0, (regex_t*)NULL },
2566   { TT_EGREP,    zDjgpp_Wchar_HSelect0, (regex_t*)NULL }, };
2567
2568 /*
2569  *  Fix Command Arguments for Djgpp_Wchar_H
2570  */
2571 static const char* apzDjgpp_Wchar_HPatch[] = {
2572     "format",
2573     "%0\n\
2574 #include <sys/djtypes.h>",
2575     "#include <stddef.h>",
2576     (char*)NULL };
2577
2578 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2579  *
2580  *  Description of Ecd_Cursor fix
2581  */
2582 tSCC zEcd_CursorName[] =
2583      "ecd_cursor";
2584
2585 /*
2586  *  File name selection pattern
2587  */
2588 tSCC zEcd_CursorList[] =
2589   "sunwindow/win_lock.h\0sunwindow/win_cursor.h\0";
2590 /*
2591  *  Machine/OS name selection pattern
2592  */
2593 #define apzEcd_CursorMachs (const char**)NULL
2594
2595 /*
2596  *  content selection pattern - do fix if pattern found
2597  */
2598 tSCC zEcd_CursorSelect0[] =
2599        "ecd\\.cursor";
2600
2601 #define    ECD_CURSOR_TEST_CT  1
2602 static tTestDesc aEcd_CursorTests[] = {
2603   { TT_EGREP,    zEcd_CursorSelect0, (regex_t*)NULL }, };
2604
2605 /*
2606  *  Fix Command Arguments for Ecd_Cursor
2607  */
2608 static const char* apzEcd_CursorPatch[] = {
2609     "format",
2610     "ecd_cursor",
2611     (char*)NULL };
2612
2613 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2614  *
2615  *  Description of Freebsd_Gcc3_Breakage fix
2616  */
2617 tSCC zFreebsd_Gcc3_BreakageName[] =
2618      "freebsd_gcc3_breakage";
2619
2620 /*
2621  *  File name selection pattern
2622  */
2623 tSCC zFreebsd_Gcc3_BreakageList[] =
2624   "sys/cdefs.h\0";
2625 /*
2626  *  Machine/OS name selection pattern
2627  */
2628 tSCC* apzFreebsd_Gcc3_BreakageMachs[] = {
2629         "*-*-freebsd*",
2630         (const char*)NULL };
2631
2632 /*
2633  *  content selection pattern - do fix if pattern found
2634  */
2635 tSCC zFreebsd_Gcc3_BreakageSelect0[] =
2636        "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7$";
2637
2638 /*
2639  *  content bypass pattern - skip fix if pattern found
2640  */
2641 tSCC zFreebsd_Gcc3_BreakageBypass0[] =
2642        "__GNUC__[ \\t]*([>=]=[ \\t]*[3-9]|>[ \\t]*2)";
2643
2644 #define    FREEBSD_GCC3_BREAKAGE_TEST_CT  2
2645 static tTestDesc aFreebsd_Gcc3_BreakageTests[] = {
2646   { TT_NEGREP,   zFreebsd_Gcc3_BreakageBypass0, (regex_t*)NULL },
2647   { TT_EGREP,    zFreebsd_Gcc3_BreakageSelect0, (regex_t*)NULL }, };
2648
2649 /*
2650  *  Fix Command Arguments for Freebsd_Gcc3_Breakage
2651  */
2652 static const char* apzFreebsd_Gcc3_BreakagePatch[] = {
2653     "format",
2654     "%0 || __GNUC__ >= 3",
2655     (char*)NULL };
2656
2657 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2658  *
2659  *  Description of Freebsd_Gcc4_Breakage fix
2660  */
2661 tSCC zFreebsd_Gcc4_BreakageName[] =
2662      "freebsd_gcc4_breakage";
2663
2664 /*
2665  *  File name selection pattern
2666  */
2667 tSCC zFreebsd_Gcc4_BreakageList[] =
2668   "sys/cdefs.h\0";
2669 /*
2670  *  Machine/OS name selection pattern
2671  */
2672 tSCC* apzFreebsd_Gcc4_BreakageMachs[] = {
2673         "*-*-freebsd*",
2674         (const char*)NULL };
2675
2676 /*
2677  *  content selection pattern - do fix if pattern found
2678  */
2679 tSCC zFreebsd_Gcc4_BreakageSelect0[] =
2680        "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 \\|\\| __GNUC__ == 3$";
2681
2682 #define    FREEBSD_GCC4_BREAKAGE_TEST_CT  1
2683 static tTestDesc aFreebsd_Gcc4_BreakageTests[] = {
2684   { TT_EGREP,    zFreebsd_Gcc4_BreakageSelect0, (regex_t*)NULL }, };
2685
2686 /*
2687  *  Fix Command Arguments for Freebsd_Gcc4_Breakage
2688  */
2689 static const char* apzFreebsd_Gcc4_BreakagePatch[] = {
2690     "format",
2691     "#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 || __GNUC__ >= 3",
2692     (char*)NULL };
2693
2694 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2695  *
2696  *  Description of Glibc_C99_Inline_1 fix
2697  */
2698 tSCC zGlibc_C99_Inline_1Name[] =
2699      "glibc_c99_inline_1";
2700
2701 /*
2702  *  File name selection pattern
2703  */
2704 tSCC zGlibc_C99_Inline_1List[] =
2705   "features.h\0*/features.h\0";
2706 /*
2707  *  Machine/OS name selection pattern
2708  */
2709 #define apzGlibc_C99_Inline_1Machs (const char**)NULL
2710
2711 /*
2712  *  content selection pattern - do fix if pattern found
2713  */
2714 tSCC zGlibc_C99_Inline_1Select0[] =
2715        "^ *&& !defined __OPTIMIZE_SIZE__ && !defined __NO_INLINE__$";
2716
2717 #define    GLIBC_C99_INLINE_1_TEST_CT  1
2718 static tTestDesc aGlibc_C99_Inline_1Tests[] = {
2719   { TT_EGREP,    zGlibc_C99_Inline_1Select0, (regex_t*)NULL }, };
2720
2721 /*
2722  *  Fix Command Arguments for Glibc_C99_Inline_1
2723  */
2724 static const char* apzGlibc_C99_Inline_1Patch[] = {
2725     "format",
2726     "%0 && (defined __extern_inline || defined __GNUC_GNU_INLINE__)",
2727     (char*)NULL };
2728
2729 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2730  *
2731  *  Description of Glibc_C99_Inline_1a fix
2732  */
2733 tSCC zGlibc_C99_Inline_1aName[] =
2734      "glibc_c99_inline_1a";
2735
2736 /*
2737  *  File name selection pattern
2738  */
2739 tSCC zGlibc_C99_Inline_1aList[] =
2740   "features.h\0*/features.h\0";
2741 /*
2742  *  Machine/OS name selection pattern
2743  */
2744 #define apzGlibc_C99_Inline_1aMachs (const char**)NULL
2745
2746 /*
2747  *  content selection pattern - do fix if pattern found
2748  */
2749 tSCC zGlibc_C99_Inline_1aSelect0[] =
2750        "(\\) && defined __OPTIMIZE__ && !defined __OPTIMIZE_SIZE__)\n\
2751 (#[ \t]*define[ \t]*__USE_EXTERN_INLINES[ \t]*1)";
2752
2753 #define    GLIBC_C99_INLINE_1A_TEST_CT  1
2754 static tTestDesc aGlibc_C99_Inline_1aTests[] = {
2755   { TT_EGREP,    zGlibc_C99_Inline_1aSelect0, (regex_t*)NULL }, };
2756
2757 /*
2758  *  Fix Command Arguments for Glibc_C99_Inline_1a
2759  */
2760 static const char* apzGlibc_C99_Inline_1aPatch[] = {
2761     "format",
2762     "%1 && (defined __extern_inline || defined __GNUC_GNU_INLINE__)\n\
2763 %2",
2764     (char*)NULL };
2765
2766 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2767  *
2768  *  Description of Glibc_C99_Inline_2 fix
2769  */
2770 tSCC zGlibc_C99_Inline_2Name[] =
2771      "glibc_c99_inline_2";
2772
2773 /*
2774  *  File name selection pattern
2775  */
2776 tSCC zGlibc_C99_Inline_2List[] =
2777   "sys/stat.h\0*/sys/stat.h\0";
2778 /*
2779  *  Machine/OS name selection pattern
2780  */
2781 #define apzGlibc_C99_Inline_2Machs (const char**)NULL
2782
2783 /*
2784  *  content selection pattern - do fix if pattern found
2785  */
2786 tSCC zGlibc_C99_Inline_2Select0[] =
2787        "extern __inline__ int";
2788
2789 #define    GLIBC_C99_INLINE_2_TEST_CT  1
2790 static tTestDesc aGlibc_C99_Inline_2Tests[] = {
2791   { TT_EGREP,    zGlibc_C99_Inline_2Select0, (regex_t*)NULL }, };
2792
2793 /*
2794  *  Fix Command Arguments for Glibc_C99_Inline_2
2795  */
2796 static const char* apzGlibc_C99_Inline_2Patch[] = { sed_cmd_z,
2797     "-e", "s/extern int \\(stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
2798 extern\\\n\
2799 #endif\\\n\
2800 __inline__ int \\1/",
2801     "-e", "s/extern int \\([lf]stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
2802 extern\\\n\
2803 #endif\\\n\
2804 __inline__ int \\1/",
2805     "-e", "s/extern int \\(mknod\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
2806 extern\\\n\
2807 #endif\\\n\
2808 __inline__ int \\1/",
2809     "-e", "s/extern int __REDIRECT\\(_NTH\\)\\{0,1\\} (\\(stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
2810 extern\\\n\
2811 #endif\\\n\
2812 __inline__ int __REDIRECT\\1 (\\2/",
2813     "-e", "s/extern int __REDIRECT\\(_NTH\\)\\{0,1\\} (\\([lf]stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
2814 extern\\\n\
2815 #endif\\\n\
2816 __inline__ int __REDIRECT\\1 (\\2/",
2817     "-e", "s/^extern __inline__ int/#ifdef __GNUC_GNU_INLINE__\\\n\
2818 extern\\\n\
2819 #endif\\\n\
2820 __inline__ int/",
2821     (char*)NULL };
2822
2823 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2824  *
2825  *  Description of Glibc_C99_Inline_3 fix
2826  */
2827 tSCC zGlibc_C99_Inline_3Name[] =
2828      "glibc_c99_inline_3";
2829
2830 /*
2831  *  File name selection pattern
2832  */
2833 tSCC zGlibc_C99_Inline_3List[] =
2834   "bits/string2.h\0*/bits/string2.h\0";
2835 /*
2836  *  Machine/OS name selection pattern
2837  */
2838 #define apzGlibc_C99_Inline_3Machs (const char**)NULL
2839
2840 /*
2841  *  content selection pattern - do fix if pattern found
2842  */
2843 tSCC zGlibc_C99_Inline_3Select0[] =
2844        "extern __inline";
2845
2846 /*
2847  *  content bypass pattern - skip fix if pattern found
2848  */
2849 tSCC zGlibc_C99_Inline_3Bypass0[] =
2850        "__extern_inline|__GNU_STDC_INLINE__";
2851
2852 #define    GLIBC_C99_INLINE_3_TEST_CT  2
2853 static tTestDesc aGlibc_C99_Inline_3Tests[] = {
2854   { TT_NEGREP,   zGlibc_C99_Inline_3Bypass0, (regex_t*)NULL },
2855   { TT_EGREP,    zGlibc_C99_Inline_3Select0, (regex_t*)NULL }, };
2856
2857 /*
2858  *  Fix Command Arguments for Glibc_C99_Inline_3
2859  */
2860 static const char* apzGlibc_C99_Inline_3Patch[] = {
2861     "format",
2862     "# if defined(__cplusplus) || defined(__GNUC_STDC_INLINE__)",
2863     "^# ifdef __cplusplus$",
2864     (char*)NULL };
2865
2866 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2867  *
2868  *  Description of Glibc_C99_Inline_4 fix
2869  */
2870 tSCC zGlibc_C99_Inline_4Name[] =
2871      "glibc_c99_inline_4";
2872
2873 /*
2874  *  File name selection pattern
2875  */
2876 tSCC zGlibc_C99_Inline_4List[] =
2877   "sys/sysmacros.h\0*/sys/sysmacros.h\0wchar.h\0*/wchar.h\0";
2878 /*
2879  *  Machine/OS name selection pattern
2880  */
2881 #define apzGlibc_C99_Inline_4Machs (const char**)NULL
2882
2883 /*
2884  *  content selection pattern - do fix if pattern found
2885  */
2886 tSCC zGlibc_C99_Inline_4Select0[] =
2887        "(^| )extern __inline";
2888
2889 /*
2890  *  content bypass pattern - skip fix if pattern found
2891  */
2892 tSCC zGlibc_C99_Inline_4Bypass0[] =
2893        "__extern_inline|__gnu_inline__";
2894
2895 #define    GLIBC_C99_INLINE_4_TEST_CT  2
2896 static tTestDesc aGlibc_C99_Inline_4Tests[] = {
2897   { TT_NEGREP,   zGlibc_C99_Inline_4Bypass0, (regex_t*)NULL },
2898   { TT_EGREP,    zGlibc_C99_Inline_4Select0, (regex_t*)NULL }, };
2899
2900 /*
2901  *  Fix Command Arguments for Glibc_C99_Inline_4
2902  */
2903 static const char* apzGlibc_C99_Inline_4Patch[] = {
2904     "format",
2905     "%0 __attribute__ ((__gnu_inline__))",
2906     (char*)NULL };
2907
2908 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2909  *
2910  *  Description of Glibc_Mutex_Init fix
2911  */
2912 tSCC zGlibc_Mutex_InitName[] =
2913      "glibc_mutex_init";
2914
2915 /*
2916  *  File name selection pattern
2917  */
2918 tSCC zGlibc_Mutex_InitList[] =
2919   "pthread.h\0";
2920 /*
2921  *  Machine/OS name selection pattern
2922  */
2923 #define apzGlibc_Mutex_InitMachs (const char**)NULL
2924
2925 /*
2926  *  content selection pattern - do fix if pattern found
2927  */
2928 tSCC zGlibc_Mutex_InitSelect0[] =
2929        "\\{ *\\{ *0, *\\} *\\}";
2930
2931 #define    GLIBC_MUTEX_INIT_TEST_CT  1
2932 static tTestDesc aGlibc_Mutex_InitTests[] = {
2933   { TT_EGREP,    zGlibc_Mutex_InitSelect0, (regex_t*)NULL }, };
2934
2935 /*
2936  *  Fix Command Arguments for Glibc_Mutex_Init
2937  */
2938 static const char* apzGlibc_Mutex_InitPatch[] = { sed_cmd_z,
2939     "-e", "/define[ \t]\\{1,\\}PTHREAD_MUTEX_INITIALIZER[ \t]*\\\\/{\n\
2940 N\n\
2941 s/{ { 0, } }/{ { 0, 0, 0, 0, 0, 0 } }/\n\
2942 }",
2943     "-e", "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(RECURSIVE\\)_NP\\) }/{ \\1, 0 }/",
2944     "-e", "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(ERRORCHECK\\)_NP\\) }/{ \\1, 0 }/",
2945     "-e", "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(ADAPTIVE\\)_NP\\) }/{ \\1, 0 }/",
2946     "-e", "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(RECURSIVE\\)_NP\\) }/{ \\1, 0, 0 }/",
2947     "-e", "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(ERRORCHECK\\)_NP\\) }/{ \\1, 0, 0 }/",
2948     "-e", "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(ADAPTIVE\\)_NP\\) }/{ \\1, 0, 0 }/",
2949     "-e", "/define[ \t]\\{1,\\}PTHREAD_RWLOCK_INITIALIZER[ \t]*\\\\/N;s/^[ \t]*#[ \t]*\\(define[ \t]\\{1,\\}PTHREAD_RWLOCK_INITIALIZER[ \t]*\\\\\\)\\n[ \t]*{ { 0, } }/# if __WORDSIZE == 64\\\n\
2950 #  \\1\\\n\
2951   { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }\\\n\
2952 # else\\\n\
2953 #  \\1\\\n\
2954   { { 0, 0, 0, 0, 0, 0, 0, 0 } }\\\n\
2955 # endif/",
2956     "-e", "s/{ \\(0, 0, 0, 0, 0, 0, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP\\) }/{ \\1, 0 }/",
2957     "-e", "/define[ \t]\\{1,\\}PTHREAD_COND_INITIALIZER/s/{ { 0, } }/{ { 0, 0, 0, 0, 0, (void *) 0, 0, 0 } }/",
2958     (char*)NULL };
2959
2960 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2961  *
2962  *  Description of Glibc_Stdint fix
2963  */
2964 tSCC zGlibc_StdintName[] =
2965      "glibc_stdint";
2966
2967 /*
2968  *  File name selection pattern
2969  */
2970 tSCC zGlibc_StdintList[] =
2971   "stdint.h\0";
2972 /*
2973  *  Machine/OS name selection pattern
2974  */
2975 #define apzGlibc_StdintMachs (const char**)NULL
2976
2977 /*
2978  *  content selection pattern - do fix if pattern found
2979  */
2980 tSCC zGlibc_StdintSelect0[] =
2981        "GNU C Library";
2982
2983 #define    GLIBC_STDINT_TEST_CT  1
2984 static tTestDesc aGlibc_StdintTests[] = {
2985   { TT_EGREP,    zGlibc_StdintSelect0, (regex_t*)NULL }, };
2986
2987 /*
2988  *  Fix Command Arguments for Glibc_Stdint
2989  */
2990 static const char* apzGlibc_StdintPatch[] = {
2991     "format",
2992     "# define UINT8_C(c)\tc\n\
2993 # define UINT16_C(c)\tc",
2994     "# define UINT8_C\\(c\\)\tc ## U\n\
2995 # define UINT16_C\\(c\\)\tc ## U",
2996     (char*)NULL };
2997
2998 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2999  *
3000  *  Description of Glibc_Strncpy fix
3001  */
3002 tSCC zGlibc_StrncpyName[] =
3003      "glibc_strncpy";
3004
3005 /*
3006  *  File name selection pattern
3007  */
3008 tSCC zGlibc_StrncpyList[] =
3009   "bits/string2.h\0";
3010 /*
3011  *  Machine/OS name selection pattern
3012  */
3013 #define apzGlibc_StrncpyMachs (const char**)NULL
3014
3015 /*
3016  *  content bypass pattern - skip fix if pattern found
3017  */
3018 tSCC zGlibc_StrncpyBypass0[] =
3019        "__builtin_strncpy";
3020
3021 #define    GLIBC_STRNCPY_TEST_CT  1
3022 static tTestDesc aGlibc_StrncpyTests[] = {
3023   { TT_NEGREP,   zGlibc_StrncpyBypass0, (regex_t*)NULL }, };
3024
3025 /*
3026  *  Fix Command Arguments for Glibc_Strncpy
3027  */
3028 static const char* apzGlibc_StrncpyPatch[] = {
3029     "format",
3030     "#  define strncpy(dest, src, n) __builtin_strncpy (dest, src, n)",
3031     "#  define strncpy([^\n\
3032 ]*\\\\\n\
3033 )*[^\n\
3034 ]*",
3035     (char*)NULL };
3036
3037 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3038  *
3039  *  Description of Glibc_Tgmath fix
3040  */
3041 tSCC zGlibc_TgmathName[] =
3042      "glibc_tgmath";
3043
3044 /*
3045  *  File name selection pattern
3046  */
3047 tSCC zGlibc_TgmathList[] =
3048   "tgmath.h\0";
3049 /*
3050  *  Machine/OS name selection pattern
3051  */
3052 #define apzGlibc_TgmathMachs (const char**)NULL
3053
3054 /*
3055  *  content selection pattern - do fix if pattern found
3056  */
3057 tSCC zGlibc_TgmathSelect0[] =
3058        "\\(\\(\\(type\\) 0.25\\) && \\(\\(type\\) 0.25 - 1\\)\\)";
3059
3060 /*
3061  *  content bypass pattern - skip fix if pattern found
3062  */
3063 tSCC zGlibc_TgmathBypass0[] =
3064        "__floating_type\\(type\\) \\\\\n\
3065 .*__builtin_classify_type";
3066
3067 #define    GLIBC_TGMATH_TEST_CT  2
3068 static tTestDesc aGlibc_TgmathTests[] = {
3069   { TT_NEGREP,   zGlibc_TgmathBypass0, (regex_t*)NULL },
3070   { TT_EGREP,    zGlibc_TgmathSelect0, (regex_t*)NULL }, };
3071
3072 /*
3073  *  Fix Command Arguments for Glibc_Tgmath
3074  */
3075 static const char* apzGlibc_TgmathPatch[] = {
3076     "format",
3077     "(__builtin_classify_type ((type) 0) == 8 || (__builtin_classify_type ((type) 0) == 9 && __builtin_classify_type (__real__ ((type) 0)) == 8))",
3078     (char*)NULL };
3079
3080 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3081  *
3082  *  Description of Gnu_Types fix
3083  */
3084 tSCC zGnu_TypesName[] =
3085      "gnu_types";
3086
3087 /*
3088  *  File name selection pattern
3089  */
3090 tSCC zGnu_TypesList[] =
3091   "sys/types.h\0stdlib.h\0sys/stdtypes.h\0stddef.h\0memory.h\0unistd.h\0";
3092 /*
3093  *  Machine/OS name selection pattern
3094  */
3095 tSCC* apzGnu_TypesMachs[] = {
3096         "*-*-solaris2.1[0-9]*",
3097         (const char*)NULL };
3098
3099 /*
3100  *  content selection pattern - do fix if pattern found
3101  */
3102 tSCC zGnu_TypesSelect0[] =
3103        "^[ \t]*typedef[ \t]+.*[ \t](ptrdiff|size|wchar)_t;";
3104
3105 /*
3106  *  content bypass pattern - skip fix if pattern found
3107  */
3108 tSCC zGnu_TypesBypass0[] =
3109        "_GCC_(PTRDIFF|SIZE|WCHAR)_T";
3110
3111 #define    GNU_TYPES_TEST_CT  2
3112 static tTestDesc aGnu_TypesTests[] = {
3113   { TT_NEGREP,   zGnu_TypesBypass0, (regex_t*)NULL },
3114   { TT_EGREP,    zGnu_TypesSelect0, (regex_t*)NULL }, };
3115
3116 /*
3117  *  Fix Command Arguments for Gnu_Types
3118  */
3119 static const char* apzGnu_TypesPatch[] = {
3120     "gnu_type",
3121     (char*)NULL };
3122
3123 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3124  *
3125  *  Description of Hp_Inline fix
3126  */
3127 tSCC zHp_InlineName[] =
3128      "hp_inline";
3129
3130 /*
3131  *  File name selection pattern
3132  */
3133 tSCC zHp_InlineList[] =
3134   "sys/spinlock.h\0machine/machparam.h\0";
3135 /*
3136  *  Machine/OS name selection pattern
3137  */
3138 #define apzHp_InlineMachs (const char**)NULL
3139
3140 /*
3141  *  content selection pattern - do fix if pattern found
3142  */
3143 tSCC zHp_InlineSelect0[] =
3144        "[ \t]*#[ \t]*include[ \t]+\"\\.\\./machine/";
3145
3146 #define    HP_INLINE_TEST_CT  1
3147 static tTestDesc aHp_InlineTests[] = {
3148   { TT_EGREP,    zHp_InlineSelect0, (regex_t*)NULL }, };
3149
3150 /*
3151  *  Fix Command Arguments for Hp_Inline
3152  */
3153 static const char* apzHp_InlinePatch[] = {
3154     "format",
3155     "%1<machine/%2.h>",
3156     "([ \t]*#[ \t]*include[ \t]+)\"\\.\\./machine/([a-z]+)\\.h\"",
3157     (char*)NULL };
3158
3159 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3160  *
3161  *  Description of Hp_Sysfile fix
3162  */
3163 tSCC zHp_SysfileName[] =
3164      "hp_sysfile";
3165
3166 /*
3167  *  File name selection pattern
3168  */
3169 tSCC zHp_SysfileList[] =
3170   "sys/file.h\0";
3171 /*
3172  *  Machine/OS name selection pattern
3173  */
3174 #define apzHp_SysfileMachs (const char**)NULL
3175
3176 /*
3177  *  content selection pattern - do fix if pattern found
3178  */
3179 tSCC zHp_SysfileSelect0[] =
3180        "HPUX_SOURCE";
3181
3182 #define    HP_SYSFILE_TEST_CT  1
3183 static tTestDesc aHp_SysfileTests[] = {
3184   { TT_EGREP,    zHp_SysfileSelect0, (regex_t*)NULL }, };
3185
3186 /*
3187  *  Fix Command Arguments for Hp_Sysfile
3188  */
3189 static const char* apzHp_SysfilePatch[] = {
3190     "format",
3191     "(struct file *, ...)",
3192     "\\(\\.\\.\\.\\)",
3193     (char*)NULL };
3194
3195 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3196  *
3197  *  Description of Hppa_Hpux_Fp_Macros fix
3198  */
3199 tSCC zHppa_Hpux_Fp_MacrosName[] =
3200      "hppa_hpux_fp_macros";
3201
3202 /*
3203  *  File name selection pattern
3204  */
3205 tSCC zHppa_Hpux_Fp_MacrosList[] =
3206   "math.h\0";
3207 /*
3208  *  Machine/OS name selection pattern
3209  */
3210 tSCC* apzHppa_Hpux_Fp_MacrosMachs[] = {
3211         "hppa*-hp-hpux11*",
3212         (const char*)NULL };
3213
3214 /*
3215  *  content selection pattern - do fix if pattern found
3216  */
3217 tSCC zHppa_Hpux_Fp_MacrosSelect0[] =
3218        "#[ \t]*define[ \t]*FP_NORMAL.*\n\
3219 #[ \t]*define[ \t]*FP_ZERO.*\n\
3220 #[ \t]*define[ \t]*FP_INFINITE.*\n\
3221 #[ \t]*define[ \t]*FP_SUBNORMAL.*\n\
3222 #[ \t]*define[ \t]*FP_NAN.*\n";
3223
3224 #define    HPPA_HPUX_FP_MACROS_TEST_CT  1
3225 static tTestDesc aHppa_Hpux_Fp_MacrosTests[] = {
3226   { TT_EGREP,    zHppa_Hpux_Fp_MacrosSelect0, (regex_t*)NULL }, };
3227
3228 /*
3229  *  Fix Command Arguments for Hppa_Hpux_Fp_Macros
3230  */
3231 static const char* apzHppa_Hpux_Fp_MacrosPatch[] = {
3232     "format",
3233     "#endif /* _INCLUDE_HPUX_SOURCE */\n\n\
3234 #if defined(_INCLUDE_HPUX_SOURCE) || \\\n\
3235    (defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L))\n\
3236 %0#endif\n\n\
3237 #ifdef _INCLUDE_HPUX_SOURCE\n",
3238     (char*)NULL };
3239
3240 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3241  *
3242  *  Description of Hpux10_Cpp_Pow_Inline fix
3243  */
3244 tSCC zHpux10_Cpp_Pow_InlineName[] =
3245      "hpux10_cpp_pow_inline";
3246
3247 /*
3248  *  File name selection pattern
3249  */
3250 tSCC zHpux10_Cpp_Pow_InlineList[] =
3251   "fixinc-test-limits.h\0math.h\0";
3252 /*
3253  *  Machine/OS name selection pattern
3254  */
3255 #define apzHpux10_Cpp_Pow_InlineMachs (const char**)NULL
3256
3257 /*
3258  *  content selection pattern - do fix if pattern found
3259  */
3260 tSCC zHpux10_Cpp_Pow_InlineSelect0[] =
3261        "^# +ifdef +__cplusplus\n\
3262  +\\}\n\
3263  +inline +double +pow\\(double +__d,int +__expon\\) +\\{\n\
3264 [ \t]+return +pow\\(__d,\\(double\\)__expon\\);\n\
3265  +\\}\n\
3266  +extern +\"C\" +\\{\n\
3267 #else\n\
3268 # +endif";
3269
3270 #define    HPUX10_CPP_POW_INLINE_TEST_CT  1
3271 static tTestDesc aHpux10_Cpp_Pow_InlineTests[] = {
3272   { TT_EGREP,    zHpux10_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
3273
3274 /*
3275  *  Fix Command Arguments for Hpux10_Cpp_Pow_Inline
3276  */
3277 static const char* apzHpux10_Cpp_Pow_InlinePatch[] = {
3278     "format",
3279     "",
3280     (char*)NULL };
3281
3282 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3283  *
3284  *  Description of Hpux11_Cpp_Pow_Inline fix
3285  */
3286 tSCC zHpux11_Cpp_Pow_InlineName[] =
3287      "hpux11_cpp_pow_inline";
3288
3289 /*
3290  *  File name selection pattern
3291  */
3292 tSCC zHpux11_Cpp_Pow_InlineList[] =
3293   "math.h\0";
3294 /*
3295  *  Machine/OS name selection pattern
3296  */
3297 #define apzHpux11_Cpp_Pow_InlineMachs (const char**)NULL
3298
3299 /*
3300  *  content selection pattern - do fix if pattern found
3301  */
3302 tSCC zHpux11_Cpp_Pow_InlineSelect0[] =
3303        " +inline double pow\\(double d,int expon\\) \\{\n\
3304  +return pow\\(d, \\(double\\)expon\\);\n\
3305  +\\}\n";
3306
3307 #define    HPUX11_CPP_POW_INLINE_TEST_CT  1
3308 static tTestDesc aHpux11_Cpp_Pow_InlineTests[] = {
3309   { TT_EGREP,    zHpux11_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
3310
3311 /*
3312  *  Fix Command Arguments for Hpux11_Cpp_Pow_Inline
3313  */
3314 static const char* apzHpux11_Cpp_Pow_InlinePatch[] = {
3315     "format",
3316     "",
3317     (char*)NULL };
3318
3319 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3320  *
3321  *  Description of Hpux10_Ctype_Declarations1 fix
3322  */
3323 tSCC zHpux10_Ctype_Declarations1Name[] =
3324      "hpux10_ctype_declarations1";
3325
3326 /*
3327  *  File name selection pattern
3328  */
3329 tSCC zHpux10_Ctype_Declarations1List[] =
3330   "ctype.h\0";
3331 /*
3332  *  Machine/OS name selection pattern
3333  */
3334 #define apzHpux10_Ctype_Declarations1Machs (const char**)NULL
3335
3336 /*
3337  *  content selection pattern - do fix if pattern found
3338  */
3339 tSCC zHpux10_Ctype_Declarations1Select0[] =
3340        "^#[ \t]*define _toupper\\(__c\\)[ \t]*__toupper\\(__c\\)";
3341
3342 /*
3343  *  content bypass pattern - skip fix if pattern found
3344  */
3345 tSCC zHpux10_Ctype_Declarations1Bypass0[] =
3346        "^[ \t]*extern[ \t]*int[ \t]*__tolower[ \t]*\\(";
3347
3348 #define    HPUX10_CTYPE_DECLARATIONS1_TEST_CT  2
3349 static tTestDesc aHpux10_Ctype_Declarations1Tests[] = {
3350   { TT_NEGREP,   zHpux10_Ctype_Declarations1Bypass0, (regex_t*)NULL },
3351   { TT_EGREP,    zHpux10_Ctype_Declarations1Select0, (regex_t*)NULL }, };
3352
3353 /*
3354  *  Fix Command Arguments for Hpux10_Ctype_Declarations1
3355  */
3356 static const char* apzHpux10_Ctype_Declarations1Patch[] = {
3357     "format",
3358     "#ifdef _PROTOTYPES\n\
3359 extern int __tolower(int);\n\
3360 extern int __toupper(int);\n\
3361 #else /* NOT _PROTOTYPES */\n\
3362 extern int __tolower();\n\
3363 extern int __toupper();\n\
3364 #endif /* _PROTOTYPES */\n\n\
3365 %0\n",
3366     (char*)NULL };
3367
3368 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3369  *
3370  *  Description of Hpux10_Ctype_Declarations2 fix
3371  */
3372 tSCC zHpux10_Ctype_Declarations2Name[] =
3373      "hpux10_ctype_declarations2";
3374
3375 /*
3376  *  File name selection pattern
3377  */
3378 tSCC zHpux10_Ctype_Declarations2List[] =
3379   "ctype.h\0";
3380 /*
3381  *  Machine/OS name selection pattern
3382  */
3383 #define apzHpux10_Ctype_Declarations2Machs (const char**)NULL
3384
3385 /*
3386  *  content selection pattern - do fix if pattern found
3387  */
3388 tSCC zHpux10_Ctype_Declarations2Select0[] =
3389        "^#  if defined\\(_SB_CTYPE_MACROS\\) && \\!defined\\(__lint\\)";
3390
3391 /*
3392  *  content bypass pattern - skip fix if pattern found
3393  */
3394 tSCC zHpux10_Ctype_Declarations2Bypass0[] =
3395        "^[ \t]*extern[ \t]*int[ \t]*_isalnum[ \t]*\\(";
3396
3397 #define    HPUX10_CTYPE_DECLARATIONS2_TEST_CT  2
3398 static tTestDesc aHpux10_Ctype_Declarations2Tests[] = {
3399   { TT_NEGREP,   zHpux10_Ctype_Declarations2Bypass0, (regex_t*)NULL },
3400   { TT_EGREP,    zHpux10_Ctype_Declarations2Select0, (regex_t*)NULL }, };
3401
3402 /*
3403  *  Fix Command Arguments for Hpux10_Ctype_Declarations2
3404  */
3405 static const char* apzHpux10_Ctype_Declarations2Patch[] = {
3406     "format",
3407     "%0\n\n\
3408 #ifdef _PROTOTYPES\n\
3409      extern int _isalnum(int);\n\
3410      extern int _isalpha(int);\n\
3411      extern int _iscntrl(int);\n\
3412      extern int _isdigit(int);\n\
3413      extern int _isgraph(int);\n\
3414      extern int _islower(int);\n\
3415      extern int _isprint(int);\n\
3416      extern int _ispunct(int);\n\
3417      extern int _isspace(int);\n\
3418      extern int _isupper(int);\n\
3419      extern int _isxdigit(int);\n\
3420 #  else /* not _PROTOTYPES */\n\
3421      extern int _isalnum();\n\
3422      extern int _isalpha();\n\
3423      extern int _iscntrl();\n\
3424      extern int _isdigit();\n\
3425      extern int _isgraph();\n\
3426      extern int _islower();\n\
3427      extern int _isprint();\n\
3428      extern int _ispunct();\n\
3429      extern int _isspace();\n\
3430      extern int _isupper();\n\
3431      extern int _isxdigit();\n\
3432 #endif /* _PROTOTYPES */\n",
3433     (char*)NULL };
3434
3435 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3436  *
3437  *  Description of Hpux10_Stdio_Declarations fix
3438  */
3439 tSCC zHpux10_Stdio_DeclarationsName[] =
3440      "hpux10_stdio_declarations";
3441
3442 /*
3443  *  File name selection pattern
3444  */
3445 tSCC zHpux10_Stdio_DeclarationsList[] =
3446   "stdio.h\0";
3447 /*
3448  *  Machine/OS name selection pattern
3449  */
3450 #define apzHpux10_Stdio_DeclarationsMachs (const char**)NULL
3451
3452 /*
3453  *  content selection pattern - do fix if pattern found
3454  */
3455 tSCC zHpux10_Stdio_DeclarationsSelect0[] =
3456        "^#[ \t]*define _iob[ \t]*__iob";
3457
3458 /*
3459  *  content bypass pattern - skip fix if pattern found
3460  */
3461 tSCC zHpux10_Stdio_DeclarationsBypass0[] =
3462        "^[ \t]*extern[ \t]*int[ \t]*vsnprintf[ \t]*\\(";
3463
3464 #define    HPUX10_STDIO_DECLARATIONS_TEST_CT  2
3465 static tTestDesc aHpux10_Stdio_DeclarationsTests[] = {
3466   { TT_NEGREP,   zHpux10_Stdio_DeclarationsBypass0, (regex_t*)NULL },
3467   { TT_EGREP,    zHpux10_Stdio_DeclarationsSelect0, (regex_t*)NULL }, };
3468
3469 /*
3470  *  Fix Command Arguments for Hpux10_Stdio_Declarations
3471  */
3472 static const char* apzHpux10_Stdio_DeclarationsPatch[] = {
3473     "format",
3474     "%0\n\n\
3475 #  if defined(__STDC__) || defined(__cplusplus)\n\
3476      extern int snprintf(char *, size_t, const char *, ...);\n\
3477      extern int vsnprintf(char *, size_t, const char *, __va_list);\n\
3478 #  else /* not __STDC__) || __cplusplus */\n\
3479      extern int snprintf();\n\
3480      extern int vsnprintf();\n\
3481 #  endif /* __STDC__) || __cplusplus */\n",
3482     (char*)NULL };
3483
3484 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3485  *
3486  *  Description of Hpux11_Abs fix
3487  */
3488 tSCC zHpux11_AbsName[] =
3489      "hpux11_abs";
3490
3491 /*
3492  *  File name selection pattern
3493  */
3494 tSCC zHpux11_AbsList[] =
3495   "stdlib.h\0";
3496 /*
3497  *  Machine/OS name selection pattern
3498  */
3499 tSCC* apzHpux11_AbsMachs[] = {
3500         "*-hp-hpux11*",
3501         (const char*)NULL };
3502
3503 /*
3504  *  content selection pattern - do fix if pattern found
3505  */
3506 tSCC zHpux11_AbsSelect0[] =
3507        "ifndef _MATH_INCLUDED";
3508
3509 #define    HPUX11_ABS_TEST_CT  1
3510 static tTestDesc aHpux11_AbsTests[] = {
3511   { TT_EGREP,    zHpux11_AbsSelect0, (regex_t*)NULL }, };
3512
3513 /*
3514  *  Fix Command Arguments for Hpux11_Abs
3515  */
3516 static const char* apzHpux11_AbsPatch[] = {
3517     "format",
3518     "if !defined(_MATH_INCLUDED) || defined(__GNUG__)",
3519     (char*)NULL };
3520
3521 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3522  *
3523  *  Description of Hpux11_Fabsf fix
3524  */
3525 tSCC zHpux11_FabsfName[] =
3526      "hpux11_fabsf";
3527
3528 /*
3529  *  File name selection pattern
3530  */
3531 tSCC zHpux11_FabsfList[] =
3532   "math.h\0";
3533 /*
3534  *  Machine/OS name selection pattern
3535  */
3536 #define apzHpux11_FabsfMachs (const char**)NULL
3537
3538 /*
3539  *  content selection pattern - do fix if pattern found
3540  */
3541 tSCC zHpux11_FabsfSelect0[] =
3542        "^[ \t]*#[ \t]*define[ \t]+fabsf\\(.*";
3543
3544 /*
3545  *  content bypass pattern - skip fix if pattern found
3546  */
3547 tSCC zHpux11_FabsfBypass0[] =
3548        "__cplusplus";
3549
3550 #define    HPUX11_FABSF_TEST_CT  2
3551 static tTestDesc aHpux11_FabsfTests[] = {
3552   { TT_NEGREP,   zHpux11_FabsfBypass0, (regex_t*)NULL },
3553   { TT_EGREP,    zHpux11_FabsfSelect0, (regex_t*)NULL }, };
3554
3555 /*
3556  *  Fix Command Arguments for Hpux11_Fabsf
3557  */
3558 static const char* apzHpux11_FabsfPatch[] = {
3559     "format",
3560     "#ifndef __cplusplus\n\
3561 %0\n\
3562 #endif",
3563     (char*)NULL };
3564
3565 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3566  *
3567  *  Description of Hpux11_Pthread_Const fix
3568  */
3569 tSCC zHpux11_Pthread_ConstName[] =
3570      "hpux11_pthread_const";
3571
3572 /*
3573  *  File name selection pattern
3574  */
3575 tSCC zHpux11_Pthread_ConstList[] =
3576   "sys/pthread.h\0";
3577 /*
3578  *  Machine/OS name selection pattern
3579  */
3580 tSCC* apzHpux11_Pthread_ConstMachs[] = {
3581         "*-hp-hpux11.[0-3]*",
3582         (const char*)NULL };
3583
3584 /*
3585  *  content selection pattern - do fix if pattern found
3586  */
3587 tSCC zHpux11_Pthread_ConstSelect0[] =
3588        "^#define[ \t]*__POINTER_SET[ \t]*\\(\\(void \\*\\) 1LL\\)";
3589
3590 #define    HPUX11_PTHREAD_CONST_TEST_CT  1
3591 static tTestDesc aHpux11_Pthread_ConstTests[] = {
3592   { TT_EGREP,    zHpux11_Pthread_ConstSelect0, (regex_t*)NULL }, };
3593
3594 /*
3595  *  Fix Command Arguments for Hpux11_Pthread_Const
3596  */
3597 static const char* apzHpux11_Pthread_ConstPatch[] = {
3598     "format",
3599     "#define __POINTER_SET\t\t((void *) 1L)",
3600     (char*)NULL };
3601
3602 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3603  *
3604  *  Description of Hpux11_Size_T fix
3605  */
3606 tSCC zHpux11_Size_TName[] =
3607      "hpux11_size_t";
3608
3609 /*
3610  *  File name selection pattern
3611  */
3612 #define zHpux11_Size_TList (char*)NULL
3613 /*
3614  *  Machine/OS name selection pattern
3615  */
3616 tSCC* apzHpux11_Size_TMachs[] = {
3617         "*-hp-hpux11*",
3618         (const char*)NULL };
3619
3620 /*
3621  *  content selection pattern - do fix if pattern found
3622  */
3623 tSCC zHpux11_Size_TSelect0[] =
3624        "__size_t";
3625
3626 #define    HPUX11_SIZE_T_TEST_CT  1
3627 static tTestDesc aHpux11_Size_TTests[] = {
3628   { TT_EGREP,    zHpux11_Size_TSelect0, (regex_t*)NULL }, };
3629
3630 /*
3631  *  Fix Command Arguments for Hpux11_Size_T
3632  */
3633 static const char* apzHpux11_Size_TPatch[] = {
3634     "format",
3635     "_hpux_size_t",
3636     (char*)NULL };
3637
3638 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3639  *
3640  *  Description of Hpux11_Snprintf fix
3641  */
3642 tSCC zHpux11_SnprintfName[] =
3643      "hpux11_snprintf";
3644
3645 /*
3646  *  File name selection pattern
3647  */
3648 tSCC zHpux11_SnprintfList[] =
3649   "stdio.h\0";
3650 /*
3651  *  Machine/OS name selection pattern
3652  */
3653 #define apzHpux11_SnprintfMachs (const char**)NULL
3654
3655 /*
3656  *  content selection pattern - do fix if pattern found
3657  */
3658 tSCC zHpux11_SnprintfSelect0[] =
3659        "(extern int snprintf *\\(char *\\*, *(|__|_hpux_)size_t,) *(char *\\*, *\\.\\.\\.\\);)";
3660
3661 #define    HPUX11_SNPRINTF_TEST_CT  1
3662 static tTestDesc aHpux11_SnprintfTests[] = {
3663   { TT_EGREP,    zHpux11_SnprintfSelect0, (regex_t*)NULL }, };
3664
3665 /*
3666  *  Fix Command Arguments for Hpux11_Snprintf
3667  */
3668 static const char* apzHpux11_SnprintfPatch[] = {
3669     "format",
3670     "%1 const %3",
3671     (char*)NULL };
3672
3673 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3674  *
3675  *  Description of Hpux11_Vsnprintf fix
3676  */
3677 tSCC zHpux11_VsnprintfName[] =
3678      "hpux11_vsnprintf";
3679
3680 /*
3681  *  File name selection pattern
3682  */
3683 tSCC zHpux11_VsnprintfList[] =
3684   "stdio.h\0";
3685 /*
3686  *  Machine/OS name selection pattern
3687  */
3688 #define apzHpux11_VsnprintfMachs (const char**)NULL
3689
3690 /*
3691  *  content selection pattern - do fix if pattern found
3692  */
3693 tSCC zHpux11_VsnprintfSelect0[] =
3694        "(extern int vsnprintf\\(char \\*, _[hpux]*_size_t, const char \\*,) __va__list\\);";
3695
3696 #define    HPUX11_VSNPRINTF_TEST_CT  1
3697 static tTestDesc aHpux11_VsnprintfTests[] = {
3698   { TT_EGREP,    zHpux11_VsnprintfSelect0, (regex_t*)NULL }, };
3699
3700 /*
3701  *  Fix Command Arguments for Hpux11_Vsnprintf
3702  */
3703 static const char* apzHpux11_VsnprintfPatch[] = {
3704     "format",
3705     "%1 __va_list);",
3706     (char*)NULL };
3707
3708 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3709  *
3710  *  Description of Hpux8_Bogus_Inlines fix
3711  */
3712 tSCC zHpux8_Bogus_InlinesName[] =
3713      "hpux8_bogus_inlines";
3714
3715 /*
3716  *  File name selection pattern
3717  */
3718 tSCC zHpux8_Bogus_InlinesList[] =
3719   "math.h\0";
3720 /*
3721  *  Machine/OS name selection pattern
3722  */
3723 #define apzHpux8_Bogus_InlinesMachs (const char**)NULL
3724
3725 /*
3726  *  content selection pattern - do fix if pattern found
3727  */
3728 tSCC zHpux8_Bogus_InlinesSelect0[] =
3729        "inline";
3730
3731 /*
3732  *  content bypass pattern - skip fix if pattern found
3733  */
3734 tSCC zHpux8_Bogus_InlinesBypass0[] =
3735        "__GNUG__";
3736
3737 #define    HPUX8_BOGUS_INLINES_TEST_CT  2
3738 static tTestDesc aHpux8_Bogus_InlinesTests[] = {
3739   { TT_NEGREP,   zHpux8_Bogus_InlinesBypass0, (regex_t*)NULL },
3740   { TT_EGREP,    zHpux8_Bogus_InlinesSelect0, (regex_t*)NULL }, };
3741
3742 /*
3743  *  Fix Command Arguments for Hpux8_Bogus_Inlines
3744  */
3745 static const char* apzHpux8_Bogus_InlinesPatch[] = { sed_cmd_z,
3746     "-e", "s@inline int abs(int [a-z][a-z]*) {.*}@extern \"C\" int abs(int);@",
3747     "-e", "s@inline double abs(double [a-z][a-z]*) {.*}@@",
3748     "-e", "s@inline int sqr(int [a-z][a-z]*) {.*}@@",
3749     "-e", "s@inline double sqr(double [a-z][a-z]*) {.*}@@",
3750     (char*)NULL };
3751
3752 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3753  *
3754  *  Description of Hpux_Ctype_Macros fix
3755  */
3756 tSCC zHpux_Ctype_MacrosName[] =
3757      "hpux_ctype_macros";
3758
3759 /*
3760  *  File name selection pattern
3761  */
3762 tSCC zHpux_Ctype_MacrosList[] =
3763   "ctype.h\0";
3764 /*
3765  *  Machine/OS name selection pattern
3766  */
3767 #define apzHpux_Ctype_MacrosMachs (const char**)NULL
3768
3769 /*
3770  *  content selection pattern - do fix if pattern found
3771  */
3772 tSCC zHpux_Ctype_MacrosSelect0[] =
3773        "((: |\\()__SB_masks \\? )(__SB_masks\\[__(alnum|c)\\] & _IS)";
3774
3775 #define    HPUX_CTYPE_MACROS_TEST_CT  1
3776 static tTestDesc aHpux_Ctype_MacrosTests[] = {
3777   { TT_EGREP,    zHpux_Ctype_MacrosSelect0, (regex_t*)NULL }, };
3778
3779 /*
3780  *  Fix Command Arguments for Hpux_Ctype_Macros
3781  */
3782 static const char* apzHpux_Ctype_MacrosPatch[] = {
3783     "format",
3784     "%1(int)%3",
3785     (char*)NULL };
3786
3787 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3788  *
3789  *  Description of Hpux_Htonl fix
3790  */
3791 tSCC zHpux_HtonlName[] =
3792      "hpux_htonl";
3793
3794 /*
3795  *  File name selection pattern
3796  */
3797 tSCC zHpux_HtonlList[] =
3798   "netinet/in.h\0";
3799 /*
3800  *  Machine/OS name selection pattern
3801  */
3802 #define apzHpux_HtonlMachs (const char**)NULL
3803
3804 /*
3805  *  content selection pattern - do fix if pattern found
3806  */
3807 tSCC zHpux_HtonlSelect0[] =
3808        "#ifndef _XOPEN_SOURCE_EXTENDED[ \t]*\n\
3809 (/\\*\n\
3810  \\* Macros for number representation conversion\\.\n\
3811  \\*/\n\
3812 #ifndef ntohl)";
3813
3814 #define    HPUX_HTONL_TEST_CT  1
3815 static tTestDesc aHpux_HtonlTests[] = {
3816   { TT_EGREP,    zHpux_HtonlSelect0, (regex_t*)NULL }, };
3817
3818 /*
3819  *  Fix Command Arguments for Hpux_Htonl
3820  */
3821 static const char* apzHpux_HtonlPatch[] = {
3822     "format",
3823     "#if 1\n\
3824 %1",
3825     (char*)NULL };
3826
3827 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3828  *
3829  *  Description of Hpux_Long_Double fix
3830  */
3831 tSCC zHpux_Long_DoubleName[] =
3832      "hpux_long_double";
3833
3834 /*
3835  *  File name selection pattern
3836  */
3837 tSCC zHpux_Long_DoubleList[] =
3838   "stdlib.h\0";
3839 /*
3840  *  Machine/OS name selection pattern
3841  */
3842 tSCC* apzHpux_Long_DoubleMachs[] = {
3843         "*-*-hpux10*",
3844         "*-*-hpux11.[012]*",
3845         (const char*)NULL };
3846
3847 /*
3848  *  content selection pattern - do fix if pattern found
3849  */
3850 tSCC zHpux_Long_DoubleSelect0[] =
3851        "extern[ \t]long_double[ \t]strtold";
3852
3853 /*
3854  *  content bypass pattern - skip fix if pattern found
3855  */
3856 tSCC zHpux_Long_DoubleBypass0[] =
3857        "long_double_t";
3858
3859 #define    HPUX_LONG_DOUBLE_TEST_CT  2
3860 static tTestDesc aHpux_Long_DoubleTests[] = {
3861   { TT_NEGREP,   zHpux_Long_DoubleBypass0, (regex_t*)NULL },
3862   { TT_EGREP,    zHpux_Long_DoubleSelect0, (regex_t*)NULL }, };
3863
3864 /*
3865  *  Fix Command Arguments for Hpux_Long_Double
3866  */
3867 static const char* apzHpux_Long_DoublePatch[] = { sed_cmd_z,
3868     "-e", "/^#[ \t]*ifndef _LONG_DOUBLE/,/\\/\\* _LONG_DOUBLE \\*\\//D",
3869     "-e", "s/long_double/long double/g",
3870     (char*)NULL };
3871
3872 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3873  *
3874  *  Description of Hpux_Long_Double_2 fix
3875  */
3876 tSCC zHpux_Long_Double_2Name[] =
3877      "hpux_long_double_2";
3878
3879 /*
3880  *  File name selection pattern
3881  */
3882 tSCC zHpux_Long_Double_2List[] =
3883   "stdlib.h\0";
3884 /*
3885  *  Machine/OS name selection pattern
3886  */
3887 tSCC* apzHpux_Long_Double_2Machs[] = {
3888         "hppa*-*-hpux11.3*",
3889         (const char*)NULL };
3890
3891 /*
3892  *  content selection pattern - do fix if pattern found
3893  */
3894 tSCC zHpux_Long_Double_2Select0[] =
3895        "#[ \t]*if[ \t]*!defined\\(__ia64\\) \\|\\| defined\\(_PROTOTYPES\\) \\|\\| defined\\(_LONG_DOUBLE_STRUCT\\)";
3896
3897 #define    HPUX_LONG_DOUBLE_2_TEST_CT  1
3898 static tTestDesc aHpux_Long_Double_2Tests[] = {
3899   { TT_EGREP,    zHpux_Long_Double_2Select0, (regex_t*)NULL }, };
3900
3901 /*
3902  *  Fix Command Arguments for Hpux_Long_Double_2
3903  */
3904 static const char* apzHpux_Long_Double_2Patch[] = {
3905     "format",
3906     "#  if !defined(_PROTOTYPES) || defined(_LONG_DOUBLE_STRUCT)",
3907     (char*)NULL };
3908
3909 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3910  *
3911  *  Description of Hpux_Systime fix
3912  */
3913 tSCC zHpux_SystimeName[] =
3914      "hpux_systime";
3915
3916 /*
3917  *  File name selection pattern
3918  */
3919 tSCC zHpux_SystimeList[] =
3920   "sys/time.h\0";
3921 /*
3922  *  Machine/OS name selection pattern
3923  */
3924 #define apzHpux_SystimeMachs (const char**)NULL
3925
3926 /*
3927  *  content selection pattern - do fix if pattern found
3928  */
3929 tSCC zHpux_SystimeSelect0[] =
3930        "^extern struct sigevent;";
3931
3932 #define    HPUX_SYSTIME_TEST_CT  1
3933 static tTestDesc aHpux_SystimeTests[] = {
3934   { TT_EGREP,    zHpux_SystimeSelect0, (regex_t*)NULL }, };
3935
3936 /*
3937  *  Fix Command Arguments for Hpux_Systime
3938  */
3939 static const char* apzHpux_SystimePatch[] = {
3940     "format",
3941     "struct sigevent;",
3942     (char*)NULL };
3943
3944 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3945  *
3946  *  Description of Hpux_Spu_Info fix
3947  */
3948 tSCC zHpux_Spu_InfoName[] =
3949      "hpux_spu_info";
3950
3951 /*
3952  *  File name selection pattern
3953  */
3954 tSCC zHpux_Spu_InfoList[] =
3955   "ia64/sys/getppdp.h\0*/sys/getppdp.h\0";
3956 /*
3957  *  Machine/OS name selection pattern
3958  */
3959 tSCC* apzHpux_Spu_InfoMachs[] = {
3960         "*-hp-hpux*",
3961         (const char*)NULL };
3962
3963 /*
3964  *  content selection pattern - do fix if pattern found
3965  */
3966 tSCC zHpux_Spu_InfoSelect0[] =
3967        "^.*extern.*spu_info.*";
3968
3969 #define    HPUX_SPU_INFO_TEST_CT  1
3970 static tTestDesc aHpux_Spu_InfoTests[] = {
3971   { TT_EGREP,    zHpux_Spu_InfoSelect0, (regex_t*)NULL }, };
3972
3973 /*
3974  *  Fix Command Arguments for Hpux_Spu_Info
3975  */
3976 static const char* apzHpux_Spu_InfoPatch[] = {
3977     "format",
3978     "#ifdef _KERNEL\n\
3979 %0\n\
3980 #endif",
3981     (char*)NULL };
3982
3983 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3984  *
3985  *  Description of Hpux11_Extern_Sendfile fix
3986  */
3987 tSCC zHpux11_Extern_SendfileName[] =
3988      "hpux11_extern_sendfile";
3989
3990 /*
3991  *  File name selection pattern
3992  */
3993 tSCC zHpux11_Extern_SendfileList[] =
3994   "sys/socket.h\0";
3995 /*
3996  *  Machine/OS name selection pattern
3997  */
3998 tSCC* apzHpux11_Extern_SendfileMachs[] = {
3999         "*-hp-hpux11.[12]*",
4000         (const char*)NULL };
4001
4002 /*
4003  *  content selection pattern - do fix if pattern found
4004  */
4005 tSCC zHpux11_Extern_SendfileSelect0[] =
4006        "^[ \t]*extern sbsize_t sendfile.*\n\
4007 .*, int\\)\\);\n";
4008
4009 #define    HPUX11_EXTERN_SENDFILE_TEST_CT  1
4010 static tTestDesc aHpux11_Extern_SendfileTests[] = {
4011   { TT_EGREP,    zHpux11_Extern_SendfileSelect0, (regex_t*)NULL }, };
4012
4013 /*
4014  *  Fix Command Arguments for Hpux11_Extern_Sendfile
4015  */
4016 static const char* apzHpux11_Extern_SendfilePatch[] = {
4017     "format",
4018     "#ifndef _APP32_64BIT_OFF_T\n\
4019 %0#endif\n",
4020     (char*)NULL };
4021
4022 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4023  *
4024  *  Description of Hpux11_Extern_Sendpath fix
4025  */
4026 tSCC zHpux11_Extern_SendpathName[] =
4027      "hpux11_extern_sendpath";
4028
4029 /*
4030  *  File name selection pattern
4031  */
4032 tSCC zHpux11_Extern_SendpathList[] =
4033   "sys/socket.h\0";
4034 /*
4035  *  Machine/OS name selection pattern
4036  */
4037 tSCC* apzHpux11_Extern_SendpathMachs[] = {
4038         "*-hp-hpux11.[12]*",
4039         (const char*)NULL };
4040
4041 /*
4042  *  content selection pattern - do fix if pattern found
4043  */
4044 tSCC zHpux11_Extern_SendpathSelect0[] =
4045        "^[ \t]*extern sbsize_t sendpath.*\n\
4046 .*, int\\)\\);\n";
4047
4048 #define    HPUX11_EXTERN_SENDPATH_TEST_CT  1
4049 static tTestDesc aHpux11_Extern_SendpathTests[] = {
4050   { TT_EGREP,    zHpux11_Extern_SendpathSelect0, (regex_t*)NULL }, };
4051
4052 /*
4053  *  Fix Command Arguments for Hpux11_Extern_Sendpath
4054  */
4055 static const char* apzHpux11_Extern_SendpathPatch[] = {
4056     "format",
4057     "#ifndef _APP32_64BIT_OFF_T\n\
4058 %0#endif\n",
4059     (char*)NULL };
4060
4061 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4062  *
4063  *  Description of Hpux_Extern_Errno fix
4064  */
4065 tSCC zHpux_Extern_ErrnoName[] =
4066      "hpux_extern_errno";
4067
4068 /*
4069  *  File name selection pattern
4070  */
4071 tSCC zHpux_Extern_ErrnoList[] =
4072   "errno.h\0";
4073 /*
4074  *  Machine/OS name selection pattern
4075  */
4076 tSCC* apzHpux_Extern_ErrnoMachs[] = {
4077         "*-hp-hpux10.*",
4078         "*-hp-hpux11.[0-2]*",
4079         (const char*)NULL };
4080
4081 /*
4082  *  content selection pattern - do fix if pattern found
4083  */
4084 tSCC zHpux_Extern_ErrnoSelect0[] =
4085        "^[ \t]*extern int errno;$";
4086
4087 #define    HPUX_EXTERN_ERRNO_TEST_CT  1
4088 static tTestDesc aHpux_Extern_ErrnoTests[] = {
4089   { TT_EGREP,    zHpux_Extern_ErrnoSelect0, (regex_t*)NULL }, };
4090
4091 /*
4092  *  Fix Command Arguments for Hpux_Extern_Errno
4093  */
4094 static const char* apzHpux_Extern_ErrnoPatch[] = {
4095     "format",
4096     "#ifdef __cplusplus\n\
4097 extern \"C\" {\n\
4098 #endif\n\
4099 %0\n\
4100 #ifdef __cplusplus\n\
4101 }\n\
4102 #endif",
4103     (char*)NULL };
4104
4105 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4106  *
4107  *  Description of Hpux_Pthread_Initializers fix
4108  */
4109 tSCC zHpux_Pthread_InitializersName[] =
4110      "hpux_pthread_initializers";
4111
4112 /*
4113  *  File name selection pattern
4114  */
4115 tSCC zHpux_Pthread_InitializersList[] =
4116   "sys/pthread.h\0";
4117 /*
4118  *  Machine/OS name selection pattern
4119  */
4120 tSCC* apzHpux_Pthread_InitializersMachs[] = {
4121         "*-hp-hpux11.[0-3]*",
4122         (const char*)NULL };
4123 #define HPUX_PTHREAD_INITIALIZERS_TEST_CT  0
4124 #define aHpux_Pthread_InitializersTests   (tTestDesc*)NULL
4125
4126 /*
4127  *  Fix Command Arguments for Hpux_Pthread_Initializers
4128  */
4129 static const char* apzHpux_Pthread_InitializersPatch[] = { sed_cmd_z,
4130     "-e", "s@^[ \t]*1, 1, 1, 1,[ \t]*\\\\@\t{ 1, 1, 1, 1 },\t\t\t\t\t\t\t\\\\@",
4131     "-e", "s@^[ \t]*1,[ \t]*\\\\@\t{ 1, 0 }@",
4132     "-e", "/^[ \t]*0$/d",
4133     "-e", "s@__PTHREAD_MUTEX_VALID, 0@{ __PTHREAD_MUTEX_VALID, 0 }@",
4134     "-e", "s@^[ \t]*0, 0, -1, 0,[ \t]*\\\\@\t{ 0, 0, -1, 0 },\t\t\t\t\t\t\\\\@",
4135     "-e", "s@0, __LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\@{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@",
4136     "-e", "s@^[ \t]*__LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\@\t{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@",
4137     "-e", "s@^[ \t]*0, 0[ \t]*\\\\@\t{ 0, 0 }\t\t\t\t\t\t\t\\\\@",
4138     "-e", "s@__PTHREAD_COND_VALID, 0@{ __PTHREAD_COND_VALID, 0 }@",
4139     "-e", "s@__LWP_COND_VALID, 0,[ \t]*\\\\@{ __LWP_COND_VALID, 0 },\t\t\t\t\t\\\\@",
4140     "-e", "s@__PTHREAD_RWLOCK_VALID, 0@{ __PTHREAD_RWLOCK_VALID, 0 }@",
4141     "-e", "s@__LWP_RWLOCK_VALID, 0,[ \t]*\\\\@{ __LWP_RWLOCK_VALID, 0 },\t\t\t\t\t\\\\@",
4142     "-e", "s@^[ \t]*0, 0, 0, 0, 0, 0, 0[ \t]*\\\\@\t{ 0, 0, 0, 0, 0 }, { 0, 0}\t\t\t\t\t\\\\@",
4143     (char*)NULL };
4144
4145 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4146  *
4147  *  Description of Hpux_C99_Intptr fix
4148  */
4149 tSCC zHpux_C99_IntptrName[] =
4150      "hpux_c99_intptr";
4151
4152 /*
4153  *  File name selection pattern
4154  */
4155 tSCC zHpux_C99_IntptrList[] =
4156   "stdint-hpux11.h\0stdint.h\0";
4157 /*
4158  *  Machine/OS name selection pattern
4159  */
4160 tSCC* apzHpux_C99_IntptrMachs[] = {
4161         "*-hp-hpux11.3*",
4162         (const char*)NULL };
4163 #define HPUX_C99_INTPTR_TEST_CT  0
4164 #define aHpux_C99_IntptrTests   (tTestDesc*)NULL
4165
4166 /*
4167  *  Fix Command Arguments for Hpux_C99_Intptr
4168  */
4169 static const char* apzHpux_C99_IntptrPatch[] = { sed_cmd_z,
4170     "-e", "s@^[ \t]*#[ \t]*define[ \t]*PTRDIFF_MAX[ \t]*INT32_MAX[ \t]*$@#define PTRDIFF_MAX (2147483647l)@",
4171     "-e", "s@^[ \t]*#[ \t]*define[ \t]*PTRDIFF_MIN[ \t]*INT32_MIN[ \t]*$@#define PTRDIFF_MIN (-PTRDIFF_MAX - 1)@",
4172     "-e", "s@^[ \t]*#[ \t]*define[ \t]*INTPTR_MAX[ \t]*INT32_MAX[ \t]*$@#define INTPTR_MAX (2147483647l)@",
4173     "-e", "s@^[ \t]*#[ \t]*define[ \t]*INTPTR_MIN[ \t]*INT32_MIN[ \t]*$@#define INTPTR_MIN (-INTPTR_MAX - 1)@",
4174     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINTPTR_MAX[ \t]*UINT32_MAX[ \t]*$@#define UINTPTR_MAX (4294967295ul)@",
4175     "-e", "s@^[ \t]*#[ \t]*define[ \t]*SIZE_MAX[ \t]*UINT32_MAX[ \t]*$@#define SIZE_MAX (4294967295ul)@",
4176     (char*)NULL };
4177
4178 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4179  *
4180  *  Description of Hpux_C99_Inttypes fix
4181  */
4182 tSCC zHpux_C99_InttypesName[] =
4183      "hpux_c99_inttypes";
4184
4185 /*
4186  *  File name selection pattern
4187  */
4188 tSCC zHpux_C99_InttypesList[] =
4189   "inttypes.h\0stdint-hpux11.h\0stdint.h\0";
4190 /*
4191  *  Machine/OS name selection pattern
4192  */
4193 tSCC* apzHpux_C99_InttypesMachs[] = {
4194         "*-hp-hpux11.[23]*",
4195         (const char*)NULL };
4196 #define HPUX_C99_INTTYPES_TEST_CT  0
4197 #define aHpux_C99_InttypesTests   (tTestDesc*)NULL
4198
4199 /*
4200  *  Fix Command Arguments for Hpux_C99_Inttypes
4201  */
4202 static const char* apzHpux_C99_InttypesPatch[] = { sed_cmd_z,
4203     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT8_C(__c)[ \t]*__CONCAT_U__(__c)[ \t]*$@#define UINT8_C(__c) (__c)@",
4204     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT16_C(__c)[ \t]*__CONCAT_U__(__c)[ \t]*$@#define UINT16_C(__c) (__c)@",
4205     "-e", "s@^[ \t]*#[ \t]*define[ \t]*INT32_C(__c)[ \t]*__CONCAT__(__c,l)[ \t]*$@#define INT32_C(__c) (__c)@",
4206     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT32_C(__c)[ \t].*$@#define UINT32_C(__c) __CONCAT__(__c,u)@",
4207     (char*)NULL };
4208
4209 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4210  *
4211  *  Description of Hpux_C99_Inttypes2 fix
4212  */
4213 tSCC zHpux_C99_Inttypes2Name[] =
4214      "hpux_c99_inttypes2";
4215
4216 /*
4217  *  File name selection pattern
4218  */
4219 tSCC zHpux_C99_Inttypes2List[] =
4220   "stdint-hpux11.h\0stdint.h\0";
4221 /*
4222  *  Machine/OS name selection pattern
4223  */
4224 tSCC* apzHpux_C99_Inttypes2Machs[] = {
4225         "*-hp-hpux11.2*",
4226         (const char*)NULL };
4227 #define HPUX_C99_INTTYPES2_TEST_CT  0
4228 #define aHpux_C99_Inttypes2Tests   (tTestDesc*)NULL
4229
4230 /*
4231  *  Fix Command Arguments for Hpux_C99_Inttypes2
4232  */
4233 static const char* apzHpux_C99_Inttypes2Patch[] = { sed_cmd_z,
4234     "-e", "s@^[ \t]*#[ \t]*define[ \t]*INT8_C(__c)[ \t]*((signed char)(__c))[ \t]*$@#define INT8_C(__c) (__c)@",
4235     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT8_C(__c)[ \t]*((unsigned char)(__c))[ \t]*$@#define UINT8_C(__c) (__c)@",
4236     "-e", "s@^[ \t]*#[ \t]*define[ \t]*INT16_C(__c)[ \t]*((short)(__c))[ \t]*$@#define INT16_C(__c) (__c)@",
4237     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT16_C(__c)[ \t]*((unsigned short)(__c))[ \t]*$@#define UINT16_C(__c) (__c)@",
4238     (char*)NULL };
4239
4240 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4241  *
4242  *  Description of Hpux_Stdint_Least_Fast fix
4243  */
4244 tSCC zHpux_Stdint_Least_FastName[] =
4245      "hpux_stdint_least_fast";
4246
4247 /*
4248  *  File name selection pattern
4249  */
4250 tSCC zHpux_Stdint_Least_FastList[] =
4251   "stdint-hpux11.h\0stdint.h\0";
4252 /*
4253  *  Machine/OS name selection pattern
4254  */
4255 tSCC* apzHpux_Stdint_Least_FastMachs[] = {
4256         "*-hp-hpux11.2*",
4257         (const char*)NULL };
4258
4259 /*
4260  *  content selection pattern - do fix if pattern found
4261  */
4262 tSCC zHpux_Stdint_Least_FastSelect0[] =
4263        "^[ \t]*#[ \t]*define[ \t]+UINT_(LEAST|FAST)64_MAX[ \t]+ULLONG_MAX";
4264
4265 #define    HPUX_STDINT_LEAST_FAST_TEST_CT  1
4266 static tTestDesc aHpux_Stdint_Least_FastTests[] = {
4267   { TT_EGREP,    zHpux_Stdint_Least_FastSelect0, (regex_t*)NULL }, };
4268
4269 /*
4270  *  Fix Command Arguments for Hpux_Stdint_Least_Fast
4271  */
4272 static const char* apzHpux_Stdint_Least_FastPatch[] = {
4273     "format",
4274     "#  define\tUINT_%164_MAX\t__UINT64_MAX__",
4275     (char*)NULL };
4276
4277 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4278  *
4279  *  Description of Hpux_Inttype_Int8_T fix
4280  */
4281 tSCC zHpux_Inttype_Int8_TName[] =
4282      "hpux_inttype_int8_t";
4283
4284 /*
4285  *  File name selection pattern
4286  */
4287 tSCC zHpux_Inttype_Int8_TList[] =
4288   "sys/_inttypes.h\0";
4289 /*
4290  *  Machine/OS name selection pattern
4291  */
4292 tSCC* apzHpux_Inttype_Int8_TMachs[] = {
4293         "*-hp-hpux1[01].*",
4294         (const char*)NULL };
4295
4296 /*
4297  *  content selection pattern - do fix if pattern found
4298  */
4299 tSCC zHpux_Inttype_Int8_TSelect0[] =
4300        "^[ \t]*typedef[ \t]*char[ \t]*int(_least){0,1}8_t.*";
4301
4302 #define    HPUX_INTTYPE_INT8_T_TEST_CT  1
4303 static tTestDesc aHpux_Inttype_Int8_TTests[] = {
4304   { TT_EGREP,    zHpux_Inttype_Int8_TSelect0, (regex_t*)NULL }, };
4305
4306 /*
4307  *  Fix Command Arguments for Hpux_Inttype_Int8_T
4308  */
4309 static const char* apzHpux_Inttype_Int8_TPatch[] = {
4310     "format",
4311     "typedef signed char int%18_t;",
4312     (char*)NULL };
4313
4314 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4315  *
4316  *  Description of Hpux_Imaginary_I fix
4317  */
4318 tSCC zHpux_Imaginary_IName[] =
4319      "hpux_imaginary_i";
4320
4321 /*
4322  *  File name selection pattern
4323  */
4324 tSCC zHpux_Imaginary_IList[] =
4325   "complex.h\0";
4326 /*
4327  *  Machine/OS name selection pattern
4328  */
4329 tSCC* apzHpux_Imaginary_IMachs[] = {
4330         "ia64-hp-hpux11.*",
4331         (const char*)NULL };
4332
4333 /*
4334  *  content selection pattern - do fix if pattern found
4335  */
4336 tSCC zHpux_Imaginary_ISelect0[] =
4337        "^[ \t]*#[ \t]*define[ \t]*_Complex_I.*";
4338
4339 #define    HPUX_IMAGINARY_I_TEST_CT  1
4340 static tTestDesc aHpux_Imaginary_ITests[] = {
4341   { TT_EGREP,    zHpux_Imaginary_ISelect0, (regex_t*)NULL }, };
4342
4343 /*
4344  *  Fix Command Arguments for Hpux_Imaginary_I
4345  */
4346 static const char* apzHpux_Imaginary_IPatch[] = {
4347     "format",
4348     "#define _Complex_I (__extension__ 1.0iF)",
4349     (char*)NULL };
4350
4351 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4352  *
4353  *  Description of Huge_Val_Hex fix
4354  */
4355 tSCC zHuge_Val_HexName[] =
4356      "huge_val_hex";
4357
4358 /*
4359  *  File name selection pattern
4360  */
4361 tSCC zHuge_Val_HexList[] =
4362   "bits/huge_val.h\0";
4363 /*
4364  *  Machine/OS name selection pattern
4365  */
4366 #define apzHuge_Val_HexMachs (const char**)NULL
4367
4368 /*
4369  *  content selection pattern - do fix if pattern found
4370  */
4371 tSCC zHuge_Val_HexSelect0[] =
4372        "^#[ \t]*define[ \t]*HUGE_VAL[ \t].*0x1\\.0p.*";
4373
4374 /*
4375  *  content bypass pattern - skip fix if pattern found
4376  */
4377 tSCC zHuge_Val_HexBypass0[] =
4378        "__builtin_huge_val";
4379
4380 #define    HUGE_VAL_HEX_TEST_CT  2
4381 static tTestDesc aHuge_Val_HexTests[] = {
4382   { TT_NEGREP,   zHuge_Val_HexBypass0, (regex_t*)NULL },
4383   { TT_EGREP,    zHuge_Val_HexSelect0, (regex_t*)NULL }, };
4384
4385 /*
4386  *  Fix Command Arguments for Huge_Val_Hex
4387  */
4388 static const char* apzHuge_Val_HexPatch[] = {
4389     "format",
4390     "#define HUGE_VAL (__builtin_huge_val())\n",
4391     (char*)NULL };
4392
4393 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4394  *
4395  *  Description of Huge_Valf_Hex fix
4396  */
4397 tSCC zHuge_Valf_HexName[] =
4398      "huge_valf_hex";
4399
4400 /*
4401  *  File name selection pattern
4402  */
4403 tSCC zHuge_Valf_HexList[] =
4404   "bits/huge_val.h\0";
4405 /*
4406  *  Machine/OS name selection pattern
4407  */
4408 #define apzHuge_Valf_HexMachs (const char**)NULL
4409
4410 /*
4411  *  content selection pattern - do fix if pattern found
4412  */
4413 tSCC zHuge_Valf_HexSelect0[] =
4414        "^#[ \t]*define[ \t]*HUGE_VALF[ \t].*0x1\\.0p.*";
4415
4416 /*
4417  *  content bypass pattern - skip fix if pattern found
4418  */
4419 tSCC zHuge_Valf_HexBypass0[] =
4420        "__builtin_huge_valf";
4421
4422 #define    HUGE_VALF_HEX_TEST_CT  2
4423 static tTestDesc aHuge_Valf_HexTests[] = {
4424   { TT_NEGREP,   zHuge_Valf_HexBypass0, (regex_t*)NULL },
4425   { TT_EGREP,    zHuge_Valf_HexSelect0, (regex_t*)NULL }, };
4426
4427 /*
4428  *  Fix Command Arguments for Huge_Valf_Hex
4429  */
4430 static const char* apzHuge_Valf_HexPatch[] = {
4431     "format",
4432     "#define HUGE_VALF (__builtin_huge_valf())\n",
4433     (char*)NULL };
4434
4435 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4436  *
4437  *  Description of Huge_Vall_Hex fix
4438  */
4439 tSCC zHuge_Vall_HexName[] =
4440      "huge_vall_hex";
4441
4442 /*
4443  *  File name selection pattern
4444  */
4445 tSCC zHuge_Vall_HexList[] =
4446   "bits/huge_val.h\0";
4447 /*
4448  *  Machine/OS name selection pattern
4449  */
4450 #define apzHuge_Vall_HexMachs (const char**)NULL
4451
4452 /*
4453  *  content selection pattern - do fix if pattern found
4454  */
4455 tSCC zHuge_Vall_HexSelect0[] =
4456        "^#[ \t]*define[ \t]*HUGE_VALL[ \t].*0x1\\.0p.*";
4457
4458 /*
4459  *  content bypass pattern - skip fix if pattern found
4460  */
4461 tSCC zHuge_Vall_HexBypass0[] =
4462        "__builtin_huge_vall";
4463
4464 #define    HUGE_VALL_HEX_TEST_CT  2
4465 static tTestDesc aHuge_Vall_HexTests[] = {
4466   { TT_NEGREP,   zHuge_Vall_HexBypass0, (regex_t*)NULL },
4467   { TT_EGREP,    zHuge_Vall_HexSelect0, (regex_t*)NULL }, };
4468
4469 /*
4470  *  Fix Command Arguments for Huge_Vall_Hex
4471  */
4472 static const char* apzHuge_Vall_HexPatch[] = {
4473     "format",
4474     "#define HUGE_VALL (__builtin_huge_vall())\n",
4475     (char*)NULL };
4476
4477 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4478  *
4479  *  Description of Int_Abort_Free_And_Exit fix
4480  */
4481 tSCC zInt_Abort_Free_And_ExitName[] =
4482      "int_abort_free_and_exit";
4483
4484 /*
4485  *  File name selection pattern
4486  */
4487 tSCC zInt_Abort_Free_And_ExitList[] =
4488   "stdlib.h\0";
4489 /*
4490  *  Machine/OS name selection pattern
4491  */
4492 #define apzInt_Abort_Free_And_ExitMachs (const char**)NULL
4493
4494 /*
4495  *  content selection pattern - do fix if pattern found
4496  */
4497 tSCC zInt_Abort_Free_And_ExitSelect0[] =
4498        "int[ \t]+(abort|free|exit)[ \t]*\\(";
4499
4500 /*
4501  *  content bypass pattern - skip fix if pattern found
4502  */
4503 tSCC zInt_Abort_Free_And_ExitBypass0[] =
4504        "_CLASSIC_ANSI_TYPES";
4505
4506 #define    INT_ABORT_FREE_AND_EXIT_TEST_CT  2
4507 static tTestDesc aInt_Abort_Free_And_ExitTests[] = {
4508   { TT_NEGREP,   zInt_Abort_Free_And_ExitBypass0, (regex_t*)NULL },
4509   { TT_EGREP,    zInt_Abort_Free_And_ExitSelect0, (regex_t*)NULL }, };
4510
4511 /*
4512  *  Fix Command Arguments for Int_Abort_Free_And_Exit
4513  */
4514 static const char* apzInt_Abort_Free_And_ExitPatch[] = {
4515     "format",
4516     "void\t%1(",
4517     (char*)NULL };
4518
4519 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4520  *
4521  *  Description of Io_Quotes_Def fix
4522  */
4523 tSCC zIo_Quotes_DefName[] =
4524      "io_quotes_def";
4525
4526 /*
4527  *  File name selection pattern
4528  */
4529 #define zIo_Quotes_DefList (char*)NULL
4530 /*
4531  *  Machine/OS name selection pattern
4532  */
4533 #define apzIo_Quotes_DefMachs (const char**)NULL
4534
4535 /*
4536  *  content selection pattern - do fix if pattern found
4537  */
4538 tSCC zIo_Quotes_DefSelect0[] =
4539        "define[ \t]+[A-Z0-9_]+IO[A-Z]*\\([a-zA-Z][,)]";
4540
4541 #define    IO_QUOTES_DEF_TEST_CT  1
4542 static tTestDesc aIo_Quotes_DefTests[] = {
4543   { TT_EGREP,    zIo_Quotes_DefSelect0, (regex_t*)NULL }, };
4544
4545 /*
4546  *  Fix Command Arguments for Io_Quotes_Def
4547  */
4548 static const char* apzIo_Quotes_DefPatch[] = {
4549     "char_macro_def",
4550     "IO",
4551     (char*)NULL };
4552
4553 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4554  *
4555  *  Description of Io_Quotes_Use fix
4556  */
4557 tSCC zIo_Quotes_UseName[] =
4558      "io_quotes_use";
4559
4560 /*
4561  *  File name selection pattern
4562  */
4563 #define zIo_Quotes_UseList (char*)NULL
4564 /*
4565  *  Machine/OS name selection pattern
4566  */
4567 #define apzIo_Quotes_UseMachs (const char**)NULL
4568
4569 /*
4570  *  content selection pattern - do fix if pattern found
4571  */
4572 tSCC zIo_Quotes_UseSelect0[] =
4573        "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+IO[A-Z]*[ \t]*\\( *[^,']";
4574
4575 #define    IO_QUOTES_USE_TEST_CT  1
4576 static tTestDesc aIo_Quotes_UseTests[] = {
4577   { TT_EGREP,    zIo_Quotes_UseSelect0, (regex_t*)NULL }, };
4578
4579 /*
4580  *  Fix Command Arguments for Io_Quotes_Use
4581  */
4582 static const char* apzIo_Quotes_UsePatch[] = {
4583     "char_macro_use",
4584     "IO",
4585     (char*)NULL };
4586
4587 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4588  *
4589  *  Description of Ip_Missing_Semi fix
4590  */
4591 tSCC zIp_Missing_SemiName[] =
4592      "ip_missing_semi";
4593
4594 /*
4595  *  File name selection pattern
4596  */
4597 tSCC zIp_Missing_SemiList[] =
4598   "netinet/ip.h\0";
4599 /*
4600  *  Machine/OS name selection pattern
4601  */
4602 #define apzIp_Missing_SemiMachs (const char**)NULL
4603
4604 /*
4605  *  content selection pattern - do fix if pattern found
4606  */
4607 tSCC zIp_Missing_SemiSelect0[] =
4608        "}$";
4609
4610 #define    IP_MISSING_SEMI_TEST_CT  1
4611 static tTestDesc aIp_Missing_SemiTests[] = {
4612   { TT_EGREP,    zIp_Missing_SemiSelect0, (regex_t*)NULL }, };
4613
4614 /*
4615  *  Fix Command Arguments for Ip_Missing_Semi
4616  */
4617 static const char* apzIp_Missing_SemiPatch[] = { sed_cmd_z,
4618     "-e", "/^struct/,/^};/s/}$/};/",
4619     (char*)NULL };
4620
4621 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4622  *
4623  *  Description of Irix___Restrict fix
4624  */
4625 tSCC zIrix___RestrictName[] =
4626      "irix___restrict";
4627
4628 /*
4629  *  File name selection pattern
4630  */
4631 tSCC zIrix___RestrictList[] =
4632   "internal/sgimacros.h\0";
4633 /*
4634  *  Machine/OS name selection pattern
4635  */
4636 tSCC* apzIrix___RestrictMachs[] = {
4637         "mips-sgi-irix6.5",
4638         (const char*)NULL };
4639
4640 /*
4641  *  content selection pattern - do fix if pattern found
4642  */
4643 tSCC zIrix___RestrictSelect0[] =
4644        "(#ifdef __c99\n\
4645 )(#[ \t]*define __restrict restrict)";
4646
4647 #define    IRIX___RESTRICT_TEST_CT  1
4648 static tTestDesc aIrix___RestrictTests[] = {
4649   { TT_EGREP,    zIrix___RestrictSelect0, (regex_t*)NULL }, };
4650
4651 /*
4652  *  Fix Command Arguments for Irix___Restrict
4653  */
4654 static const char* apzIrix___RestrictPatch[] = {
4655     "format",
4656     "%1#  ifndef __cplusplus\n\
4657 %2\n\
4658 #  endif",
4659     (char*)NULL };
4660
4661 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4662  *
4663  *  Description of Irix___Generic1 fix
4664  */
4665 tSCC zIrix___Generic1Name[] =
4666      "irix___generic1";
4667
4668 /*
4669  *  File name selection pattern
4670  */
4671 tSCC zIrix___Generic1List[] =
4672   "internal/math_core.h\0";
4673 /*
4674  *  Machine/OS name selection pattern
4675  */
4676 tSCC* apzIrix___Generic1Machs[] = {
4677         "mips-sgi-irix6.5",
4678         (const char*)NULL };
4679
4680 /*
4681  *  content selection pattern - do fix if pattern found
4682  */
4683 tSCC zIrix___Generic1Select0[] =
4684        "#define ([a-z]+)\\(x\\) *__generic.*";
4685
4686 #define    IRIX___GENERIC1_TEST_CT  1
4687 static tTestDesc aIrix___Generic1Tests[] = {
4688   { TT_EGREP,    zIrix___Generic1Select0, (regex_t*)NULL }, };
4689
4690 /*
4691  *  Fix Command Arguments for Irix___Generic1
4692  */
4693 static const char* apzIrix___Generic1Patch[] = {
4694     "format",
4695     "extern int %1(double);\n\
4696 extern int %1f(float);\n\
4697 extern int %1l(long double);\n\
4698 #define %1(x) (sizeof(x) == sizeof(double) ? _%1(x) \\\n\
4699                : sizeof(x) == sizeof(float) ? _%1f(x) \\\n\
4700                : _%1l(x))\n",
4701     (char*)NULL };
4702
4703 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4704  *
4705  *  Description of Irix___Generic2 fix
4706  */
4707 tSCC zIrix___Generic2Name[] =
4708      "irix___generic2";
4709
4710 /*
4711  *  File name selection pattern
4712  */
4713 tSCC zIrix___Generic2List[] =
4714   "internal/math_core.h\0";
4715 /*
4716  *  Machine/OS name selection pattern
4717  */
4718 tSCC* apzIrix___Generic2Machs[] = {
4719         "mips-sgi-irix6.5",
4720         (const char*)NULL };
4721
4722 /*
4723  *  content selection pattern - do fix if pattern found
4724  */
4725 tSCC zIrix___Generic2Select0[] =
4726        "#define ([a-z]+)\\(x,y\\) *__generic.*";
4727
4728 #define    IRIX___GENERIC2_TEST_CT  1
4729 static tTestDesc aIrix___Generic2Tests[] = {
4730   { TT_EGREP,    zIrix___Generic2Select0, (regex_t*)NULL }, };
4731
4732 /*
4733  *  Fix Command Arguments for Irix___Generic2
4734  */
4735 static const char* apzIrix___Generic2Patch[] = {
4736     "format",
4737     "#define %1(x,y) \\\n\
4738   ((sizeof(x)<=4 && sizeof(y)<=4) ? _%1f(x,y) \\\n\
4739    : (sizeof(x)<=8 && sizeof(y)<=8) ? _%1(x,y) \\\n\
4740    : _%1l(x,y))\n",
4741     (char*)NULL };
4742
4743 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4744  *
4745  *  Description of Irix_Asm_Apostrophe fix
4746  */
4747 tSCC zIrix_Asm_ApostropheName[] =
4748      "irix_asm_apostrophe";
4749
4750 /*
4751  *  File name selection pattern
4752  */
4753 tSCC zIrix_Asm_ApostropheList[] =
4754   "sys/asm.h\0";
4755 /*
4756  *  Machine/OS name selection pattern
4757  */
4758 #define apzIrix_Asm_ApostropheMachs (const char**)NULL
4759
4760 /*
4761  *  content selection pattern - do fix if pattern found
4762  */
4763 tSCC zIrix_Asm_ApostropheSelect0[] =
4764        "^[ \t]*#.*[Ww]e're";
4765
4766 #define    IRIX_ASM_APOSTROPHE_TEST_CT  1
4767 static tTestDesc aIrix_Asm_ApostropheTests[] = {
4768   { TT_EGREP,    zIrix_Asm_ApostropheSelect0, (regex_t*)NULL }, };
4769
4770 /*
4771  *  Fix Command Arguments for Irix_Asm_Apostrophe
4772  */
4773 static const char* apzIrix_Asm_ApostrophePatch[] = {
4774     "format",
4775     "%1 are",
4776     "^([ \t]*#.*[Ww]e)'re",
4777     (char*)NULL };
4778
4779 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4780  *
4781  *  Description of Irix_Complex fix
4782  */
4783 tSCC zIrix_ComplexName[] =
4784      "irix_complex";
4785
4786 /*
4787  *  File name selection pattern
4788  */
4789 tSCC zIrix_ComplexList[] =
4790   "complex.h\0";
4791 /*
4792  *  Machine/OS name selection pattern
4793  */
4794 tSCC* apzIrix_ComplexMachs[] = {
4795         "mips-sgi-irix6.5",
4796         (const char*)NULL };
4797
4798 /*
4799  *  content selection pattern - do fix if pattern found
4800  */
4801 tSCC zIrix_ComplexSelect0[] =
4802        "#define[ \t]_Complex_I[ \t]\\(\\(float[ \t]_Complex\\)[ \t]\\(__I__\\)\\)";
4803
4804 #define    IRIX_COMPLEX_TEST_CT  1
4805 static tTestDesc aIrix_ComplexTests[] = {
4806   { TT_EGREP,    zIrix_ComplexSelect0, (regex_t*)NULL }, };
4807
4808 /*
4809  *  Fix Command Arguments for Irix_Complex
4810  */
4811 static const char* apzIrix_ComplexPatch[] = { sed_cmd_z,
4812     "-e", "s/#define[ \t]_Complex_I[ \t]((float[ \t]_Complex)[ \t](__I__))/#define _Complex_I (__extension__ 1.0iF)/",
4813     "-e", "/#define[ \t]imaginary[ \t]_Imaginary/d",
4814     "-e", "/#define[ \t]_Imaginary_I/d",
4815     "-e", "s/#define[ \t]I[ \t]_Imaginary_I/#define I _Complex_I/",
4816     (char*)NULL };
4817
4818 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4819  *
4820  *  Description of Irix_Limits_Const fix
4821  */
4822 tSCC zIrix_Limits_ConstName[] =
4823      "irix_limits_const";
4824
4825 /*
4826  *  File name selection pattern
4827  */
4828 tSCC zIrix_Limits_ConstList[] =
4829   "fixinc-test-limits.h\0limits.h\0";
4830 /*
4831  *  Machine/OS name selection pattern
4832  */
4833 #define apzIrix_Limits_ConstMachs (const char**)NULL
4834
4835 /*
4836  *  content selection pattern - do fix if pattern found
4837  */
4838 tSCC zIrix_Limits_ConstSelect0[] =
4839        "^extern const ";
4840
4841 #define    IRIX_LIMITS_CONST_TEST_CT  1
4842 static tTestDesc aIrix_Limits_ConstTests[] = {
4843   { TT_EGREP,    zIrix_Limits_ConstSelect0, (regex_t*)NULL }, };
4844
4845 /*
4846  *  Fix Command Arguments for Irix_Limits_Const
4847  */
4848 static const char* apzIrix_Limits_ConstPatch[] = {
4849     "format",
4850     "extern __const ",
4851     (char*)NULL };
4852
4853 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4854  *
4855  *  Description of Irix_Pthread_Init fix
4856  */
4857 tSCC zIrix_Pthread_InitName[] =
4858      "irix_pthread_init";
4859
4860 /*
4861  *  File name selection pattern
4862  */
4863 tSCC zIrix_Pthread_InitList[] =
4864   "pthread.h\0";
4865 /*
4866  *  Machine/OS name selection pattern
4867  */
4868 tSCC* apzIrix_Pthread_InitMachs[] = {
4869         "mips-sgi-irix6.5",
4870         (const char*)NULL };
4871
4872 /*
4873  *  content selection pattern - do fix if pattern found
4874  */
4875 tSCC zIrix_Pthread_InitSelect0[] =
4876        "^(#define[ \t]+PTHREAD_.*_INITIALIZER[ \t]+)(\\{ 0 \\})";
4877
4878 #define    IRIX_PTHREAD_INIT_TEST_CT  1
4879 static tTestDesc aIrix_Pthread_InitTests[] = {
4880   { TT_EGREP,    zIrix_Pthread_InitSelect0, (regex_t*)NULL }, };
4881
4882 /*
4883  *  Fix Command Arguments for Irix_Pthread_Init
4884  */
4885 static const char* apzIrix_Pthread_InitPatch[] = {
4886     "format",
4887     "%1{ %2 }",
4888     (char*)NULL };
4889
4890 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4891  *
4892  *  Description of Irix_Socklen_T fix
4893  */
4894 tSCC zIrix_Socklen_TName[] =
4895      "irix_socklen_t";
4896
4897 /*
4898  *  File name selection pattern
4899  */
4900 tSCC zIrix_Socklen_TList[] =
4901   "sys/socket.h\0";
4902 /*
4903  *  Machine/OS name selection pattern
4904  */
4905 tSCC* apzIrix_Socklen_TMachs[] = {
4906         "mips-sgi-irix6.5",
4907         (const char*)NULL };
4908
4909 /*
4910  *  content selection pattern - do fix if pattern found
4911  */
4912 tSCC zIrix_Socklen_TSelect0[] =
4913        "(#define _SOCKLEN_T\n\
4914 )(typedef u_int32_t socklen_t;)";
4915
4916 #define    IRIX_SOCKLEN_T_TEST_CT  1
4917 static tTestDesc aIrix_Socklen_TTests[] = {
4918   { TT_EGREP,    zIrix_Socklen_TSelect0, (regex_t*)NULL }, };
4919
4920 /*
4921  *  Fix Command Arguments for Irix_Socklen_T
4922  */
4923 static const char* apzIrix_Socklen_TPatch[] = {
4924     "format",
4925     "%1#if _NO_XOPEN4 && _NO_XOPEN5\n\
4926 typedef int socklen_t;\n\
4927 #else\n\
4928 %2\n\
4929 #endif /* _NO_XOPEN4 && _NO_XOPEN5 */",
4930     (char*)NULL };
4931
4932 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4933  *
4934  *  Description of Irix_Stdint_C99_Mode fix
4935  */
4936 tSCC zIrix_Stdint_C99_ModeName[] =
4937      "irix_stdint_c99_mode";
4938
4939 /*
4940  *  File name selection pattern
4941  */
4942 tSCC zIrix_Stdint_C99_ModeList[] =
4943   "stdint.h\0";
4944 /*
4945  *  Machine/OS name selection pattern
4946  */
4947 tSCC* apzIrix_Stdint_C99_ModeMachs[] = {
4948         "mips-sgi-irix6.5",
4949         (const char*)NULL };
4950
4951 /*
4952  *  content selection pattern - do fix if pattern found
4953  */
4954 tSCC zIrix_Stdint_C99_ModeSelect0[] =
4955        "(#ifndef __c99\n\
4956 )(#error This header file is to be used only for c99 mode compilations)";
4957
4958 #define    IRIX_STDINT_C99_MODE_TEST_CT  1
4959 static tTestDesc aIrix_Stdint_C99_ModeTests[] = {
4960   { TT_EGREP,    zIrix_Stdint_C99_ModeSelect0, (regex_t*)NULL }, };
4961
4962 /*
4963  *  Fix Command Arguments for Irix_Stdint_C99_Mode
4964  */
4965 static const char* apzIrix_Stdint_C99_ModePatch[] = {
4966     "format",
4967     "#if 0\n\
4968 %2",
4969     (char*)NULL };
4970
4971 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4972  *
4973  *  Description of Irix_Stdint_C99_Types fix
4974  */
4975 tSCC zIrix_Stdint_C99_TypesName[] =
4976      "irix_stdint_c99_types";
4977
4978 /*
4979  *  File name selection pattern
4980  */
4981 tSCC zIrix_Stdint_C99_TypesList[] =
4982   "stdint-irix65.h\0stdint.h\0";
4983 /*
4984  *  Machine/OS name selection pattern
4985  */
4986 tSCC* apzIrix_Stdint_C99_TypesMachs[] = {
4987         "mips-sgi-irix6.5",
4988         (const char*)NULL };
4989 #define IRIX_STDINT_C99_TYPES_TEST_CT  0
4990 #define aIrix_Stdint_C99_TypesTests   (tTestDesc*)NULL
4991
4992 /*
4993  *  Fix Command Arguments for Irix_Stdint_C99_Types
4994  */
4995 static const char* apzIrix_Stdint_C99_TypesPatch[] = { sed_cmd_z,
4996     "-e", "s@^#define INT64_MIN.*(-0x7fffffffffffffff - 1)$@#define INT64_MIN               (-0x7fffffffffffffffLL - 1)@",
4997     "-e", "s@^#define INT64_MAX.*0x7fffffffffffffff$@#define INT64_MAX               0x7fffffffffffffffLL@",
4998     "-e", "s@^#define UINT32_MAX.*0xffffffff$@#define UINT32_MAX              0xffffffffU@",
4999     "-e", "s@^#define UINT64_MAX.*0xffffffffffffffff$@#define UINT64_MAX              0xffffffffffffffffULL@",
5000     "-e", "s@^#define INTPTR_MIN.*INT32_MIN$@#define INTPTR_MIN              (-0x7fffffffL - 1)@",
5001     "-e", "s@^#define INTPTR_MAX.*INT32_MAX$@#define INTPTR_MAX              0x7fffffffL@",
5002     "-e", "s@^#define UINTPTR_MAX.*UINT32_MAX$@#define UINTPTR_MAX             0xffffffffUL@",
5003     "-e", "s@^#define INTPTR_MIN.*INT64_MIN@#define INTPTR_MIN              (-0x7fffffffffffffffL - 1)@",
5004     "-e", "s@^#define INTPTR_MAX.*INT64_MAX$@#define INTPTR_MAX              0x7fffffffffffffffL@",
5005     "-e", "s@^#define UINTPTR_MAX.*UINT64_MAX$@#define UINTPTR_MAX             0xffffffffffffffffUL@",
5006     "-e", "s@^#define PTRDIFF_MIN.*INT64_MIN$@#define PTRDIFF_MIN             (-0x7fffffffffffffffL - 1)@",
5007     "-e", "s@^#define PTRDIFF_MAX.*INT64_MAX$@#define PTRDIFF_MAX             0x7fffffffffffffffL@",
5008     "-e", "s@^#define SIZE_MAX.*UINT64_MAX$@#define SIZE_MAX                0xffffffffffffffffUL@",
5009     (char*)NULL };
5010
5011 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5012  *
5013  *  Description of Irix_Stdint_C99_Macros fix
5014  */
5015 tSCC zIrix_Stdint_C99_MacrosName[] =
5016      "irix_stdint_c99_macros";
5017
5018 /*
5019  *  File name selection pattern
5020  */
5021 tSCC zIrix_Stdint_C99_MacrosList[] =
5022   "stdint-irix65.h\0stdint.h\0";
5023 /*
5024  *  Machine/OS name selection pattern
5025  */
5026 tSCC* apzIrix_Stdint_C99_MacrosMachs[] = {
5027         "mips-sgi-irix6.5",
5028         (const char*)NULL };
5029 #define IRIX_STDINT_C99_MACROS_TEST_CT  0
5030 #define aIrix_Stdint_C99_MacrosTests   (tTestDesc*)NULL
5031
5032 /*
5033  *  Fix Command Arguments for Irix_Stdint_C99_Macros
5034  */
5035 static const char* apzIrix_Stdint_C99_MacrosPatch[] = { sed_cmd_z,
5036     "-e", "s@^#define INT8_C(x).*int.*_t.*$@#define INT8_C(x)               (x)@",
5037     "-e", "s@^#define INT16_C(x).*int.*_t.*$@#define INT16_C(x)              (x)@",
5038     "-e", "s@^#define INT32_C(x).*int.*_t.*$@#define INT32_C(x)              (x)@",
5039     "-e", "s@^#define INT64_C(x).*int.*_t.*$@#define INT64_C(x)              (x ## LL)@",
5040     "-e", "s@^#define UINT8_C(x).*int.*_t.*$@#define UINT8_C(x)              (x)@",
5041     "-e", "s@^#define UINT16_C(x).*int.*_t.*$@#define UINT16_C(x)             (x)@",
5042     "-e", "s@^#define UINT32_C(x).*int.*_t.*$@#define UINT32_C(x)             (x ## U)@",
5043     "-e", "s@^#define UINT64_C(x).*int.*_t.*$@#define UINT64_C(x)             (x ## ULL)@",
5044     "-e", "s@^#define INTMAX_C(x).*int.*_t.*$@#define INTMAX_C(x)             (x ## LL)@",
5045     "-e", "s@^#define UINTMAX_C(x).*int.*_t.*$@#define UINTMAX_C(x)            (x ## ULL)@",
5046     (char*)NULL };
5047
5048 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5049  *
5050  *  Description of Irix_Stdio_Va_List fix
5051  */
5052 tSCC zIrix_Stdio_Va_ListName[] =
5053      "irix_stdio_va_list";
5054
5055 /*
5056  *  File name selection pattern
5057  */
5058 tSCC zIrix_Stdio_Va_ListList[] =
5059   "stdio.h\0internal/stdio_core.h\0";
5060 /*
5061  *  Machine/OS name selection pattern
5062  */
5063 #define apzIrix_Stdio_Va_ListMachs (const char**)NULL
5064
5065 /*
5066  *  content selection pattern - do fix if pattern found
5067  */
5068 tSCC zIrix_Stdio_Va_ListSelect0[] =
5069        "/\\* va_list \\*/ char \\*";
5070
5071 #define    IRIX_STDIO_VA_LIST_TEST_CT  1
5072 static tTestDesc aIrix_Stdio_Va_ListTests[] = {
5073   { TT_EGREP,    zIrix_Stdio_Va_ListSelect0, (regex_t*)NULL }, };
5074
5075 /*
5076  *  Fix Command Arguments for Irix_Stdio_Va_List
5077  */
5078 static const char* apzIrix_Stdio_Va_ListPatch[] = {
5079     "format",
5080     "__gnuc_va_list",
5081     (char*)NULL };
5082
5083 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5084  *
5085  *  Description of Irix_Wcsftime fix
5086  */
5087 tSCC zIrix_WcsftimeName[] =
5088      "irix_wcsftime";
5089
5090 /*
5091  *  File name selection pattern
5092  */
5093 tSCC zIrix_WcsftimeList[] =
5094   "internal/wchar_core.h\0";
5095 /*
5096  *  Machine/OS name selection pattern
5097  */
5098 tSCC* apzIrix_WcsftimeMachs[] = {
5099         "mips-sgi-irix6.5",
5100         (const char*)NULL };
5101
5102 /*
5103  *  content selection pattern - do fix if pattern found
5104  */
5105 tSCC zIrix_WcsftimeSelect0[] =
5106        "#if _NO_XOPEN5\n\
5107 (extern size_t[ \t]+wcsftime.*const char *.*)";
5108
5109 #define    IRIX_WCSFTIME_TEST_CT  1
5110 static tTestDesc aIrix_WcsftimeTests[] = {
5111   { TT_EGREP,    zIrix_WcsftimeSelect0, (regex_t*)NULL }, };
5112
5113 /*
5114  *  Fix Command Arguments for Irix_Wcsftime
5115  */
5116 static const char* apzIrix_WcsftimePatch[] = {
5117     "format",
5118     "#if _NO_XOPEN5 && !defined(__c99)\n\
5119 %1",
5120     (char*)NULL };
5121
5122 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5123  *
5124  *  Description of Kandr_Concat fix
5125  */
5126 tSCC zKandr_ConcatName[] =
5127      "kandr_concat";
5128
5129 /*
5130  *  File name selection pattern
5131  */
5132 tSCC zKandr_ConcatList[] =
5133   "sparc/asm_linkage.h\0sun*/asm_linkage.h\0arm/as_support.h\0arm/mc_type.h\0arm/xcb.h\0dev/chardefmac.h\0dev/ps_irq.h\0dev/screen.h\0dev/scsi.h\0sys/tty.h\0Xm.acorn/XmP.h\0bsd43/bsd43_.h\0";
5134 /*
5135  *  Machine/OS name selection pattern
5136  */
5137 #define apzKandr_ConcatMachs (const char**)NULL
5138
5139 /*
5140  *  content selection pattern - do fix if pattern found
5141  */
5142 tSCC zKandr_ConcatSelect0[] =
5143        "/\\*\\*/";
5144
5145 #define    KANDR_CONCAT_TEST_CT  1
5146 static tTestDesc aKandr_ConcatTests[] = {
5147   { TT_EGREP,    zKandr_ConcatSelect0, (regex_t*)NULL }, };
5148
5149 /*
5150  *  Fix Command Arguments for Kandr_Concat
5151  */
5152 static const char* apzKandr_ConcatPatch[] = {
5153     "format",
5154     "##",
5155     (char*)NULL };
5156
5157 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5158  *
5159  *  Description of Linux_Ia64_Ucontext fix
5160  */
5161 tSCC zLinux_Ia64_UcontextName[] =
5162      "linux_ia64_ucontext";
5163
5164 /*
5165  *  File name selection pattern
5166  */
5167 tSCC zLinux_Ia64_UcontextList[] =
5168   "sys/ucontext.h\0";
5169 /*
5170  *  Machine/OS name selection pattern
5171  */
5172 tSCC* apzLinux_Ia64_UcontextMachs[] = {
5173         "ia64-*-linux*",
5174         (const char*)NULL };
5175
5176 /*
5177  *  content selection pattern - do fix if pattern found
5178  */
5179 tSCC zLinux_Ia64_UcontextSelect0[] =
5180        "\\(\\(\\(char \\*\\) &\\(\\(struct sigcontext \\*\\) 0\\)->sc_gr\\[0\\]\\) - \\(char \\*\\) 0\\)";
5181
5182 #define    LINUX_IA64_UCONTEXT_TEST_CT  1
5183 static tTestDesc aLinux_Ia64_UcontextTests[] = {
5184   { TT_EGREP,    zLinux_Ia64_UcontextSelect0, (regex_t*)NULL }, };
5185
5186 /*
5187  *  Fix Command Arguments for Linux_Ia64_Ucontext
5188  */
5189 static const char* apzLinux_Ia64_UcontextPatch[] = {
5190     "format",
5191     "__builtin_offsetof (struct sigcontext, sc_gr[0])",
5192     (char*)NULL };
5193
5194 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5195  *
5196  *  Description of Lynxos_No_Warning_In_Sys_Time_H fix
5197  */
5198 tSCC zLynxos_No_Warning_In_Sys_Time_HName[] =
5199      "lynxos_no_warning_in_sys_time_h";
5200
5201 /*
5202  *  File name selection pattern
5203  */
5204 tSCC zLynxos_No_Warning_In_Sys_Time_HList[] =
5205   "sys/time.h\0";
5206 /*
5207  *  Machine/OS name selection pattern
5208  */
5209 #define apzLynxos_No_Warning_In_Sys_Time_HMachs (const char**)NULL
5210
5211 /*
5212  *  content selection pattern - do fix if pattern found
5213  */
5214 tSCC zLynxos_No_Warning_In_Sys_Time_HSelect0[] =
5215        "#warning[ \t]+Using <time.h> instead of <sys/time.h>";
5216
5217 #define    LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT  1
5218 static tTestDesc aLynxos_No_Warning_In_Sys_Time_HTests[] = {
5219   { TT_EGREP,    zLynxos_No_Warning_In_Sys_Time_HSelect0, (regex_t*)NULL }, };
5220
5221 /*
5222  *  Fix Command Arguments for Lynxos_No_Warning_In_Sys_Time_H
5223  */
5224 static const char* apzLynxos_No_Warning_In_Sys_Time_HPatch[] = {
5225     "format",
5226     "",
5227     (char*)NULL };
5228
5229 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5230  *
5231  *  Description of Lynxos_Missing_Putenv fix
5232  */
5233 tSCC zLynxos_Missing_PutenvName[] =
5234      "lynxos_missing_putenv";
5235
5236 /*
5237  *  File name selection pattern
5238  */
5239 tSCC zLynxos_Missing_PutenvList[] =
5240   "stdlib.h\0";
5241 /*
5242  *  Machine/OS name selection pattern
5243  */
5244 tSCC* apzLynxos_Missing_PutenvMachs[] = {
5245         "*-*-lynxos*",
5246         (const char*)NULL };
5247
5248 /*
5249  *  content selection pattern - do fix if pattern found
5250  */
5251 tSCC zLynxos_Missing_PutenvSelect0[] =
5252        "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);";
5253
5254 /*
5255  *  content bypass pattern - skip fix if pattern found
5256  */
5257 tSCC zLynxos_Missing_PutenvBypass0[] =
5258        "putenv[ \\t]*\\(";
5259
5260 #define    LYNXOS_MISSING_PUTENV_TEST_CT  2
5261 static tTestDesc aLynxos_Missing_PutenvTests[] = {
5262   { TT_NEGREP,   zLynxos_Missing_PutenvBypass0, (regex_t*)NULL },
5263   { TT_EGREP,    zLynxos_Missing_PutenvSelect0, (regex_t*)NULL }, };
5264
5265 /*
5266  *  Fix Command Arguments for Lynxos_Missing_Putenv
5267  */
5268 static const char* apzLynxos_Missing_PutenvPatch[] = {
5269     "format",
5270     "%0\n\
5271 extern int putenv\t\t\t\t_AP((char *));",
5272     "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);",
5273     (char*)NULL };
5274
5275 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5276  *
5277  *  Description of Machine_Ansi_H_Va_List fix
5278  */
5279 tSCC zMachine_Ansi_H_Va_ListName[] =
5280      "machine_ansi_h_va_list";
5281
5282 /*
5283  *  File name selection pattern
5284  */
5285 #define zMachine_Ansi_H_Va_ListList (char*)NULL
5286 /*
5287  *  Machine/OS name selection pattern
5288  */
5289 #define apzMachine_Ansi_H_Va_ListMachs (const char**)NULL
5290
5291 /*
5292  *  content selection pattern - do fix if pattern found
5293  */
5294 tSCC zMachine_Ansi_H_Va_ListSelect0[] =
5295        "define[ \t]+_BSD_VA_LIST_[ \t]";
5296
5297 /*
5298  *  content bypass pattern - skip fix if pattern found
5299  */
5300 tSCC zMachine_Ansi_H_Va_ListBypass0[] =
5301        "__builtin_va_list";
5302
5303 #define    MACHINE_ANSI_H_VA_LIST_TEST_CT  2
5304 static tTestDesc aMachine_Ansi_H_Va_ListTests[] = {
5305   { TT_NEGREP,   zMachine_Ansi_H_Va_ListBypass0, (regex_t*)NULL },
5306   { TT_EGREP,    zMachine_Ansi_H_Va_ListSelect0, (regex_t*)NULL }, };
5307
5308 /*
5309  *  Fix Command Arguments for Machine_Ansi_H_Va_List
5310  */
5311 static const char* apzMachine_Ansi_H_Va_ListPatch[] = {
5312     "format",
5313     "%1__builtin_va_list",
5314     "(define[ \t]+_BSD_VA_LIST_[ \t]+).*",
5315     (char*)NULL };
5316
5317 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5318  *
5319  *  Description of Machine_Name fix
5320  */
5321 tSCC zMachine_NameName[] =
5322      "machine_name";
5323
5324 /*
5325  *  File name selection pattern
5326  */
5327 #define zMachine_NameList (char*)NULL
5328 /*
5329  *  Machine/OS name selection pattern
5330  */
5331 #define apzMachine_NameMachs (const char**)NULL
5332
5333 /*
5334  *  perform the C function call test
5335  */
5336 tSCC zMachine_NameFTst0[] = "machine_name";
5337
5338 #define    MACHINE_NAME_TEST_CT  1
5339 static tTestDesc aMachine_NameTests[] = {
5340   { TT_FUNCTION, zMachine_NameFTst0,   0 /* unused */ }, };
5341
5342 /*
5343  *  Fix Command Arguments for Machine_Name
5344  */
5345 static const char* apzMachine_NamePatch[] = {
5346     "machine_name",
5347     (char*)NULL };
5348
5349 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5350  *
5351  *  Description of Math_Exception fix
5352  */
5353 tSCC zMath_ExceptionName[] =
5354      "math_exception";
5355
5356 /*
5357  *  File name selection pattern
5358  */
5359 tSCC zMath_ExceptionList[] =
5360   "math.h\0";
5361 /*
5362  *  Machine/OS name selection pattern
5363  */
5364 #define apzMath_ExceptionMachs (const char**)NULL
5365
5366 /*
5367  *  content selection pattern - do fix if pattern found
5368  */
5369 tSCC zMath_ExceptionSelect0[] =
5370        "struct exception";
5371
5372 /*
5373  *  content bypass pattern - skip fix if pattern found
5374  */
5375 tSCC zMath_ExceptionBypass0[] =
5376        "We have a problem when using C\\+\\+|for C\\+\\+, _[a-z0-9A-Z_]+_exception; for C, exception";
5377
5378 #define    MATH_EXCEPTION_TEST_CT  2
5379 static tTestDesc aMath_ExceptionTests[] = {
5380   { TT_NEGREP,   zMath_ExceptionBypass0, (regex_t*)NULL },
5381   { TT_EGREP,    zMath_ExceptionSelect0, (regex_t*)NULL }, };
5382
5383 /*
5384  *  Fix Command Arguments for Math_Exception
5385  */
5386 static const char* apzMath_ExceptionPatch[] = {
5387     "wrap",
5388     "#ifdef __cplusplus\n\
5389 #define exception __math_exception\n\
5390 #endif\n",
5391     "#ifdef __cplusplus\n\
5392 #undef exception\n\
5393 #endif\n",
5394     (char*)NULL };
5395
5396 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5397  *
5398  *  Description of Math_Huge_Val_From_Dbl_Max fix
5399  */
5400 tSCC zMath_Huge_Val_From_Dbl_MaxName[] =
5401      "math_huge_val_from_dbl_max";
5402
5403 /*
5404  *  File name selection pattern
5405  */
5406 tSCC zMath_Huge_Val_From_Dbl_MaxList[] =
5407   "math.h\0";
5408 /*
5409  *  Machine/OS name selection pattern
5410  */
5411 #define apzMath_Huge_Val_From_Dbl_MaxMachs (const char**)NULL
5412
5413 /*
5414  *  content selection pattern - do fix if pattern found
5415  */
5416 tSCC zMath_Huge_Val_From_Dbl_MaxSelect0[] =
5417        "define[ \t]+HUGE_VAL[ \t]+DBL_MAX";
5418
5419 /*
5420  *  content bypass pattern - skip fix if pattern found
5421  */
5422 tSCC zMath_Huge_Val_From_Dbl_MaxBypass0[] =
5423        "define[ \t]+DBL_MAX";
5424
5425 #define    MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT  2
5426 static tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = {
5427   { TT_NEGREP,   zMath_Huge_Val_From_Dbl_MaxBypass0, (regex_t*)NULL },
5428   { TT_EGREP,    zMath_Huge_Val_From_Dbl_MaxSelect0, (regex_t*)NULL }, };
5429
5430 /*
5431  *  Fix Command Arguments for Math_Huge_Val_From_Dbl_Max
5432  */
5433 static const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c",
5434     "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h | sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n\
5435 \tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\
5436 \tthen sed -e '/define[ \t]*HUGE_VAL[ \t]*DBL_MAX/s@DBL_MAX@'\"$dbl_max_def@\"\n\
5437 \telse cat\n\
5438 \tfi",
5439     (char*)NULL };
5440
5441 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5442  *
5443  *  Description of Nested_Auth_Des fix
5444  */
5445 tSCC zNested_Auth_DesName[] =
5446      "nested_auth_des";
5447
5448 /*
5449  *  File name selection pattern
5450  */
5451 tSCC zNested_Auth_DesList[] =
5452   "rpc/rpc.h\0";
5453 /*
5454  *  Machine/OS name selection pattern
5455  */
5456 #define apzNested_Auth_DesMachs (const char**)NULL
5457
5458 /*
5459  *  content selection pattern - do fix if pattern found
5460  */
5461 tSCC zNested_Auth_DesSelect0[] =
5462        "(/\\*.*rpc/auth_des\\.h>.*)/\\*";
5463
5464 #define    NESTED_AUTH_DES_TEST_CT  1
5465 static tTestDesc aNested_Auth_DesTests[] = {
5466   { TT_EGREP,    zNested_Auth_DesSelect0, (regex_t*)NULL }, };
5467
5468 /*
5469  *  Fix Command Arguments for Nested_Auth_Des
5470  */
5471 static const char* apzNested_Auth_DesPatch[] = {
5472     "format",
5473     "%1*/ /*",
5474     (char*)NULL };
5475
5476 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5477  *
5478  *  Description of Netbsd_C99_Inline_1 fix
5479  */
5480 tSCC zNetbsd_C99_Inline_1Name[] =
5481      "netbsd_c99_inline_1";
5482
5483 /*
5484  *  File name selection pattern
5485  */
5486 tSCC zNetbsd_C99_Inline_1List[] =
5487   "signal.h\0";
5488 /*
5489  *  Machine/OS name selection pattern
5490  */
5491 tSCC* apzNetbsd_C99_Inline_1Machs[] = {
5492         "*-*-netbsd*",
5493         (const char*)NULL };
5494
5495 /*
5496  *  content selection pattern - do fix if pattern found
5497  */
5498 tSCC zNetbsd_C99_Inline_1Select0[] =
5499        "extern __inline int";
5500
5501 #define    NETBSD_C99_INLINE_1_TEST_CT  1
5502 static tTestDesc aNetbsd_C99_Inline_1Tests[] = {
5503   { TT_EGREP,    zNetbsd_C99_Inline_1Select0, (regex_t*)NULL }, };
5504
5505 /*
5506  *  Fix Command Arguments for Netbsd_C99_Inline_1
5507  */
5508 static const char* apzNetbsd_C99_Inline_1Patch[] = {
5509     "format",
5510     "extern\n\
5511 #ifdef __GNUC_STDC_INLINE__\n\
5512 __attribute__((__gnu_inline__))\n\
5513 #endif\n\
5514 __inline int",
5515     (char*)NULL };
5516
5517 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5518  *
5519  *  Description of Netbsd_C99_Inline_2 fix
5520  */
5521 tSCC zNetbsd_C99_Inline_2Name[] =
5522      "netbsd_c99_inline_2";
5523
5524 /*
5525  *  File name selection pattern
5526  */
5527 tSCC zNetbsd_C99_Inline_2List[] =
5528   "signal.h\0";
5529 /*
5530  *  Machine/OS name selection pattern
5531  */
5532 tSCC* apzNetbsd_C99_Inline_2Machs[] = {
5533         "*-*-netbsd*",
5534         (const char*)NULL };
5535
5536 /*
5537  *  content selection pattern - do fix if pattern found
5538  */
5539 tSCC zNetbsd_C99_Inline_2Select0[] =
5540        "#define _SIGINLINE extern __inline";
5541
5542 #define    NETBSD_C99_INLINE_2_TEST_CT  1
5543 static tTestDesc aNetbsd_C99_Inline_2Tests[] = {
5544   { TT_EGREP,    zNetbsd_C99_Inline_2Select0, (regex_t*)NULL }, };
5545
5546 /*
5547  *  Fix Command Arguments for Netbsd_C99_Inline_2
5548  */
5549 static const char* apzNetbsd_C99_Inline_2Patch[] = {
5550     "format",
5551     "#ifdef __GNUC_STDC_INLINE__\n\
5552 #define _SIGINLINE extern __attribute__((__gnu_inline__)) __inline\n\
5553 #else\n\
5554 %0\n\
5555 #endif",
5556     (char*)NULL };
5557
5558 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5559  *
5560  *  Description of Netbsd_Extra_Semicolon fix
5561  */
5562 tSCC zNetbsd_Extra_SemicolonName[] =
5563      "netbsd_extra_semicolon";
5564
5565 /*
5566  *  File name selection pattern
5567  */
5568 tSCC zNetbsd_Extra_SemicolonList[] =
5569   "sys/cdefs.h\0";
5570 /*
5571  *  Machine/OS name selection pattern
5572  */
5573 tSCC* apzNetbsd_Extra_SemicolonMachs[] = {
5574         "*-*-netbsd*",
5575         (const char*)NULL };
5576
5577 /*
5578  *  content selection pattern - do fix if pattern found
5579  */
5580 tSCC zNetbsd_Extra_SemicolonSelect0[] =
5581        "#define[ \t]*__END_DECLS[ \t]*};";
5582
5583 #define    NETBSD_EXTRA_SEMICOLON_TEST_CT  1
5584 static tTestDesc aNetbsd_Extra_SemicolonTests[] = {
5585   { TT_EGREP,    zNetbsd_Extra_SemicolonSelect0, (regex_t*)NULL }, };
5586
5587 /*
5588  *  Fix Command Arguments for Netbsd_Extra_Semicolon
5589  */
5590 static const char* apzNetbsd_Extra_SemicolonPatch[] = {
5591     "format",
5592     "#define __END_DECLS }",
5593     (char*)NULL };
5594
5595 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5596  *
5597  *  Description of Newlib_Stdint_1 fix
5598  */
5599 tSCC zNewlib_Stdint_1Name[] =
5600      "newlib_stdint_1";
5601
5602 /*
5603  *  File name selection pattern
5604  */
5605 tSCC zNewlib_Stdint_1List[] =
5606   "stdint-newlib.h\0stdint.h\0";
5607 /*
5608  *  Machine/OS name selection pattern
5609  */
5610 #define apzNewlib_Stdint_1Machs (const char**)NULL
5611
5612 /*
5613  *  content selection pattern - do fix if pattern found
5614  */
5615 tSCC zNewlib_Stdint_1Select0[] =
5616        "@todo - Add support for wint_t types";
5617
5618 #define    NEWLIB_STDINT_1_TEST_CT  1
5619 static tTestDesc aNewlib_Stdint_1Tests[] = {
5620   { TT_EGREP,    zNewlib_Stdint_1Select0, (regex_t*)NULL }, };
5621
5622 /*
5623  *  Fix Command Arguments for Newlib_Stdint_1
5624  */
5625 static const char* apzNewlib_Stdint_1Patch[] = { sed_cmd_z,
5626     "-e", "s@#define INT32_MIN.*@#define INT32_MIN (-INT32_MAX - 1)@",
5627     "-e", "s@#define INT32_MAX.*@#define INT32_MAX __INT32_MAX__@",
5628     "-e", "s@#define UINT32_MAX.*@#define UINT32_MAX __UINT32_MAX__@",
5629     "-e", "s@#define INT_LEAST32_MIN.*@#define INT_LEAST32_MIN (-INT_LEAST32_MAX - 1)@",
5630     "-e", "s@#define INT_LEAST32_MAX.*@#define INT_LEAST32_MAX __INT_LEAST32_MAX__@",
5631     "-e", "s@#define UINT_LEAST32_MAX.*@#define UINT_LEAST32_MAX __UINT_LEAST32_MAX__@",
5632     "-e", "s@#define INT_FAST\\([0-9]*\\)_MIN.*@#define INT_FAST\\1_MIN (-INT_FAST\\1_MAX - 1)@",
5633     "-e", "s@#define INT_FAST\\([0-9]*\\)_MAX.*@#define INT_FAST\\1_MAX __INT_FAST\\1_MAX__@",
5634     "-e", "s@#define UINT_FAST\\([0-9]*\\)_MAX.*@#define UINT_FAST\\1_MAX __UINT_FAST\\1_MAX__@",
5635     "-e", "s@#define SIZE_MAX.*@#define SIZE_MAX __SIZE_MAX__@",
5636     "-e", "s@#define PTRDIFF_MIN.*@#define PTRDIFF_MIN (-PTRDIFF_MAX - 1)@",
5637     "-e", "s@#define PTRDIFF_MAX.*@#define PTRDIFF_MAX __PTRDIFF_MAX__@",
5638     "-e", "s@#define UINT8_C.*@#define UINT8_C(c) __UINT8_C(c)@",
5639     "-e", "s@#define UINT16_C.*@#define UINT16_C(c) __UINT16_C(c)@",
5640     (char*)NULL };
5641
5642 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5643  *
5644  *  Description of Newlib_Stdint_2 fix
5645  */
5646 tSCC zNewlib_Stdint_2Name[] =
5647      "newlib_stdint_2";
5648
5649 /*
5650  *  File name selection pattern
5651  */
5652 tSCC zNewlib_Stdint_2List[] =
5653   "stdint-newlib.h\0stdint.h\0";
5654 /*
5655  *  Machine/OS name selection pattern
5656  */
5657 #define apzNewlib_Stdint_2Machs (const char**)NULL
5658
5659 /*
5660  *  content selection pattern - do fix if pattern found
5661  */
5662 tSCC zNewlib_Stdint_2Select0[] =
5663        "@todo - Add support for wint_t types";
5664
5665 #define    NEWLIB_STDINT_2_TEST_CT  1
5666 static tTestDesc aNewlib_Stdint_2Tests[] = {
5667   { TT_EGREP,    zNewlib_Stdint_2Select0, (regex_t*)NULL }, };
5668
5669 /*
5670  *  Fix Command Arguments for Newlib_Stdint_2
5671  */
5672 static const char* apzNewlib_Stdint_2Patch[] = {
5673     "format",
5674     "#define INTMAX_MAX __INTMAX_MAX__\n\
5675 #define INTMAX_MIN (-INTMAX_MAX - 1)\n\
5676 #define UINTMAX_MAX __UINTMAX_MAX__\n\
5677 #define WCHAR_MAX __WCHAR_MAX__\n\
5678 #define WCHAR_MIN __WCHAR_MIN__\n\
5679 #define WINT_MAX __WINT_MAX__\n\
5680 #define WINT_MIN __WINT_MIN__\n\n\
5681 %0",
5682     "/\\*\\* Macros for minimum-width integer constant expressions \\*/",
5683     (char*)NULL };
5684
5685 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5686  *
5687  *  Description of Next_Math_Prefix fix
5688  */
5689 tSCC zNext_Math_PrefixName[] =
5690      "next_math_prefix";
5691
5692 /*
5693  *  File name selection pattern
5694  */
5695 tSCC zNext_Math_PrefixList[] =
5696   "ansi/math.h\0";
5697 /*
5698  *  Machine/OS name selection pattern
5699  */
5700 #define apzNext_Math_PrefixMachs (const char**)NULL
5701
5702 /*
5703  *  content selection pattern - do fix if pattern found
5704  */
5705 tSCC zNext_Math_PrefixSelect0[] =
5706        "^extern[ \t]+double[ \t]+__const__[ \t]";
5707
5708 #define    NEXT_MATH_PREFIX_TEST_CT  1
5709 static tTestDesc aNext_Math_PrefixTests[] = {
5710   { TT_EGREP,    zNext_Math_PrefixSelect0, (regex_t*)NULL }, };
5711
5712 /*
5713  *  Fix Command Arguments for Next_Math_Prefix
5714  */
5715 static const char* apzNext_Math_PrefixPatch[] = {
5716     "format",
5717     "extern double %1(",
5718     "^extern[ \t]+double[ \t]+__const__[ \t]+([a-z]+)\\(",
5719     (char*)NULL };
5720
5721 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5722  *
5723  *  Description of Next_Template fix
5724  */
5725 tSCC zNext_TemplateName[] =
5726      "next_template";
5727
5728 /*
5729  *  File name selection pattern
5730  */
5731 tSCC zNext_TemplateList[] =
5732   "bsd/libc.h\0";
5733 /*
5734  *  Machine/OS name selection pattern
5735  */
5736 #define apzNext_TemplateMachs (const char**)NULL
5737
5738 /*
5739  *  content selection pattern - do fix if pattern found
5740  */
5741 tSCC zNext_TemplateSelect0[] =
5742        "[ \t]template\\)";
5743
5744 #define    NEXT_TEMPLATE_TEST_CT  1
5745 static tTestDesc aNext_TemplateTests[] = {
5746   { TT_EGREP,    zNext_TemplateSelect0, (regex_t*)NULL }, };
5747
5748 /*
5749  *  Fix Command Arguments for Next_Template
5750  */
5751 static const char* apzNext_TemplatePatch[] = {
5752     "format",
5753     "(%1)",
5754     "\\(([^)]*)[ \t]template\\)",
5755     (char*)NULL };
5756
5757 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5758  *
5759  *  Description of Next_Volitile fix
5760  */
5761 tSCC zNext_VolitileName[] =
5762      "next_volitile";
5763
5764 /*
5765  *  File name selection pattern
5766  */
5767 tSCC zNext_VolitileList[] =
5768   "ansi/stdlib.h\0";
5769 /*
5770  *  Machine/OS name selection pattern
5771  */
5772 #define apzNext_VolitileMachs (const char**)NULL
5773
5774 /*
5775  *  content selection pattern - do fix if pattern found
5776  */
5777 tSCC zNext_VolitileSelect0[] =
5778        "^extern[ \t]+volatile[ \t]+void[ \t]";
5779
5780 #define    NEXT_VOLITILE_TEST_CT  1
5781 static tTestDesc aNext_VolitileTests[] = {
5782   { TT_EGREP,    zNext_VolitileSelect0, (regex_t*)NULL }, };
5783
5784 /*
5785  *  Fix Command Arguments for Next_Volitile
5786  */
5787 static const char* apzNext_VolitilePatch[] = {
5788     "format",
5789     "extern void %1(",
5790     "^extern[ \t]+volatile[ \t]+void[ \t]+(exit|abort)\\(",
5791     (char*)NULL };
5792
5793 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5794  *
5795  *  Description of Next_Wait_Union fix
5796  */
5797 tSCC zNext_Wait_UnionName[] =
5798      "next_wait_union";
5799
5800 /*
5801  *  File name selection pattern
5802  */
5803 tSCC zNext_Wait_UnionList[] =
5804   "sys/wait.h\0";
5805 /*
5806  *  Machine/OS name selection pattern
5807  */
5808 #define apzNext_Wait_UnionMachs (const char**)NULL
5809
5810 /*
5811  *  content selection pattern - do fix if pattern found
5812  */
5813 tSCC zNext_Wait_UnionSelect0[] =
5814        "wait\\(union wait";
5815
5816 #define    NEXT_WAIT_UNION_TEST_CT  1
5817 static tTestDesc aNext_Wait_UnionTests[] = {
5818   { TT_EGREP,    zNext_Wait_UnionSelect0, (regex_t*)NULL }, };
5819
5820 /*
5821  *  Fix Command Arguments for Next_Wait_Union
5822  */
5823 static const char* apzNext_Wait_UnionPatch[] = {
5824     "format",
5825     "wait(void",
5826     (char*)NULL };
5827
5828 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5829  *
5830  *  Description of Nodeent_Syntax fix
5831  */
5832 tSCC zNodeent_SyntaxName[] =
5833      "nodeent_syntax";
5834
5835 /*
5836  *  File name selection pattern
5837  */
5838 tSCC zNodeent_SyntaxList[] =
5839   "netdnet/dnetdb.h\0";
5840 /*
5841  *  Machine/OS name selection pattern
5842  */
5843 #define apzNodeent_SyntaxMachs (const char**)NULL
5844
5845 /*
5846  *  content selection pattern - do fix if pattern found
5847  */
5848 tSCC zNodeent_SyntaxSelect0[] =
5849        "char[ \t]*\\*na_addr[ \t]*$";
5850
5851 #define    NODEENT_SYNTAX_TEST_CT  1
5852 static tTestDesc aNodeent_SyntaxTests[] = {
5853   { TT_EGREP,    zNodeent_SyntaxSelect0, (regex_t*)NULL }, };
5854
5855 /*
5856  *  Fix Command Arguments for Nodeent_Syntax
5857  */
5858 static const char* apzNodeent_SyntaxPatch[] = {
5859     "format",
5860     "%0;",
5861     (char*)NULL };
5862
5863 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5864  *
5865  *  Description of Openbsd_Null_Definition fix
5866  */
5867 tSCC zOpenbsd_Null_DefinitionName[] =
5868      "openbsd_null_definition";
5869
5870 /*
5871  *  File name selection pattern
5872  */
5873 tSCC zOpenbsd_Null_DefinitionList[] =
5874   "locale.h\0stddef.h\0stdio.h\0string.h\0time.h\0unistd.h\0wchar.h\0sys/param.h\0";
5875 /*
5876  *  Machine/OS name selection pattern
5877  */
5878 tSCC* apzOpenbsd_Null_DefinitionMachs[] = {
5879         "*-*-openbsd*",
5880         (const char*)NULL };
5881
5882 /*
5883  *  content selection pattern - do fix if pattern found
5884  */
5885 tSCC zOpenbsd_Null_DefinitionSelect0[] =
5886        "__GNUG__";
5887
5888 #define    OPENBSD_NULL_DEFINITION_TEST_CT  1
5889 static tTestDesc aOpenbsd_Null_DefinitionTests[] = {
5890   { TT_EGREP,    zOpenbsd_Null_DefinitionSelect0, (regex_t*)NULL }, };
5891
5892 /*
5893  *  Fix Command Arguments for Openbsd_Null_Definition
5894  */
5895 static const char* apzOpenbsd_Null_DefinitionPatch[] = {
5896     "format",
5897     "#ifndef NULL\n\
5898 #ifdef __cplusplus\n\
5899 #ifdef __GNUG__\n\
5900 #define NULL\t__null\n\
5901 #else\t /* ! __GNUG__  */\n\
5902 #define NULL\t0L\n\
5903 #endif\t /* __GNUG__  */\n\
5904 #else\t /* ! __cplusplus  */\n\
5905 #define NULL\t((void *)0)\n\
5906 #endif\t /* __cplusplus  */\n\
5907 #endif\t /* !NULL  */",
5908     "^#ifndef[ \t]*NULL\n\
5909 ^#ifdef[ \t]*__GNUG__\n\
5910 ^#define[ \t]*NULL[ \t]*__null\n\
5911 ^#else\n\
5912 ^#define[ \t]*NULL[ \t]*0L\n\
5913 ^#endif\n\
5914 ^#endif",
5915     (char*)NULL };
5916
5917 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5918  *
5919  *  Description of Obstack_Lvalue_Cast fix
5920  */
5921 tSCC zObstack_Lvalue_CastName[] =
5922      "obstack_lvalue_cast";
5923
5924 /*
5925  *  File name selection pattern
5926  */
5927 tSCC zObstack_Lvalue_CastList[] =
5928   "obstack.h\0";
5929 /*
5930  *  Machine/OS name selection pattern
5931  */
5932 #define apzObstack_Lvalue_CastMachs (const char**)NULL
5933
5934 /*
5935  *  content selection pattern - do fix if pattern found
5936  */
5937 tSCC zObstack_Lvalue_CastSelect0[] =
5938        "\\*\\(\\(([^()]*)\\*\\)(.*)\\)\\+\\+ = \\(([^()]*)\\)";
5939
5940 #define    OBSTACK_LVALUE_CAST_TEST_CT  1
5941 static tTestDesc aObstack_Lvalue_CastTests[] = {
5942   { TT_EGREP,    zObstack_Lvalue_CastSelect0, (regex_t*)NULL }, };
5943
5944 /*
5945  *  Fix Command Arguments for Obstack_Lvalue_Cast
5946  */
5947 static const char* apzObstack_Lvalue_CastPatch[] = {
5948     "format",
5949     "((*((%1*)%2) = (%3)), (%2 += sizeof (%1)))",
5950     (char*)NULL };
5951
5952 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5953  *
5954  *  Description of Openbsd_Va_Start fix
5955  */
5956 tSCC zOpenbsd_Va_StartName[] =
5957      "openbsd_va_start";
5958
5959 /*
5960  *  File name selection pattern
5961  */
5962 tSCC zOpenbsd_Va_StartList[] =
5963   "stdarg.h\0";
5964 /*
5965  *  Machine/OS name selection pattern
5966  */
5967 tSCC* apzOpenbsd_Va_StartMachs[] = {
5968         "*-*-openbsd*",
5969         (const char*)NULL };
5970
5971 /*
5972  *  content selection pattern - do fix if pattern found
5973  */
5974 tSCC zOpenbsd_Va_StartSelect0[] =
5975        "__builtin_stdarg_start";
5976
5977 #define    OPENBSD_VA_START_TEST_CT  1
5978 static tTestDesc aOpenbsd_Va_StartTests[] = {
5979   { TT_EGREP,    zOpenbsd_Va_StartSelect0, (regex_t*)NULL }, };
5980
5981 /*
5982  *  Fix Command Arguments for Openbsd_Va_Start
5983  */
5984 static const char* apzOpenbsd_Va_StartPatch[] = {
5985     "format",
5986     "__builtin_va_start",
5987     (char*)NULL };
5988
5989 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5990  *
5991  *  Description of Osf_Namespace_A fix
5992  */
5993 tSCC zOsf_Namespace_AName[] =
5994      "osf_namespace_a";
5995
5996 /*
5997  *  File name selection pattern
5998  */
5999 tSCC zOsf_Namespace_AList[] =
6000   "reg_types.h\0sys/lc_core.h\0";
6001 /*
6002  *  Machine/OS name selection pattern
6003  */
6004 #define apzOsf_Namespace_AMachs (const char**)NULL
6005
6006 /*
6007  *  perform the 'test' shell command - do fix on success
6008  */
6009 tSCC zOsf_Namespace_ATest0[] =
6010        " -r reg_types.h";
6011 tSCC zOsf_Namespace_ATest1[] =
6012        " -r sys/lc_core.h";
6013 tSCC zOsf_Namespace_ATest2[] =
6014        " -n \"`grep '} regex_t;' reg_types.h`\"";
6015 tSCC zOsf_Namespace_ATest3[] =
6016        " -z \"`grep __regex_t regex.h`\"";
6017
6018 #define    OSF_NAMESPACE_A_TEST_CT  4
6019 static tTestDesc aOsf_Namespace_ATests[] = {
6020   { TT_TEST,     zOsf_Namespace_ATest0,   0 /* unused */ },
6021   { TT_TEST,     zOsf_Namespace_ATest1,   0 /* unused */ },
6022   { TT_TEST,     zOsf_Namespace_ATest2,   0 /* unused */ },
6023   { TT_TEST,     zOsf_Namespace_ATest3,   0 /* unused */ }, };
6024
6025 /*
6026  *  Fix Command Arguments for Osf_Namespace_A
6027  */
6028 static const char* apzOsf_Namespace_APatch[] = {
6029     "format",
6030     "__%0",
6031     "reg(ex|off|match)_t",
6032     (char*)NULL };
6033
6034 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6035  *
6036  *  Description of Osf_Namespace_C fix
6037  */
6038 tSCC zOsf_Namespace_CName[] =
6039      "osf_namespace_c";
6040
6041 /*
6042  *  File name selection pattern
6043  */
6044 tSCC zOsf_Namespace_CList[] =
6045   "regex.h\0";
6046 /*
6047  *  Machine/OS name selection pattern
6048  */
6049 #define apzOsf_Namespace_CMachs (const char**)NULL
6050
6051 /*
6052  *  content selection pattern - do fix if pattern found
6053  */
6054 tSCC zOsf_Namespace_CSelect0[] =
6055        "#include <reg_types.h>.*";
6056
6057 /*
6058  *  perform the 'test' shell command - do fix on success
6059  */
6060 tSCC zOsf_Namespace_CTest0[] =
6061        " -r reg_types.h";
6062 tSCC zOsf_Namespace_CTest1[] =
6063        " -r sys/lc_core.h";
6064 tSCC zOsf_Namespace_CTest2[] =
6065        " -n \"`grep '} regex_t;' reg_types.h`\"";
6066 tSCC zOsf_Namespace_CTest3[] =
6067        " -z \"`grep __regex_t regex.h`\"";
6068
6069 #define    OSF_NAMESPACE_C_TEST_CT  5
6070 static tTestDesc aOsf_Namespace_CTests[] = {
6071   { TT_TEST,     zOsf_Namespace_CTest0,   0 /* unused */ },
6072   { TT_TEST,     zOsf_Namespace_CTest1,   0 /* unused */ },
6073   { TT_TEST,     zOsf_Namespace_CTest2,   0 /* unused */ },
6074   { TT_TEST,     zOsf_Namespace_CTest3,   0 /* unused */ },
6075   { TT_EGREP,    zOsf_Namespace_CSelect0, (regex_t*)NULL }, };
6076
6077 /*
6078  *  Fix Command Arguments for Osf_Namespace_C
6079  */
6080 static const char* apzOsf_Namespace_CPatch[] = {
6081     "format",
6082     "%0\n\
6083 typedef __regex_t\tregex_t;\n\
6084 typedef __regoff_t\tregoff_t;\n\
6085 typedef __regmatch_t\tregmatch_t;",
6086     (char*)NULL };
6087
6088 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6089  *
6090  *  Description of Pthread_Incomplete_Struct_Argument fix
6091  */
6092 tSCC zPthread_Incomplete_Struct_ArgumentName[] =
6093      "pthread_incomplete_struct_argument";
6094
6095 /*
6096  *  File name selection pattern
6097  */
6098 tSCC zPthread_Incomplete_Struct_ArgumentList[] =
6099   "pthread.h\0";
6100 /*
6101  *  Machine/OS name selection pattern
6102  */
6103 #define apzPthread_Incomplete_Struct_ArgumentMachs (const char**)NULL
6104
6105 /*
6106  *  content selection pattern - do fix if pattern found
6107  */
6108 tSCC zPthread_Incomplete_Struct_ArgumentSelect0[] =
6109        "struct __jmp_buf_tag";
6110
6111 #define    PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT  1
6112 static tTestDesc aPthread_Incomplete_Struct_ArgumentTests[] = {
6113   { TT_EGREP,    zPthread_Incomplete_Struct_ArgumentSelect0, (regex_t*)NULL }, };
6114
6115 /*
6116  *  Fix Command Arguments for Pthread_Incomplete_Struct_Argument
6117  */
6118 static const char* apzPthread_Incomplete_Struct_ArgumentPatch[] = {
6119     "format",
6120     "%1 *%2%3",
6121     "^(extern int __sigsetjmp \\(struct __jmp_buf_tag) (__env)\\[1\\](.*)$",
6122     (char*)NULL };
6123
6124 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6125  *
6126  *  Description of Read_Ret_Type fix
6127  */
6128 tSCC zRead_Ret_TypeName[] =
6129      "read_ret_type";
6130
6131 /*
6132  *  File name selection pattern
6133  */
6134 tSCC zRead_Ret_TypeList[] =
6135   "stdio.h\0";
6136 /*
6137  *  Machine/OS name selection pattern
6138  */
6139 #define apzRead_Ret_TypeMachs (const char**)NULL
6140
6141 /*
6142  *  content selection pattern - do fix if pattern found
6143  */
6144 tSCC zRead_Ret_TypeSelect0[] =
6145        "extern int\t.*, fread\\(\\), fwrite\\(\\)";
6146
6147 #define    READ_RET_TYPE_TEST_CT  1
6148 static tTestDesc aRead_Ret_TypeTests[] = {
6149   { TT_EGREP,    zRead_Ret_TypeSelect0, (regex_t*)NULL }, };
6150
6151 /*
6152  *  Fix Command Arguments for Read_Ret_Type
6153  */
6154 static const char* apzRead_Ret_TypePatch[] = {
6155     "format",
6156     "extern unsigned int fread(), fwrite();\n\
6157 %1%2",
6158     "(extern int\t.*), fread\\(\\), fwrite\\(\\)(.*)",
6159     (char*)NULL };
6160
6161 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6162  *
6163  *  Description of Rpc_Xdr_Lvalue_Cast_A fix
6164  */
6165 tSCC zRpc_Xdr_Lvalue_Cast_AName[] =
6166      "rpc_xdr_lvalue_cast_a";
6167
6168 /*
6169  *  File name selection pattern
6170  */
6171 tSCC zRpc_Xdr_Lvalue_Cast_AList[] =
6172   "rpc/xdr.h\0";
6173 /*
6174  *  Machine/OS name selection pattern
6175  */
6176 #define apzRpc_Xdr_Lvalue_Cast_AMachs (const char**)NULL
6177
6178 /*
6179  *  content selection pattern - do fix if pattern found
6180  */
6181 tSCC zRpc_Xdr_Lvalue_Cast_ASelect0[] =
6182        "#define[ \t]*IXDR_GET_LONG.*\\\\\n\
6183 .*__extension__.*";
6184
6185 #define    RPC_XDR_LVALUE_CAST_A_TEST_CT  1
6186 static tTestDesc aRpc_Xdr_Lvalue_Cast_ATests[] = {
6187   { TT_EGREP,    zRpc_Xdr_Lvalue_Cast_ASelect0, (regex_t*)NULL }, };
6188
6189 /*
6190  *  Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_A
6191  */
6192 static const char* apzRpc_Xdr_Lvalue_Cast_APatch[] = {
6193     "format",
6194     "#define IXDR_GET_LONG(buf) ((long)IXDR_GET_U_INT32(buf))",
6195     (char*)NULL };
6196
6197 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6198  *
6199  *  Description of Rpc_Xdr_Lvalue_Cast_B fix
6200  */
6201 tSCC zRpc_Xdr_Lvalue_Cast_BName[] =
6202      "rpc_xdr_lvalue_cast_b";
6203
6204 /*
6205  *  File name selection pattern
6206  */
6207 tSCC zRpc_Xdr_Lvalue_Cast_BList[] =
6208   "rpc/xdr.h\0";
6209 /*
6210  *  Machine/OS name selection pattern
6211  */
6212 #define apzRpc_Xdr_Lvalue_Cast_BMachs (const char**)NULL
6213
6214 /*
6215  *  content selection pattern - do fix if pattern found
6216  */
6217 tSCC zRpc_Xdr_Lvalue_Cast_BSelect0[] =
6218        "#define[ \t]*IXDR_PUT_LONG.*\\\\\n\
6219 .*__extension__.*";
6220
6221 #define    RPC_XDR_LVALUE_CAST_B_TEST_CT  1
6222 static tTestDesc aRpc_Xdr_Lvalue_Cast_BTests[] = {
6223   { TT_EGREP,    zRpc_Xdr_Lvalue_Cast_BSelect0, (regex_t*)NULL }, };
6224
6225 /*
6226  *  Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_B
6227  */
6228 static const char* apzRpc_Xdr_Lvalue_Cast_BPatch[] = {
6229     "format",
6230     "#define IXDR_PUT_LONG(buf, v) ((long)IXDR_PUT_INT32(buf, (long)(v)))",
6231     (char*)NULL };
6232
6233 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6234  *
6235  *  Description of Rs6000_Double fix
6236  */
6237 tSCC zRs6000_DoubleName[] =
6238      "rs6000_double";
6239
6240 /*
6241  *  File name selection pattern
6242  */
6243 tSCC zRs6000_DoubleList[] =
6244   "math.h\0";
6245 /*
6246  *  Machine/OS name selection pattern
6247  */
6248 #define apzRs6000_DoubleMachs (const char**)NULL
6249
6250 /*
6251  *  content selection pattern - do fix if pattern found
6252  */
6253 tSCC zRs6000_DoubleSelect0[] =
6254        "[^a-zA-Z_]class\\(";
6255
6256 #define    RS6000_DOUBLE_TEST_CT  1
6257 static tTestDesc aRs6000_DoubleTests[] = {
6258   { TT_EGREP,    zRs6000_DoubleSelect0, (regex_t*)NULL }, };
6259
6260 /*
6261  *  Fix Command Arguments for Rs6000_Double
6262  */
6263 static const char* apzRs6000_DoublePatch[] = {
6264     "format",
6265     "#ifndef __cplusplus\n\
6266 %0\n\
6267 #endif",
6268     "^.*[^a-zA-Z_]class\\(.*",
6269     (char*)NULL };
6270
6271 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6272  *
6273  *  Description of Rs6000_Fchmod fix
6274  */
6275 tSCC zRs6000_FchmodName[] =
6276      "rs6000_fchmod";
6277
6278 /*
6279  *  File name selection pattern
6280  */
6281 tSCC zRs6000_FchmodList[] =
6282   "sys/stat.h\0";
6283 /*
6284  *  Machine/OS name selection pattern
6285  */
6286 #define apzRs6000_FchmodMachs (const char**)NULL
6287
6288 /*
6289  *  content selection pattern - do fix if pattern found
6290  */
6291 tSCC zRs6000_FchmodSelect0[] =
6292        "fchmod\\(char \\*";
6293
6294 #define    RS6000_FCHMOD_TEST_CT  1
6295 static tTestDesc aRs6000_FchmodTests[] = {
6296   { TT_EGREP,    zRs6000_FchmodSelect0, (regex_t*)NULL }, };
6297
6298 /*
6299  *  Fix Command Arguments for Rs6000_Fchmod
6300  */
6301 static const char* apzRs6000_FchmodPatch[] = {
6302     "format",
6303     "fchmod(int",
6304     (char*)NULL };
6305
6306 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6307  *
6308  *  Description of Rs6000_Param fix
6309  */
6310 tSCC zRs6000_ParamName[] =
6311      "rs6000_param";
6312
6313 /*
6314  *  File name selection pattern
6315  */
6316 tSCC zRs6000_ParamList[] =
6317   "stdio.h\0unistd.h\0";
6318 /*
6319  *  Machine/OS name selection pattern
6320  */
6321 #define apzRs6000_ParamMachs (const char**)NULL
6322
6323 /*
6324  *  content selection pattern - do fix if pattern found
6325  */
6326 tSCC zRs6000_ParamSelect0[] =
6327        "rename\\(const char \\*old, const char \\*new\\)";
6328
6329 #define    RS6000_PARAM_TEST_CT  1
6330 static tTestDesc aRs6000_ParamTests[] = {
6331   { TT_EGREP,    zRs6000_ParamSelect0, (regex_t*)NULL }, };
6332
6333 /*
6334  *  Fix Command Arguments for Rs6000_Param
6335  */
6336 static const char* apzRs6000_ParamPatch[] = {
6337     "format",
6338     "rename(const char *_old, const char *_new)",
6339     (char*)NULL };
6340
6341 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6342  *
6343  *  Description of Solaris___Restrict fix
6344  */
6345 tSCC zSolaris___RestrictName[] =
6346      "solaris___restrict";
6347
6348 /*
6349  *  File name selection pattern
6350  */
6351 tSCC zSolaris___RestrictList[] =
6352   "sys/feature_tests.h\0";
6353 /*
6354  *  Machine/OS name selection pattern
6355  */
6356 tSCC* apzSolaris___RestrictMachs[] = {
6357         "*-*-solaris2*",
6358         (const char*)NULL };
6359
6360 /*
6361  *  content selection pattern - do fix if pattern found
6362  */
6363 tSCC zSolaris___RestrictSelect0[] =
6364        "#define[ \t]*_RESTRICT_KYWD[ \t]*restrict";
6365
6366 #define    SOLARIS___RESTRICT_TEST_CT  1
6367 static tTestDesc aSolaris___RestrictTests[] = {
6368   { TT_EGREP,    zSolaris___RestrictSelect0, (regex_t*)NULL }, };
6369
6370 /*
6371  *  Fix Command Arguments for Solaris___Restrict
6372  */
6373 static const char* apzSolaris___RestrictPatch[] = {
6374     "format",
6375     "#ifdef __cplusplus\n\
6376 #define\t_RESTRICT_KYWD\t__restrict\n\
6377 #else\n\
6378 %0\n\
6379 #endif",
6380     (char*)NULL };
6381
6382 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6383  *
6384  *  Description of Solaris_Complex fix
6385  */
6386 tSCC zSolaris_ComplexName[] =
6387      "solaris_complex";
6388
6389 /*
6390  *  File name selection pattern
6391  */
6392 tSCC zSolaris_ComplexList[] =
6393   "complex.h\0";
6394 /*
6395  *  Machine/OS name selection pattern
6396  */
6397 tSCC* apzSolaris_ComplexMachs[] = {
6398         "*-*-solaris2.*",
6399         (const char*)NULL };
6400
6401 /*
6402  *  content selection pattern - do fix if pattern found
6403  */
6404 tSCC zSolaris_ComplexSelect0[] =
6405        "#define[ \t]_Complex_I[ \t]_Complex_I";
6406
6407 #define    SOLARIS_COMPLEX_TEST_CT  1
6408 static tTestDesc aSolaris_ComplexTests[] = {
6409   { TT_EGREP,    zSolaris_ComplexSelect0, (regex_t*)NULL }, };
6410
6411 /*
6412  *  Fix Command Arguments for Solaris_Complex
6413  */
6414 static const char* apzSolaris_ComplexPatch[] = { sed_cmd_z,
6415     "-e", "s/#define[ \t]_Complex_I[ \t]_Complex_I/#define\t_Complex_I\t(__extension__ 1.0iF)/",
6416     "-e", "/#define[ \t]_Imaginary_I[ \t]_Imaginary_I/d",
6417     "-e", "/#define[ \t]imaginary[ \t]_Imaginary/d",
6418     "-e", "s/#define[ \t]I[ \t]\\{1,\\}_Imaginary_I/#define\tI\t\t_Complex_I/",
6419     (char*)NULL };
6420
6421 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6422  *
6423  *  Description of Solaris_Complex_Cxx fix
6424  */
6425 tSCC zSolaris_Complex_CxxName[] =
6426      "solaris_complex_cxx";
6427
6428 /*
6429  *  File name selection pattern
6430  */
6431 tSCC zSolaris_Complex_CxxList[] =
6432   "complex.h\0";
6433 /*
6434  *  Machine/OS name selection pattern
6435  */
6436 tSCC* apzSolaris_Complex_CxxMachs[] = {
6437         "*-*-solaris2.*",
6438         (const char*)NULL };
6439 #define SOLARIS_COMPLEX_CXX_TEST_CT  0
6440 #define aSolaris_Complex_CxxTests   (tTestDesc*)NULL
6441
6442 /*
6443  *  Fix Command Arguments for Solaris_Complex_Cxx
6444  */
6445 static const char* apzSolaris_Complex_CxxPatch[] = { sed_cmd_z,
6446     "-e", "/#if[ \t]*!defined(__cplusplus)/c\\\n\
6447 #ifdef\t__cplusplus\\\n\
6448 extern \"C\" {\\\n\
6449 #endif",
6450     "-e", "/#endif[ \t]*\\/\\* !defined(__cplusplus) \\*\\//c\\\n\
6451 #ifdef\t__cplusplus\\\n\
6452 }\\\n\
6453 #endif",
6454     (char*)NULL };
6455
6456 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6457  *
6458  *  Description of Solaris_Cond_Init fix
6459  */
6460 tSCC zSolaris_Cond_InitName[] =
6461      "solaris_cond_init";
6462
6463 /*
6464  *  File name selection pattern
6465  */
6466 tSCC zSolaris_Cond_InitList[] =
6467   "pthread.h\0";
6468 /*
6469  *  Machine/OS name selection pattern
6470  */
6471 tSCC* apzSolaris_Cond_InitMachs[] = {
6472         "*-*-solaris2.8",
6473         (const char*)NULL };
6474
6475 /*
6476  *  content selection pattern - do fix if pattern found
6477  */
6478 tSCC zSolaris_Cond_InitSelect0[] =
6479        "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6480
6481 #define    SOLARIS_COND_INIT_TEST_CT  1
6482 static tTestDesc aSolaris_Cond_InitTests[] = {
6483   { TT_EGREP,    zSolaris_Cond_InitSelect0, (regex_t*)NULL }, };
6484
6485 /*
6486  *  Fix Command Arguments for Solaris_Cond_Init
6487  */
6488 static const char* apzSolaris_Cond_InitPatch[] = {
6489     "format",
6490     "%1, 0x4356%2",
6491     "^(#define[ \t]+PTHREAD_COND_INITIALIZER[ \t]+\\{.*0)(\\},[ \t]*0\\}.*)$",
6492     (char*)NULL };
6493
6494 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6495  *
6496  *  Description of Solaris_Cxx_Linkage fix
6497  */
6498 tSCC zSolaris_Cxx_LinkageName[] =
6499      "solaris_cxx_linkage";
6500
6501 /*
6502  *  File name selection pattern
6503  */
6504 tSCC zSolaris_Cxx_LinkageList[] =
6505   "iso/stdlib_iso.h\0";
6506 /*
6507  *  Machine/OS name selection pattern
6508  */
6509 tSCC* apzSolaris_Cxx_LinkageMachs[] = {
6510         "*-*-solaris2*",
6511         (const char*)NULL };
6512
6513 /*
6514  *  content selection pattern - do fix if pattern found
6515  */
6516 tSCC zSolaris_Cxx_LinkageSelect0[] =
6517        "(#if __cplusplus >= 199711L)\n\
6518 (extern \"C\\+\\+\" \\{\n\
6519 )(.*(bsearch|qsort).*)";
6520
6521 #define    SOLARIS_CXX_LINKAGE_TEST_CT  1
6522 static tTestDesc aSolaris_Cxx_LinkageTests[] = {
6523   { TT_EGREP,    zSolaris_Cxx_LinkageSelect0, (regex_t*)NULL }, };
6524
6525 /*
6526  *  Fix Command Arguments for Solaris_Cxx_Linkage
6527  */
6528 static const char* apzSolaris_Cxx_LinkagePatch[] = {
6529     "format",
6530     "%1 && !__GNUG__\n\
6531 %2%3",
6532     (char*)NULL };
6533
6534 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6535  *
6536  *  Description of Solaris_Getc_Strict_Stdc fix
6537  */
6538 tSCC zSolaris_Getc_Strict_StdcName[] =
6539      "solaris_getc_strict_stdc";
6540
6541 /*
6542  *  File name selection pattern
6543  */
6544 tSCC zSolaris_Getc_Strict_StdcList[] =
6545   "iso/stdio_iso.h\0";
6546 /*
6547  *  Machine/OS name selection pattern
6548  */
6549 tSCC* apzSolaris_Getc_Strict_StdcMachs[] = {
6550         "*-*-solaris2*",
6551         (const char*)NULL };
6552
6553 /*
6554  *  content selection pattern - do fix if pattern found
6555  */
6556 tSCC zSolaris_Getc_Strict_StdcSelect0[] =
6557        "(.*&& )!defined\\(_STRICT_STDC\\)(.*)";
6558
6559 #define    SOLARIS_GETC_STRICT_STDC_TEST_CT  1
6560 static tTestDesc aSolaris_Getc_Strict_StdcTests[] = {
6561   { TT_EGREP,    zSolaris_Getc_Strict_StdcSelect0, (regex_t*)NULL }, };
6562
6563 /*
6564  *  Fix Command Arguments for Solaris_Getc_Strict_Stdc
6565  */
6566 static const char* apzSolaris_Getc_Strict_StdcPatch[] = {
6567     "format",
6568     "%1(!defined(_STRICT_STDC) || (__cplusplus >= 199711L))%2",
6569     (char*)NULL };
6570
6571 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6572  *
6573  *  Description of Solaris_Longjmp_Noreturn fix
6574  */
6575 tSCC zSolaris_Longjmp_NoreturnName[] =
6576      "solaris_longjmp_noreturn";
6577
6578 /*
6579  *  File name selection pattern
6580  */
6581 tSCC zSolaris_Longjmp_NoreturnList[] =
6582   "iso/setjmp_iso.h\0";
6583 /*
6584  *  Machine/OS name selection pattern
6585  */
6586 tSCC* apzSolaris_Longjmp_NoreturnMachs[] = {
6587         "*-*-solaris2*",
6588         (const char*)NULL };
6589
6590 /*
6591  *  content selection pattern - do fix if pattern found
6592  */
6593 tSCC zSolaris_Longjmp_NoreturnSelect0[] =
6594        "(.*longjmp\\(jmp_buf.*[^)]+\\));";
6595
6596 /*
6597  *  content bypass pattern - skip fix if pattern found
6598  */
6599 tSCC zSolaris_Longjmp_NoreturnBypass0[] =
6600        "__NORETURN";
6601
6602 #define    SOLARIS_LONGJMP_NORETURN_TEST_CT  2
6603 static tTestDesc aSolaris_Longjmp_NoreturnTests[] = {
6604   { TT_NEGREP,   zSolaris_Longjmp_NoreturnBypass0, (regex_t*)NULL },
6605   { TT_EGREP,    zSolaris_Longjmp_NoreturnSelect0, (regex_t*)NULL }, };
6606
6607 /*
6608  *  Fix Command Arguments for Solaris_Longjmp_Noreturn
6609  */
6610 static const char* apzSolaris_Longjmp_NoreturnPatch[] = {
6611     "format",
6612     "%1 __attribute__ ((__noreturn__));",
6613     (char*)NULL };
6614
6615 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6616  *
6617  *  Description of Solaris_Math_1 fix
6618  */
6619 tSCC zSolaris_Math_1Name[] =
6620      "solaris_math_1";
6621
6622 /*
6623  *  File name selection pattern
6624  */
6625 tSCC zSolaris_Math_1List[] =
6626   "iso/math_c99.h\0";
6627 /*
6628  *  Machine/OS name selection pattern
6629  */
6630 #define apzSolaris_Math_1Machs (const char**)NULL
6631
6632 /*
6633  *  content selection pattern - do fix if pattern found
6634  */
6635 tSCC zSolaris_Math_1Select0[] =
6636        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6637
6638 /*
6639  *  content bypass pattern - skip fix if pattern found
6640  */
6641 tSCC zSolaris_Math_1Bypass0[] =
6642        "__GNUC__";
6643
6644 #define    SOLARIS_MATH_1_TEST_CT  2
6645 static tTestDesc aSolaris_Math_1Tests[] = {
6646   { TT_NEGREP,   zSolaris_Math_1Bypass0, (regex_t*)NULL },
6647   { TT_EGREP,    zSolaris_Math_1Select0, (regex_t*)NULL }, };
6648
6649 /*
6650  *  Fix Command Arguments for Solaris_Math_1
6651  */
6652 static const char* apzSolaris_Math_1Patch[] = {
6653     "format",
6654     "#define\tHUGE_VA%1\t(__builtin_huge_va%2())",
6655     "^#define[ \t]+HUGE_VA([LF]+)[ \t]+__builtin_huge_va([lf]+)",
6656     (char*)NULL };
6657
6658 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6659  *
6660  *  Description of Solaris_Math_2 fix
6661  */
6662 tSCC zSolaris_Math_2Name[] =
6663      "solaris_math_2";
6664
6665 /*
6666  *  File name selection pattern
6667  */
6668 tSCC zSolaris_Math_2List[] =
6669   "iso/math_c99.h\0";
6670 /*
6671  *  Machine/OS name selection pattern
6672  */
6673 #define apzSolaris_Math_2Machs (const char**)NULL
6674
6675 /*
6676  *  content selection pattern - do fix if pattern found
6677  */
6678 tSCC zSolaris_Math_2Select0[] =
6679        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6680
6681 /*
6682  *  content bypass pattern - skip fix if pattern found
6683  */
6684 tSCC zSolaris_Math_2Bypass0[] =
6685        "__GNUC__";
6686
6687 #define    SOLARIS_MATH_2_TEST_CT  2
6688 static tTestDesc aSolaris_Math_2Tests[] = {
6689   { TT_NEGREP,   zSolaris_Math_2Bypass0, (regex_t*)NULL },
6690   { TT_EGREP,    zSolaris_Math_2Select0, (regex_t*)NULL }, };
6691
6692 /*
6693  *  Fix Command Arguments for Solaris_Math_2
6694  */
6695 static const char* apzSolaris_Math_2Patch[] = {
6696     "format",
6697     "#define\tINFINITY\t(__builtin_inff())",
6698     "^#define[ \t]+INFINITY[ \t]+__builtin_infinity",
6699     (char*)NULL };
6700
6701 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6702  *
6703  *  Description of Solaris_Math_3 fix
6704  */
6705 tSCC zSolaris_Math_3Name[] =
6706      "solaris_math_3";
6707
6708 /*
6709  *  File name selection pattern
6710  */
6711 tSCC zSolaris_Math_3List[] =
6712   "iso/math_c99.h\0";
6713 /*
6714  *  Machine/OS name selection pattern
6715  */
6716 #define apzSolaris_Math_3Machs (const char**)NULL
6717
6718 /*
6719  *  content selection pattern - do fix if pattern found
6720  */
6721 tSCC zSolaris_Math_3Select0[] =
6722        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6723
6724 /*
6725  *  content bypass pattern - skip fix if pattern found
6726  */
6727 tSCC zSolaris_Math_3Bypass0[] =
6728        "__GNUC__";
6729
6730 #define    SOLARIS_MATH_3_TEST_CT  2
6731 static tTestDesc aSolaris_Math_3Tests[] = {
6732   { TT_NEGREP,   zSolaris_Math_3Bypass0, (regex_t*)NULL },
6733   { TT_EGREP,    zSolaris_Math_3Select0, (regex_t*)NULL }, };
6734
6735 /*
6736  *  Fix Command Arguments for Solaris_Math_3
6737  */
6738 static const char* apzSolaris_Math_3Patch[] = {
6739     "format",
6740     "#define\tNAN\t\t(__builtin_nanf(\"\"))",
6741     "^#define[ \t]+NAN[ \t]+__builtin_nan",
6742     (char*)NULL };
6743
6744 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6745  *
6746  *  Description of Solaris_Math_4 fix
6747  */
6748 tSCC zSolaris_Math_4Name[] =
6749      "solaris_math_4";
6750
6751 /*
6752  *  File name selection pattern
6753  */
6754 tSCC zSolaris_Math_4List[] =
6755   "iso/math_c99.h\0";
6756 /*
6757  *  Machine/OS name selection pattern
6758  */
6759 #define apzSolaris_Math_4Machs (const char**)NULL
6760
6761 /*
6762  *  content selection pattern - do fix if pattern found
6763  */
6764 tSCC zSolaris_Math_4Select0[] =
6765        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6766
6767 /*
6768  *  content bypass pattern - skip fix if pattern found
6769  */
6770 tSCC zSolaris_Math_4Bypass0[] =
6771        "__GNUC__";
6772
6773 #define    SOLARIS_MATH_4_TEST_CT  2
6774 static tTestDesc aSolaris_Math_4Tests[] = {
6775   { TT_NEGREP,   zSolaris_Math_4Bypass0, (regex_t*)NULL },
6776   { TT_EGREP,    zSolaris_Math_4Select0, (regex_t*)NULL }, };
6777
6778 /*
6779  *  Fix Command Arguments for Solaris_Math_4
6780  */
6781 static const char* apzSolaris_Math_4Patch[] = {
6782     "format",
6783     "#define\tfpclassify(x) \\\n\
6784   __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, (x))",
6785     "^#define[ \t]+fpclassify\\(x\\)[ \t]+__builtin_fpclassify\\(x\\)",
6786     (char*)NULL };
6787
6788 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6789  *
6790  *  Description of Solaris_Math_8 fix
6791  */
6792 tSCC zSolaris_Math_8Name[] =
6793      "solaris_math_8";
6794
6795 /*
6796  *  File name selection pattern
6797  */
6798 tSCC zSolaris_Math_8List[] =
6799   "iso/math_c99.h\0";
6800 /*
6801  *  Machine/OS name selection pattern
6802  */
6803 #define apzSolaris_Math_8Machs (const char**)NULL
6804
6805 /*
6806  *  content selection pattern - do fix if pattern found
6807  */
6808 tSCC zSolaris_Math_8Select0[] =
6809        "@\\(#\\)math_c99\\.h[ \t]+1\\.[0-9]+[ \t]+[0-9/]+ SMI";
6810
6811 /*
6812  *  content bypass pattern - skip fix if pattern found
6813  */
6814 tSCC zSolaris_Math_8Bypass0[] =
6815        "__GNUC__";
6816
6817 #define    SOLARIS_MATH_8_TEST_CT  2
6818 static tTestDesc aSolaris_Math_8Tests[] = {
6819   { TT_NEGREP,   zSolaris_Math_8Bypass0, (regex_t*)NULL },
6820   { TT_EGREP,    zSolaris_Math_8Select0, (regex_t*)NULL }, };
6821
6822 /*
6823  *  Fix Command Arguments for Solaris_Math_8
6824  */
6825 static const char* apzSolaris_Math_8Patch[] = {
6826     "format",
6827     "#define\tsignbit(x)\t(sizeof(x) == sizeof(float) \\\n\
6828 \t\t\t   ? __builtin_signbitf(x) \\\n\
6829 \t\t\t   : sizeof(x) == sizeof(long double) \\\n\
6830 \t\t\t     ? __builtin_signbitl(x) \\\n\
6831 \t\t\t     : __builtin_signbit(x))",
6832     "^#define[ \t]+signbit\\(x\\)[ \t]+__builtin_signbit\\(x\\)",
6833     (char*)NULL };
6834
6835 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6836  *
6837  *  Description of Solaris_Math_9 fix
6838  */
6839 tSCC zSolaris_Math_9Name[] =
6840      "solaris_math_9";
6841
6842 /*
6843  *  File name selection pattern
6844  */
6845 tSCC zSolaris_Math_9List[] =
6846   "iso/math_c99.h\0";
6847 /*
6848  *  Machine/OS name selection pattern
6849  */
6850 #define apzSolaris_Math_9Machs (const char**)NULL
6851
6852 /*
6853  *  content selection pattern - do fix if pattern found
6854  */
6855 tSCC zSolaris_Math_9Select0[] =
6856        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6857
6858 /*
6859  *  content bypass pattern - skip fix if pattern found
6860  */
6861 tSCC zSolaris_Math_9Bypass0[] =
6862        "__GNUC__";
6863
6864 #define    SOLARIS_MATH_9_TEST_CT  2
6865 static tTestDesc aSolaris_Math_9Tests[] = {
6866   { TT_NEGREP,   zSolaris_Math_9Bypass0, (regex_t*)NULL },
6867   { TT_EGREP,    zSolaris_Math_9Select0, (regex_t*)NULL }, };
6868
6869 /*
6870  *  Fix Command Arguments for Solaris_Math_9
6871  */
6872 static const char* apzSolaris_Math_9Patch[] = {
6873     "format",
6874     "#define\t%1(x, y)%2__builtin_%1(x, y)",
6875     "^#define[ \t]+([a-z]+)\\(x, y\\)([ \t]+)\\(\\(x\\) __builtin_[a-z]+\\(y\\)\\)",
6876     (char*)NULL };
6877
6878 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6879  *
6880  *  Description of Solaris_Math_10 fix
6881  */
6882 tSCC zSolaris_Math_10Name[] =
6883      "solaris_math_10";
6884
6885 /*
6886  *  File name selection pattern
6887  */
6888 tSCC zSolaris_Math_10List[] =
6889   "iso/math_c99.h\0";
6890 /*
6891  *  Machine/OS name selection pattern
6892  */
6893 #define apzSolaris_Math_10Machs (const char**)NULL
6894
6895 /*
6896  *  content selection pattern - do fix if pattern found
6897  */
6898 tSCC zSolaris_Math_10Select0[] =
6899        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6900
6901 #define    SOLARIS_MATH_10_TEST_CT  1
6902 static tTestDesc aSolaris_Math_10Tests[] = {
6903   { TT_EGREP,    zSolaris_Math_10Select0, (regex_t*)NULL }, };
6904
6905 /*
6906  *  Fix Command Arguments for Solaris_Math_10
6907  */
6908 static const char* apzSolaris_Math_10Patch[] = {
6909     "format",
6910     "#define\tisinf(x) __builtin_isinf(x)",
6911     "^#define[ \t]+isinf\\(x\\)[ \t]+__extension__\\([ \t]*\\\\\n\
6912 [ \t]*\\{[ \t]*__typeof\\(x\\)[ \t]*__x_i[ \t]*=[ \t]*\\(x\\);[ \t]*\\\\\n\
6913 [ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*INFINITY[ \t]*\\|\\|[ \t]*\\\\\n\
6914 [ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*\\(-INFINITY\\);[ \t]*\\}\\)",
6915     (char*)NULL };
6916
6917 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6918  *
6919  *  Description of Solaris_Mutex_Init_2 fix
6920  */
6921 tSCC zSolaris_Mutex_Init_2Name[] =
6922      "solaris_mutex_init_2";
6923
6924 /*
6925  *  File name selection pattern
6926  */
6927 tSCC zSolaris_Mutex_Init_2List[] =
6928   "pthread.h\0";
6929 /*
6930  *  Machine/OS name selection pattern
6931  */
6932 tSCC* apzSolaris_Mutex_Init_2Machs[] = {
6933         "*-*-solaris2.[0-9]",
6934         "*-*-solaris2.[0-9][!0-9]*",
6935         (const char*)NULL };
6936
6937 /*
6938  *  content selection pattern - do fix if pattern found
6939  */
6940 tSCC zSolaris_Mutex_Init_2Select0[] =
6941        "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6942
6943 #define    SOLARIS_MUTEX_INIT_2_TEST_CT  1
6944 static tTestDesc aSolaris_Mutex_Init_2Tests[] = {
6945   { TT_EGREP,    zSolaris_Mutex_Init_2Select0, (regex_t*)NULL }, };
6946
6947 /*
6948  *  Fix Command Arguments for Solaris_Mutex_Init_2
6949  */
6950 static const char* apzSolaris_Mutex_Init_2Patch[] = {
6951     "format",
6952     "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
6953 %0\n\
6954 #else\n\
6955 %1, {0}}%4\n\
6956 #endif",
6957     "(^#define[ \t]+PTHREAD_(MUTEX|COND)_INITIALIZER[ \t]+(|/*.**/[ \t]*\\\\\n\
6958 [ \t]*)\\{.*),[ \t]*0\\}(|[ \t].*)$",
6959     (char*)NULL };
6960
6961 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6962  *
6963  *  Description of Solaris_Pow_Int_Overload fix
6964  */
6965 tSCC zSolaris_Pow_Int_OverloadName[] =
6966      "solaris_pow_int_overload";
6967
6968 /*
6969  *  File name selection pattern
6970  */
6971 tSCC zSolaris_Pow_Int_OverloadList[] =
6972   "iso/math_iso.h\0";
6973 /*
6974  *  Machine/OS name selection pattern
6975  */
6976 tSCC* apzSolaris_Pow_Int_OverloadMachs[] = {
6977         "*-*-solaris2*",
6978         (const char*)NULL };
6979
6980 /*
6981  *  content selection pattern - do fix if pattern found
6982  */
6983 tSCC zSolaris_Pow_Int_OverloadSelect0[] =
6984        "^[ \t]*inline [a-z ]* pow\\([^()]*, int [^()]*\\) *\\{[^{}]*\n\
6985 [^{}]*\\}";
6986
6987 #define    SOLARIS_POW_INT_OVERLOAD_TEST_CT  1
6988 static tTestDesc aSolaris_Pow_Int_OverloadTests[] = {
6989   { TT_EGREP,    zSolaris_Pow_Int_OverloadSelect0, (regex_t*)NULL }, };
6990
6991 /*
6992  *  Fix Command Arguments for Solaris_Pow_Int_Overload
6993  */
6994 static const char* apzSolaris_Pow_Int_OverloadPatch[] = {
6995     "format",
6996     "#ifndef __GXX_EXPERIMENTAL_CXX0X__\n\
6997 %0\n\
6998 #endif",
6999     (char*)NULL };
7000
7001 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7002  *
7003  *  Description of Solaris_Rwlock_Init_1 fix
7004  */
7005 tSCC zSolaris_Rwlock_Init_1Name[] =
7006      "solaris_rwlock_init_1";
7007
7008 /*
7009  *  File name selection pattern
7010  */
7011 tSCC zSolaris_Rwlock_Init_1List[] =
7012   "pthread.h\0";
7013 /*
7014  *  Machine/OS name selection pattern
7015  */
7016 tSCC* apzSolaris_Rwlock_Init_1Machs[] = {
7017         "*-*-solaris*",
7018         (const char*)NULL };
7019
7020 /*
7021  *  content selection pattern - do fix if pattern found
7022  */
7023 tSCC zSolaris_Rwlock_Init_1Select0[] =
7024        "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
7025
7026 #define    SOLARIS_RWLOCK_INIT_1_TEST_CT  1
7027 static tTestDesc aSolaris_Rwlock_Init_1Tests[] = {
7028   { TT_EGREP,    zSolaris_Rwlock_Init_1Select0, (regex_t*)NULL }, };
7029
7030 /*
7031  *  Fix Command Arguments for Solaris_Rwlock_Init_1
7032  */
7033 static const char* apzSolaris_Rwlock_Init_1Patch[] = {
7034     "format",
7035     "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
7036 %0\n\
7037 #else\n\
7038 %1{0, 0, 0, {{0}, {0}, {0}}, {{0}, {0}}, {{0}, {0}}}\n\
7039 #endif",
7040     "(^#define[ \t]+PTHREAD_RWLOCK_INITIALIZER[ \t]+)\\{0, 0, 0, \\{0, 0, 0\\}, \\{0, 0\\}, \\{0, 0\\}\\}[ \t]*$",
7041     (char*)NULL };
7042
7043 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7044  *
7045  *  Description of Solaris_Once_Init_1 fix
7046  */
7047 tSCC zSolaris_Once_Init_1Name[] =
7048      "solaris_once_init_1";
7049
7050 /*
7051  *  File name selection pattern
7052  */
7053 tSCC zSolaris_Once_Init_1List[] =
7054   "pthread.h\0";
7055 /*
7056  *  Machine/OS name selection pattern
7057  */
7058 tSCC* apzSolaris_Once_Init_1Machs[] = {
7059         "*-*-solaris*",
7060         (const char*)NULL };
7061
7062 /*
7063  *  content selection pattern - do fix if pattern found
7064  */
7065 tSCC zSolaris_Once_Init_1Select0[] =
7066        "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
7067
7068 #define    SOLARIS_ONCE_INIT_1_TEST_CT  1
7069 static tTestDesc aSolaris_Once_Init_1Tests[] = {
7070   { TT_EGREP,    zSolaris_Once_Init_1Select0, (regex_t*)NULL }, };
7071
7072 /*
7073  *  Fix Command Arguments for Solaris_Once_Init_1
7074  */
7075 static const char* apzSolaris_Once_Init_1Patch[] = {
7076     "format",
7077     "%1{%2}%3",
7078     "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{)([^}]+)(\\})[ \t]*$",
7079     (char*)NULL };
7080
7081 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7082  *
7083  *  Description of Solaris_Once_Init_2 fix
7084  */
7085 tSCC zSolaris_Once_Init_2Name[] =
7086      "solaris_once_init_2";
7087
7088 /*
7089  *  File name selection pattern
7090  */
7091 tSCC zSolaris_Once_Init_2List[] =
7092   "pthread.h\0";
7093 /*
7094  *  Machine/OS name selection pattern
7095  */
7096 tSCC* apzSolaris_Once_Init_2Machs[] = {
7097         "*-*-solaris2.[0-9]",
7098         "*-*-solaris2.[0-9][!0-9]*",
7099         (const char*)NULL };
7100
7101 /*
7102  *  content selection pattern - do fix if pattern found
7103  */
7104 tSCC zSolaris_Once_Init_2Select0[] =
7105        "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
7106
7107 #define    SOLARIS_ONCE_INIT_2_TEST_CT  1
7108 static tTestDesc aSolaris_Once_Init_2Tests[] = {
7109   { TT_EGREP,    zSolaris_Once_Init_2Select0, (regex_t*)NULL }, };
7110
7111 /*
7112  *  Fix Command Arguments for Solaris_Once_Init_2
7113  */
7114 static const char* apzSolaris_Once_Init_2Patch[] = {
7115     "format",
7116     "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
7117 %0\n\
7118 #else\n\
7119 %1{0}, {0}, {0}, {%3}%4\n\
7120 #endif",
7121     "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{\\{)(0, 0, 0, )(PTHREAD_[A-Z_]+)(\\}\\})[ \t]*$",
7122     (char*)NULL };
7123
7124 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7125  *
7126  *  Description of Solaris_Int_Const fix
7127  */
7128 tSCC zSolaris_Int_ConstName[] =
7129      "solaris_int_const";
7130
7131 /*
7132  *  File name selection pattern
7133  */
7134 tSCC zSolaris_Int_ConstList[] =
7135   "sys/int_const.h\0";
7136 /*
7137  *  Machine/OS name selection pattern
7138  */
7139 tSCC* apzSolaris_Int_ConstMachs[] = {
7140         "*-*-solaris2*",
7141         (const char*)NULL };
7142
7143 /*
7144  *  content selection pattern - do fix if pattern found
7145  */
7146 tSCC zSolaris_Int_ConstSelect0[] =
7147        "^#define[ \t]+UINT8_C\\(c\\)[ \t]+__CONCAT__.*\n\
7148 (/*.**/)\n\
7149 #define[ \t]+UINT16_C\\(c\\)[ \t]+__CONCAT__.*";
7150
7151 #define    SOLARIS_INT_CONST_TEST_CT  1
7152 static tTestDesc aSolaris_Int_ConstTests[] = {
7153   { TT_EGREP,    zSolaris_Int_ConstSelect0, (regex_t*)NULL }, };
7154
7155 /*
7156  *  Fix Command Arguments for Solaris_Int_Const
7157  */
7158 static const char* apzSolaris_Int_ConstPatch[] = {
7159     "format",
7160     "#define\tUINT8_C(c)\t(c)\n\
7161 %1\n\
7162 #define\tUINT16_C(c)\t(c)",
7163     (char*)NULL };
7164
7165 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7166  *
7167  *  Description of Solaris_Int_Limits_1 fix
7168  */
7169 tSCC zSolaris_Int_Limits_1Name[] =
7170      "solaris_int_limits_1";
7171
7172 /*
7173  *  File name selection pattern
7174  */
7175 tSCC zSolaris_Int_Limits_1List[] =
7176   "sys/int_limits.h\0";
7177 /*
7178  *  Machine/OS name selection pattern
7179  */
7180 tSCC* apzSolaris_Int_Limits_1Machs[] = {
7181         "*-*-solaris2*",
7182         (const char*)NULL };
7183
7184 /*
7185  *  content selection pattern - do fix if pattern found
7186  */
7187 tSCC zSolaris_Int_Limits_1Select0[] =
7188        "^#define[ \t]+UINT8_MAX[ \t]+\\(255U\\)\n\
7189 #define[ \t]+UINT16_MAX[ \t]+\\(65535U\\)";
7190
7191 #define    SOLARIS_INT_LIMITS_1_TEST_CT  1
7192 static tTestDesc aSolaris_Int_Limits_1Tests[] = {
7193   { TT_EGREP,    zSolaris_Int_Limits_1Select0, (regex_t*)NULL }, };
7194
7195 /*
7196  *  Fix Command Arguments for Solaris_Int_Limits_1
7197  */
7198 static const char* apzSolaris_Int_Limits_1Patch[] = {
7199     "format",
7200     "#define\tUINT8_MAX\t(255)\n\
7201 #define\tUINT16_MAX\t(65535)",
7202     (char*)NULL };
7203
7204 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7205  *
7206  *  Description of Solaris_Int_Limits_2 fix
7207  */
7208 tSCC zSolaris_Int_Limits_2Name[] =
7209      "solaris_int_limits_2";
7210
7211 /*
7212  *  File name selection pattern
7213  */
7214 tSCC zSolaris_Int_Limits_2List[] =
7215   "sys/int_limits.h\0";
7216 /*
7217  *  Machine/OS name selection pattern
7218  */
7219 tSCC* apzSolaris_Int_Limits_2Machs[] = {
7220         "*-*-solaris2*",
7221         (const char*)NULL };
7222
7223 /*
7224  *  content selection pattern - do fix if pattern found
7225  */
7226 tSCC zSolaris_Int_Limits_2Select0[] =
7227        "^#define[ \t]+(INT|UINT)_FAST16_(MAX|MIN)[ \t](INT|UINT)16.*";
7228
7229 #define    SOLARIS_INT_LIMITS_2_TEST_CT  1
7230 static tTestDesc aSolaris_Int_Limits_2Tests[] = {
7231   { TT_EGREP,    zSolaris_Int_Limits_2Select0, (regex_t*)NULL }, };
7232
7233 /*
7234  *  Fix Command Arguments for Solaris_Int_Limits_2
7235  */
7236 static const char* apzSolaris_Int_Limits_2Patch[] = {
7237     "format",
7238     "#define\t%1_FAST16_%2 %132_%2",
7239     (char*)NULL };
7240
7241 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7242  *
7243  *  Description of Solaris_Int_Limits_3 fix
7244  */
7245 tSCC zSolaris_Int_Limits_3Name[] =
7246      "solaris_int_limits_3";
7247
7248 /*
7249  *  File name selection pattern
7250  */
7251 tSCC zSolaris_Int_Limits_3List[] =
7252   "sys/int_limits.h\0";
7253 /*
7254  *  Machine/OS name selection pattern
7255  */
7256 tSCC* apzSolaris_Int_Limits_3Machs[] = {
7257         "*-*-solaris2*",
7258         (const char*)NULL };
7259
7260 /*
7261  *  content selection pattern - do fix if pattern found
7262  */
7263 tSCC zSolaris_Int_Limits_3Select0[] =
7264        "^#define[ \t]+SIZE_MAX[ \t]+4294967295UL";
7265
7266 #define    SOLARIS_INT_LIMITS_3_TEST_CT  1
7267 static tTestDesc aSolaris_Int_Limits_3Tests[] = {
7268   { TT_EGREP,    zSolaris_Int_Limits_3Select0, (regex_t*)NULL }, };
7269
7270 /*
7271  *  Fix Command Arguments for Solaris_Int_Limits_3
7272  */
7273 static const char* apzSolaris_Int_Limits_3Patch[] = {
7274     "format",
7275     "#define\tSIZE_MAX\t4294967295U",
7276     (char*)NULL };
7277
7278 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7279  *
7280  *  Description of Solaris_Int_Types fix
7281  */
7282 tSCC zSolaris_Int_TypesName[] =
7283      "solaris_int_types";
7284
7285 /*
7286  *  File name selection pattern
7287  */
7288 tSCC zSolaris_Int_TypesList[] =
7289   "sys/int_types.h\0";
7290 /*
7291  *  Machine/OS name selection pattern
7292  */
7293 #define apzSolaris_Int_TypesMachs (const char**)NULL
7294
7295 /*
7296  *  content selection pattern - do fix if pattern found
7297  */
7298 tSCC zSolaris_Int_TypesSelect0[] =
7299        "__STDC__ - 0 == 0";
7300
7301 /*
7302  *  content bypass pattern - skip fix if pattern found
7303  */
7304 tSCC zSolaris_Int_TypesBypass0[] =
7305        "_LONGLONG_TYPE";
7306
7307 #define    SOLARIS_INT_TYPES_TEST_CT  2
7308 static tTestDesc aSolaris_Int_TypesTests[] = {
7309   { TT_NEGREP,   zSolaris_Int_TypesBypass0, (regex_t*)NULL },
7310   { TT_EGREP,    zSolaris_Int_TypesSelect0, (regex_t*)NULL }, };
7311
7312 /*
7313  *  Fix Command Arguments for Solaris_Int_Types
7314  */
7315 static const char* apzSolaris_Int_TypesPatch[] = {
7316     "format",
7317     "(defined(_STDC_C99) || !defined(_STRICT_STDC) || defined(__GNUC__))",
7318     (char*)NULL };
7319
7320 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7321  *
7322  *  Description of Solaris_Posix_Spawn_Restrict fix
7323  */
7324 tSCC zSolaris_Posix_Spawn_RestrictName[] =
7325      "solaris_posix_spawn_restrict";
7326
7327 /*
7328  *  File name selection pattern
7329  */
7330 tSCC zSolaris_Posix_Spawn_RestrictList[] =
7331   "spawn.h\0";
7332 /*
7333  *  Machine/OS name selection pattern
7334  */
7335 tSCC* apzSolaris_Posix_Spawn_RestrictMachs[] = {
7336         "*-*-solaris2*",
7337         (const char*)NULL };
7338
7339 /*
7340  *  content selection pattern - do fix if pattern found
7341  */
7342 tSCC zSolaris_Posix_Spawn_RestrictSelect0[] =
7343        "(.*[ \t]+)([a-z]+)\\[_RESTRICT_KYWD\\](.*)";
7344
7345 #define    SOLARIS_POSIX_SPAWN_RESTRICT_TEST_CT  1
7346 static tTestDesc aSolaris_Posix_Spawn_RestrictTests[] = {
7347   { TT_EGREP,    zSolaris_Posix_Spawn_RestrictSelect0, (regex_t*)NULL }, };
7348
7349 /*
7350  *  Fix Command Arguments for Solaris_Posix_Spawn_Restrict
7351  */
7352 static const char* apzSolaris_Posix_Spawn_RestrictPatch[] = {
7353     "format",
7354     "%1*_RESTRICT_KYWD %2%3",
7355     (char*)NULL };
7356
7357 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7358  *
7359  *  Description of Solaris_Std___Filbuf fix
7360  */
7361 tSCC zSolaris_Std___FilbufName[] =
7362      "solaris_std___filbuf";
7363
7364 /*
7365  *  File name selection pattern
7366  */
7367 tSCC zSolaris_Std___FilbufList[] =
7368   "stdio.h\0";
7369 /*
7370  *  Machine/OS name selection pattern
7371  */
7372 tSCC* apzSolaris_Std___FilbufMachs[] = {
7373         "*-*-solaris2*",
7374         (const char*)NULL };
7375
7376 /*
7377  *  content selection pattern - do fix if pattern found
7378  */
7379 tSCC zSolaris_Std___FilbufSelect0[] =
7380        "(using std::perror;\n\
7381 )(#endif)";
7382
7383 /*
7384  *  content bypass pattern - skip fix if pattern found
7385  */
7386 tSCC zSolaris_Std___FilbufBypass0[] =
7387        "using std::__filbuf";
7388
7389 #define    SOLARIS_STD___FILBUF_TEST_CT  2
7390 static tTestDesc aSolaris_Std___FilbufTests[] = {
7391   { TT_NEGREP,   zSolaris_Std___FilbufBypass0, (regex_t*)NULL },
7392   { TT_EGREP,    zSolaris_Std___FilbufSelect0, (regex_t*)NULL }, };
7393
7394 /*
7395  *  Fix Command Arguments for Solaris_Std___Filbuf
7396  */
7397 static const char* apzSolaris_Std___FilbufPatch[] = {
7398     "format",
7399     "%1#ifndef _LP64\n\
7400 using std::__filbuf;\n\
7401 using std::__flsbuf;\n\
7402 #endif\n\
7403 %2",
7404     (char*)NULL };
7405
7406 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7407  *
7408  *  Description of Solaris_Stdio_Tag fix
7409  */
7410 tSCC zSolaris_Stdio_TagName[] =
7411      "solaris_stdio_tag";
7412
7413 /*
7414  *  File name selection pattern
7415  */
7416 tSCC zSolaris_Stdio_TagList[] =
7417   "stdio_tag.h\0";
7418 /*
7419  *  Machine/OS name selection pattern
7420  */
7421 #define apzSolaris_Stdio_TagMachs (const char**)NULL
7422
7423 /*
7424  *  content selection pattern - do fix if pattern found
7425  */
7426 tSCC zSolaris_Stdio_TagSelect0[] =
7427        "__cplusplus < 54321L";
7428
7429 /*
7430  *  content bypass pattern - skip fix if pattern found
7431  */
7432 tSCC zSolaris_Stdio_TagBypass0[] =
7433        "__GNUC__";
7434
7435 #define    SOLARIS_STDIO_TAG_TEST_CT  2
7436 static tTestDesc aSolaris_Stdio_TagTests[] = {
7437   { TT_NEGREP,   zSolaris_Stdio_TagBypass0, (regex_t*)NULL },
7438   { TT_EGREP,    zSolaris_Stdio_TagSelect0, (regex_t*)NULL }, };
7439
7440 /*
7441  *  Fix Command Arguments for Solaris_Stdio_Tag
7442  */
7443 static const char* apzSolaris_Stdio_TagPatch[] = { sed_cmd_z,
7444     "-e", "s/defined(__cplusplus) && (__cplusplus < 54321L)/0/",
7445     (char*)NULL };
7446
7447 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7448  *
7449  *  Description of Solaris_Sys_Va_List fix
7450  */
7451 tSCC zSolaris_Sys_Va_ListName[] =
7452      "solaris_sys_va_list";
7453
7454 /*
7455  *  File name selection pattern
7456  */
7457 tSCC zSolaris_Sys_Va_ListList[] =
7458   "sys/va_list.h\0";
7459 /*
7460  *  Machine/OS name selection pattern
7461  */
7462 tSCC* apzSolaris_Sys_Va_ListMachs[] = {
7463         "*-*-solaris2.[89]",
7464         (const char*)NULL };
7465
7466 /*
7467  *  content selection pattern - do fix if pattern found
7468  */
7469 tSCC zSolaris_Sys_Va_ListSelect0[] =
7470        "#if.*__STDC__.*\n\
7471 typedef void \\*__va_list;\n\
7472 #else\n\
7473 typedef char \\*__va_list;\n\
7474 #endif";
7475
7476 #define    SOLARIS_SYS_VA_LIST_TEST_CT  1
7477 static tTestDesc aSolaris_Sys_Va_ListTests[] = {
7478   { TT_EGREP,    zSolaris_Sys_Va_ListSelect0, (regex_t*)NULL }, };
7479
7480 /*
7481  *  Fix Command Arguments for Solaris_Sys_Va_List
7482  */
7483 static const char* apzSolaris_Sys_Va_ListPatch[] = {
7484     "format",
7485     "#ifdef __GNUC__\n\
7486 typedef __builtin_va_list __va_list;\n\
7487 #else\n\
7488 %0\n\
7489 #endif",
7490     (char*)NULL };
7491
7492 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7493  *
7494  *  Description of Statsswtch fix
7495  */
7496 tSCC zStatsswtchName[] =
7497      "statsswtch";
7498
7499 /*
7500  *  File name selection pattern
7501  */
7502 tSCC zStatsswtchList[] =
7503   "rpcsvc/rstat.h\0";
7504 /*
7505  *  Machine/OS name selection pattern
7506  */
7507 #define apzStatsswtchMachs (const char**)NULL
7508
7509 /*
7510  *  content selection pattern - do fix if pattern found
7511  */
7512 tSCC zStatsswtchSelect0[] =
7513        "boottime$";
7514
7515 #define    STATSSWTCH_TEST_CT  1
7516 static tTestDesc aStatsswtchTests[] = {
7517   { TT_EGREP,    zStatsswtchSelect0, (regex_t*)NULL }, };
7518
7519 /*
7520  *  Fix Command Arguments for Statsswtch
7521  */
7522 static const char* apzStatsswtchPatch[] = {
7523     "format",
7524     "boottime;",
7525     (char*)NULL };
7526
7527 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7528  *
7529  *  Description of Stdio_Stdarg_H fix
7530  */
7531 tSCC zStdio_Stdarg_HName[] =
7532      "stdio_stdarg_h";
7533
7534 /*
7535  *  File name selection pattern
7536  */
7537 tSCC zStdio_Stdarg_HList[] =
7538   "stdio.h\0";
7539 /*
7540  *  Machine/OS name selection pattern
7541  */
7542 tSCC* apzStdio_Stdarg_HMachs[] = {
7543         "*-*-solaris2.1[0-9]*",
7544         (const char*)NULL };
7545
7546 /*
7547  *  content bypass pattern - skip fix if pattern found
7548  */
7549 tSCC zStdio_Stdarg_HBypass0[] =
7550        "include.*(stdarg.h|machine/ansi.h)";
7551
7552 #define    STDIO_STDARG_H_TEST_CT  1
7553 static tTestDesc aStdio_Stdarg_HTests[] = {
7554   { TT_NEGREP,   zStdio_Stdarg_HBypass0, (regex_t*)NULL }, };
7555
7556 /*
7557  *  Fix Command Arguments for Stdio_Stdarg_H
7558  */
7559 static const char* apzStdio_Stdarg_HPatch[] = {
7560     "wrap",
7561     "#define __need___va_list\n\
7562 #include <stdarg.h>\n",
7563     (char*)NULL };
7564
7565 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7566  *
7567  *  Description of Stdio_Va_List fix
7568  */
7569 tSCC zStdio_Va_ListName[] =
7570      "stdio_va_list";
7571
7572 /*
7573  *  File name selection pattern
7574  */
7575 tSCC zStdio_Va_ListList[] =
7576   "stdio.h\0internal/stdio_core.h\0internal/wchar_core.h\0";
7577 /*
7578  *  Machine/OS name selection pattern
7579  */
7580 tSCC* apzStdio_Va_ListMachs[] = {
7581         "*-*-solaris2.1[0-9]*",
7582         (const char*)NULL };
7583
7584 /*
7585  *  content bypass pattern - skip fix if pattern found
7586  */
7587 tSCC zStdio_Va_ListBypass0[] =
7588        "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
7589
7590 #define    STDIO_VA_LIST_TEST_CT  1
7591 static tTestDesc aStdio_Va_ListTests[] = {
7592   { TT_NEGREP,   zStdio_Va_ListBypass0, (regex_t*)NULL }, };
7593
7594 /*
7595  *  Fix Command Arguments for Stdio_Va_List
7596  */
7597 static const char* apzStdio_Va_ListPatch[] = { sed_cmd_z,
7598     "-e", "s@[ \t]va_list\\([ \t)]\\)@ __gnuc_va_list\\1@\n\
7599 s@(va_list)&@(__gnuc_va_list)\\&@\n\
7600 s@ _VA_LIST_));@ __gnuc_va_list));@\n\
7601 s@ __VA_LIST__));@ __gnuc_va_list));@\n\
7602 s@ va_list@ __not_va_list__@\n\
7603 s@\\*va_list@*__not_va_list__@\n\
7604 s@ __va_list)@ __gnuc_va_list)@\n\
7605 s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
7606 s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
7607 s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
7608 s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
7609 s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
7610 s@VA_LIST@DUMMY_VA_LIST@\n\
7611 s@_Va_LIST@_VA_LIST@",
7612     (char*)NULL };
7613
7614 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7615  *
7616  *  Description of Stdio_Va_List_Clients fix
7617  */
7618 tSCC zStdio_Va_List_ClientsName[] =
7619      "stdio_va_list_clients";
7620
7621 /*
7622  *  File name selection pattern
7623  */
7624 tSCC zStdio_Va_List_ClientsList[] =
7625   "com_err.h\0cps.h\0curses.h\0krb5.h\0lc_core.h\0pfmt.h\0wchar.h\0curses_colr/curses.h\0";
7626 /*
7627  *  Machine/OS name selection pattern
7628  */
7629 #define apzStdio_Va_List_ClientsMachs (const char**)NULL
7630
7631 /*
7632  *  content bypass pattern - skip fix if pattern found
7633  */
7634 tSCC zStdio_Va_List_ClientsBypass0[] =
7635        "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
7636 tSCC zStdio_Va_List_ClientsBypass1[] =
7637        "include <stdarg\\.h>|#ifdef va_start";
7638
7639 #define    STDIO_VA_LIST_CLIENTS_TEST_CT  2
7640 static tTestDesc aStdio_Va_List_ClientsTests[] = {
7641   { TT_NEGREP,   zStdio_Va_List_ClientsBypass0, (regex_t*)NULL },
7642   { TT_NEGREP,   zStdio_Va_List_ClientsBypass1, (regex_t*)NULL }, };
7643
7644 /*
7645  *  Fix Command Arguments for Stdio_Va_List_Clients
7646  */
7647 static const char* apzStdio_Va_List_ClientsPatch[] = { sed_cmd_z,
7648     "-e", "s@[ \t]va_list\\([ \t)]\\)@ __gnuc_va_list\\1@\n\
7649 s@(va_list)&@(__gnuc_va_list)\\&@\n\
7650 s@ _VA_LIST_));@ __gnuc_va_list));@\n\
7651 s@ __VA_LIST__));@ __gnuc_va_list));@\n\
7652 s@ va_list@ __not_va_list__@\n\
7653 s@\\*va_list@*__not_va_list__@\n\
7654 s@ __va_list)@ __gnuc_va_list)@\n\
7655 s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
7656 s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
7657 s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
7658 s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
7659 s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
7660 s@VA_LIST@DUMMY_VA_LIST@\n\
7661 s@_Va_LIST@_VA_LIST@",
7662     (char*)NULL };
7663
7664 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7665  *
7666  *  Description of Strict_Ansi_Not fix
7667  */
7668 tSCC zStrict_Ansi_NotName[] =
7669      "strict_ansi_not";
7670
7671 /*
7672  *  File name selection pattern
7673  */
7674 #define zStrict_Ansi_NotList (char*)NULL
7675 /*
7676  *  Machine/OS name selection pattern
7677  */
7678 #define apzStrict_Ansi_NotMachs (const char**)NULL
7679
7680 /*
7681  *  content selection pattern - do fix if pattern found
7682  */
7683 tSCC zStrict_Ansi_NotSelect0[] =
7684        "^([ \t]*#[ \t]*if.*)(!__STDC__|__STDC__[ \t]*==[ \t]*0|__STDC__[ \t]*!=[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*0)";
7685
7686 /*
7687  *  content bypass pattern - skip fix if pattern found
7688  */
7689 tSCC zStrict_Ansi_NotBypass0[] =
7690        "GNU and MIPS C compilers define __STDC__ differently";
7691 tSCC zStrict_Ansi_NotBypass1[] =
7692        "__SCO_VERSION__.*__STDC__ != 1";
7693
7694 /*
7695  *  perform the C function call test
7696  */
7697 tSCC zStrict_Ansi_NotFTst0[] = "stdc_0_in_system_headers";
7698
7699 #define    STRICT_ANSI_NOT_TEST_CT  4
7700 static tTestDesc aStrict_Ansi_NotTests[] = {
7701   { TT_FUNCTION, zStrict_Ansi_NotFTst0,   0 /* unused */ },
7702   { TT_NEGREP,   zStrict_Ansi_NotBypass0, (regex_t*)NULL },
7703   { TT_NEGREP,   zStrict_Ansi_NotBypass1, (regex_t*)NULL },
7704   { TT_EGREP,    zStrict_Ansi_NotSelect0, (regex_t*)NULL }, };
7705
7706 /*
7707  *  Fix Command Arguments for Strict_Ansi_Not
7708  */
7709 static const char* apzStrict_Ansi_NotPatch[] = {
7710     "format",
7711     "%1 !defined(__STRICT_ANSI__)",
7712     (char*)NULL };
7713
7714 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7715  *
7716  *  Description of Strict_Ansi_Not_Ctd fix
7717  */
7718 tSCC zStrict_Ansi_Not_CtdName[] =
7719      "strict_ansi_not_ctd";
7720
7721 /*
7722  *  File name selection pattern
7723  */
7724 tSCC zStrict_Ansi_Not_CtdList[] =
7725   "math.h\0limits.h\0stdio.h\0signal.h\0stdlib.h\0sys/signal.h\0time.h\0";
7726 /*
7727  *  Machine/OS name selection pattern
7728  */
7729 #define apzStrict_Ansi_Not_CtdMachs (const char**)NULL
7730
7731 /*
7732  *  content selection pattern - do fix if pattern found
7733  */
7734 tSCC zStrict_Ansi_Not_CtdSelect0[] =
7735        "^([ \t]*(\\(|&&|\\|\\|)([ \t(]*!*[ \t]*defined\\([a-zA-Z_0-9]+\\)[ \t]*[|&][|&])*[ \t(]*)(__STDC__[ \t]*(|-[ \t]*0[ \t]*)==[ \t]*0)";
7736
7737 /*
7738  *  perform the C function call test
7739  */
7740 tSCC zStrict_Ansi_Not_CtdFTst0[] = "stdc_0_in_system_headers";
7741
7742 #define    STRICT_ANSI_NOT_CTD_TEST_CT  2
7743 static tTestDesc aStrict_Ansi_Not_CtdTests[] = {
7744   { TT_FUNCTION, zStrict_Ansi_Not_CtdFTst0,   0 /* unused */ },
7745   { TT_EGREP,    zStrict_Ansi_Not_CtdSelect0, (regex_t*)NULL }, };
7746
7747 /*
7748  *  Fix Command Arguments for Strict_Ansi_Not_Ctd
7749  */
7750 static const char* apzStrict_Ansi_Not_CtdPatch[] = {
7751     "format",
7752     "%1 !defined(__STRICT_ANSI__)",
7753     (char*)NULL };
7754
7755 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7756  *
7757  *  Description of Strict_Ansi_Only fix
7758  */
7759 tSCC zStrict_Ansi_OnlyName[] =
7760      "strict_ansi_only";
7761
7762 /*
7763  *  File name selection pattern
7764  */
7765 #define zStrict_Ansi_OnlyList (char*)NULL
7766 /*
7767  *  Machine/OS name selection pattern
7768  */
7769 #define apzStrict_Ansi_OnlyMachs (const char**)NULL
7770
7771 /*
7772  *  content selection pattern - do fix if pattern found
7773  */
7774 tSCC zStrict_Ansi_OnlySelect0[] =
7775        "^([ \t]*#[ \t]*if.*)(__STDC__[ \t]*!=[ \t]*0|__STDC__[ \t]*==[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*!=[ \t]*0)";
7776
7777 /*
7778  *  perform the C function call test
7779  */
7780 tSCC zStrict_Ansi_OnlyFTst0[] = "stdc_0_in_system_headers";
7781
7782 #define    STRICT_ANSI_ONLY_TEST_CT  2
7783 static tTestDesc aStrict_Ansi_OnlyTests[] = {
7784   { TT_FUNCTION, zStrict_Ansi_OnlyFTst0,   0 /* unused */ },
7785   { TT_EGREP,    zStrict_Ansi_OnlySelect0, (regex_t*)NULL }, };
7786
7787 /*
7788  *  Fix Command Arguments for Strict_Ansi_Only
7789  */
7790 static const char* apzStrict_Ansi_OnlyPatch[] = {
7791     "format",
7792     "%1 defined(__STRICT_ANSI__)",
7793     (char*)NULL };
7794
7795 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7796  *
7797  *  Description of Struct_File fix
7798  */
7799 tSCC zStruct_FileName[] =
7800      "struct_file";
7801
7802 /*
7803  *  File name selection pattern
7804  */
7805 tSCC zStruct_FileList[] =
7806   "rpc/xdr.h\0";
7807 /*
7808  *  Machine/OS name selection pattern
7809  */
7810 #define apzStruct_FileMachs (const char**)NULL
7811
7812 /*
7813  *  content selection pattern - do fix if pattern found
7814  */
7815 tSCC zStruct_FileSelect0[] =
7816        "^.*xdrstdio_create.*struct __file_s";
7817
7818 #define    STRUCT_FILE_TEST_CT  1
7819 static tTestDesc aStruct_FileTests[] = {
7820   { TT_EGREP,    zStruct_FileSelect0, (regex_t*)NULL }, };
7821
7822 /*
7823  *  Fix Command Arguments for Struct_File
7824  */
7825 static const char* apzStruct_FilePatch[] = {
7826     "format",
7827     "struct __file_s;\n\
7828 %0",
7829     (char*)NULL };
7830
7831 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7832  *
7833  *  Description of Struct_Sockaddr fix
7834  */
7835 tSCC zStruct_SockaddrName[] =
7836      "struct_sockaddr";
7837
7838 /*
7839  *  File name selection pattern
7840  */
7841 tSCC zStruct_SockaddrList[] =
7842   "rpc/auth.h\0";
7843 /*
7844  *  Machine/OS name selection pattern
7845  */
7846 #define apzStruct_SockaddrMachs (const char**)NULL
7847
7848 /*
7849  *  content selection pattern - do fix if pattern found
7850  */
7851 tSCC zStruct_SockaddrSelect0[] =
7852        "^.*authdes_create.*struct sockaddr[^_]";
7853
7854 /*
7855  *  content bypass pattern - skip fix if pattern found
7856  */
7857 tSCC zStruct_SockaddrBypass0[] =
7858        "<sys/socket.h>";
7859 tSCC zStruct_SockaddrBypass1[] =
7860        "struct sockaddr;\n";
7861
7862 #define    STRUCT_SOCKADDR_TEST_CT  3
7863 static tTestDesc aStruct_SockaddrTests[] = {
7864   { TT_NEGREP,   zStruct_SockaddrBypass0, (regex_t*)NULL },
7865   { TT_NEGREP,   zStruct_SockaddrBypass1, (regex_t*)NULL },
7866   { TT_EGREP,    zStruct_SockaddrSelect0, (regex_t*)NULL }, };
7867
7868 /*
7869  *  Fix Command Arguments for Struct_Sockaddr
7870  */
7871 static const char* apzStruct_SockaddrPatch[] = {
7872     "format",
7873     "struct sockaddr;\n\
7874 %0",
7875     (char*)NULL };
7876
7877 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7878  *
7879  *  Description of Sun_Auth_Proto fix
7880  */
7881 tSCC zSun_Auth_ProtoName[] =
7882      "sun_auth_proto";
7883
7884 /*
7885  *  File name selection pattern
7886  */
7887 tSCC zSun_Auth_ProtoList[] =
7888   "rpc/auth.h\0rpc/clnt.h\0rpc/svc.h\0rpc/xdr.h\0";
7889 /*
7890  *  Machine/OS name selection pattern
7891  */
7892 #define apzSun_Auth_ProtoMachs (const char**)NULL
7893
7894 /*
7895  *  content selection pattern - do fix if pattern found
7896  */
7897 tSCC zSun_Auth_ProtoSelect0[] =
7898        "\\(\\*[a-z][a-z_]*\\)\\(\\)";
7899
7900 /*
7901  *  content bypass pattern - skip fix if pattern found
7902  */
7903 tSCC zSun_Auth_ProtoBypass0[] =
7904        "__cplusplus";
7905
7906 #define    SUN_AUTH_PROTO_TEST_CT  2
7907 static tTestDesc aSun_Auth_ProtoTests[] = {
7908   { TT_NEGREP,   zSun_Auth_ProtoBypass0, (regex_t*)NULL },
7909   { TT_EGREP,    zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };
7910
7911 /*
7912  *  Fix Command Arguments for Sun_Auth_Proto
7913  */
7914 static const char* apzSun_Auth_ProtoPatch[] = {
7915     "format",
7916     "#ifdef __cplusplus\n\
7917 %1(...);%2\n\
7918 #else\n\
7919 %1();%2\n\
7920 #endif",
7921     "(.*\\(\\*[a-z][a-z_]*\\))\\(\\);(.*)",
7922     (char*)NULL };
7923
7924 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7925  *
7926  *  Description of Sun_Bogus_Ifdef fix
7927  */
7928 tSCC zSun_Bogus_IfdefName[] =
7929      "sun_bogus_ifdef";
7930
7931 /*
7932  *  File name selection pattern
7933  */
7934 tSCC zSun_Bogus_IfdefList[] =
7935   "hsfs/hsfs_spec.h\0hsfs/iso_spec.h\0";
7936 /*
7937  *  Machine/OS name selection pattern
7938  */
7939 #define apzSun_Bogus_IfdefMachs (const char**)NULL
7940
7941 /*
7942  *  content selection pattern - do fix if pattern found
7943  */
7944 tSCC zSun_Bogus_IfdefSelect0[] =
7945        "#ifdef(.*\\|\\|.*)";
7946
7947 #define    SUN_BOGUS_IFDEF_TEST_CT  1
7948 static tTestDesc aSun_Bogus_IfdefTests[] = {
7949   { TT_EGREP,    zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };
7950
7951 /*
7952  *  Fix Command Arguments for Sun_Bogus_Ifdef
7953  */
7954 static const char* apzSun_Bogus_IfdefPatch[] = {
7955     "format",
7956     "#if%1",
7957     (char*)NULL };
7958
7959 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7960  *
7961  *  Description of Sun_Catmacro fix
7962  */
7963 tSCC zSun_CatmacroName[] =
7964      "sun_catmacro";
7965
7966 /*
7967  *  File name selection pattern
7968  */
7969 tSCC zSun_CatmacroList[] =
7970   "pixrect/memvar.h\0";
7971 /*
7972  *  Machine/OS name selection pattern
7973  */
7974 #define apzSun_CatmacroMachs (const char**)NULL
7975
7976 /*
7977  *  content selection pattern - do fix if pattern found
7978  */
7979 tSCC zSun_CatmacroSelect0[] =
7980        "^#define[ \t]+CAT\\(a,b\\).*";
7981
7982 #define    SUN_CATMACRO_TEST_CT  1
7983 static tTestDesc aSun_CatmacroTests[] = {
7984   { TT_EGREP,    zSun_CatmacroSelect0, (regex_t*)NULL }, };
7985
7986 /*
7987  *  Fix Command Arguments for Sun_Catmacro
7988  */
7989 static const char* apzSun_CatmacroPatch[] = {
7990     "format",
7991     "#ifdef __STDC__\n\
7992 #  define CAT(a,b) a##b\n\
7993 #else\n\
7994 %0\n\
7995 #endif",
7996     (char*)NULL };
7997
7998 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7999  *
8000  *  Description of Sun_Malloc fix
8001  */
8002 tSCC zSun_MallocName[] =
8003      "sun_malloc";
8004
8005 /*
8006  *  File name selection pattern
8007  */
8008 tSCC zSun_MallocList[] =
8009   "malloc.h\0";
8010 /*
8011  *  Machine/OS name selection pattern
8012  */
8013 #define apzSun_MallocMachs (const char**)NULL
8014
8015 /*
8016  *  content bypass pattern - skip fix if pattern found
8017  */
8018 tSCC zSun_MallocBypass0[] =
8019        "_CLASSIC_ANSI_TYPES";
8020
8021 #define    SUN_MALLOC_TEST_CT  1
8022 static tTestDesc aSun_MallocTests[] = {
8023   { TT_NEGREP,   zSun_MallocBypass0, (regex_t*)NULL }, };
8024
8025 /*
8026  *  Fix Command Arguments for Sun_Malloc
8027  */
8028 static const char* apzSun_MallocPatch[] = { sed_cmd_z,
8029     "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
8030     "-e", "s/int[ \t][ \t]*free/void\tfree/g",
8031     "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
8032     "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
8033     "-e", "s/char\\([ \t]*\\*[ \t]*calloc\\)/void\\1/g",
8034     (char*)NULL };
8035
8036 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8037  *
8038  *  Description of Sun_Rusers_Semi fix
8039  */
8040 tSCC zSun_Rusers_SemiName[] =
8041      "sun_rusers_semi";
8042
8043 /*
8044  *  File name selection pattern
8045  */
8046 tSCC zSun_Rusers_SemiList[] =
8047   "rpcsvc/rusers.h\0";
8048 /*
8049  *  Machine/OS name selection pattern
8050  */
8051 #define apzSun_Rusers_SemiMachs (const char**)NULL
8052
8053 /*
8054  *  content selection pattern - do fix if pattern found
8055  */
8056 tSCC zSun_Rusers_SemiSelect0[] =
8057        "_cnt$";
8058
8059 #define    SUN_RUSERS_SEMI_TEST_CT  1
8060 static tTestDesc aSun_Rusers_SemiTests[] = {
8061   { TT_EGREP,    zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };
8062
8063 /*
8064  *  Fix Command Arguments for Sun_Rusers_Semi
8065  */
8066 static const char* apzSun_Rusers_SemiPatch[] = { sed_cmd_z,
8067     "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
8068     (char*)NULL };
8069
8070 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8071  *
8072  *  Description of Sun_Signal fix
8073  */
8074 tSCC zSun_SignalName[] =
8075      "sun_signal";
8076
8077 /*
8078  *  File name selection pattern
8079  */
8080 tSCC zSun_SignalList[] =
8081   "sys/signal.h\0signal.h\0";
8082 /*
8083  *  Machine/OS name selection pattern
8084  */
8085 #define apzSun_SignalMachs (const char**)NULL
8086
8087 /*
8088  *  content selection pattern - do fix if pattern found
8089  */
8090 tSCC zSun_SignalSelect0[] =
8091        "^void\t\\(\\*signal\\(\\)\\)\\(\\);.*";
8092
8093 #define    SUN_SIGNAL_TEST_CT  1
8094 static tTestDesc aSun_SignalTests[] = {
8095   { TT_EGREP,    zSun_SignalSelect0, (regex_t*)NULL }, };
8096
8097 /*
8098  *  Fix Command Arguments for Sun_Signal
8099  */
8100 static const char* apzSun_SignalPatch[] = {
8101     "format",
8102     "#ifdef __cplusplus\n\
8103 void\t(*signal(...))(...);\n\
8104 #else\n\
8105 %0\n\
8106 #endif",
8107     (char*)NULL };
8108
8109 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8110  *
8111  *  Description of Sunos_Strlen fix
8112  */
8113 tSCC zSunos_StrlenName[] =
8114      "sunos_strlen";
8115
8116 /*
8117  *  File name selection pattern
8118  */
8119 tSCC zSunos_StrlenList[] =
8120   "strings.h\0";
8121 /*
8122  *  Machine/OS name selection pattern
8123  */
8124 #define apzSunos_StrlenMachs (const char**)NULL
8125
8126 /*
8127  *  content selection pattern - do fix if pattern found
8128  */
8129 tSCC zSunos_StrlenSelect0[] =
8130        "int[ \t]*strlen\\(\\);(.*)";
8131
8132 #define    SUNOS_STRLEN_TEST_CT  1
8133 static tTestDesc aSunos_StrlenTests[] = {
8134   { TT_EGREP,    zSunos_StrlenSelect0, (regex_t*)NULL }, };
8135
8136 /*
8137  *  Fix Command Arguments for Sunos_Strlen
8138  */
8139 static const char* apzSunos_StrlenPatch[] = {
8140     "format",
8141     "__SIZE_TYPE__ strlen();%1",
8142     (char*)NULL };
8143
8144 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8145  *
8146  *  Description of Svr4_Disable_Opt fix
8147  */
8148 tSCC zSvr4_Disable_OptName[] =
8149      "svr4_disable_opt";
8150
8151 /*
8152  *  File name selection pattern
8153  */
8154 tSCC zSvr4_Disable_OptList[] =
8155   "string.h\0";
8156 /*
8157  *  Machine/OS name selection pattern
8158  */
8159 #define apzSvr4_Disable_OptMachs (const char**)NULL
8160
8161 /*
8162  *  content selection pattern - do fix if pattern found
8163  */
8164 tSCC zSvr4_Disable_OptSelect0[] =
8165        "#define.*__std_hdr_";
8166
8167 #define    SVR4_DISABLE_OPT_TEST_CT  1
8168 static tTestDesc aSvr4_Disable_OptTests[] = {
8169   { TT_EGREP,    zSvr4_Disable_OptSelect0, (regex_t*)NULL }, };
8170
8171 /*
8172  *  Fix Command Arguments for Svr4_Disable_Opt
8173  */
8174 static const char* apzSvr4_Disable_OptPatch[] = { sed_cmd_z,
8175     "-e", "/#define.*__std_hdr_/d",
8176     (char*)NULL };
8177
8178 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8179  *
8180  *  Description of Svr4_Getcwd fix
8181  */
8182 tSCC zSvr4_GetcwdName[] =
8183      "svr4_getcwd";
8184
8185 /*
8186  *  File name selection pattern
8187  */
8188 tSCC zSvr4_GetcwdList[] =
8189   "stdlib.h\0unistd.h\0prototypes.h\0";
8190 /*
8191  *  Machine/OS name selection pattern
8192  */
8193 #define apzSvr4_GetcwdMachs (const char**)NULL
8194
8195 /*
8196  *  content selection pattern - do fix if pattern found
8197  */
8198 tSCC zSvr4_GetcwdSelect0[] =
8199        "getcwd\\(char \\*, int\\)";
8200
8201 #define    SVR4_GETCWD_TEST_CT  1
8202 static tTestDesc aSvr4_GetcwdTests[] = {
8203   { TT_EGREP,    zSvr4_GetcwdSelect0, (regex_t*)NULL }, };
8204
8205 /*
8206  *  Fix Command Arguments for Svr4_Getcwd
8207  */
8208 static const char* apzSvr4_GetcwdPatch[] = {
8209     "format",
8210     "getcwd(char *, size_t)",
8211     (char*)NULL };
8212
8213 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8214  *
8215  *  Description of Svr4_Profil fix
8216  */
8217 tSCC zSvr4_ProfilName[] =
8218      "svr4_profil";
8219
8220 /*
8221  *  File name selection pattern
8222  */
8223 tSCC zSvr4_ProfilList[] =
8224   "stdlib.h\0unistd.h\0";
8225 /*
8226  *  Machine/OS name selection pattern
8227  */
8228 #define apzSvr4_ProfilMachs (const char**)NULL
8229
8230 /*
8231  *  content selection pattern - do fix if pattern found
8232  */
8233 tSCC zSvr4_ProfilSelect0[] =
8234        "profil\\(unsigned short \\*, unsigned int, unsigned int, unsigned int\\)";
8235
8236 /*
8237  *  content bypass pattern - skip fix if pattern found
8238  */
8239 tSCC zSvr4_ProfilBypass0[] =
8240        "Silicon Graphics";
8241
8242 #define    SVR4_PROFIL_TEST_CT  2
8243 static tTestDesc aSvr4_ProfilTests[] = {
8244   { TT_NEGREP,   zSvr4_ProfilBypass0, (regex_t*)NULL },
8245   { TT_EGREP,    zSvr4_ProfilSelect0, (regex_t*)NULL }, };
8246
8247 /*
8248  *  Fix Command Arguments for Svr4_Profil
8249  */
8250 static const char* apzSvr4_ProfilPatch[] = {
8251     "format",
8252     "profil(unsigned short *, size_t, int, unsigned int)",
8253     (char*)NULL };
8254
8255 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8256  *
8257  *  Description of Svr4_Sighandler_Type fix
8258  */
8259 tSCC zSvr4_Sighandler_TypeName[] =
8260      "svr4_sighandler_type";
8261
8262 /*
8263  *  File name selection pattern
8264  */
8265 tSCC zSvr4_Sighandler_TypeList[] =
8266   "sys/signal.h\0";
8267 /*
8268  *  Machine/OS name selection pattern
8269  */
8270 #define apzSvr4_Sighandler_TypeMachs (const char**)NULL
8271
8272 /*
8273  *  content selection pattern - do fix if pattern found
8274  */
8275 tSCC zSvr4_Sighandler_TypeSelect0[] =
8276        "void *\\(\\*\\)\\(\\)";
8277
8278 #define    SVR4_SIGHANDLER_TYPE_TEST_CT  1
8279 static tTestDesc aSvr4_Sighandler_TypeTests[] = {
8280   { TT_EGREP,    zSvr4_Sighandler_TypeSelect0, (regex_t*)NULL }, };
8281
8282 /*
8283  *  Fix Command Arguments for Svr4_Sighandler_Type
8284  */
8285 static const char* apzSvr4_Sighandler_TypePatch[] = {
8286     "format",
8287     "void (*)(int)",
8288     (char*)NULL };
8289
8290 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8291  *
8292  *  Description of Svr4_Undeclared_Getrnge fix
8293  */
8294 tSCC zSvr4_Undeclared_GetrngeName[] =
8295      "svr4_undeclared_getrnge";
8296
8297 /*
8298  *  File name selection pattern
8299  */
8300 tSCC zSvr4_Undeclared_GetrngeList[] =
8301   "regexp.h\0";
8302 /*
8303  *  Machine/OS name selection pattern
8304  */
8305 #define apzSvr4_Undeclared_GetrngeMachs (const char**)NULL
8306
8307 /*
8308  *  content selection pattern - do fix if pattern found
8309  */
8310 tSCC zSvr4_Undeclared_GetrngeSelect0[] =
8311        "getrnge";
8312
8313 /*
8314  *  content bypass pattern - skip fix if pattern found
8315  */
8316 tSCC zSvr4_Undeclared_GetrngeBypass0[] =
8317        "static void getrnge";
8318
8319 #define    SVR4_UNDECLARED_GETRNGE_TEST_CT  2
8320 static tTestDesc aSvr4_Undeclared_GetrngeTests[] = {
8321   { TT_NEGREP,   zSvr4_Undeclared_GetrngeBypass0, (regex_t*)NULL },
8322   { TT_EGREP,    zSvr4_Undeclared_GetrngeSelect0, (regex_t*)NULL }, };
8323
8324 /*
8325  *  Fix Command Arguments for Svr4_Undeclared_Getrnge
8326  */
8327 static const char* apzSvr4_Undeclared_GetrngePatch[] = {
8328     "format",
8329     "%0\n\
8330 static int getrnge ();",
8331     "^static int[ \t]+size;",
8332     (char*)NULL };
8333
8334 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8335  *
8336  *  Description of Sysv68_String fix
8337  */
8338 tSCC zSysv68_StringName[] =
8339      "sysv68_string";
8340
8341 /*
8342  *  File name selection pattern
8343  */
8344 tSCC zSysv68_StringList[] =
8345   "testing.h\0string.h\0";
8346 /*
8347  *  Machine/OS name selection pattern
8348  */
8349 #define apzSysv68_StringMachs (const char**)NULL
8350
8351 /*
8352  *  content bypass pattern - skip fix if pattern found
8353  */
8354 tSCC zSysv68_StringBypass0[] =
8355        "_CLASSIC_ANSI_TYPES";
8356
8357 #define    SYSV68_STRING_TEST_CT  1
8358 static tTestDesc aSysv68_StringTests[] = {
8359   { TT_NEGREP,   zSysv68_StringBypass0, (regex_t*)NULL }, };
8360
8361 /*
8362  *  Fix Command Arguments for Sysv68_String
8363  */
8364 static const char* apzSysv68_StringPatch[] = { sed_cmd_z,
8365     "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
8366     "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
8367     "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
8368     "-e", "/^extern char$/N",
8369     "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
8370     "-e", "/^extern int$/N",
8371     "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
8372     "-e", "/^\tstrncmp(),$/N",
8373     "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
8374 extern unsigned int\\\n\
8375 \\2/",
8376     (char*)NULL };
8377
8378 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8379  *
8380  *  Description of Sysz_Stdlib_For_Sun fix
8381  */
8382 tSCC zSysz_Stdlib_For_SunName[] =
8383      "sysz_stdlib_for_sun";
8384
8385 /*
8386  *  File name selection pattern
8387  */
8388 tSCC zSysz_Stdlib_For_SunList[] =
8389   "stdlib.h\0";
8390 /*
8391  *  Machine/OS name selection pattern
8392  */
8393 #define apzSysz_Stdlib_For_SunMachs (const char**)NULL
8394
8395 /*
8396  *  content selection pattern - do fix if pattern found
8397  */
8398 tSCC zSysz_Stdlib_For_SunSelect0[] =
8399        "char[ \t]*\\*[ \t]*(calloc|malloc|realloc|bsearch)[ \t]*\\(";
8400
8401 /*
8402  *  content bypass pattern - skip fix if pattern found
8403  */
8404 tSCC zSysz_Stdlib_For_SunBypass0[] =
8405        "_CLASSIC_ANSI_TYPES";
8406
8407 #define    SYSZ_STDLIB_FOR_SUN_TEST_CT  2
8408 static tTestDesc aSysz_Stdlib_For_SunTests[] = {
8409   { TT_NEGREP,   zSysz_Stdlib_For_SunBypass0, (regex_t*)NULL },
8410   { TT_EGREP,    zSysz_Stdlib_For_SunSelect0, (regex_t*)NULL }, };
8411
8412 /*
8413  *  Fix Command Arguments for Sysz_Stdlib_For_Sun
8414  */
8415 static const char* apzSysz_Stdlib_For_SunPatch[] = {
8416     "format",
8417     "void *\t%1(",
8418     (char*)NULL };
8419
8420 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8421  *
8422  *  Description of Thread_Keyword fix
8423  */
8424 tSCC zThread_KeywordName[] =
8425      "thread_keyword";
8426
8427 /*
8428  *  File name selection pattern
8429  */
8430 tSCC zThread_KeywordList[] =
8431   "pthread.h\0bits/sigthread.h\0";
8432 /*
8433  *  Machine/OS name selection pattern
8434  */
8435 #define apzThread_KeywordMachs (const char**)NULL
8436
8437 /*
8438  *  content selection pattern - do fix if pattern found
8439  */
8440 tSCC zThread_KeywordSelect0[] =
8441        "([* ])__thread([,)])";
8442
8443 #define    THREAD_KEYWORD_TEST_CT  1
8444 static tTestDesc aThread_KeywordTests[] = {
8445   { TT_EGREP,    zThread_KeywordSelect0, (regex_t*)NULL }, };
8446
8447 /*
8448  *  Fix Command Arguments for Thread_Keyword
8449  */
8450 static const char* apzThread_KeywordPatch[] = {
8451     "format",
8452     "%1__thr%2",
8453     (char*)NULL };
8454
8455 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8456  *
8457  *  Description of Tinfo_Cplusplus fix
8458  */
8459 tSCC zTinfo_CplusplusName[] =
8460      "tinfo_cplusplus";
8461
8462 /*
8463  *  File name selection pattern
8464  */
8465 tSCC zTinfo_CplusplusList[] =
8466   "tinfo.h\0";
8467 /*
8468  *  Machine/OS name selection pattern
8469  */
8470 #define apzTinfo_CplusplusMachs (const char**)NULL
8471
8472 /*
8473  *  content selection pattern - do fix if pattern found
8474  */
8475 tSCC zTinfo_CplusplusSelect0[] =
8476        "[ \t]_cplusplus";
8477
8478 #define    TINFO_CPLUSPLUS_TEST_CT  1
8479 static tTestDesc aTinfo_CplusplusTests[] = {
8480   { TT_EGREP,    zTinfo_CplusplusSelect0, (regex_t*)NULL }, };
8481
8482 /*
8483  *  Fix Command Arguments for Tinfo_Cplusplus
8484  */
8485 static const char* apzTinfo_CplusplusPatch[] = {
8486     "format",
8487     " __cplusplus",
8488     (char*)NULL };
8489
8490 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8491  *
8492  *  Description of Ultrix_Const fix
8493  */
8494 tSCC zUltrix_ConstName[] =
8495      "ultrix_const";
8496
8497 /*
8498  *  File name selection pattern
8499  */
8500 tSCC zUltrix_ConstList[] =
8501   "stdio.h\0";
8502 /*
8503  *  Machine/OS name selection pattern
8504  */
8505 #define apzUltrix_ConstMachs (const char**)NULL
8506
8507 /*
8508  *  content selection pattern - do fix if pattern found
8509  */
8510 tSCC zUltrix_ConstSelect0[] =
8511        "perror\\( char \\*";
8512
8513 #define    ULTRIX_CONST_TEST_CT  1
8514 static tTestDesc aUltrix_ConstTests[] = {
8515   { TT_EGREP,    zUltrix_ConstSelect0, (regex_t*)NULL }, };
8516
8517 /*
8518  *  Fix Command Arguments for Ultrix_Const
8519  */
8520 static const char* apzUltrix_ConstPatch[] = {
8521     "format",
8522     "%1 const %3 *__",
8523     "([ \t*](perror|fputs|fwrite|scanf|fscanf)\\(.*)[ \t]+(char|void) \\*__",
8524     (char*)NULL };
8525
8526 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8527  *
8528  *  Description of Ultrix_Const2 fix
8529  */
8530 tSCC zUltrix_Const2Name[] =
8531      "ultrix_const2";
8532
8533 /*
8534  *  File name selection pattern
8535  */
8536 tSCC zUltrix_Const2List[] =
8537   "stdio.h\0";
8538 /*
8539  *  Machine/OS name selection pattern
8540  */
8541 #define apzUltrix_Const2Machs (const char**)NULL
8542
8543 /*
8544  *  content selection pattern - do fix if pattern found
8545  */
8546 tSCC zUltrix_Const2Select0[] =
8547        "\\*fopen\\( char \\*";
8548
8549 #define    ULTRIX_CONST2_TEST_CT  1
8550 static tTestDesc aUltrix_Const2Tests[] = {
8551   { TT_EGREP,    zUltrix_Const2Select0, (regex_t*)NULL }, };
8552
8553 /*
8554  *  Fix Command Arguments for Ultrix_Const2
8555  */
8556 static const char* apzUltrix_Const2Patch[] = {
8557     "format",
8558     "%1( const char *%3, const char *",
8559     "([ \t*](fopen|sscanf|popen|tempnam))\\([ \t]*char[ \t]*\\*([^,]*),[ \t]*char[ \t]*\\*[ \t]*",
8560     (char*)NULL };
8561
8562 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8563  *
8564  *  Description of Va_I960_Macro fix
8565  */
8566 tSCC zVa_I960_MacroName[] =
8567      "va_i960_macro";
8568
8569 /*
8570  *  File name selection pattern
8571  */
8572 tSCC zVa_I960_MacroList[] =
8573   "arch/i960/archI960.h\0";
8574 /*
8575  *  Machine/OS name selection pattern
8576  */
8577 #define apzVa_I960_MacroMachs (const char**)NULL
8578
8579 /*
8580  *  content selection pattern - do fix if pattern found
8581  */
8582 tSCC zVa_I960_MacroSelect0[] =
8583        "__(vsiz|vali|vpad|alignof__)";
8584
8585 #define    VA_I960_MACRO_TEST_CT  1
8586 static tTestDesc aVa_I960_MacroTests[] = {
8587   { TT_EGREP,    zVa_I960_MacroSelect0, (regex_t*)NULL }, };
8588
8589 /*
8590  *  Fix Command Arguments for Va_I960_Macro
8591  */
8592 static const char* apzVa_I960_MacroPatch[] = {
8593     "format",
8594     "__vx%1",
8595     (char*)NULL };
8596
8597 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8598  *
8599  *  Description of Vms_Define_Can_Use_Extern_Prefix fix
8600  */
8601 tSCC zVms_Define_Can_Use_Extern_PrefixName[] =
8602      "vms_define_can_use_extern_prefix";
8603
8604 /*
8605  *  File name selection pattern
8606  */
8607 tSCC zVms_Define_Can_Use_Extern_PrefixList[] =
8608   "rtldef/decc$types.h\0";
8609 /*
8610  *  Machine/OS name selection pattern
8611  */
8612 tSCC* apzVms_Define_Can_Use_Extern_PrefixMachs[] = {
8613         "*-*-*vms*",
8614         (const char*)NULL };
8615
8616 /*
8617  *  content selection pattern - do fix if pattern found
8618  */
8619 tSCC zVms_Define_Can_Use_Extern_PrefixSelect0[] =
8620        "#[ \t]*else\n\
8621 #[ \t]*if defined\\(__DECCXX\\)\n\
8622 #[ \t]*define __CAN_USE_EXTERN_PREFIX 1\n";
8623
8624 #define    VMS_DEFINE_CAN_USE_EXTERN_PREFIX_TEST_CT  1
8625 static tTestDesc aVms_Define_Can_Use_Extern_PrefixTests[] = {
8626   { TT_EGREP,    zVms_Define_Can_Use_Extern_PrefixSelect0, (regex_t*)NULL }, };
8627
8628 /*
8629  *  Fix Command Arguments for Vms_Define_Can_Use_Extern_Prefix
8630  */
8631 static const char* apzVms_Define_Can_Use_Extern_PrefixPatch[] = {
8632     "format",
8633     "%0#    elif defined (__GNUC__)\n\
8634 #\tdefine __CAN_USE_EXTERN_PREFIX 1\n",
8635     (char*)NULL };
8636
8637 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8638  *
8639  *  Description of Vms_Use_Pragma_Extern_Model fix
8640  */
8641 tSCC zVms_Use_Pragma_Extern_ModelName[] =
8642      "vms_use_pragma_extern_model";
8643
8644 /*
8645  *  File name selection pattern
8646  */
8647 #define zVms_Use_Pragma_Extern_ModelList (char*)NULL
8648 /*
8649  *  Machine/OS name selection pattern
8650  */
8651 tSCC* apzVms_Use_Pragma_Extern_ModelMachs[] = {
8652         "*-*-*vms*",
8653         (const char*)NULL };
8654
8655 /*
8656  *  content selection pattern - do fix if pattern found
8657  */
8658 tSCC zVms_Use_Pragma_Extern_ModelSelect0[] =
8659        "#if defined\\(__DECC\\) \\|\\| defined\\(__DECCXX\\)\n\
8660 # pragma extern_model __save\n";
8661
8662 #define    VMS_USE_PRAGMA_EXTERN_MODEL_TEST_CT  1
8663 static tTestDesc aVms_Use_Pragma_Extern_ModelTests[] = {
8664   { TT_EGREP,    zVms_Use_Pragma_Extern_ModelSelect0, (regex_t*)NULL }, };
8665
8666 /*
8667  *  Fix Command Arguments for Vms_Use_Pragma_Extern_Model
8668  */
8669 static const char* apzVms_Use_Pragma_Extern_ModelPatch[] = {
8670     "format",
8671     "#if defined(__DECC) || defined(__DECCXX) || defined(__GNUC__)\n\
8672 # pragma extern_model __save\n",
8673     (char*)NULL };
8674
8675 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8676  *
8677  *  Description of Vms_Disable_Decc_String_Builtins fix
8678  */
8679 tSCC zVms_Disable_Decc_String_BuiltinsName[] =
8680      "vms_disable_decc_string_builtins";
8681
8682 /*
8683  *  File name selection pattern
8684  */
8685 tSCC zVms_Disable_Decc_String_BuiltinsList[] =
8686   "rtldef/string.h\0";
8687 /*
8688  *  Machine/OS name selection pattern
8689  */
8690 tSCC* apzVms_Disable_Decc_String_BuiltinsMachs[] = {
8691         "*-*-*vms*",
8692         (const char*)NULL };
8693
8694 /*
8695  *  content selection pattern - do fix if pattern found
8696  */
8697 tSCC zVms_Disable_Decc_String_BuiltinsSelect0[] =
8698        "#if !defined\\(__VAX\\)\n";
8699
8700 #define    VMS_DISABLE_DECC_STRING_BUILTINS_TEST_CT  1
8701 static tTestDesc aVms_Disable_Decc_String_BuiltinsTests[] = {
8702   { TT_EGREP,    zVms_Disable_Decc_String_BuiltinsSelect0, (regex_t*)NULL }, };
8703
8704 /*
8705  *  Fix Command Arguments for Vms_Disable_Decc_String_Builtins
8706  */
8707 static const char* apzVms_Disable_Decc_String_BuiltinsPatch[] = {
8708     "format",
8709     "#if !defined(__VAX) && !defined(__GNUC__)\n",
8710     (char*)NULL };
8711
8712 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8713  *
8714  *  Description of Void_Null fix
8715  */
8716 tSCC zVoid_NullName[] =
8717      "void_null";
8718
8719 /*
8720  *  File name selection pattern
8721  */
8722 tSCC zVoid_NullList[] =
8723   "curses.h\0dbm.h\0locale.h\0stdio.h\0stdlib.h\0string.h\0time.h\0unistd.h\0sys/dir.h\0sys/param.h\0sys/types.h\0";
8724 /*
8725  *  Machine/OS name selection pattern
8726  */
8727 #define apzVoid_NullMachs (const char**)NULL
8728
8729 /*
8730  *  content selection pattern - do fix if pattern found
8731  */
8732 tSCC zVoid_NullSelect0[] =
8733        "^#[ \t]*define[ \t]+NULL[ \t]+\\(\\(void[ \t]*\\*\\)0\\)";
8734
8735 /*
8736  *  content bypass pattern - skip fix if pattern found
8737  */
8738 tSCC zVoid_NullBypass0[] =
8739        "__cplusplus";
8740 tSCC zVoid_NullBypass1[] =
8741        "__null";
8742
8743 #define    VOID_NULL_TEST_CT  3
8744 static tTestDesc aVoid_NullTests[] = {
8745   { TT_NEGREP,   zVoid_NullBypass0, (regex_t*)NULL },
8746   { TT_NEGREP,   zVoid_NullBypass1, (regex_t*)NULL },
8747   { TT_EGREP,    zVoid_NullSelect0, (regex_t*)NULL }, };
8748
8749 /*
8750  *  Fix Command Arguments for Void_Null
8751  */
8752 static const char* apzVoid_NullPatch[] = {
8753     "format",
8754     "#define NULL 0",
8755     (char*)NULL };
8756
8757 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8758  *
8759  *  Description of Vxworks_Gcc_Problem fix
8760  */
8761 tSCC zVxworks_Gcc_ProblemName[] =
8762      "vxworks_gcc_problem";
8763
8764 /*
8765  *  File name selection pattern
8766  */
8767 tSCC zVxworks_Gcc_ProblemList[] =
8768   "types/vxTypesBase.h\0";
8769 /*
8770  *  Machine/OS name selection pattern
8771  */
8772 #define apzVxworks_Gcc_ProblemMachs (const char**)NULL
8773
8774 /*
8775  *  content selection pattern - do fix if pattern found
8776  */
8777 tSCC zVxworks_Gcc_ProblemSelect0[] =
8778        "__GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__";
8779
8780 #define    VXWORKS_GCC_PROBLEM_TEST_CT  1
8781 static tTestDesc aVxworks_Gcc_ProblemTests[] = {
8782   { TT_EGREP,    zVxworks_Gcc_ProblemSelect0, (regex_t*)NULL }, };
8783
8784 /*
8785  *  Fix Command Arguments for Vxworks_Gcc_Problem
8786  */
8787 static const char* apzVxworks_Gcc_ProblemPatch[] = { sed_cmd_z,
8788     "-e", "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
8789     "-e", "/[ \t]size_t/i\\\n\
8790 #ifndef _GCC_SIZE_T\\\n\
8791 #define _GCC_SIZE_T\n",
8792     "-e", "/[ \t]size_t/a\\\n\
8793 #endif\n",
8794     "-e", "/[ \t]ptrdiff_t/i\\\n\
8795 #ifndef _GCC_PTRDIFF_T\\\n\
8796 #define _GCC_PTRDIFF_T\n",
8797     "-e", "/[ \t]ptrdiff_t/a\\\n\
8798 #endif\n",
8799     "-e", "/[ \t]wchar_t/i\\\n\
8800 #ifndef _GCC_WCHAR_T\\\n\
8801 #define _GCC_WCHAR_T\n",
8802     "-e", "/[ \t]wchar_t/a\\\n\
8803 #endif\n",
8804     (char*)NULL };
8805
8806 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8807  *
8808  *  Description of Vxworks_Needs_Vxtypes fix
8809  */
8810 tSCC zVxworks_Needs_VxtypesName[] =
8811      "vxworks_needs_vxtypes";
8812
8813 /*
8814  *  File name selection pattern
8815  */
8816 tSCC zVxworks_Needs_VxtypesList[] =
8817   "time.h\0";
8818 /*
8819  *  Machine/OS name selection pattern
8820  */
8821 #define apzVxworks_Needs_VxtypesMachs (const char**)NULL
8822
8823 /*
8824  *  content selection pattern - do fix if pattern found
8825  */
8826 tSCC zVxworks_Needs_VxtypesSelect0[] =
8827        "uint_t([ \t]+_clocks_per_sec)";
8828
8829 #define    VXWORKS_NEEDS_VXTYPES_TEST_CT  1
8830 static tTestDesc aVxworks_Needs_VxtypesTests[] = {
8831   { TT_EGREP,    zVxworks_Needs_VxtypesSelect0, (regex_t*)NULL }, };
8832
8833 /*
8834  *  Fix Command Arguments for Vxworks_Needs_Vxtypes
8835  */
8836 static const char* apzVxworks_Needs_VxtypesPatch[] = {
8837     "format",
8838     "unsigned int%1",
8839     (char*)NULL };
8840
8841 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8842  *
8843  *  Description of Vxworks_Needs_Vxworks fix
8844  */
8845 tSCC zVxworks_Needs_VxworksName[] =
8846      "vxworks_needs_vxworks";
8847
8848 /*
8849  *  File name selection pattern
8850  */
8851 tSCC zVxworks_Needs_VxworksList[] =
8852   "sys/stat.h\0";
8853 /*
8854  *  Machine/OS name selection pattern
8855  */
8856 #define apzVxworks_Needs_VxworksMachs (const char**)NULL
8857
8858 /*
8859  *  content selection pattern - do fix if pattern found
8860  */
8861 tSCC zVxworks_Needs_VxworksSelect0[] =
8862        "#[ \t]define[ \t]+__INCstath";
8863
8864 /*
8865  *  perform the 'test' shell command - do fix on success
8866  */
8867 tSCC zVxworks_Needs_VxworksTest0[] =
8868        " -r types/vxTypesOld.h";
8869 tSCC zVxworks_Needs_VxworksTest1[] =
8870        " -n \"`egrep '#include' $file`\"";
8871 tSCC zVxworks_Needs_VxworksTest2[] =
8872        " -n \"`egrep ULONG $file`\"";
8873
8874 #define    VXWORKS_NEEDS_VXWORKS_TEST_CT  4
8875 static tTestDesc aVxworks_Needs_VxworksTests[] = {
8876   { TT_TEST,     zVxworks_Needs_VxworksTest0,   0 /* unused */ },
8877   { TT_TEST,     zVxworks_Needs_VxworksTest1,   0 /* unused */ },
8878   { TT_TEST,     zVxworks_Needs_VxworksTest2,   0 /* unused */ },
8879   { TT_EGREP,    zVxworks_Needs_VxworksSelect0, (regex_t*)NULL }, };
8880
8881 /*
8882  *  Fix Command Arguments for Vxworks_Needs_Vxworks
8883  */
8884 static const char* apzVxworks_Needs_VxworksPatch[] = { sed_cmd_z,
8885     "-e", "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n\
8886 #include <types/vxTypesOld.h>\n",
8887     (char*)NULL };
8888
8889 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8890  *
8891  *  Description of Vxworks_Time fix
8892  */
8893 tSCC zVxworks_TimeName[] =
8894      "vxworks_time";
8895
8896 /*
8897  *  File name selection pattern
8898  */
8899 tSCC zVxworks_TimeList[] =
8900   "time.h\0";
8901 /*
8902  *  Machine/OS name selection pattern
8903  */
8904 #define apzVxworks_TimeMachs (const char**)NULL
8905
8906 /*
8907  *  content selection pattern - do fix if pattern found
8908  */
8909 tSCC zVxworks_TimeSelect0[] =
8910        "#[ \t]*define[ \t]+VOIDFUNCPTR[ \t].*";
8911
8912 /*
8913  *  perform the 'test' shell command - do fix on success
8914  */
8915 tSCC zVxworks_TimeTest0[] =
8916        " -r vxWorks.h";
8917
8918 #define    VXWORKS_TIME_TEST_CT  2
8919 static tTestDesc aVxworks_TimeTests[] = {
8920   { TT_TEST,     zVxworks_TimeTest0,   0 /* unused */ },
8921   { TT_EGREP,    zVxworks_TimeSelect0, (regex_t*)NULL }, };
8922
8923 /*
8924  *  Fix Command Arguments for Vxworks_Time
8925  */
8926 static const char* apzVxworks_TimePatch[] = {
8927     "format",
8928     "#ifndef __gcc_VOIDFUNCPTR_defined\n\
8929 #ifdef __cplusplus\n\
8930 typedef void (*__gcc_VOIDFUNCPTR) (...);\n\
8931 #else\n\
8932 typedef void (*__gcc_VOIDFUNCPTR) ();\n\
8933 #endif\n\
8934 #define __gcc_VOIDFUNCPTR_defined\n\
8935 #endif\n\
8936 #define VOIDFUNCPTR __gcc_VOIDFUNCPTR",
8937     (char*)NULL };
8938
8939 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8940  *
8941  *  Description of X11_Class fix
8942  */
8943 tSCC zX11_ClassName[] =
8944      "x11_class";
8945
8946 /*
8947  *  File name selection pattern
8948  */
8949 tSCC zX11_ClassList[] =
8950   "X11/ShellP.h\0";
8951 /*
8952  *  Machine/OS name selection pattern
8953  */
8954 #define apzX11_ClassMachs (const char**)NULL
8955
8956 /*
8957  *  content selection pattern - do fix if pattern found
8958  */
8959 tSCC zX11_ClassSelect0[] =
8960        "^([ \t]*char \\*)class;(.*)";
8961
8962 /*
8963  *  content bypass pattern - skip fix if pattern found
8964  */
8965 tSCC zX11_ClassBypass0[] =
8966        "__cplusplus";
8967
8968 #define    X11_CLASS_TEST_CT  2
8969 static tTestDesc aX11_ClassTests[] = {
8970   { TT_NEGREP,   zX11_ClassBypass0, (regex_t*)NULL },
8971   { TT_EGREP,    zX11_ClassSelect0, (regex_t*)NULL }, };
8972
8973 /*
8974  *  Fix Command Arguments for X11_Class
8975  */
8976 static const char* apzX11_ClassPatch[] = {
8977     "format",
8978     "#ifdef __cplusplus\n\
8979 %1c_class;%2\n\
8980 #else\n\
8981 %1class;%2\n\
8982 #endif",
8983     (char*)NULL };
8984
8985 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8986  *
8987  *  Description of X11_Class_Usage fix
8988  */
8989 tSCC zX11_Class_UsageName[] =
8990      "x11_class_usage";
8991
8992 /*
8993  *  File name selection pattern
8994  */
8995 tSCC zX11_Class_UsageList[] =
8996   "Xm/BaseClassI.h\0";
8997 /*
8998  *  Machine/OS name selection pattern
8999  */
9000 #define apzX11_Class_UsageMachs (const char**)NULL
9001
9002 /*
9003  *  content selection pattern - do fix if pattern found
9004  */
9005 tSCC zX11_Class_UsageSelect0[] =
9006        " class\\)";
9007
9008 /*
9009  *  content bypass pattern - skip fix if pattern found
9010  */
9011 tSCC zX11_Class_UsageBypass0[] =
9012        "__cplusplus";
9013
9014 #define    X11_CLASS_USAGE_TEST_CT  2
9015 static tTestDesc aX11_Class_UsageTests[] = {
9016   { TT_NEGREP,   zX11_Class_UsageBypass0, (regex_t*)NULL },
9017   { TT_EGREP,    zX11_Class_UsageSelect0, (regex_t*)NULL }, };
9018
9019 /*
9020  *  Fix Command Arguments for X11_Class_Usage
9021  */
9022 static const char* apzX11_Class_UsagePatch[] = {
9023     "format",
9024     " c_class)",
9025     (char*)NULL };
9026
9027 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9028  *
9029  *  Description of X11_New fix
9030  */
9031 tSCC zX11_NewName[] =
9032      "x11_new";
9033
9034 /*
9035  *  File name selection pattern
9036  */
9037 tSCC zX11_NewList[] =
9038   "Xm/Traversal.h\0";
9039 /*
9040  *  Machine/OS name selection pattern
9041  */
9042 #define apzX11_NewMachs (const char**)NULL
9043
9044 /*
9045  *  content bypass pattern - skip fix if pattern found
9046  */
9047 tSCC zX11_NewBypass0[] =
9048        "__cplusplus";
9049
9050 #define    X11_NEW_TEST_CT  1
9051 static tTestDesc aX11_NewTests[] = {
9052   { TT_NEGREP,   zX11_NewBypass0, (regex_t*)NULL }, };
9053
9054 /*
9055  *  Fix Command Arguments for X11_New
9056  */
9057 static const char* apzX11_NewPatch[] = { sed_cmd_z,
9058     "-e", "/Widget\told, new;/i\\\n\
9059 #ifdef __cplusplus\\\n\
9060 \\\tWidget\told, c_new;\\\n\
9061 #else\n",
9062     "-e", "/Widget\told, new;/a\\\n\
9063 #endif\n",
9064     "-e", "s/Widget new,/Widget c_new,/g",
9065     (char*)NULL };
9066
9067 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9068  *
9069  *  Description of X11_Sprintf fix
9070  */
9071 tSCC zX11_SprintfName[] =
9072      "x11_sprintf";
9073
9074 /*
9075  *  File name selection pattern
9076  */
9077 tSCC zX11_SprintfList[] =
9078   "X11/Xmu.h\0X11/Xmu/Xmu.h\0";
9079 /*
9080  *  Machine/OS name selection pattern
9081  */
9082 #define apzX11_SprintfMachs (const char**)NULL
9083
9084 /*
9085  *  content selection pattern - do fix if pattern found
9086  */
9087 tSCC zX11_SprintfSelect0[] =
9088        "^extern char \\*\tsprintf\\(\\);$";
9089
9090 #define    X11_SPRINTF_TEST_CT  1
9091 static tTestDesc aX11_SprintfTests[] = {
9092   { TT_EGREP,    zX11_SprintfSelect0, (regex_t*)NULL }, };
9093
9094 /*
9095  *  Fix Command Arguments for X11_Sprintf
9096  */
9097 static const char* apzX11_SprintfPatch[] = {
9098     "format",
9099     "#ifndef __STDC__\n\
9100 %0\n\
9101 #endif /* !defined __STDC__ */",
9102     (char*)NULL };
9103
9104
9105 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9106  *
9107  *  List of all fixes
9108  */
9109 #define REGEX_COUNT          266
9110 #define MACH_LIST_SIZE_LIMIT 181
9111 #define FIX_COUNT            224
9112
9113 /*
9114  *  Enumerate the fixes
9115  */
9116 typedef enum {
9117     AAB_AIX_STDIO_FIXIDX,
9118     AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_FIXIDX,
9119     AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_FIXIDX,
9120     AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
9121     AAB_FD_ZERO_GNU_TYPES_H_FIXIDX,
9122     AAB_FD_ZERO_SELECTBITS_H_FIXIDX,
9123     AAB_SOLARIS_SYS_VARARGS_H_FIXIDX,
9124     AAB_SUN_MEMCPY_FIXIDX,
9125     AIX_COMPLEX_FIXIDX,
9126     AIX_MALLOC_FIXIDX,
9127     AIX_NET_IF_ARP_FIXIDX,
9128     AIX_ONCE_INIT_1_FIXIDX,
9129     AIX_ONCE_INIT_2_FIXIDX,
9130     AIX_PTHREAD_FIXIDX,
9131     AIX_STDINT_1_FIXIDX,
9132     AIX_STDINT_2_FIXIDX,
9133     AIX_STDINT_3_FIXIDX,
9134     AIX_STDINT_4_FIXIDX,
9135     AIX_STDINT_5_FIXIDX,
9136     AIX_SYSMACHINE_FIXIDX,
9137     AIX_SYSWAIT_2_FIXIDX,
9138     AIX_VOLATILE_FIXIDX,
9139     ALPHA___ASSERT_FIXIDX,
9140     ALPHA___EXTERN_PREFIX_FIXIDX,
9141     ALPHA___EXTERN_PREFIX_STANDARDS_FIXIDX,
9142     ALPHA___EXTERN_PREFIX_SYS_STAT_FIXIDX,
9143     ALPHA_ASSERT_FIXIDX,
9144     ALPHA_BAD_LVAL_FIXIDX,
9145     ALPHA_GETOPT_FIXIDX,
9146     ALPHA_IF_SEMICOLON_FIXIDX,
9147     ALPHA_PARENS_FIXIDX,
9148     ALPHA_PTHREAD_FIXIDX,
9149     ALPHA_PTHREAD_GCC_FIXIDX,
9150     ALPHA_PTHREAD_INIT_FIXIDX,
9151     ALPHA_SBRK_FIXIDX,
9152     AVOID_BOOL_DEFINE_FIXIDX,
9153     AVOID_BOOL_TYPE_FIXIDX,
9154     AVOID_WCHAR_T_TYPE_FIXIDX,
9155     BAD_STRUCT_TERM_FIXIDX,
9156     BADQUOTE_FIXIDX,
9157     BROKEN_ASSERT_STDIO_FIXIDX,
9158     BROKEN_ASSERT_STDLIB_FIXIDX,
9159     BROKEN_CABS_FIXIDX,
9160     BROKEN_NAN_FIXIDX,
9161     BSD_STDIO_ATTRS_CONFLICT_FIXIDX,
9162     CDEF_CPLUSPLUS_FIXIDX,
9163     CTRL_QUOTES_DEF_FIXIDX,
9164     CTRL_QUOTES_USE_FIXIDX,
9165     CXX_UNREADY_FIXIDX,
9166     DARWIN_EXTERNC_FIXIDX,
9167     DARWIN_GCC4_BREAKAGE_FIXIDX,
9168     DARWIN_PRIVATE_EXTERN_FIXIDX,
9169     DARWIN_STDINT_1_FIXIDX,
9170     DARWIN_STDINT_2_FIXIDX,
9171     DARWIN_STDINT_3_FIXIDX,
9172     DARWIN_STDINT_4_FIXIDX,
9173     DARWIN_STDINT_5_FIXIDX,
9174     DARWIN_STDINT_6_FIXIDX,
9175     DARWIN_STDINT_7_FIXIDX,
9176     DEC_INTERN_ASM_FIXIDX,
9177     DJGPP_WCHAR_H_FIXIDX,
9178     ECD_CURSOR_FIXIDX,
9179     FREEBSD_GCC3_BREAKAGE_FIXIDX,
9180     FREEBSD_GCC4_BREAKAGE_FIXIDX,
9181     GLIBC_C99_INLINE_1_FIXIDX,
9182     GLIBC_C99_INLINE_1A_FIXIDX,
9183     GLIBC_C99_INLINE_2_FIXIDX,
9184     GLIBC_C99_INLINE_3_FIXIDX,
9185     GLIBC_C99_INLINE_4_FIXIDX,
9186     GLIBC_MUTEX_INIT_FIXIDX,
9187     GLIBC_STDINT_FIXIDX,
9188     GLIBC_STRNCPY_FIXIDX,
9189     GLIBC_TGMATH_FIXIDX,
9190     GNU_TYPES_FIXIDX,
9191     HP_INLINE_FIXIDX,
9192     HP_SYSFILE_FIXIDX,
9193     HPPA_HPUX_FP_MACROS_FIXIDX,
9194     HPUX10_CPP_POW_INLINE_FIXIDX,
9195     HPUX11_CPP_POW_INLINE_FIXIDX,
9196     HPUX10_CTYPE_DECLARATIONS1_FIXIDX,
9197     HPUX10_CTYPE_DECLARATIONS2_FIXIDX,
9198     HPUX10_STDIO_DECLARATIONS_FIXIDX,
9199     HPUX11_ABS_FIXIDX,
9200     HPUX11_FABSF_FIXIDX,
9201     HPUX11_PTHREAD_CONST_FIXIDX,
9202     HPUX11_SIZE_T_FIXIDX,
9203     HPUX11_SNPRINTF_FIXIDX,
9204     HPUX11_VSNPRINTF_FIXIDX,
9205     HPUX8_BOGUS_INLINES_FIXIDX,
9206     HPUX_CTYPE_MACROS_FIXIDX,
9207     HPUX_HTONL_FIXIDX,
9208     HPUX_LONG_DOUBLE_FIXIDX,
9209     HPUX_LONG_DOUBLE_2_FIXIDX,
9210     HPUX_SYSTIME_FIXIDX,
9211     HPUX_SPU_INFO_FIXIDX,
9212     HPUX11_EXTERN_SENDFILE_FIXIDX,
9213     HPUX11_EXTERN_SENDPATH_FIXIDX,
9214     HPUX_EXTERN_ERRNO_FIXIDX,
9215     HPUX_PTHREAD_INITIALIZERS_FIXIDX,
9216     HPUX_C99_INTPTR_FIXIDX,
9217     HPUX_C99_INTTYPES_FIXIDX,
9218     HPUX_C99_INTTYPES2_FIXIDX,
9219     HPUX_STDINT_LEAST_FAST_FIXIDX,
9220     HPUX_INTTYPE_INT8_T_FIXIDX,
9221     HPUX_IMAGINARY_I_FIXIDX,
9222     HUGE_VAL_HEX_FIXIDX,
9223     HUGE_VALF_HEX_FIXIDX,
9224     HUGE_VALL_HEX_FIXIDX,
9225     INT_ABORT_FREE_AND_EXIT_FIXIDX,
9226     IO_QUOTES_DEF_FIXIDX,
9227     IO_QUOTES_USE_FIXIDX,
9228     IP_MISSING_SEMI_FIXIDX,
9229     IRIX___RESTRICT_FIXIDX,
9230     IRIX___GENERIC1_FIXIDX,
9231     IRIX___GENERIC2_FIXIDX,
9232     IRIX_ASM_APOSTROPHE_FIXIDX,
9233     IRIX_COMPLEX_FIXIDX,
9234     IRIX_LIMITS_CONST_FIXIDX,
9235     IRIX_PTHREAD_INIT_FIXIDX,
9236     IRIX_SOCKLEN_T_FIXIDX,
9237     IRIX_STDINT_C99_MODE_FIXIDX,
9238     IRIX_STDINT_C99_TYPES_FIXIDX,
9239     IRIX_STDINT_C99_MACROS_FIXIDX,
9240     IRIX_STDIO_VA_LIST_FIXIDX,
9241     IRIX_WCSFTIME_FIXIDX,
9242     KANDR_CONCAT_FIXIDX,
9243     LINUX_IA64_UCONTEXT_FIXIDX,
9244     LYNXOS_NO_WARNING_IN_SYS_TIME_H_FIXIDX,
9245     LYNXOS_MISSING_PUTENV_FIXIDX,
9246     MACHINE_ANSI_H_VA_LIST_FIXIDX,
9247     MACHINE_NAME_FIXIDX,
9248     MATH_EXCEPTION_FIXIDX,
9249     MATH_HUGE_VAL_FROM_DBL_MAX_FIXIDX,
9250     NESTED_AUTH_DES_FIXIDX,
9251     NETBSD_C99_INLINE_1_FIXIDX,
9252     NETBSD_C99_INLINE_2_FIXIDX,
9253     NETBSD_EXTRA_SEMICOLON_FIXIDX,
9254     NEWLIB_STDINT_1_FIXIDX,
9255     NEWLIB_STDINT_2_FIXIDX,
9256     NEXT_MATH_PREFIX_FIXIDX,
9257     NEXT_TEMPLATE_FIXIDX,
9258     NEXT_VOLITILE_FIXIDX,
9259     NEXT_WAIT_UNION_FIXIDX,
9260     NODEENT_SYNTAX_FIXIDX,
9261     OPENBSD_NULL_DEFINITION_FIXIDX,
9262     OBSTACK_LVALUE_CAST_FIXIDX,
9263     OPENBSD_VA_START_FIXIDX,
9264     OSF_NAMESPACE_A_FIXIDX,
9265     OSF_NAMESPACE_C_FIXIDX,
9266     PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_FIXIDX,
9267     READ_RET_TYPE_FIXIDX,
9268     RPC_XDR_LVALUE_CAST_A_FIXIDX,
9269     RPC_XDR_LVALUE_CAST_B_FIXIDX,
9270     RS6000_DOUBLE_FIXIDX,
9271     RS6000_FCHMOD_FIXIDX,
9272     RS6000_PARAM_FIXIDX,
9273     SOLARIS___RESTRICT_FIXIDX,
9274     SOLARIS_COMPLEX_FIXIDX,
9275     SOLARIS_COMPLEX_CXX_FIXIDX,
9276     SOLARIS_COND_INIT_FIXIDX,
9277     SOLARIS_CXX_LINKAGE_FIXIDX,
9278     SOLARIS_GETC_STRICT_STDC_FIXIDX,
9279     SOLARIS_LONGJMP_NORETURN_FIXIDX,
9280     SOLARIS_MATH_1_FIXIDX,
9281     SOLARIS_MATH_2_FIXIDX,
9282     SOLARIS_MATH_3_FIXIDX,
9283     SOLARIS_MATH_4_FIXIDX,
9284     SOLARIS_MATH_8_FIXIDX,
9285     SOLARIS_MATH_9_FIXIDX,
9286     SOLARIS_MATH_10_FIXIDX,
9287     SOLARIS_MUTEX_INIT_2_FIXIDX,
9288     SOLARIS_POW_INT_OVERLOAD_FIXIDX,
9289     SOLARIS_RWLOCK_INIT_1_FIXIDX,
9290     SOLARIS_ONCE_INIT_1_FIXIDX,
9291     SOLARIS_ONCE_INIT_2_FIXIDX,
9292     SOLARIS_INT_CONST_FIXIDX,
9293     SOLARIS_INT_LIMITS_1_FIXIDX,
9294     SOLARIS_INT_LIMITS_2_FIXIDX,
9295     SOLARIS_INT_LIMITS_3_FIXIDX,
9296     SOLARIS_INT_TYPES_FIXIDX,
9297     SOLARIS_POSIX_SPAWN_RESTRICT_FIXIDX,
9298     SOLARIS_STD___FILBUF_FIXIDX,
9299     SOLARIS_STDIO_TAG_FIXIDX,
9300     SOLARIS_SYS_VA_LIST_FIXIDX,
9301     STATSSWTCH_FIXIDX,
9302     STDIO_STDARG_H_FIXIDX,
9303     STDIO_VA_LIST_FIXIDX,
9304     STDIO_VA_LIST_CLIENTS_FIXIDX,
9305     STRICT_ANSI_NOT_FIXIDX,
9306     STRICT_ANSI_NOT_CTD_FIXIDX,
9307     STRICT_ANSI_ONLY_FIXIDX,
9308     STRUCT_FILE_FIXIDX,
9309     STRUCT_SOCKADDR_FIXIDX,
9310     SUN_AUTH_PROTO_FIXIDX,
9311     SUN_BOGUS_IFDEF_FIXIDX,
9312     SUN_CATMACRO_FIXIDX,
9313     SUN_MALLOC_FIXIDX,
9314     SUN_RUSERS_SEMI_FIXIDX,
9315     SUN_SIGNAL_FIXIDX,
9316     SUNOS_STRLEN_FIXIDX,
9317     SVR4_DISABLE_OPT_FIXIDX,
9318     SVR4_GETCWD_FIXIDX,
9319     SVR4_PROFIL_FIXIDX,
9320     SVR4_SIGHANDLER_TYPE_FIXIDX,
9321     SVR4_UNDECLARED_GETRNGE_FIXIDX,
9322     SYSV68_STRING_FIXIDX,
9323     SYSZ_STDLIB_FOR_SUN_FIXIDX,
9324     THREAD_KEYWORD_FIXIDX,
9325     TINFO_CPLUSPLUS_FIXIDX,
9326     ULTRIX_CONST_FIXIDX,
9327     ULTRIX_CONST2_FIXIDX,
9328     VA_I960_MACRO_FIXIDX,
9329     VMS_DEFINE_CAN_USE_EXTERN_PREFIX_FIXIDX,
9330     VMS_USE_PRAGMA_EXTERN_MODEL_FIXIDX,
9331     VMS_DISABLE_DECC_STRING_BUILTINS_FIXIDX,
9332     VOID_NULL_FIXIDX,
9333     VXWORKS_GCC_PROBLEM_FIXIDX,
9334     VXWORKS_NEEDS_VXTYPES_FIXIDX,
9335     VXWORKS_NEEDS_VXWORKS_FIXIDX,
9336     VXWORKS_TIME_FIXIDX,
9337     X11_CLASS_FIXIDX,
9338     X11_CLASS_USAGE_FIXIDX,
9339     X11_NEW_FIXIDX,
9340     X11_SPRINTF_FIXIDX
9341 } t_fixinc_idx;
9342
9343 tFixDesc fixDescList[ FIX_COUNT ] = {
9344   {  zAab_Aix_StdioName,    zAab_Aix_StdioList,
9345      apzAab_Aix_StdioMachs,
9346      AAB_AIX_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9347      aAab_Aix_StdioTests,   apzAab_Aix_StdioPatch, 0 },
9348
9349   {  zAab_Darwin7_9_Long_Double_FuncsName,    zAab_Darwin7_9_Long_Double_FuncsList,
9350      apzAab_Darwin7_9_Long_Double_FuncsMachs,
9351      AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
9352      aAab_Darwin7_9_Long_Double_FuncsTests,   apzAab_Darwin7_9_Long_Double_FuncsPatch, 0 },
9353
9354   {  zAab_Darwin7_9_Long_Double_Funcs_2Name,    zAab_Darwin7_9_Long_Double_Funcs_2List,
9355      apzAab_Darwin7_9_Long_Double_Funcs_2Machs,
9356      AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9357      aAab_Darwin7_9_Long_Double_Funcs_2Tests,   apzAab_Darwin7_9_Long_Double_Funcs_2Patch, 0 },
9358
9359   {  zAab_Fd_Zero_Asm_Posix_Types_HName,    zAab_Fd_Zero_Asm_Posix_Types_HList,
9360      apzAab_Fd_Zero_Asm_Posix_Types_HMachs,
9361      AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
9362      aAab_Fd_Zero_Asm_Posix_Types_HTests,   apzAab_Fd_Zero_Asm_Posix_Types_HPatch, 0 },
9363
9364   {  zAab_Fd_Zero_Gnu_Types_HName,    zAab_Fd_Zero_Gnu_Types_HList,
9365      apzAab_Fd_Zero_Gnu_Types_HMachs,
9366      AAB_FD_ZERO_GNU_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
9367      aAab_Fd_Zero_Gnu_Types_HTests,   apzAab_Fd_Zero_Gnu_Types_HPatch, 0 },
9368
9369   {  zAab_Fd_Zero_Selectbits_HName,    zAab_Fd_Zero_Selectbits_HList,
9370      apzAab_Fd_Zero_Selectbits_HMachs,
9371      AAB_FD_ZERO_SELECTBITS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
9372      aAab_Fd_Zero_Selectbits_HTests,   apzAab_Fd_Zero_Selectbits_HPatch, 0 },
9373
9374   {  zAab_Solaris_Sys_Varargs_HName,    zAab_Solaris_Sys_Varargs_HList,
9375      apzAab_Solaris_Sys_Varargs_HMachs,
9376      AAB_SOLARIS_SYS_VARARGS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
9377      aAab_Solaris_Sys_Varargs_HTests,   apzAab_Solaris_Sys_Varargs_HPatch, 0 },
9378
9379   {  zAab_Sun_MemcpyName,    zAab_Sun_MemcpyList,
9380      apzAab_Sun_MemcpyMachs,
9381      AAB_SUN_MEMCPY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
9382      aAab_Sun_MemcpyTests,   apzAab_Sun_MemcpyPatch, 0 },
9383
9384   {  zAix_ComplexName,    zAix_ComplexList,
9385      apzAix_ComplexMachs,
9386      AIX_COMPLEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9387      aAix_ComplexTests,   apzAix_ComplexPatch, 0 },
9388
9389   {  zAix_MallocName,    zAix_MallocList,
9390      apzAix_MallocMachs,
9391      AIX_MALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9392      aAix_MallocTests,   apzAix_MallocPatch, 0 },
9393
9394   {  zAix_Net_If_ArpName,    zAix_Net_If_ArpList,
9395      apzAix_Net_If_ArpMachs,
9396      AIX_NET_IF_ARP_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9397      aAix_Net_If_ArpTests,   apzAix_Net_If_ArpPatch, 0 },
9398
9399   {  zAix_Once_Init_1Name,    zAix_Once_Init_1List,
9400      apzAix_Once_Init_1Machs,
9401      AIX_ONCE_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9402      aAix_Once_Init_1Tests,   apzAix_Once_Init_1Patch, 0 },
9403
9404   {  zAix_Once_Init_2Name,    zAix_Once_Init_2List,
9405      apzAix_Once_Init_2Machs,
9406      AIX_ONCE_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9407      aAix_Once_Init_2Tests,   apzAix_Once_Init_2Patch, 0 },
9408
9409   {  zAix_PthreadName,    zAix_PthreadList,
9410      apzAix_PthreadMachs,
9411      AIX_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9412      aAix_PthreadTests,   apzAix_PthreadPatch, 0 },
9413
9414   {  zAix_Stdint_1Name,    zAix_Stdint_1List,
9415      apzAix_Stdint_1Machs,
9416      AIX_STDINT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9417      aAix_Stdint_1Tests,   apzAix_Stdint_1Patch, 0 },
9418
9419   {  zAix_Stdint_2Name,    zAix_Stdint_2List,
9420      apzAix_Stdint_2Machs,
9421      AIX_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9422      aAix_Stdint_2Tests,   apzAix_Stdint_2Patch, 0 },
9423
9424   {  zAix_Stdint_3Name,    zAix_Stdint_3List,
9425      apzAix_Stdint_3Machs,
9426      AIX_STDINT_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9427      aAix_Stdint_3Tests,   apzAix_Stdint_3Patch, 0 },
9428
9429   {  zAix_Stdint_4Name,    zAix_Stdint_4List,
9430      apzAix_Stdint_4Machs,
9431      AIX_STDINT_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9432      aAix_Stdint_4Tests,   apzAix_Stdint_4Patch, 0 },
9433
9434   {  zAix_Stdint_5Name,    zAix_Stdint_5List,
9435      apzAix_Stdint_5Machs,
9436      AIX_STDINT_5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9437      aAix_Stdint_5Tests,   apzAix_Stdint_5Patch, 0 },
9438
9439   {  zAix_SysmachineName,    zAix_SysmachineList,
9440      apzAix_SysmachineMachs,
9441      AIX_SYSMACHINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9442      aAix_SysmachineTests,   apzAix_SysmachinePatch, 0 },
9443
9444   {  zAix_Syswait_2Name,    zAix_Syswait_2List,
9445      apzAix_Syswait_2Machs,
9446      AIX_SYSWAIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9447      aAix_Syswait_2Tests,   apzAix_Syswait_2Patch, 0 },
9448
9449   {  zAix_VolatileName,    zAix_VolatileList,
9450      apzAix_VolatileMachs,
9451      AIX_VOLATILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9452      aAix_VolatileTests,   apzAix_VolatilePatch, 0 },
9453
9454   {  zAlpha___AssertName,    zAlpha___AssertList,
9455      apzAlpha___AssertMachs,
9456      ALPHA___ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9457      aAlpha___AssertTests,   apzAlpha___AssertPatch, 0 },
9458
9459   {  zAlpha___Extern_PrefixName,    zAlpha___Extern_PrefixList,
9460      apzAlpha___Extern_PrefixMachs,
9461      ALPHA___EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9462      aAlpha___Extern_PrefixTests,   apzAlpha___Extern_PrefixPatch, 0 },
9463
9464   {  zAlpha___Extern_Prefix_StandardsName,    zAlpha___Extern_Prefix_StandardsList,
9465      apzAlpha___Extern_Prefix_StandardsMachs,
9466      ALPHA___EXTERN_PREFIX_STANDARDS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9467      aAlpha___Extern_Prefix_StandardsTests,   apzAlpha___Extern_Prefix_StandardsPatch, 0 },
9468
9469   {  zAlpha___Extern_Prefix_Sys_StatName,    zAlpha___Extern_Prefix_Sys_StatList,
9470      apzAlpha___Extern_Prefix_Sys_StatMachs,
9471      ALPHA___EXTERN_PREFIX_SYS_STAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9472      aAlpha___Extern_Prefix_Sys_StatTests,   apzAlpha___Extern_Prefix_Sys_StatPatch, 0 },
9473
9474   {  zAlpha_AssertName,    zAlpha_AssertList,
9475      apzAlpha_AssertMachs,
9476      ALPHA_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9477      aAlpha_AssertTests,   apzAlpha_AssertPatch, 0 },
9478
9479   {  zAlpha_Bad_LvalName,    zAlpha_Bad_LvalList,
9480      apzAlpha_Bad_LvalMachs,
9481      ALPHA_BAD_LVAL_TEST_CT, FD_MACH_ONLY,
9482      aAlpha_Bad_LvalTests,   apzAlpha_Bad_LvalPatch, 0 },
9483
9484   {  zAlpha_GetoptName,    zAlpha_GetoptList,
9485      apzAlpha_GetoptMachs,
9486      ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9487      aAlpha_GetoptTests,   apzAlpha_GetoptPatch, 0 },
9488
9489   {  zAlpha_If_SemicolonName,    zAlpha_If_SemicolonList,
9490      apzAlpha_If_SemicolonMachs,
9491      ALPHA_IF_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9492      aAlpha_If_SemicolonTests,   apzAlpha_If_SemicolonPatch, 0 },
9493
9494   {  zAlpha_ParensName,    zAlpha_ParensList,
9495      apzAlpha_ParensMachs,
9496      ALPHA_PARENS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9497      aAlpha_ParensTests,   apzAlpha_ParensPatch, 0 },
9498
9499   {  zAlpha_PthreadName,    zAlpha_PthreadList,
9500      apzAlpha_PthreadMachs,
9501      ALPHA_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9502      aAlpha_PthreadTests,   apzAlpha_PthreadPatch, 0 },
9503
9504   {  zAlpha_Pthread_GccName,    zAlpha_Pthread_GccList,
9505      apzAlpha_Pthread_GccMachs,
9506      ALPHA_PTHREAD_GCC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9507      aAlpha_Pthread_GccTests,   apzAlpha_Pthread_GccPatch, 0 },
9508
9509   {  zAlpha_Pthread_InitName,    zAlpha_Pthread_InitList,
9510      apzAlpha_Pthread_InitMachs,
9511      ALPHA_PTHREAD_INIT_TEST_CT, FD_MACH_ONLY,
9512      aAlpha_Pthread_InitTests,   apzAlpha_Pthread_InitPatch, 0 },
9513
9514   {  zAlpha_SbrkName,    zAlpha_SbrkList,
9515      apzAlpha_SbrkMachs,
9516      ALPHA_SBRK_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9517      aAlpha_SbrkTests,   apzAlpha_SbrkPatch, 0 },
9518
9519   {  zAvoid_Bool_DefineName,    zAvoid_Bool_DefineList,
9520      apzAvoid_Bool_DefineMachs,
9521      AVOID_BOOL_DEFINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9522      aAvoid_Bool_DefineTests,   apzAvoid_Bool_DefinePatch, 0 },
9523
9524   {  zAvoid_Bool_TypeName,    zAvoid_Bool_TypeList,
9525      apzAvoid_Bool_TypeMachs,
9526      AVOID_BOOL_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9527      aAvoid_Bool_TypeTests,   apzAvoid_Bool_TypePatch, 0 },
9528
9529   {  zAvoid_Wchar_T_TypeName,    zAvoid_Wchar_T_TypeList,
9530      apzAvoid_Wchar_T_TypeMachs,
9531      AVOID_WCHAR_T_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9532      aAvoid_Wchar_T_TypeTests,   apzAvoid_Wchar_T_TypePatch, 0 },
9533
9534   {  zBad_Struct_TermName,    zBad_Struct_TermList,
9535      apzBad_Struct_TermMachs,
9536      BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9537      aBad_Struct_TermTests,   apzBad_Struct_TermPatch, 0 },
9538
9539   {  zBadquoteName,    zBadquoteList,
9540      apzBadquoteMachs,
9541      BADQUOTE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9542      aBadquoteTests,   apzBadquotePatch, 0 },
9543
9544   {  zBroken_Assert_StdioName,    zBroken_Assert_StdioList,
9545      apzBroken_Assert_StdioMachs,
9546      BROKEN_ASSERT_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9547      aBroken_Assert_StdioTests,   apzBroken_Assert_StdioPatch, 0 },
9548
9549   {  zBroken_Assert_StdlibName,    zBroken_Assert_StdlibList,
9550      apzBroken_Assert_StdlibMachs,
9551      BROKEN_ASSERT_STDLIB_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9552      aBroken_Assert_StdlibTests,   apzBroken_Assert_StdlibPatch, 0 },
9553
9554   {  zBroken_CabsName,    zBroken_CabsList,
9555      apzBroken_CabsMachs,
9556      BROKEN_CABS_TEST_CT, FD_MACH_ONLY,
9557      aBroken_CabsTests,   apzBroken_CabsPatch, 0 },
9558
9559   {  zBroken_NanName,    zBroken_NanList,
9560      apzBroken_NanMachs,
9561      BROKEN_NAN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9562      aBroken_NanTests,   apzBroken_NanPatch, 0 },
9563
9564   {  zBsd_Stdio_Attrs_ConflictName,    zBsd_Stdio_Attrs_ConflictList,
9565      apzBsd_Stdio_Attrs_ConflictMachs,
9566      BSD_STDIO_ATTRS_CONFLICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9567      aBsd_Stdio_Attrs_ConflictTests,   apzBsd_Stdio_Attrs_ConflictPatch, 0 },
9568
9569   {  zCdef_CplusplusName,    zCdef_CplusplusList,
9570      apzCdef_CplusplusMachs,
9571      CDEF_CPLUSPLUS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9572      aCdef_CplusplusTests,   apzCdef_CplusplusPatch, 0 },
9573
9574   {  zCtrl_Quotes_DefName,    zCtrl_Quotes_DefList,
9575      apzCtrl_Quotes_DefMachs,
9576      CTRL_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9577      aCtrl_Quotes_DefTests,   apzCtrl_Quotes_DefPatch, 0 },
9578
9579   {  zCtrl_Quotes_UseName,    zCtrl_Quotes_UseList,
9580      apzCtrl_Quotes_UseMachs,
9581      CTRL_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9582      aCtrl_Quotes_UseTests,   apzCtrl_Quotes_UsePatch, 0 },
9583
9584   {  zCxx_UnreadyName,    zCxx_UnreadyList,
9585      apzCxx_UnreadyMachs,
9586      CXX_UNREADY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9587      aCxx_UnreadyTests,   apzCxx_UnreadyPatch, 0 },
9588
9589   {  zDarwin_ExterncName,    zDarwin_ExterncList,
9590      apzDarwin_ExterncMachs,
9591      DARWIN_EXTERNC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9592      aDarwin_ExterncTests,   apzDarwin_ExterncPatch, 0 },
9593
9594   {  zDarwin_Gcc4_BreakageName,    zDarwin_Gcc4_BreakageList,
9595      apzDarwin_Gcc4_BreakageMachs,
9596      DARWIN_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9597      aDarwin_Gcc4_BreakageTests,   apzDarwin_Gcc4_BreakagePatch, 0 },
9598
9599   {  zDarwin_Private_ExternName,    zDarwin_Private_ExternList,
9600      apzDarwin_Private_ExternMachs,
9601      DARWIN_PRIVATE_EXTERN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9602      aDarwin_Private_ExternTests,   apzDarwin_Private_ExternPatch, 0 },
9603
9604   {  zDarwin_Stdint_1Name,    zDarwin_Stdint_1List,
9605      apzDarwin_Stdint_1Machs,
9606      DARWIN_STDINT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9607      aDarwin_Stdint_1Tests,   apzDarwin_Stdint_1Patch, 0 },
9608
9609   {  zDarwin_Stdint_2Name,    zDarwin_Stdint_2List,
9610      apzDarwin_Stdint_2Machs,
9611      DARWIN_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9612      aDarwin_Stdint_2Tests,   apzDarwin_Stdint_2Patch, 0 },
9613
9614   {  zDarwin_Stdint_3Name,    zDarwin_Stdint_3List,
9615      apzDarwin_Stdint_3Machs,
9616      DARWIN_STDINT_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9617      aDarwin_Stdint_3Tests,   apzDarwin_Stdint_3Patch, 0 },
9618
9619   {  zDarwin_Stdint_4Name,    zDarwin_Stdint_4List,
9620      apzDarwin_Stdint_4Machs,
9621      DARWIN_STDINT_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9622      aDarwin_Stdint_4Tests,   apzDarwin_Stdint_4Patch, 0 },
9623
9624   {  zDarwin_Stdint_5Name,    zDarwin_Stdint_5List,
9625      apzDarwin_Stdint_5Machs,
9626      DARWIN_STDINT_5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9627      aDarwin_Stdint_5Tests,   apzDarwin_Stdint_5Patch, 0 },
9628
9629   {  zDarwin_Stdint_6Name,    zDarwin_Stdint_6List,
9630      apzDarwin_Stdint_6Machs,
9631      DARWIN_STDINT_6_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9632      aDarwin_Stdint_6Tests,   apzDarwin_Stdint_6Patch, 0 },
9633
9634   {  zDarwin_Stdint_7Name,    zDarwin_Stdint_7List,
9635      apzDarwin_Stdint_7Machs,
9636      DARWIN_STDINT_7_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9637      aDarwin_Stdint_7Tests,   apzDarwin_Stdint_7Patch, 0 },
9638
9639   {  zDec_Intern_AsmName,    zDec_Intern_AsmList,
9640      apzDec_Intern_AsmMachs,
9641      DEC_INTERN_ASM_TEST_CT, FD_MACH_ONLY,
9642      aDec_Intern_AsmTests,   apzDec_Intern_AsmPatch, 0 },
9643
9644   {  zDjgpp_Wchar_HName,    zDjgpp_Wchar_HList,
9645      apzDjgpp_Wchar_HMachs,
9646      DJGPP_WCHAR_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9647      aDjgpp_Wchar_HTests,   apzDjgpp_Wchar_HPatch, 0 },
9648
9649   {  zEcd_CursorName,    zEcd_CursorList,
9650      apzEcd_CursorMachs,
9651      ECD_CURSOR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9652      aEcd_CursorTests,   apzEcd_CursorPatch, 0 },
9653
9654   {  zFreebsd_Gcc3_BreakageName,    zFreebsd_Gcc3_BreakageList,
9655      apzFreebsd_Gcc3_BreakageMachs,
9656      FREEBSD_GCC3_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9657      aFreebsd_Gcc3_BreakageTests,   apzFreebsd_Gcc3_BreakagePatch, 0 },
9658
9659   {  zFreebsd_Gcc4_BreakageName,    zFreebsd_Gcc4_BreakageList,
9660      apzFreebsd_Gcc4_BreakageMachs,
9661      FREEBSD_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9662      aFreebsd_Gcc4_BreakageTests,   apzFreebsd_Gcc4_BreakagePatch, 0 },
9663
9664   {  zGlibc_C99_Inline_1Name,    zGlibc_C99_Inline_1List,
9665      apzGlibc_C99_Inline_1Machs,
9666      GLIBC_C99_INLINE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9667      aGlibc_C99_Inline_1Tests,   apzGlibc_C99_Inline_1Patch, 0 },
9668
9669   {  zGlibc_C99_Inline_1aName,    zGlibc_C99_Inline_1aList,
9670      apzGlibc_C99_Inline_1aMachs,
9671      GLIBC_C99_INLINE_1A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9672      aGlibc_C99_Inline_1aTests,   apzGlibc_C99_Inline_1aPatch, 0 },
9673
9674   {  zGlibc_C99_Inline_2Name,    zGlibc_C99_Inline_2List,
9675      apzGlibc_C99_Inline_2Machs,
9676      GLIBC_C99_INLINE_2_TEST_CT, FD_MACH_ONLY,
9677      aGlibc_C99_Inline_2Tests,   apzGlibc_C99_Inline_2Patch, 0 },
9678
9679   {  zGlibc_C99_Inline_3Name,    zGlibc_C99_Inline_3List,
9680      apzGlibc_C99_Inline_3Machs,
9681      GLIBC_C99_INLINE_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9682      aGlibc_C99_Inline_3Tests,   apzGlibc_C99_Inline_3Patch, 0 },
9683
9684   {  zGlibc_C99_Inline_4Name,    zGlibc_C99_Inline_4List,
9685      apzGlibc_C99_Inline_4Machs,
9686      GLIBC_C99_INLINE_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9687      aGlibc_C99_Inline_4Tests,   apzGlibc_C99_Inline_4Patch, 0 },
9688
9689   {  zGlibc_Mutex_InitName,    zGlibc_Mutex_InitList,
9690      apzGlibc_Mutex_InitMachs,
9691      GLIBC_MUTEX_INIT_TEST_CT, FD_MACH_ONLY,
9692      aGlibc_Mutex_InitTests,   apzGlibc_Mutex_InitPatch, 0 },
9693
9694   {  zGlibc_StdintName,    zGlibc_StdintList,
9695      apzGlibc_StdintMachs,
9696      GLIBC_STDINT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9697      aGlibc_StdintTests,   apzGlibc_StdintPatch, 0 },
9698
9699   {  zGlibc_StrncpyName,    zGlibc_StrncpyList,
9700      apzGlibc_StrncpyMachs,
9701      GLIBC_STRNCPY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9702      aGlibc_StrncpyTests,   apzGlibc_StrncpyPatch, 0 },
9703
9704   {  zGlibc_TgmathName,    zGlibc_TgmathList,
9705      apzGlibc_TgmathMachs,
9706      GLIBC_TGMATH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9707      aGlibc_TgmathTests,   apzGlibc_TgmathPatch, 0 },
9708
9709   {  zGnu_TypesName,    zGnu_TypesList,
9710      apzGnu_TypesMachs,
9711      GNU_TYPES_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
9712      aGnu_TypesTests,   apzGnu_TypesPatch, 0 },
9713
9714   {  zHp_InlineName,    zHp_InlineList,
9715      apzHp_InlineMachs,
9716      HP_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9717      aHp_InlineTests,   apzHp_InlinePatch, 0 },
9718
9719   {  zHp_SysfileName,    zHp_SysfileList,
9720      apzHp_SysfileMachs,
9721      HP_SYSFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9722      aHp_SysfileTests,   apzHp_SysfilePatch, 0 },
9723
9724   {  zHppa_Hpux_Fp_MacrosName,    zHppa_Hpux_Fp_MacrosList,
9725      apzHppa_Hpux_Fp_MacrosMachs,
9726      HPPA_HPUX_FP_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9727      aHppa_Hpux_Fp_MacrosTests,   apzHppa_Hpux_Fp_MacrosPatch, 0 },
9728
9729   {  zHpux10_Cpp_Pow_InlineName,    zHpux10_Cpp_Pow_InlineList,
9730      apzHpux10_Cpp_Pow_InlineMachs,
9731      HPUX10_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9732      aHpux10_Cpp_Pow_InlineTests,   apzHpux10_Cpp_Pow_InlinePatch, 0 },
9733
9734   {  zHpux11_Cpp_Pow_InlineName,    zHpux11_Cpp_Pow_InlineList,
9735      apzHpux11_Cpp_Pow_InlineMachs,
9736      HPUX11_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9737      aHpux11_Cpp_Pow_InlineTests,   apzHpux11_Cpp_Pow_InlinePatch, 0 },
9738
9739   {  zHpux10_Ctype_Declarations1Name,    zHpux10_Ctype_Declarations1List,
9740      apzHpux10_Ctype_Declarations1Machs,
9741      HPUX10_CTYPE_DECLARATIONS1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9742      aHpux10_Ctype_Declarations1Tests,   apzHpux10_Ctype_Declarations1Patch, 0 },
9743
9744   {  zHpux10_Ctype_Declarations2Name,    zHpux10_Ctype_Declarations2List,
9745      apzHpux10_Ctype_Declarations2Machs,
9746      HPUX10_CTYPE_DECLARATIONS2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9747      aHpux10_Ctype_Declarations2Tests,   apzHpux10_Ctype_Declarations2Patch, 0 },
9748
9749   {  zHpux10_Stdio_DeclarationsName,    zHpux10_Stdio_DeclarationsList,
9750      apzHpux10_Stdio_DeclarationsMachs,
9751      HPUX10_STDIO_DECLARATIONS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9752      aHpux10_Stdio_DeclarationsTests,   apzHpux10_Stdio_DeclarationsPatch, 0 },
9753
9754   {  zHpux11_AbsName,    zHpux11_AbsList,
9755      apzHpux11_AbsMachs,
9756      HPUX11_ABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9757      aHpux11_AbsTests,   apzHpux11_AbsPatch, 0 },
9758
9759   {  zHpux11_FabsfName,    zHpux11_FabsfList,
9760      apzHpux11_FabsfMachs,
9761      HPUX11_FABSF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9762      aHpux11_FabsfTests,   apzHpux11_FabsfPatch, 0 },
9763
9764   {  zHpux11_Pthread_ConstName,    zHpux11_Pthread_ConstList,
9765      apzHpux11_Pthread_ConstMachs,
9766      HPUX11_PTHREAD_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9767      aHpux11_Pthread_ConstTests,   apzHpux11_Pthread_ConstPatch, 0 },
9768
9769   {  zHpux11_Size_TName,    zHpux11_Size_TList,
9770      apzHpux11_Size_TMachs,
9771      HPUX11_SIZE_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9772      aHpux11_Size_TTests,   apzHpux11_Size_TPatch, 0 },
9773
9774   {  zHpux11_SnprintfName,    zHpux11_SnprintfList,
9775      apzHpux11_SnprintfMachs,
9776      HPUX11_SNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9777      aHpux11_SnprintfTests,   apzHpux11_SnprintfPatch, 0 },
9778
9779   {  zHpux11_VsnprintfName,    zHpux11_VsnprintfList,
9780      apzHpux11_VsnprintfMachs,
9781      HPUX11_VSNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9782      aHpux11_VsnprintfTests,   apzHpux11_VsnprintfPatch, 0 },
9783
9784   {  zHpux8_Bogus_InlinesName,    zHpux8_Bogus_InlinesList,
9785      apzHpux8_Bogus_InlinesMachs,
9786      HPUX8_BOGUS_INLINES_TEST_CT, FD_MACH_ONLY,
9787      aHpux8_Bogus_InlinesTests,   apzHpux8_Bogus_InlinesPatch, 0 },
9788
9789   {  zHpux_Ctype_MacrosName,    zHpux_Ctype_MacrosList,
9790      apzHpux_Ctype_MacrosMachs,
9791      HPUX_CTYPE_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9792      aHpux_Ctype_MacrosTests,   apzHpux_Ctype_MacrosPatch, 0 },
9793
9794   {  zHpux_HtonlName,    zHpux_HtonlList,
9795      apzHpux_HtonlMachs,
9796      HPUX_HTONL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9797      aHpux_HtonlTests,   apzHpux_HtonlPatch, 0 },
9798
9799   {  zHpux_Long_DoubleName,    zHpux_Long_DoubleList,
9800      apzHpux_Long_DoubleMachs,
9801      HPUX_LONG_DOUBLE_TEST_CT, FD_MACH_ONLY,
9802      aHpux_Long_DoubleTests,   apzHpux_Long_DoublePatch, 0 },
9803
9804   {  zHpux_Long_Double_2Name,    zHpux_Long_Double_2List,
9805      apzHpux_Long_Double_2Machs,
9806      HPUX_LONG_DOUBLE_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9807      aHpux_Long_Double_2Tests,   apzHpux_Long_Double_2Patch, 0 },
9808
9809   {  zHpux_SystimeName,    zHpux_SystimeList,
9810      apzHpux_SystimeMachs,
9811      HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9812      aHpux_SystimeTests,   apzHpux_SystimePatch, 0 },
9813
9814   {  zHpux_Spu_InfoName,    zHpux_Spu_InfoList,
9815      apzHpux_Spu_InfoMachs,
9816      HPUX_SPU_INFO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9817      aHpux_Spu_InfoTests,   apzHpux_Spu_InfoPatch, 0 },
9818
9819   {  zHpux11_Extern_SendfileName,    zHpux11_Extern_SendfileList,
9820      apzHpux11_Extern_SendfileMachs,
9821      HPUX11_EXTERN_SENDFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9822      aHpux11_Extern_SendfileTests,   apzHpux11_Extern_SendfilePatch, 0 },
9823
9824   {  zHpux11_Extern_SendpathName,    zHpux11_Extern_SendpathList,
9825      apzHpux11_Extern_SendpathMachs,
9826      HPUX11_EXTERN_SENDPATH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9827      aHpux11_Extern_SendpathTests,   apzHpux11_Extern_SendpathPatch, 0 },
9828
9829   {  zHpux_Extern_ErrnoName,    zHpux_Extern_ErrnoList,
9830      apzHpux_Extern_ErrnoMachs,
9831      HPUX_EXTERN_ERRNO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9832      aHpux_Extern_ErrnoTests,   apzHpux_Extern_ErrnoPatch, 0 },
9833
9834   {  zHpux_Pthread_InitializersName,    zHpux_Pthread_InitializersList,
9835      apzHpux_Pthread_InitializersMachs,
9836      HPUX_PTHREAD_INITIALIZERS_TEST_CT, FD_MACH_ONLY,
9837      aHpux_Pthread_InitializersTests,   apzHpux_Pthread_InitializersPatch, 0 },
9838
9839   {  zHpux_C99_IntptrName,    zHpux_C99_IntptrList,
9840      apzHpux_C99_IntptrMachs,
9841      HPUX_C99_INTPTR_TEST_CT, FD_MACH_ONLY,
9842      aHpux_C99_IntptrTests,   apzHpux_C99_IntptrPatch, 0 },
9843
9844   {  zHpux_C99_InttypesName,    zHpux_C99_InttypesList,
9845      apzHpux_C99_InttypesMachs,
9846      HPUX_C99_INTTYPES_TEST_CT, FD_MACH_ONLY,
9847      aHpux_C99_InttypesTests,   apzHpux_C99_InttypesPatch, 0 },
9848
9849   {  zHpux_C99_Inttypes2Name,    zHpux_C99_Inttypes2List,
9850      apzHpux_C99_Inttypes2Machs,
9851      HPUX_C99_INTTYPES2_TEST_CT, FD_MACH_ONLY,
9852      aHpux_C99_Inttypes2Tests,   apzHpux_C99_Inttypes2Patch, 0 },
9853
9854   {  zHpux_Stdint_Least_FastName,    zHpux_Stdint_Least_FastList,
9855      apzHpux_Stdint_Least_FastMachs,
9856      HPUX_STDINT_LEAST_FAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9857      aHpux_Stdint_Least_FastTests,   apzHpux_Stdint_Least_FastPatch, 0 },
9858
9859   {  zHpux_Inttype_Int8_TName,    zHpux_Inttype_Int8_TList,
9860      apzHpux_Inttype_Int8_TMachs,
9861      HPUX_INTTYPE_INT8_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9862      aHpux_Inttype_Int8_TTests,   apzHpux_Inttype_Int8_TPatch, 0 },
9863
9864   {  zHpux_Imaginary_IName,    zHpux_Imaginary_IList,
9865      apzHpux_Imaginary_IMachs,
9866      HPUX_IMAGINARY_I_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9867      aHpux_Imaginary_ITests,   apzHpux_Imaginary_IPatch, 0 },
9868
9869   {  zHuge_Val_HexName,    zHuge_Val_HexList,
9870      apzHuge_Val_HexMachs,
9871      HUGE_VAL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9872      aHuge_Val_HexTests,   apzHuge_Val_HexPatch, 0 },
9873
9874   {  zHuge_Valf_HexName,    zHuge_Valf_HexList,
9875      apzHuge_Valf_HexMachs,
9876      HUGE_VALF_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9877      aHuge_Valf_HexTests,   apzHuge_Valf_HexPatch, 0 },
9878
9879   {  zHuge_Vall_HexName,    zHuge_Vall_HexList,
9880      apzHuge_Vall_HexMachs,
9881      HUGE_VALL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9882      aHuge_Vall_HexTests,   apzHuge_Vall_HexPatch, 0 },
9883
9884   {  zInt_Abort_Free_And_ExitName,    zInt_Abort_Free_And_ExitList,
9885      apzInt_Abort_Free_And_ExitMachs,
9886      INT_ABORT_FREE_AND_EXIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9887      aInt_Abort_Free_And_ExitTests,   apzInt_Abort_Free_And_ExitPatch, 0 },
9888
9889   {  zIo_Quotes_DefName,    zIo_Quotes_DefList,
9890      apzIo_Quotes_DefMachs,
9891      IO_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9892      aIo_Quotes_DefTests,   apzIo_Quotes_DefPatch, 0 },
9893
9894   {  zIo_Quotes_UseName,    zIo_Quotes_UseList,
9895      apzIo_Quotes_UseMachs,
9896      IO_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9897      aIo_Quotes_UseTests,   apzIo_Quotes_UsePatch, 0 },
9898
9899   {  zIp_Missing_SemiName,    zIp_Missing_SemiList,
9900      apzIp_Missing_SemiMachs,
9901      IP_MISSING_SEMI_TEST_CT, FD_MACH_ONLY,
9902      aIp_Missing_SemiTests,   apzIp_Missing_SemiPatch, 0 },
9903
9904   {  zIrix___RestrictName,    zIrix___RestrictList,
9905      apzIrix___RestrictMachs,
9906      IRIX___RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9907      aIrix___RestrictTests,   apzIrix___RestrictPatch, 0 },
9908
9909   {  zIrix___Generic1Name,    zIrix___Generic1List,
9910      apzIrix___Generic1Machs,
9911      IRIX___GENERIC1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9912      aIrix___Generic1Tests,   apzIrix___Generic1Patch, 0 },
9913
9914   {  zIrix___Generic2Name,    zIrix___Generic2List,
9915      apzIrix___Generic2Machs,
9916      IRIX___GENERIC2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9917      aIrix___Generic2Tests,   apzIrix___Generic2Patch, 0 },
9918
9919   {  zIrix_Asm_ApostropheName,    zIrix_Asm_ApostropheList,
9920      apzIrix_Asm_ApostropheMachs,
9921      IRIX_ASM_APOSTROPHE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9922      aIrix_Asm_ApostropheTests,   apzIrix_Asm_ApostrophePatch, 0 },
9923
9924   {  zIrix_ComplexName,    zIrix_ComplexList,
9925      apzIrix_ComplexMachs,
9926      IRIX_COMPLEX_TEST_CT, FD_MACH_ONLY,
9927      aIrix_ComplexTests,   apzIrix_ComplexPatch, 0 },
9928
9929   {  zIrix_Limits_ConstName,    zIrix_Limits_ConstList,
9930      apzIrix_Limits_ConstMachs,
9931      IRIX_LIMITS_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9932      aIrix_Limits_ConstTests,   apzIrix_Limits_ConstPatch, 0 },
9933
9934   {  zIrix_Pthread_InitName,    zIrix_Pthread_InitList,
9935      apzIrix_Pthread_InitMachs,
9936      IRIX_PTHREAD_INIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9937      aIrix_Pthread_InitTests,   apzIrix_Pthread_InitPatch, 0 },
9938
9939   {  zIrix_Socklen_TName,    zIrix_Socklen_TList,
9940      apzIrix_Socklen_TMachs,
9941      IRIX_SOCKLEN_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9942      aIrix_Socklen_TTests,   apzIrix_Socklen_TPatch, 0 },
9943
9944   {  zIrix_Stdint_C99_ModeName,    zIrix_Stdint_C99_ModeList,
9945      apzIrix_Stdint_C99_ModeMachs,
9946      IRIX_STDINT_C99_MODE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9947      aIrix_Stdint_C99_ModeTests,   apzIrix_Stdint_C99_ModePatch, 0 },
9948
9949   {  zIrix_Stdint_C99_TypesName,    zIrix_Stdint_C99_TypesList,
9950      apzIrix_Stdint_C99_TypesMachs,
9951      IRIX_STDINT_C99_TYPES_TEST_CT, FD_MACH_ONLY,
9952      aIrix_Stdint_C99_TypesTests,   apzIrix_Stdint_C99_TypesPatch, 0 },
9953
9954   {  zIrix_Stdint_C99_MacrosName,    zIrix_Stdint_C99_MacrosList,
9955      apzIrix_Stdint_C99_MacrosMachs,
9956      IRIX_STDINT_C99_MACROS_TEST_CT, FD_MACH_ONLY,
9957      aIrix_Stdint_C99_MacrosTests,   apzIrix_Stdint_C99_MacrosPatch, 0 },
9958
9959   {  zIrix_Stdio_Va_ListName,    zIrix_Stdio_Va_ListList,
9960      apzIrix_Stdio_Va_ListMachs,
9961      IRIX_STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9962      aIrix_Stdio_Va_ListTests,   apzIrix_Stdio_Va_ListPatch, 0 },
9963
9964   {  zIrix_WcsftimeName,    zIrix_WcsftimeList,
9965      apzIrix_WcsftimeMachs,
9966      IRIX_WCSFTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9967      aIrix_WcsftimeTests,   apzIrix_WcsftimePatch, 0 },
9968
9969   {  zKandr_ConcatName,    zKandr_ConcatList,
9970      apzKandr_ConcatMachs,
9971      KANDR_CONCAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9972      aKandr_ConcatTests,   apzKandr_ConcatPatch, 0 },
9973
9974   {  zLinux_Ia64_UcontextName,    zLinux_Ia64_UcontextList,
9975      apzLinux_Ia64_UcontextMachs,
9976      LINUX_IA64_UCONTEXT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9977      aLinux_Ia64_UcontextTests,   apzLinux_Ia64_UcontextPatch, 0 },
9978
9979   {  zLynxos_No_Warning_In_Sys_Time_HName,    zLynxos_No_Warning_In_Sys_Time_HList,
9980      apzLynxos_No_Warning_In_Sys_Time_HMachs,
9981      LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9982      aLynxos_No_Warning_In_Sys_Time_HTests,   apzLynxos_No_Warning_In_Sys_Time_HPatch, 0 },
9983
9984   {  zLynxos_Missing_PutenvName,    zLynxos_Missing_PutenvList,
9985      apzLynxos_Missing_PutenvMachs,
9986      LYNXOS_MISSING_PUTENV_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9987      aLynxos_Missing_PutenvTests,   apzLynxos_Missing_PutenvPatch, 0 },
9988
9989   {  zMachine_Ansi_H_Va_ListName,    zMachine_Ansi_H_Va_ListList,
9990      apzMachine_Ansi_H_Va_ListMachs,
9991      MACHINE_ANSI_H_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9992      aMachine_Ansi_H_Va_ListTests,   apzMachine_Ansi_H_Va_ListPatch, 0 },
9993
9994   {  zMachine_NameName,    zMachine_NameList,
9995      apzMachine_NameMachs,
9996      MACHINE_NAME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9997      aMachine_NameTests,   apzMachine_NamePatch, 0 },
9998
9999   {  zMath_ExceptionName,    zMath_ExceptionList,
10000      apzMath_ExceptionMachs,
10001      MATH_EXCEPTION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10002      aMath_ExceptionTests,   apzMath_ExceptionPatch, 0 },
10003
10004   {  zMath_Huge_Val_From_Dbl_MaxName,    zMath_Huge_Val_From_Dbl_MaxList,
10005      apzMath_Huge_Val_From_Dbl_MaxMachs,
10006      MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
10007      aMath_Huge_Val_From_Dbl_MaxTests,   apzMath_Huge_Val_From_Dbl_MaxPatch, 0 },
10008
10009   {  zNested_Auth_DesName,    zNested_Auth_DesList,
10010      apzNested_Auth_DesMachs,
10011      NESTED_AUTH_DES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10012      aNested_Auth_DesTests,   apzNested_Auth_DesPatch, 0 },
10013
10014   {  zNetbsd_C99_Inline_1Name,    zNetbsd_C99_Inline_1List,
10015      apzNetbsd_C99_Inline_1Machs,
10016      NETBSD_C99_INLINE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10017      aNetbsd_C99_Inline_1Tests,   apzNetbsd_C99_Inline_1Patch, 0 },
10018
10019   {  zNetbsd_C99_Inline_2Name,    zNetbsd_C99_Inline_2List,
10020      apzNetbsd_C99_Inline_2Machs,
10021      NETBSD_C99_INLINE_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10022      aNetbsd_C99_Inline_2Tests,   apzNetbsd_C99_Inline_2Patch, 0 },
10023
10024   {  zNetbsd_Extra_SemicolonName,    zNetbsd_Extra_SemicolonList,
10025      apzNetbsd_Extra_SemicolonMachs,
10026      NETBSD_EXTRA_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10027      aNetbsd_Extra_SemicolonTests,   apzNetbsd_Extra_SemicolonPatch, 0 },
10028
10029   {  zNewlib_Stdint_1Name,    zNewlib_Stdint_1List,
10030      apzNewlib_Stdint_1Machs,
10031      NEWLIB_STDINT_1_TEST_CT, FD_MACH_ONLY,
10032      aNewlib_Stdint_1Tests,   apzNewlib_Stdint_1Patch, 0 },
10033
10034   {  zNewlib_Stdint_2Name,    zNewlib_Stdint_2List,
10035      apzNewlib_Stdint_2Machs,
10036      NEWLIB_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10037      aNewlib_Stdint_2Tests,   apzNewlib_Stdint_2Patch, 0 },
10038
10039   {  zNext_Math_PrefixName,    zNext_Math_PrefixList,
10040      apzNext_Math_PrefixMachs,
10041      NEXT_MATH_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10042      aNext_Math_PrefixTests,   apzNext_Math_PrefixPatch, 0 },
10043
10044   {  zNext_TemplateName,    zNext_TemplateList,
10045      apzNext_TemplateMachs,
10046      NEXT_TEMPLATE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10047      aNext_TemplateTests,   apzNext_TemplatePatch, 0 },
10048
10049   {  zNext_VolitileName,    zNext_VolitileList,
10050      apzNext_VolitileMachs,
10051      NEXT_VOLITILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10052      aNext_VolitileTests,   apzNext_VolitilePatch, 0 },
10053
10054   {  zNext_Wait_UnionName,    zNext_Wait_UnionList,
10055      apzNext_Wait_UnionMachs,
10056      NEXT_WAIT_UNION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10057      aNext_Wait_UnionTests,   apzNext_Wait_UnionPatch, 0 },
10058
10059   {  zNodeent_SyntaxName,    zNodeent_SyntaxList,
10060      apzNodeent_SyntaxMachs,
10061      NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10062      aNodeent_SyntaxTests,   apzNodeent_SyntaxPatch, 0 },
10063
10064   {  zOpenbsd_Null_DefinitionName,    zOpenbsd_Null_DefinitionList,
10065      apzOpenbsd_Null_DefinitionMachs,
10066      OPENBSD_NULL_DEFINITION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10067      aOpenbsd_Null_DefinitionTests,   apzOpenbsd_Null_DefinitionPatch, 0 },
10068
10069   {  zObstack_Lvalue_CastName,    zObstack_Lvalue_CastList,
10070      apzObstack_Lvalue_CastMachs,
10071      OBSTACK_LVALUE_CAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10072      aObstack_Lvalue_CastTests,   apzObstack_Lvalue_CastPatch, 0 },
10073
10074   {  zOpenbsd_Va_StartName,    zOpenbsd_Va_StartList,
10075      apzOpenbsd_Va_StartMachs,
10076      OPENBSD_VA_START_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10077      aOpenbsd_Va_StartTests,   apzOpenbsd_Va_StartPatch, 0 },
10078
10079   {  zOsf_Namespace_AName,    zOsf_Namespace_AList,
10080      apzOsf_Namespace_AMachs,
10081      OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10082      aOsf_Namespace_ATests,   apzOsf_Namespace_APatch, 0 },
10083
10084   {  zOsf_Namespace_CName,    zOsf_Namespace_CList,
10085      apzOsf_Namespace_CMachs,
10086      OSF_NAMESPACE_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10087      aOsf_Namespace_CTests,   apzOsf_Namespace_CPatch, 0 },
10088
10089   {  zPthread_Incomplete_Struct_ArgumentName,    zPthread_Incomplete_Struct_ArgumentList,
10090      apzPthread_Incomplete_Struct_ArgumentMachs,
10091      PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10092      aPthread_Incomplete_Struct_ArgumentTests,   apzPthread_Incomplete_Struct_ArgumentPatch, 0 },
10093
10094   {  zRead_Ret_TypeName,    zRead_Ret_TypeList,
10095      apzRead_Ret_TypeMachs,
10096      READ_RET_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10097      aRead_Ret_TypeTests,   apzRead_Ret_TypePatch, 0 },
10098
10099   {  zRpc_Xdr_Lvalue_Cast_AName,    zRpc_Xdr_Lvalue_Cast_AList,
10100      apzRpc_Xdr_Lvalue_Cast_AMachs,
10101      RPC_XDR_LVALUE_CAST_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10102      aRpc_Xdr_Lvalue_Cast_ATests,   apzRpc_Xdr_Lvalue_Cast_APatch, 0 },
10103
10104   {  zRpc_Xdr_Lvalue_Cast_BName,    zRpc_Xdr_Lvalue_Cast_BList,
10105      apzRpc_Xdr_Lvalue_Cast_BMachs,
10106      RPC_XDR_LVALUE_CAST_B_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10107      aRpc_Xdr_Lvalue_Cast_BTests,   apzRpc_Xdr_Lvalue_Cast_BPatch, 0 },
10108
10109   {  zRs6000_DoubleName,    zRs6000_DoubleList,
10110      apzRs6000_DoubleMachs,
10111      RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10112      aRs6000_DoubleTests,   apzRs6000_DoublePatch, 0 },
10113
10114   {  zRs6000_FchmodName,    zRs6000_FchmodList,
10115      apzRs6000_FchmodMachs,
10116      RS6000_FCHMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10117      aRs6000_FchmodTests,   apzRs6000_FchmodPatch, 0 },
10118
10119   {  zRs6000_ParamName,    zRs6000_ParamList,
10120      apzRs6000_ParamMachs,
10121      RS6000_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10122      aRs6000_ParamTests,   apzRs6000_ParamPatch, 0 },
10123
10124   {  zSolaris___RestrictName,    zSolaris___RestrictList,
10125      apzSolaris___RestrictMachs,
10126      SOLARIS___RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10127      aSolaris___RestrictTests,   apzSolaris___RestrictPatch, 0 },
10128
10129   {  zSolaris_ComplexName,    zSolaris_ComplexList,
10130      apzSolaris_ComplexMachs,
10131      SOLARIS_COMPLEX_TEST_CT, FD_MACH_ONLY,
10132      aSolaris_ComplexTests,   apzSolaris_ComplexPatch, 0 },
10133
10134   {  zSolaris_Complex_CxxName,    zSolaris_Complex_CxxList,
10135      apzSolaris_Complex_CxxMachs,
10136      SOLARIS_COMPLEX_CXX_TEST_CT, FD_MACH_ONLY,
10137      aSolaris_Complex_CxxTests,   apzSolaris_Complex_CxxPatch, 0 },
10138
10139   {  zSolaris_Cond_InitName,    zSolaris_Cond_InitList,
10140      apzSolaris_Cond_InitMachs,
10141      SOLARIS_COND_INIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10142      aSolaris_Cond_InitTests,   apzSolaris_Cond_InitPatch, 0 },
10143
10144   {  zSolaris_Cxx_LinkageName,    zSolaris_Cxx_LinkageList,
10145      apzSolaris_Cxx_LinkageMachs,
10146      SOLARIS_CXX_LINKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10147      aSolaris_Cxx_LinkageTests,   apzSolaris_Cxx_LinkagePatch, 0 },
10148
10149   {  zSolaris_Getc_Strict_StdcName,    zSolaris_Getc_Strict_StdcList,
10150      apzSolaris_Getc_Strict_StdcMachs,
10151      SOLARIS_GETC_STRICT_STDC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10152      aSolaris_Getc_Strict_StdcTests,   apzSolaris_Getc_Strict_StdcPatch, 0 },
10153
10154   {  zSolaris_Longjmp_NoreturnName,    zSolaris_Longjmp_NoreturnList,
10155      apzSolaris_Longjmp_NoreturnMachs,
10156      SOLARIS_LONGJMP_NORETURN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10157      aSolaris_Longjmp_NoreturnTests,   apzSolaris_Longjmp_NoreturnPatch, 0 },
10158
10159   {  zSolaris_Math_1Name,    zSolaris_Math_1List,
10160      apzSolaris_Math_1Machs,
10161      SOLARIS_MATH_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10162      aSolaris_Math_1Tests,   apzSolaris_Math_1Patch, 0 },
10163
10164   {  zSolaris_Math_2Name,    zSolaris_Math_2List,
10165      apzSolaris_Math_2Machs,
10166      SOLARIS_MATH_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10167      aSolaris_Math_2Tests,   apzSolaris_Math_2Patch, 0 },
10168
10169   {  zSolaris_Math_3Name,    zSolaris_Math_3List,
10170      apzSolaris_Math_3Machs,
10171      SOLARIS_MATH_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10172      aSolaris_Math_3Tests,   apzSolaris_Math_3Patch, 0 },
10173
10174   {  zSolaris_Math_4Name,    zSolaris_Math_4List,
10175      apzSolaris_Math_4Machs,
10176      SOLARIS_MATH_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10177      aSolaris_Math_4Tests,   apzSolaris_Math_4Patch, 0 },
10178
10179   {  zSolaris_Math_8Name,    zSolaris_Math_8List,
10180      apzSolaris_Math_8Machs,
10181      SOLARIS_MATH_8_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10182      aSolaris_Math_8Tests,   apzSolaris_Math_8Patch, 0 },
10183
10184   {  zSolaris_Math_9Name,    zSolaris_Math_9List,
10185      apzSolaris_Math_9Machs,
10186      SOLARIS_MATH_9_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10187      aSolaris_Math_9Tests,   apzSolaris_Math_9Patch, 0 },
10188
10189   {  zSolaris_Math_10Name,    zSolaris_Math_10List,
10190      apzSolaris_Math_10Machs,
10191      SOLARIS_MATH_10_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10192      aSolaris_Math_10Tests,   apzSolaris_Math_10Patch, 0 },
10193
10194   {  zSolaris_Mutex_Init_2Name,    zSolaris_Mutex_Init_2List,
10195      apzSolaris_Mutex_Init_2Machs,
10196      SOLARIS_MUTEX_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10197      aSolaris_Mutex_Init_2Tests,   apzSolaris_Mutex_Init_2Patch, 0 },
10198
10199   {  zSolaris_Pow_Int_OverloadName,    zSolaris_Pow_Int_OverloadList,
10200      apzSolaris_Pow_Int_OverloadMachs,
10201      SOLARIS_POW_INT_OVERLOAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10202      aSolaris_Pow_Int_OverloadTests,   apzSolaris_Pow_Int_OverloadPatch, 0 },
10203
10204   {  zSolaris_Rwlock_Init_1Name,    zSolaris_Rwlock_Init_1List,
10205      apzSolaris_Rwlock_Init_1Machs,
10206      SOLARIS_RWLOCK_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10207      aSolaris_Rwlock_Init_1Tests,   apzSolaris_Rwlock_Init_1Patch, 0 },
10208
10209   {  zSolaris_Once_Init_1Name,    zSolaris_Once_Init_1List,
10210      apzSolaris_Once_Init_1Machs,
10211      SOLARIS_ONCE_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10212      aSolaris_Once_Init_1Tests,   apzSolaris_Once_Init_1Patch, 0 },
10213
10214   {  zSolaris_Once_Init_2Name,    zSolaris_Once_Init_2List,
10215      apzSolaris_Once_Init_2Machs,
10216      SOLARIS_ONCE_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10217      aSolaris_Once_Init_2Tests,   apzSolaris_Once_Init_2Patch, 0 },
10218
10219   {  zSolaris_Int_ConstName,    zSolaris_Int_ConstList,
10220      apzSolaris_Int_ConstMachs,
10221      SOLARIS_INT_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10222      aSolaris_Int_ConstTests,   apzSolaris_Int_ConstPatch, 0 },
10223
10224   {  zSolaris_Int_Limits_1Name,    zSolaris_Int_Limits_1List,
10225      apzSolaris_Int_Limits_1Machs,
10226      SOLARIS_INT_LIMITS_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10227      aSolaris_Int_Limits_1Tests,   apzSolaris_Int_Limits_1Patch, 0 },
10228
10229   {  zSolaris_Int_Limits_2Name,    zSolaris_Int_Limits_2List,
10230      apzSolaris_Int_Limits_2Machs,
10231      SOLARIS_INT_LIMITS_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10232      aSolaris_Int_Limits_2Tests,   apzSolaris_Int_Limits_2Patch, 0 },
10233
10234   {  zSolaris_Int_Limits_3Name,    zSolaris_Int_Limits_3List,
10235      apzSolaris_Int_Limits_3Machs,
10236      SOLARIS_INT_LIMITS_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10237      aSolaris_Int_Limits_3Tests,   apzSolaris_Int_Limits_3Patch, 0 },
10238
10239   {  zSolaris_Int_TypesName,    zSolaris_Int_TypesList,
10240      apzSolaris_Int_TypesMachs,
10241      SOLARIS_INT_TYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10242      aSolaris_Int_TypesTests,   apzSolaris_Int_TypesPatch, 0 },
10243
10244   {  zSolaris_Posix_Spawn_RestrictName,    zSolaris_Posix_Spawn_RestrictList,
10245      apzSolaris_Posix_Spawn_RestrictMachs,
10246      SOLARIS_POSIX_SPAWN_RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10247      aSolaris_Posix_Spawn_RestrictTests,   apzSolaris_Posix_Spawn_RestrictPatch, 0 },
10248
10249   {  zSolaris_Std___FilbufName,    zSolaris_Std___FilbufList,
10250      apzSolaris_Std___FilbufMachs,
10251      SOLARIS_STD___FILBUF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10252      aSolaris_Std___FilbufTests,   apzSolaris_Std___FilbufPatch, 0 },
10253
10254   {  zSolaris_Stdio_TagName,    zSolaris_Stdio_TagList,
10255      apzSolaris_Stdio_TagMachs,
10256      SOLARIS_STDIO_TAG_TEST_CT, FD_MACH_ONLY,
10257      aSolaris_Stdio_TagTests,   apzSolaris_Stdio_TagPatch, 0 },
10258
10259   {  zSolaris_Sys_Va_ListName,    zSolaris_Sys_Va_ListList,
10260      apzSolaris_Sys_Va_ListMachs,
10261      SOLARIS_SYS_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10262      aSolaris_Sys_Va_ListTests,   apzSolaris_Sys_Va_ListPatch, 0 },
10263
10264   {  zStatsswtchName,    zStatsswtchList,
10265      apzStatsswtchMachs,
10266      STATSSWTCH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10267      aStatsswtchTests,   apzStatsswtchPatch, 0 },
10268
10269   {  zStdio_Stdarg_HName,    zStdio_Stdarg_HList,
10270      apzStdio_Stdarg_HMachs,
10271      STDIO_STDARG_H_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
10272      aStdio_Stdarg_HTests,   apzStdio_Stdarg_HPatch, 0 },
10273
10274   {  zStdio_Va_ListName,    zStdio_Va_ListList,
10275      apzStdio_Va_ListMachs,
10276      STDIO_VA_LIST_TEST_CT, FD_MACH_IFNOT,
10277      aStdio_Va_ListTests,   apzStdio_Va_ListPatch, 0 },
10278
10279   {  zStdio_Va_List_ClientsName,    zStdio_Va_List_ClientsList,
10280      apzStdio_Va_List_ClientsMachs,
10281      STDIO_VA_LIST_CLIENTS_TEST_CT, FD_MACH_ONLY,
10282      aStdio_Va_List_ClientsTests,   apzStdio_Va_List_ClientsPatch, 0 },
10283
10284   {  zStrict_Ansi_NotName,    zStrict_Ansi_NotList,
10285      apzStrict_Ansi_NotMachs,
10286      STRICT_ANSI_NOT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10287      aStrict_Ansi_NotTests,   apzStrict_Ansi_NotPatch, 0 },
10288
10289   {  zStrict_Ansi_Not_CtdName,    zStrict_Ansi_Not_CtdList,
10290      apzStrict_Ansi_Not_CtdMachs,
10291      STRICT_ANSI_NOT_CTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10292      aStrict_Ansi_Not_CtdTests,   apzStrict_Ansi_Not_CtdPatch, 0 },
10293
10294   {  zStrict_Ansi_OnlyName,    zStrict_Ansi_OnlyList,
10295      apzStrict_Ansi_OnlyMachs,
10296      STRICT_ANSI_ONLY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10297      aStrict_Ansi_OnlyTests,   apzStrict_Ansi_OnlyPatch, 0 },
10298
10299   {  zStruct_FileName,    zStruct_FileList,
10300      apzStruct_FileMachs,
10301      STRUCT_FILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10302      aStruct_FileTests,   apzStruct_FilePatch, 0 },
10303
10304   {  zStruct_SockaddrName,    zStruct_SockaddrList,
10305      apzStruct_SockaddrMachs,
10306      STRUCT_SOCKADDR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10307      aStruct_SockaddrTests,   apzStruct_SockaddrPatch, 0 },
10308
10309   {  zSun_Auth_ProtoName,    zSun_Auth_ProtoList,
10310      apzSun_Auth_ProtoMachs,
10311      SUN_AUTH_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10312      aSun_Auth_ProtoTests,   apzSun_Auth_ProtoPatch, 0 },
10313
10314   {  zSun_Bogus_IfdefName,    zSun_Bogus_IfdefList,
10315      apzSun_Bogus_IfdefMachs,
10316      SUN_BOGUS_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10317      aSun_Bogus_IfdefTests,   apzSun_Bogus_IfdefPatch, 0 },
10318
10319   {  zSun_CatmacroName,    zSun_CatmacroList,
10320      apzSun_CatmacroMachs,
10321      SUN_CATMACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10322      aSun_CatmacroTests,   apzSun_CatmacroPatch, 0 },
10323
10324   {  zSun_MallocName,    zSun_MallocList,
10325      apzSun_MallocMachs,
10326      SUN_MALLOC_TEST_CT, FD_MACH_ONLY,
10327      aSun_MallocTests,   apzSun_MallocPatch, 0 },
10328
10329   {  zSun_Rusers_SemiName,    zSun_Rusers_SemiList,
10330      apzSun_Rusers_SemiMachs,
10331      SUN_RUSERS_SEMI_TEST_CT, FD_MACH_ONLY,
10332      aSun_Rusers_SemiTests,   apzSun_Rusers_SemiPatch, 0 },
10333
10334   {  zSun_SignalName,    zSun_SignalList,
10335      apzSun_SignalMachs,
10336      SUN_SIGNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10337      aSun_SignalTests,   apzSun_SignalPatch, 0 },
10338
10339   {  zSunos_StrlenName,    zSunos_StrlenList,
10340      apzSunos_StrlenMachs,
10341      SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10342      aSunos_StrlenTests,   apzSunos_StrlenPatch, 0 },
10343
10344   {  zSvr4_Disable_OptName,    zSvr4_Disable_OptList,
10345      apzSvr4_Disable_OptMachs,
10346      SVR4_DISABLE_OPT_TEST_CT, FD_MACH_ONLY,
10347      aSvr4_Disable_OptTests,   apzSvr4_Disable_OptPatch, 0 },
10348
10349   {  zSvr4_GetcwdName,    zSvr4_GetcwdList,
10350      apzSvr4_GetcwdMachs,
10351      SVR4_GETCWD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10352      aSvr4_GetcwdTests,   apzSvr4_GetcwdPatch, 0 },
10353
10354   {  zSvr4_ProfilName,    zSvr4_ProfilList,
10355      apzSvr4_ProfilMachs,
10356      SVR4_PROFIL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10357      aSvr4_ProfilTests,   apzSvr4_ProfilPatch, 0 },
10358
10359   {  zSvr4_Sighandler_TypeName,    zSvr4_Sighandler_TypeList,
10360      apzSvr4_Sighandler_TypeMachs,
10361      SVR4_SIGHANDLER_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10362      aSvr4_Sighandler_TypeTests,   apzSvr4_Sighandler_TypePatch, 0 },
10363
10364   {  zSvr4_Undeclared_GetrngeName,    zSvr4_Undeclared_GetrngeList,
10365      apzSvr4_Undeclared_GetrngeMachs,
10366      SVR4_UNDECLARED_GETRNGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10367      aSvr4_Undeclared_GetrngeTests,   apzSvr4_Undeclared_GetrngePatch, 0 },
10368
10369   {  zSysv68_StringName,    zSysv68_StringList,
10370      apzSysv68_StringMachs,
10371      SYSV68_STRING_TEST_CT, FD_MACH_ONLY,
10372      aSysv68_StringTests,   apzSysv68_StringPatch, 0 },
10373
10374   {  zSysz_Stdlib_For_SunName,    zSysz_Stdlib_For_SunList,
10375      apzSysz_Stdlib_For_SunMachs,
10376      SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10377      aSysz_Stdlib_For_SunTests,   apzSysz_Stdlib_For_SunPatch, 0 },
10378
10379   {  zThread_KeywordName,    zThread_KeywordList,
10380      apzThread_KeywordMachs,
10381      THREAD_KEYWORD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10382      aThread_KeywordTests,   apzThread_KeywordPatch, 0 },
10383
10384   {  zTinfo_CplusplusName,    zTinfo_CplusplusList,
10385      apzTinfo_CplusplusMachs,
10386      TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10387      aTinfo_CplusplusTests,   apzTinfo_CplusplusPatch, 0 },
10388
10389   {  zUltrix_ConstName,    zUltrix_ConstList,
10390      apzUltrix_ConstMachs,
10391      ULTRIX_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10392      aUltrix_ConstTests,   apzUltrix_ConstPatch, 0 },
10393
10394   {  zUltrix_Const2Name,    zUltrix_Const2List,
10395      apzUltrix_Const2Machs,
10396      ULTRIX_CONST2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10397      aUltrix_Const2Tests,   apzUltrix_Const2Patch, 0 },
10398
10399   {  zVa_I960_MacroName,    zVa_I960_MacroList,
10400      apzVa_I960_MacroMachs,
10401      VA_I960_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10402      aVa_I960_MacroTests,   apzVa_I960_MacroPatch, 0 },
10403
10404   {  zVms_Define_Can_Use_Extern_PrefixName,    zVms_Define_Can_Use_Extern_PrefixList,
10405      apzVms_Define_Can_Use_Extern_PrefixMachs,
10406      VMS_DEFINE_CAN_USE_EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10407      aVms_Define_Can_Use_Extern_PrefixTests,   apzVms_Define_Can_Use_Extern_PrefixPatch, 0 },
10408
10409   {  zVms_Use_Pragma_Extern_ModelName,    zVms_Use_Pragma_Extern_ModelList,
10410      apzVms_Use_Pragma_Extern_ModelMachs,
10411      VMS_USE_PRAGMA_EXTERN_MODEL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10412      aVms_Use_Pragma_Extern_ModelTests,   apzVms_Use_Pragma_Extern_ModelPatch, 0 },
10413
10414   {  zVms_Disable_Decc_String_BuiltinsName,    zVms_Disable_Decc_String_BuiltinsList,
10415      apzVms_Disable_Decc_String_BuiltinsMachs,
10416      VMS_DISABLE_DECC_STRING_BUILTINS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10417      aVms_Disable_Decc_String_BuiltinsTests,   apzVms_Disable_Decc_String_BuiltinsPatch, 0 },
10418
10419   {  zVoid_NullName,    zVoid_NullList,
10420      apzVoid_NullMachs,
10421      VOID_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10422      aVoid_NullTests,   apzVoid_NullPatch, 0 },
10423
10424   {  zVxworks_Gcc_ProblemName,    zVxworks_Gcc_ProblemList,
10425      apzVxworks_Gcc_ProblemMachs,
10426      VXWORKS_GCC_PROBLEM_TEST_CT, FD_MACH_ONLY,
10427      aVxworks_Gcc_ProblemTests,   apzVxworks_Gcc_ProblemPatch, 0 },
10428
10429   {  zVxworks_Needs_VxtypesName,    zVxworks_Needs_VxtypesList,
10430      apzVxworks_Needs_VxtypesMachs,
10431      VXWORKS_NEEDS_VXTYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10432      aVxworks_Needs_VxtypesTests,   apzVxworks_Needs_VxtypesPatch, 0 },
10433
10434   {  zVxworks_Needs_VxworksName,    zVxworks_Needs_VxworksList,
10435      apzVxworks_Needs_VxworksMachs,
10436      VXWORKS_NEEDS_VXWORKS_TEST_CT, FD_MACH_ONLY,
10437      aVxworks_Needs_VxworksTests,   apzVxworks_Needs_VxworksPatch, 0 },
10438
10439   {  zVxworks_TimeName,    zVxworks_TimeList,
10440      apzVxworks_TimeMachs,
10441      VXWORKS_TIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10442      aVxworks_TimeTests,   apzVxworks_TimePatch, 0 },
10443
10444   {  zX11_ClassName,    zX11_ClassList,
10445      apzX11_ClassMachs,
10446      X11_CLASS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10447      aX11_ClassTests,   apzX11_ClassPatch, 0 },
10448
10449   {  zX11_Class_UsageName,    zX11_Class_UsageList,
10450      apzX11_Class_UsageMachs,
10451      X11_CLASS_USAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10452      aX11_Class_UsageTests,   apzX11_Class_UsagePatch, 0 },
10453
10454   {  zX11_NewName,    zX11_NewList,
10455      apzX11_NewMachs,
10456      X11_NEW_TEST_CT, FD_MACH_ONLY,
10457      aX11_NewTests,   apzX11_NewPatch, 0 },
10458
10459   {  zX11_SprintfName,    zX11_SprintfList,
10460      apzX11_SprintfMachs,
10461      X11_SPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10462      aX11_SprintfTests,   apzX11_SprintfPatch, 0 }
10463 };