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