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