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