Generate gimple-match.c and generic-match.c earlier
[official-gcc.git] / fixincludes / fixincl.x
blobcc17edfba0bc81b2adecd0be0cb8f283c741ab3d
1 /*  -*- buffer-read-only: t -*- vi: set ro:
2  *
3  * DO NOT EDIT THIS FILE   (fixincl.x)
4  *
5  * It has been AutoGen-ed  December  9, 2020 at 11:16:08 AM 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 Wed Dec  9 11:16:08 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 260 fixup descriptions.
19  *
20  * See README for more information.
21  *
22  *  inclhack copyright (c) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
23  *                         2006, 2007, 2008
24  *  The Free Software Foundation, Inc.
25  *
26  *  inclhack is free software: you can redistribute it and/or modify it
27  *  under the terms of the GNU General Public License as published by the
28  *  Free Software Foundation, either version 3 of the License, or
29  *  (at your option) any later version.
30  *  
31  *  inclhack is distributed in the hope that it will be useful, but
32  *  WITHOUT ANY WARRANTY; without even the implied warranty of
33  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
34  *  See the GNU General Public License for more details.
35  *  
36  *  You should have received a copy of the GNU General Public License along
37  *  with this program.  If not, see <http://www.gnu.org/licenses/>.
38  */
39 #ifndef SED_PROGRAM
40 #define SED_PROGRAM "/usr/bin/sed"
41 #endif
42 static char const sed_cmd_z[] = SED_PROGRAM;
44 /* * * * * * * * * * * * * * * * * * * * * * * * * *
45  *
46  *  Description of Aab_Aix_Stdio fix
47  */
48 tSCC zAab_Aix_StdioName[] =
49      "AAB_aix_stdio";
52  *  File name selection pattern
53  */
54 tSCC zAab_Aix_StdioList[] =
55   "stdio.h\0";
57  *  Machine/OS name selection pattern
58  */
59 tSCC* apzAab_Aix_StdioMachs[] = {
60         "*-*-aix*",
61         (const char*)NULL };
64  *  content selection pattern - do fix if pattern found
65  */
66 tSCC zAab_Aix_StdioSelect0[] =
67        "define fopen fopen64";
69 #define    AAB_AIX_STDIO_TEST_CT  1
70 static tTestDesc aAab_Aix_StdioTests[] = {
71   { TT_EGREP,    zAab_Aix_StdioSelect0, (regex_t*)NULL }, };
74  *  Fix Command Arguments for Aab_Aix_Stdio
75  */
76 static const char* apzAab_Aix_StdioPatch[] = {
77     "wrap",
78     "",
79     "\n\
80 #if defined __GNUG__ && defined _LARGE_FILES && defined __cplusplus\n\
81 #define __need__aix_stdio_h_fix\n\
82 #ifdef __need__aix_stdio_h_fix\n\
83 #undef fseeko\n\
84 #undef ftello\n\
85 #undef fgetpos\n\
86 #undef fsetpos\n\
87 #undef fopen\n\
88 #undef freopen\n\
89 /* Alias the symbols using asm */\n\
90 extern \"C\" {\n\
91 extern int fgetpos(FILE *, fpos64_t *) __asm__(\"fgetpos64\");\n\
92 extern FILE *fopen(const char *, const char *) __asm__(\"fopen64\");\n\
93 extern FILE *freopen(const char *, const char *, FILE *) __asm__(\"freopen64\");\n\
94 extern int fseeko(FILE *, off64_t, int) __asm__(\"fseeko64\");\n\
95 extern int fsetpos(FILE *, const fpos64_t *) __asm__(\"fsetpos64\");\n\
96 extern off64_t ftello(FILE *) __asm__(\"ftello64\");\n\
97 }\n\
98 #endif\n\
99 #endif\n",
100     (char*)NULL };
102 /* * * * * * * * * * * * * * * * * * * * * * * * * *
104  *  Description of Aab_Aix_Fcntl fix
105  */
106 tSCC zAab_Aix_FcntlName[] =
107      "AAB_aix_fcntl";
110  *  File name selection pattern
111  */
112 tSCC zAab_Aix_FcntlList[] =
113   "fcntl.h\0";
115  *  Machine/OS name selection pattern
116  */
117 tSCC* apzAab_Aix_FcntlMachs[] = {
118         "*-*-aix*",
119         (const char*)NULL };
122  *  content selection pattern - do fix if pattern found
123  */
124 tSCC zAab_Aix_FcntlSelect0[] =
125        "define open[ \t]open64";
127 #define    AAB_AIX_FCNTL_TEST_CT  1
128 static tTestDesc aAab_Aix_FcntlTests[] = {
129   { TT_EGREP,    zAab_Aix_FcntlSelect0, (regex_t*)NULL }, };
132  *  Fix Command Arguments for Aab_Aix_Fcntl
133  */
134 static 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\
145 extern \"C\" {\n\
146 extern int open(const char *, int, ...) __asm__(\"open64\");\n\
147 extern int creat(const char *, mode_t) __asm__(\"creat64\");\n\
148 #if (_XOPEN_SOURCE >= 700)\n\
149 extern int openat(int, const char *, int, ...) __asm__(\"open64at\");\n\
150 #endif\n\
151 }\n\
152 #endif\n\
153 #endif\n",
154     (char*)NULL };
156 /* * * * * * * * * * * * * * * * * * * * * * * * * *
158  *  Description of Aab_Darwin7_9_Long_Double_Funcs fix
159  */
160 tSCC zAab_Darwin7_9_Long_Double_FuncsName[] =
161      "AAB_darwin7_9_long_double_funcs";
164  *  File name selection pattern
165  */
166 tSCC zAab_Darwin7_9_Long_Double_FuncsList[] =
167   "architecture/ppc/math.h\0";
169  *  Machine/OS name selection pattern
170  */
171 tSCC* apzAab_Darwin7_9_Long_Double_FuncsMachs[] = {
172         "*-*-darwin7.9*",
173         (const char*)NULL };
176  *  content bypass pattern - skip fix if pattern found
177  */
178 tSCC zAab_Darwin7_9_Long_Double_FuncsBypass0[] =
179        "powl";
181 #define    AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT  1
182 static tTestDesc aAab_Darwin7_9_Long_Double_FuncsTests[] = {
183   { TT_NEGREP,   zAab_Darwin7_9_Long_Double_FuncsBypass0, (regex_t*)NULL }, };
186  *  Fix Command Arguments for Aab_Darwin7_9_Long_Double_Funcs
187  */
188 static 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 };
270 /* * * * * * * * * * * * * * * * * * * * * * * * * *
272  *  Description of Darwin_Api_Availability fix
273  */
274 tSCC zDarwin_Api_AvailabilityName[] =
275      "darwin_api_availability";
278  *  File name selection pattern
279  */
280 tSCC zDarwin_Api_AvailabilityList[] =
281   "os/availability.h\0";
283  *  Machine/OS name selection pattern
284  */
285 tSCC* apzDarwin_Api_AvailabilityMachs[] = {
286         "*-*-darwin*",
287         (const char*)NULL };
290  *  content selection pattern - do fix if pattern found
291  */
292 tSCC 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";
299  *  content bypass pattern - skip fix if pattern found
300  */
301 tSCC zDarwin_Api_AvailabilityBypass0[] =
302        "__IPHONE_OS_VERSION_MIN_REQUIRED";
304 #define    DARWIN_API_AVAILABILITY_TEST_CT  2
305 static tTestDesc aDarwin_Api_AvailabilityTests[] = {
306   { TT_NEGREP,   zDarwin_Api_AvailabilityBypass0, (regex_t*)NULL },
307   { TT_EGREP,    zDarwin_Api_AvailabilitySelect0, (regex_t*)NULL }, };
310  *  Fix Command Arguments for Darwin_Api_Availability
311  */
312 static 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 };
320 /* * * * * * * * * * * * * * * * * * * * * * * * * *
322  *  Description of Aab_Fd_Zero_Asm_Posix_Types_H fix
323  */
324 tSCC zAab_Fd_Zero_Asm_Posix_Types_HName[] =
325      "AAB_fd_zero_asm_posix_types_h";
328  *  File name selection pattern
329  */
330 tSCC zAab_Fd_Zero_Asm_Posix_Types_HList[] =
331   "asm/posix_types.h\0";
333  *  Machine/OS name selection pattern
334  */
335 tSCC* apzAab_Fd_Zero_Asm_Posix_Types_HMachs[] = {
336         "i[34567]86-*-linux*",
337         (const char*)NULL };
340  *  content bypass pattern - skip fix if pattern found
341  */
342 tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass0[] =
343        "} while";
344 tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass1[] =
345        "x86_64";
346 tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass2[] =
347        "posix_types_64";
349 #define    AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT  3
350 static 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 }, };
356  *  Fix Command Arguments for Aab_Fd_Zero_Asm_Posix_Types_H
357  */
358 static 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 };
379 /* * * * * * * * * * * * * * * * * * * * * * * * * *
381  *  Description of Aab_Fd_Zero_Gnu_Types_H fix
382  */
383 tSCC zAab_Fd_Zero_Gnu_Types_HName[] =
384      "AAB_fd_zero_gnu_types_h";
387  *  File name selection pattern
388  */
389 tSCC zAab_Fd_Zero_Gnu_Types_HList[] =
390   "gnu/types.h\0";
392  *  Machine/OS name selection pattern
393  */
394 tSCC* 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
401  *  Fix Command Arguments for Aab_Fd_Zero_Gnu_Types_H
402  */
403 static 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 };
423 /* * * * * * * * * * * * * * * * * * * * * * * * * *
425  *  Description of Aab_Fd_Zero_Selectbits_H fix
426  */
427 tSCC zAab_Fd_Zero_Selectbits_HName[] =
428      "AAB_fd_zero_selectbits_h";
431  *  File name selection pattern
432  */
433 tSCC zAab_Fd_Zero_Selectbits_HList[] =
434   "selectbits.h\0";
436  *  Machine/OS name selection pattern
437  */
438 tSCC* 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
445  *  Fix Command Arguments for Aab_Fd_Zero_Selectbits_H
446  */
447 static 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 };
471 /* * * * * * * * * * * * * * * * * * * * * * * * * *
473  *  Description of Aab_Solaris_Sys_Varargs_H fix
474  */
475 tSCC zAab_Solaris_Sys_Varargs_HName[] =
476      "AAB_solaris_sys_varargs_h";
479  *  File name selection pattern
480  */
481 tSCC zAab_Solaris_Sys_Varargs_HList[] =
482   "sys/varargs.h\0";
484  *  Machine/OS name selection pattern
485  */
486 tSCC* 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
493  *  Fix Command Arguments for Aab_Solaris_Sys_Varargs_H
494  */
495 static 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 };
503 /* * * * * * * * * * * * * * * * * * * * * * * * * *
505  *  Description of Aab_Sun_Memcpy fix
506  */
507 tSCC zAab_Sun_MemcpyName[] =
508      "AAB_sun_memcpy";
511  *  File name selection pattern
512  */
513 tSCC zAab_Sun_MemcpyList[] =
514   "memory.h\0";
516  *  Machine/OS name selection pattern
517  */
518 #define apzAab_Sun_MemcpyMachs (const char**)NULL
521  *  content selection pattern - do fix if pattern found
522  */
523 tSCC zAab_Sun_MemcpySelect0[] =
524        "/\\*\t@\\(#\\)(head/memory.h\t50.1\t |memory\\.h 1\\.[2-4] 8./../.. SMI; from S5R2 1\\.2\t)\\*/";
526 #define    AAB_SUN_MEMCPY_TEST_CT  1
527 static tTestDesc aAab_Sun_MemcpyTests[] = {
528   { TT_EGREP,    zAab_Sun_MemcpySelect0, (regex_t*)NULL }, };
531  *  Fix Command Arguments for Aab_Sun_Memcpy
532  */
533 static 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 };
552 /* * * * * * * * * * * * * * * * * * * * * * * * * *
554  *  Description of Aab_Vxworks_Assert fix
555  */
556 tSCC zAab_Vxworks_AssertName[] =
557      "AAB_vxworks_assert";
560  *  File name selection pattern
561  */
562 tSCC zAab_Vxworks_AssertList[] =
563   "assert.h\0";
565  *  Machine/OS name selection pattern
566  */
567 tSCC* apzAab_Vxworks_AssertMachs[] = {
568         "*-*-vxworks*",
569         (const char*)NULL };
570 #define AAB_VXWORKS_ASSERT_TEST_CT  0
571 #define aAab_Vxworks_AssertTests   (tTestDesc*)NULL
574  *  Fix Command Arguments for Aab_Vxworks_Assert
575  */
576 static 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\
583 extern \"C\" {\n\
584 #endif\n\n\
585 #if defined(__STDC__) || defined(__cplusplus)\n\
586 extern void __assert (const char*);\n\
587 #else\n\
588 extern 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 };
605 /* * * * * * * * * * * * * * * * * * * * * * * * * *
607  *  Description of Aab_Vxworks_Regs_Vxtypes fix
608  */
609 tSCC zAab_Vxworks_Regs_VxtypesName[] =
610      "AAB_vxworks_regs_vxtypes";
613  *  File name selection pattern
614  */
615 tSCC zAab_Vxworks_Regs_VxtypesList[] =
616   "regs.h\0";
618  *  Machine/OS name selection pattern
619  */
620 tSCC* 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
627  *  Fix Command Arguments for Aab_Vxworks_Regs_Vxtypes
628  */
629 static 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 };
647 /* * * * * * * * * * * * * * * * * * * * * * * * * *
649  *  Description of Aab_Vxworks_Unistd fix
650  */
651 tSCC zAab_Vxworks_UnistdName[] =
652      "AAB_vxworks_unistd";
655  *  File name selection pattern
656  */
657 tSCC zAab_Vxworks_UnistdList[] =
658   "unistd.h\0";
660  *  Machine/OS name selection pattern
661  */
662 tSCC* apzAab_Vxworks_UnistdMachs[] = {
663         "*-*-vxworks*",
664         (const char*)NULL };
665 #define AAB_VXWORKS_UNISTD_TEST_CT  0
666 #define aAab_Vxworks_UnistdTests   (tTestDesc*)NULL
669  *  Fix Command Arguments for Aab_Vxworks_Unistd
670  */
671 static 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 };
688 /* * * * * * * * * * * * * * * * * * * * * * * * * *
690  *  Description of Aix_Assert fix
691  */
692 tSCC zAix_AssertName[] =
693      "aix_assert";
696  *  File name selection pattern
697  */
698 tSCC zAix_AssertList[] =
699   "assert.h\0";
701  *  Machine/OS name selection pattern
702  */
703 tSCC* apzAix_AssertMachs[] = {
704         "*-*-aix*",
705         (const char*)NULL };
708  *  content selection pattern - do fix if pattern found
709  */
710 tSCC zAix_AssertSelect0[] =
711        "#define[ \t]static_assert[ \t]_Static_assert";
713 #define    AIX_ASSERT_TEST_CT  1
714 static tTestDesc aAix_AssertTests[] = {
715   { TT_EGREP,    zAix_AssertSelect0, (regex_t*)NULL }, };
718  *  Fix Command Arguments for Aix_Assert
719  */
720 static const char* apzAix_AssertPatch[] = {
721     "format",
722     "#ifndef __cplusplus\n\
723 %0\n\
724 #endif",
725     (char*)NULL };
727 /* * * * * * * * * * * * * * * * * * * * * * * * * *
729  *  Description of Aix_Complex fix
730  */
731 tSCC zAix_ComplexName[] =
732      "aix_complex";
735  *  File name selection pattern
736  */
737 tSCC zAix_ComplexList[] =
738   "complex.h\0";
740  *  Machine/OS name selection pattern
741  */
742 tSCC* apzAix_ComplexMachs[] = {
743         "*-*-aix*",
744         (const char*)NULL };
747  *  content selection pattern - do fix if pattern found
748  */
749 tSCC zAix_ComplexSelect0[] =
750        "#define[ \t]_Complex_I[ \t]__I";
752 #define    AIX_COMPLEX_TEST_CT  1
753 static tTestDesc aAix_ComplexTests[] = {
754   { TT_EGREP,    zAix_ComplexSelect0, (regex_t*)NULL }, };
757  *  Fix Command Arguments for Aix_Complex
758  */
759 static const char* apzAix_ComplexPatch[] = {
760     "format",
761     "#define _Complex_I (__extension__ 1.0iF)",
762     (char*)NULL };
764 /* * * * * * * * * * * * * * * * * * * * * * * * * *
766  *  Description of Aix_Externc fix
767  */
768 tSCC zAix_ExterncName[] =
769      "aix_externc";
772  *  File name selection pattern
773  */
774 tSCC zAix_ExterncList[] =
775   "ctype.h\0fcntl.h\0langinfo.h\0ldfcn.h\0sys/localedef.h\0sys/times.h\0";
777  *  Machine/OS name selection pattern
778  */
779 tSCC* apzAix_ExterncMachs[] = {
780         "*-*-aix*",
781         (const char*)NULL };
784  *  content bypass pattern - skip fix if pattern found
785  */
786 tSCC zAix_ExterncBypass0[] =
787        "extern \"C\"";
789 #define    AIX_EXTERNC_TEST_CT  1
790 static tTestDesc aAix_ExterncTests[] = {
791   { TT_NEGREP,   zAix_ExterncBypass0, (regex_t*)NULL }, };
794  *  Fix Command Arguments for Aix_Externc
795  */
796 static const char* apzAix_ExterncPatch[] = {
797     "wrap",
798     "#ifdef __cplusplus\n\
799 extern \"C\" {\n\
800 #endif\n",
801     "#ifdef __cplusplus\n\
802 }\n\
803 #endif\n",
804     (char*)NULL };
806 /* * * * * * * * * * * * * * * * * * * * * * * * * *
808  *  Description of Aix_Externcpp1 fix
809  */
810 tSCC zAix_Externcpp1Name[] =
811      "aix_externcpp1";
814  *  File name selection pattern
815  */
816 tSCC zAix_Externcpp1List[] =
817   "sys/socket.h\0";
819  *  Machine/OS name selection pattern
820  */
821 tSCC* apzAix_Externcpp1Machs[] = {
822         "*-*-aix*",
823         (const char*)NULL };
826  *  content selection pattern - do fix if pattern found
827  */
828 tSCC zAix_Externcpp1Select0[] =
829        "#ifndef _KERNEL\n\
830 #ifdef __cplusplus";
832 #define    AIX_EXTERNCPP1_TEST_CT  1
833 static tTestDesc aAix_Externcpp1Tests[] = {
834   { TT_EGREP,    zAix_Externcpp1Select0, (regex_t*)NULL }, };
837  *  Fix Command Arguments for Aix_Externcpp1
838  */
839 static const char* apzAix_Externcpp1Patch[] = {
840     "format",
841     "#ifndef _KERNEL\n\
842 #ifdef __cplusplus\n\
843 extern \"C++\" {",
844     (char*)NULL };
846 /* * * * * * * * * * * * * * * * * * * * * * * * * *
848  *  Description of Aix_Externcpp2 fix
849  */
850 tSCC zAix_Externcpp2Name[] =
851      "aix_externcpp2";
854  *  File name selection pattern
855  */
856 tSCC zAix_Externcpp2List[] =
857   "sys/socket.h\0";
859  *  Machine/OS name selection pattern
860  */
861 tSCC* apzAix_Externcpp2Machs[] = {
862         "*-*-aix*",
863         (const char*)NULL };
866  *  content selection pattern - do fix if pattern found
867  */
868 tSCC zAix_Externcpp2Select0[] =
869        "#endif /\\* COMPAT_43 \\*/\n\
870 #else  /\\* __cplusplus \\*/";
872 #define    AIX_EXTERNCPP2_TEST_CT  1
873 static tTestDesc aAix_Externcpp2Tests[] = {
874   { TT_EGREP,    zAix_Externcpp2Select0, (regex_t*)NULL }, };
877  *  Fix Command Arguments for Aix_Externcpp2
878  */
879 static const char* apzAix_Externcpp2Patch[] = {
880     "format",
881     "#endif /* COMPAT_43 */\n\
882 } /* extern \"C++\" */\n\
883 #else  /* __cplusplus */",
884     (char*)NULL };
886 /* * * * * * * * * * * * * * * * * * * * * * * * * *
888  *  Description of Aix_Inttypes fix
889  */
890 tSCC zAix_InttypesName[] =
891      "aix_inttypes";
894  *  File name selection pattern
895  */
896 tSCC zAix_InttypesList[] =
897   "sys/inttypes.h\0";
899  *  Machine/OS name selection pattern
900  */
901 tSCC* apzAix_InttypesMachs[] = {
902         "*-*-aix*",
903         (const char*)NULL };
906  *  content selection pattern - do fix if pattern found
907  */
908 tSCC zAix_InttypesSelect0[] =
909        "#if !defined\\(__cplusplus\\) \\|\\| defined\\(__STDC_FORMAT_MACROS\\)";
911 #define    AIX_INTTYPES_TEST_CT  1
912 static tTestDesc aAix_InttypesTests[] = {
913   { TT_EGREP,    zAix_InttypesSelect0, (regex_t*)NULL }, };
916  *  Fix Command Arguments for Aix_Inttypes
917  */
918 static const char* apzAix_InttypesPatch[] = {
919     "format",
920     "#if 1",
921     (char*)NULL };
923 /* * * * * * * * * * * * * * * * * * * * * * * * * *
925  *  Description of Aix_Malloc fix
926  */
927 tSCC zAix_MallocName[] =
928      "aix_malloc";
931  *  File name selection pattern
932  */
933 tSCC zAix_MallocList[] =
934   "malloc.h\0";
936  *  Machine/OS name selection pattern
937  */
938 tSCC* apzAix_MallocMachs[] = {
939         "*-*-aix*",
940         (const char*)NULL };
943  *  content selection pattern - do fix if pattern found
944  */
945 tSCC zAix_MallocSelect0[] =
946        "#ifdef __cplusplus\n\
947 extern \"C\" \\{\n\
948 [ \t]extern \"builtin\" char \\*__alloca \\(size_t\\);";
950 #define    AIX_MALLOC_TEST_CT  1
951 static tTestDesc aAix_MallocTests[] = {
952   { TT_EGREP,    zAix_MallocSelect0, (regex_t*)NULL }, };
955  *  Fix Command Arguments for Aix_Malloc
956  */
957 static const char* apzAix_MallocPatch[] = {
958     "format",
959     "#if (defined(__cplusplus) && defined(__IBMCPP__))\n\
960 extern \"C\" {\n\
961 \textern \"builtin\" char *__alloca (size_t);",
962     (char*)NULL };
964 /* * * * * * * * * * * * * * * * * * * * * * * * * *
966  *  Description of Aix_Net_If_Arp fix
967  */
968 tSCC zAix_Net_If_ArpName[] =
969      "aix_net_if_arp";
972  *  File name selection pattern
973  */
974 tSCC zAix_Net_If_ArpList[] =
975   "net/if_arp.h\0";
977  *  Machine/OS name selection pattern
978  */
979 tSCC* apzAix_Net_If_ArpMachs[] = {
980         "*-*-aix*",
981         (const char*)NULL };
984  *  content selection pattern - do fix if pattern found
985  */
986 tSCC zAix_Net_If_ArpSelect0[] =
987        "^struct  fc_softc \\{";
989 #define    AIX_NET_IF_ARP_TEST_CT  1
990 static tTestDesc aAix_Net_If_ArpTests[] = {
991   { TT_EGREP,    zAix_Net_If_ArpSelect0, (regex_t*)NULL }, };
994  *  Fix Command Arguments for Aix_Net_If_Arp
995  */
996 static const char* apzAix_Net_If_ArpPatch[] = {
997     "format",
998     "typedef struct _fc_softc {",
999     (char*)NULL };
1001 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1003  *  Description of Aix_Null fix
1004  */
1005 tSCC zAix_NullName[] =
1006      "aix_null";
1009  *  File name selection pattern
1010  */
1011 tSCC zAix_NullList[] =
1012   "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";
1014  *  Machine/OS name selection pattern
1015  */
1016 tSCC* apzAix_NullMachs[] = {
1017         "*-*-aix*",
1018         (const char*)NULL };
1021  *  content selection pattern - do fix if pattern found
1022  */
1023 tSCC zAix_NullSelect0[] =
1024        "#define[ \t]+NULL[ \t]+\\(*0L*\\)*";
1027  *  content bypass pattern - skip fix if pattern found
1028  */
1029 tSCC zAix_NullBypass0[] =
1030        "__null";
1032 #define    AIX_NULL_TEST_CT  2
1033 static tTestDesc aAix_NullTests[] = {
1034   { TT_NEGREP,   zAix_NullBypass0, (regex_t*)NULL },
1035   { TT_EGREP,    zAix_NullSelect0, (regex_t*)NULL }, };
1038  *  Fix Command Arguments for Aix_Null
1039  */
1040 static const char* apzAix_NullPatch[] = {
1041     "format",
1042     "#ifndef NULL\n\
1043 #ifdef __cplusplus\n\
1044 #ifdef __GNUG__\n\
1045 #define NULL __null\n\
1046 #else /* ! __GNUG__  */\n\
1047 #define NULL 0L\n\
1048 #endif /* __GNUG__  */\n\
1049 #else /* ! __cplusplus  */\n\
1050 #define NULL ((void *)0)\n\
1051 #endif /* __cplusplus  */\n\
1052 #endif /* !NULL  */",
1053     (char*)NULL };
1055 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1057  *  Description of Aix_Once_Init_1 fix
1058  */
1059 tSCC zAix_Once_Init_1Name[] =
1060      "aix_once_init_1";
1063  *  File name selection pattern
1064  */
1065 tSCC zAix_Once_Init_1List[] =
1066   "pthread.h\0";
1068  *  Machine/OS name selection pattern
1069  */
1070 tSCC* apzAix_Once_Init_1Machs[] = {
1071         "*-*-aix*",
1072         (const char*)NULL };
1075  *  content selection pattern - do fix if pattern found
1076  */
1077 tSCC zAix_Once_Init_1Select0[] =
1078        "#define[ \t]PTHREAD_ONCE_INIT \\\\\n\
1079 \\{ \\\\\n";
1081 #define    AIX_ONCE_INIT_1_TEST_CT  1
1082 static tTestDesc aAix_Once_Init_1Tests[] = {
1083   { TT_EGREP,    zAix_Once_Init_1Select0, (regex_t*)NULL }, };
1086  *  Fix Command Arguments for Aix_Once_Init_1
1087  */
1088 static const char* apzAix_Once_Init_1Patch[] = {
1089     "format",
1090     "#define PTHREAD_ONCE_INIT \\\n\
1091 {{ \\\n",
1092     (char*)NULL };
1094 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1096  *  Description of Aix_Once_Init_2 fix
1097  */
1098 tSCC zAix_Once_Init_2Name[] =
1099      "aix_once_init_2";
1102  *  File name selection pattern
1103  */
1104 tSCC zAix_Once_Init_2List[] =
1105   "pthread.h\0";
1107  *  Machine/OS name selection pattern
1108  */
1109 tSCC* apzAix_Once_Init_2Machs[] = {
1110         "*-*-aix*",
1111         (const char*)NULL };
1114  *  content selection pattern - do fix if pattern found
1115  */
1116 tSCC zAix_Once_Init_2Select0[] =
1117        "[ \t]0 \\\\\n\
1118 \\}\n";
1120 #define    AIX_ONCE_INIT_2_TEST_CT  1
1121 static tTestDesc aAix_Once_Init_2Tests[] = {
1122   { TT_EGREP,    zAix_Once_Init_2Select0, (regex_t*)NULL }, };
1125  *  Fix Command Arguments for Aix_Once_Init_2
1126  */
1127 static const char* apzAix_Once_Init_2Patch[] = {
1128     "format",
1129     "\t0 \\\n\
1130 }}\n",
1131     (char*)NULL };
1133 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1135  *  Description of Aix_Mutex_Initializer_1 fix
1136  */
1137 tSCC zAix_Mutex_Initializer_1Name[] =
1138      "aix_mutex_initializer_1";
1141  *  File name selection pattern
1142  */
1143 tSCC zAix_Mutex_Initializer_1List[] =
1144   "pthread.h\0";
1146  *  Machine/OS name selection pattern
1147  */
1148 tSCC* apzAix_Mutex_Initializer_1Machs[] = {
1149         "*-*-aix*",
1150         (const char*)NULL };
1153  *  content selection pattern - do fix if pattern found
1154  */
1155 tSCC zAix_Mutex_Initializer_1Select0[] =
1156        "#define[ \t]PTHREAD_MUTEX_INITIALIZER \\\\\n\
1157 \\{ \\\\\n";
1159 #define    AIX_MUTEX_INITIALIZER_1_TEST_CT  1
1160 static tTestDesc aAix_Mutex_Initializer_1Tests[] = {
1161   { TT_EGREP,    zAix_Mutex_Initializer_1Select0, (regex_t*)NULL }, };
1164  *  Fix Command Arguments for Aix_Mutex_Initializer_1
1165  */
1166 static const char* apzAix_Mutex_Initializer_1Patch[] = {
1167     "format",
1168     "#define PTHREAD_MUTEX_INITIALIZER \\\n\
1169 {{ \\\n",
1170     (char*)NULL };
1172 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1174  *  Description of Aix_Cond_Initializer_1 fix
1175  */
1176 tSCC zAix_Cond_Initializer_1Name[] =
1177      "aix_cond_initializer_1";
1180  *  File name selection pattern
1181  */
1182 tSCC zAix_Cond_Initializer_1List[] =
1183   "pthread.h\0";
1185  *  Machine/OS name selection pattern
1186  */
1187 tSCC* apzAix_Cond_Initializer_1Machs[] = {
1188         "*-*-aix*",
1189         (const char*)NULL };
1192  *  content selection pattern - do fix if pattern found
1193  */
1194 tSCC zAix_Cond_Initializer_1Select0[] =
1195        "#define[ \t]PTHREAD_COND_INITIALIZER \\\\\n\
1196 \\{ \\\\\n";
1198 #define    AIX_COND_INITIALIZER_1_TEST_CT  1
1199 static tTestDesc aAix_Cond_Initializer_1Tests[] = {
1200   { TT_EGREP,    zAix_Cond_Initializer_1Select0, (regex_t*)NULL }, };
1203  *  Fix Command Arguments for Aix_Cond_Initializer_1
1204  */
1205 static const char* apzAix_Cond_Initializer_1Patch[] = {
1206     "format",
1207     "#define PTHREAD_COND_INITIALIZER \\\n\
1208 {{ \\\n",
1209     (char*)NULL };
1211 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1213  *  Description of Aix_Rwlock_Initializer_1 fix
1214  */
1215 tSCC zAix_Rwlock_Initializer_1Name[] =
1216      "aix_rwlock_initializer_1";
1219  *  File name selection pattern
1220  */
1221 tSCC zAix_Rwlock_Initializer_1List[] =
1222   "pthread.h\0";
1224  *  Machine/OS name selection pattern
1225  */
1226 tSCC* apzAix_Rwlock_Initializer_1Machs[] = {
1227         "*-*-aix*",
1228         (const char*)NULL };
1231  *  content selection pattern - do fix if pattern found
1232  */
1233 tSCC zAix_Rwlock_Initializer_1Select0[] =
1234        "#define[ \t]PTHREAD_RWLOCK_INITIALIZER \\\\\n\
1235 \\{ \\\\\n";
1237 #define    AIX_RWLOCK_INITIALIZER_1_TEST_CT  1
1238 static tTestDesc aAix_Rwlock_Initializer_1Tests[] = {
1239   { TT_EGREP,    zAix_Rwlock_Initializer_1Select0, (regex_t*)NULL }, };
1242  *  Fix Command Arguments for Aix_Rwlock_Initializer_1
1243  */
1244 static const char* apzAix_Rwlock_Initializer_1Patch[] = {
1245     "format",
1246     "#define PTHREAD_RWLOCK_INITIALIZER \\\n\
1247 {{ \\\n",
1248     (char*)NULL };
1250 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1252  *  Description of Aix_Physadr_T fix
1253  */
1254 tSCC zAix_Physadr_TName[] =
1255      "aix_physadr_t";
1258  *  File name selection pattern
1259  */
1260 tSCC zAix_Physadr_TList[] =
1261   "sys/types.h\0";
1263  *  Machine/OS name selection pattern
1264  */
1265 tSCC* apzAix_Physadr_TMachs[] = {
1266         "*-*-aix*",
1267         (const char*)NULL };
1270  *  content selection pattern - do fix if pattern found
1271  */
1272 tSCC zAix_Physadr_TSelect0[] =
1273        "typedef[ \t]*struct[ \t]*([{][^}]*[}][ \t]*\\*[ \t]*physadr_t;)";
1275 #define    AIX_PHYSADR_T_TEST_CT  1
1276 static tTestDesc aAix_Physadr_TTests[] = {
1277   { TT_EGREP,    zAix_Physadr_TSelect0, (regex_t*)NULL }, };
1280  *  Fix Command Arguments for Aix_Physadr_T
1281  */
1282 static const char* apzAix_Physadr_TPatch[] = {
1283     "format",
1284     "typedef struct __physadr_s %1",
1285     (char*)NULL };
1287 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1289  *  Description of Aix_Pthread fix
1290  */
1291 tSCC zAix_PthreadName[] =
1292      "aix_pthread";
1295  *  File name selection pattern
1296  */
1297 tSCC zAix_PthreadList[] =
1298   "pthread.h\0";
1300  *  Machine/OS name selection pattern
1301  */
1302 #define apzAix_PthreadMachs (const char**)NULL
1305  *  content selection pattern - do fix if pattern found
1306  */
1307 tSCC zAix_PthreadSelect0[] =
1308        "(#define[\t ][A-Za-z_0-9]+)(\\\\\n\
1309 [^A-Za-z_0-9 \t\n\
1310 (])";
1312 #define    AIX_PTHREAD_TEST_CT  1
1313 static tTestDesc aAix_PthreadTests[] = {
1314   { TT_EGREP,    zAix_PthreadSelect0, (regex_t*)NULL }, };
1317  *  Fix Command Arguments for Aix_Pthread
1318  */
1319 static const char* apzAix_PthreadPatch[] = {
1320     "format",
1321     "%1 %2",
1322     (char*)NULL };
1324 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1326  *  Description of Aix_Stdint_1 fix
1327  */
1328 tSCC zAix_Stdint_1Name[] =
1329      "aix_stdint_1";
1332  *  File name selection pattern
1333  */
1334 tSCC zAix_Stdint_1List[] =
1335   "stdint-aix.h\0stdint.h\0";
1337  *  Machine/OS name selection pattern
1338  */
1339 tSCC* apzAix_Stdint_1Machs[] = {
1340         "*-*-aix*",
1341         (const char*)NULL };
1344  *  content selection pattern - do fix if pattern found
1345  */
1346 tSCC zAix_Stdint_1Select0[] =
1347        "#define[ \t]UINT8_MAX[ \t]\\(255U\\)\n\
1348 #define[ \t]UINT16_MAX[ \t]\\(65535U\\)";
1350 #define    AIX_STDINT_1_TEST_CT  1
1351 static tTestDesc aAix_Stdint_1Tests[] = {
1352   { TT_EGREP,    zAix_Stdint_1Select0, (regex_t*)NULL }, };
1355  *  Fix Command Arguments for Aix_Stdint_1
1356  */
1357 static const char* apzAix_Stdint_1Patch[] = {
1358     "format",
1359     "#define UINT8_MAX\t(255)\n\
1360 #define UINT16_MAX\t(65535)",
1361     (char*)NULL };
1363 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1365  *  Description of Aix_Stdint_2 fix
1366  */
1367 tSCC zAix_Stdint_2Name[] =
1368      "aix_stdint_2";
1371  *  File name selection pattern
1372  */
1373 tSCC zAix_Stdint_2List[] =
1374   "stdint-aix.h\0stdint.h\0";
1376  *  Machine/OS name selection pattern
1377  */
1378 tSCC* apzAix_Stdint_2Machs[] = {
1379         "*-*-aix*",
1380         (const char*)NULL };
1383  *  content selection pattern - do fix if pattern found
1384  */
1385 tSCC zAix_Stdint_2Select0[] =
1386        "#define[ \t]INTPTR_MIN[ \t]INT64_MIN\n\
1387 #define[ \t]INTPTR_MAX[ \t]INT64_MAX\n\
1388 #define[ \t]UINTPTR_MAX[ \t]UINT64_MAX\n\
1389 #else\n\
1390 #define[ \t]INTPTR_MIN[ \t]INT32_MIN\n\
1391 #define[ \t]INTPTR_MAX[ \t]INT32_MAX\n\
1392 #define[ \t]UINTPTR_MAX[ \t]UINT32_MAX";
1394 #define    AIX_STDINT_2_TEST_CT  1
1395 static tTestDesc aAix_Stdint_2Tests[] = {
1396   { TT_EGREP,    zAix_Stdint_2Select0, (regex_t*)NULL }, };
1399  *  Fix Command Arguments for Aix_Stdint_2
1400  */
1401 static const char* apzAix_Stdint_2Patch[] = {
1402     "format",
1403     "#define INTPTR_MIN\t(-INTPTR_MAX-1)\n\
1404 #define INTPTR_MAX\t9223372036854775807L\n\
1405 #define UINTPTR_MAX\t18446744073709551615UL\n\
1406 #else\n\
1407 #define INTPTR_MIN\t(-INTPTR_MAX-1)\n\
1408 #define INTPTR_MAX\t2147483647L\n\
1409 #define UINTPTR_MAX\t4294967295UL",
1410     (char*)NULL };
1412 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1414  *  Description of Aix_Stdint_3 fix
1415  */
1416 tSCC zAix_Stdint_3Name[] =
1417      "aix_stdint_3";
1420  *  File name selection pattern
1421  */
1422 tSCC zAix_Stdint_3List[] =
1423   "stdint-aix.h\0stdint.h\0";
1425  *  Machine/OS name selection pattern
1426  */
1427 tSCC* apzAix_Stdint_3Machs[] = {
1428         "*-*-aix*",
1429         (const char*)NULL };
1432  *  content selection pattern - do fix if pattern found
1433  */
1434 tSCC zAix_Stdint_3Select0[] =
1435        "#define[ \t]PTRDIFF_MIN[ \t]INT64_MIN\n\
1436 #define[ \t]PTRDIFF_MAX[ \t]INT64_MAX\n\
1437 #else\n\
1438 #define[ \t]PTRDIFF_MIN[ \t]*INT32_MIN\n\
1439 #define[ \t]PTRDIFF_MAX[ \t]*INT32_MAX";
1441 #define    AIX_STDINT_3_TEST_CT  1
1442 static tTestDesc aAix_Stdint_3Tests[] = {
1443   { TT_EGREP,    zAix_Stdint_3Select0, (regex_t*)NULL }, };
1446  *  Fix Command Arguments for Aix_Stdint_3
1447  */
1448 static const char* apzAix_Stdint_3Patch[] = {
1449     "format",
1450     "#define PTRDIFF_MIN\t(-9223372036854775807L - 1)\n\
1451 #define PTRDIFF_MAX\t9223372036854775807L\n\
1452 #else\n\
1453 #define PTRDIFF_MIN\t(-2147483647L - 1)\n\
1454 #define PTRDIFF_MAX\t2147483647L",
1455     (char*)NULL };
1457 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1459  *  Description of Aix_Stdint_4 fix
1460  */
1461 tSCC zAix_Stdint_4Name[] =
1462      "aix_stdint_4";
1465  *  File name selection pattern
1466  */
1467 tSCC zAix_Stdint_4List[] =
1468   "stdint-aix.h\0stdint.h\0";
1470  *  Machine/OS name selection pattern
1471  */
1472 tSCC* apzAix_Stdint_4Machs[] = {
1473         "*-*-aix*",
1474         (const char*)NULL };
1477  *  content selection pattern - do fix if pattern found
1478  */
1479 tSCC zAix_Stdint_4Select0[] =
1480        "#define[ \t]SIZE_MAX[ \t]UINT64_MAX\n\
1481 #else\n\
1482 #define[ \t]SIZE_MAX[ \t]*UINT32_MAX";
1484 #define    AIX_STDINT_4_TEST_CT  1
1485 static tTestDesc aAix_Stdint_4Tests[] = {
1486   { TT_EGREP,    zAix_Stdint_4Select0, (regex_t*)NULL }, };
1489  *  Fix Command Arguments for Aix_Stdint_4
1490  */
1491 static const char* apzAix_Stdint_4Patch[] = {
1492     "format",
1493     "#define SIZE_MAX\t18446744073709551615UL\n\
1494 #else\n\
1495 #define SIZE_MAX\t4294967295UL",
1496     (char*)NULL };
1498 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1500  *  Description of Aix_Stdint_5 fix
1501  */
1502 tSCC zAix_Stdint_5Name[] =
1503      "aix_stdint_5";
1506  *  File name selection pattern
1507  */
1508 tSCC zAix_Stdint_5List[] =
1509   "stdint-aix.h\0stdint.h\0";
1511  *  Machine/OS name selection pattern
1512  */
1513 tSCC* apzAix_Stdint_5Machs[] = {
1514         "*-*-aix*",
1515         (const char*)NULL };
1518  *  content selection pattern - do fix if pattern found
1519  */
1520 tSCC zAix_Stdint_5Select0[] =
1521        "#define[ \t]UINT8_C\\(c\\)[ \t]__CONCAT__\\(c,U\\)\n\
1522 #define[ \t]UINT16_C\\(c\\)[ \t]__CONCAT__\\(c,U\\)";
1524 #define    AIX_STDINT_5_TEST_CT  1
1525 static tTestDesc aAix_Stdint_5Tests[] = {
1526   { TT_EGREP,    zAix_Stdint_5Select0, (regex_t*)NULL }, };
1529  *  Fix Command Arguments for Aix_Stdint_5
1530  */
1531 static const char* apzAix_Stdint_5Patch[] = {
1532     "format",
1533     "#define UINT8_C(c)\tc\n\
1534 #define UINT16_C(c)\tc",
1535     (char*)NULL };
1537 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1539  *  Description of Aix_Stdio_Inline fix
1540  */
1541 tSCC zAix_Stdio_InlineName[] =
1542      "aix_stdio_inline";
1545  *  File name selection pattern
1546  */
1547 tSCC zAix_Stdio_InlineList[] =
1548   "stdio.h\0";
1550  *  Machine/OS name selection pattern
1551  */
1552 tSCC* apzAix_Stdio_InlineMachs[] = {
1553         "*-*-aix*",
1554         (const char*)NULL };
1557  *  content selection pattern - do fix if pattern found
1558  */
1559 tSCC zAix_Stdio_InlineSelect0[] =
1560        "#ifdef __cplusplus\\\n\
1561 }\\\n\
1562 \\\n\
1563 #ifdef ferror\\\n";
1565 #define    AIX_STDIO_INLINE_TEST_CT  1
1566 static tTestDesc aAix_Stdio_InlineTests[] = {
1567   { TT_EGREP,    zAix_Stdio_InlineSelect0, (regex_t*)NULL }, };
1570  *  Fix Command Arguments for Aix_Stdio_Inline
1571  */
1572 static const char* apzAix_Stdio_InlinePatch[] = {
1573     "format",
1574     "#ifdef __cplusplus\n\
1575 }\n\
1576 #endif\n\n\
1577 #if (defined(__cplusplus) && defined(__IBMCPP__))\n\
1578 #ifdef ferror\n",
1579     (char*)NULL };
1581 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1583  *  Description of Aix_Stdlib_Malloc fix
1584  */
1585 tSCC zAix_Stdlib_MallocName[] =
1586      "aix_stdlib_malloc";
1589  *  File name selection pattern
1590  */
1591 tSCC zAix_Stdlib_MallocList[] =
1592   "stdlib.h\0";
1594  *  Machine/OS name selection pattern
1595  */
1596 tSCC* apzAix_Stdlib_MallocMachs[] = {
1597         "*-*-aix*",
1598         (const char*)NULL };
1601  *  content selection pattern - do fix if pattern found
1602  */
1603 tSCC zAix_Stdlib_MallocSelect0[] =
1604        "#define[ \t]+malloc[ \t]+__linux_malloc";
1606 #define    AIX_STDLIB_MALLOC_TEST_CT  1
1607 static tTestDesc aAix_Stdlib_MallocTests[] = {
1608   { TT_EGREP,    zAix_Stdlib_MallocSelect0, (regex_t*)NULL }, };
1611  *  Fix Command Arguments for Aix_Stdlib_Malloc
1612  */
1613 static const char* apzAix_Stdlib_MallocPatch[] = {
1614     "format",
1615     "extern void *malloc(size_t) __asm__(\"__linux_malloc\");",
1616     (char*)NULL };
1618 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1620  *  Description of Aix_Stdlib_Realloc fix
1621  */
1622 tSCC zAix_Stdlib_ReallocName[] =
1623      "aix_stdlib_realloc";
1626  *  File name selection pattern
1627  */
1628 tSCC zAix_Stdlib_ReallocList[] =
1629   "stdlib.h\0";
1631  *  Machine/OS name selection pattern
1632  */
1633 tSCC* apzAix_Stdlib_ReallocMachs[] = {
1634         "*-*-aix*",
1635         (const char*)NULL };
1638  *  content selection pattern - do fix if pattern found
1639  */
1640 tSCC zAix_Stdlib_ReallocSelect0[] =
1641        "#define[ \t]+realloc[ \t]+__linux_realloc";
1643 #define    AIX_STDLIB_REALLOC_TEST_CT  1
1644 static tTestDesc aAix_Stdlib_ReallocTests[] = {
1645   { TT_EGREP,    zAix_Stdlib_ReallocSelect0, (regex_t*)NULL }, };
1648  *  Fix Command Arguments for Aix_Stdlib_Realloc
1649  */
1650 static const char* apzAix_Stdlib_ReallocPatch[] = {
1651     "format",
1652     "extern void *realloc(void *, size_t) __asm__(\"__linux_realloc\");",
1653     (char*)NULL };
1655 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1657  *  Description of Aix_Stdlib_Calloc fix
1658  */
1659 tSCC zAix_Stdlib_CallocName[] =
1660      "aix_stdlib_calloc";
1663  *  File name selection pattern
1664  */
1665 tSCC zAix_Stdlib_CallocList[] =
1666   "stdlib.h\0";
1668  *  Machine/OS name selection pattern
1669  */
1670 tSCC* apzAix_Stdlib_CallocMachs[] = {
1671         "*-*-aix*",
1672         (const char*)NULL };
1675  *  content selection pattern - do fix if pattern found
1676  */
1677 tSCC zAix_Stdlib_CallocSelect0[] =
1678        "#define[ \t]+calloc[ \t]+__linux_calloc";
1680 #define    AIX_STDLIB_CALLOC_TEST_CT  1
1681 static tTestDesc aAix_Stdlib_CallocTests[] = {
1682   { TT_EGREP,    zAix_Stdlib_CallocSelect0, (regex_t*)NULL }, };
1685  *  Fix Command Arguments for Aix_Stdlib_Calloc
1686  */
1687 static const char* apzAix_Stdlib_CallocPatch[] = {
1688     "format",
1689     "extern void *calloc(size_t, size_t) __asm__(\"__linux_calloc\");",
1690     (char*)NULL };
1692 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1694  *  Description of Aix_Stdlib_Valloc fix
1695  */
1696 tSCC zAix_Stdlib_VallocName[] =
1697      "aix_stdlib_valloc";
1700  *  File name selection pattern
1701  */
1702 tSCC zAix_Stdlib_VallocList[] =
1703   "stdlib.h\0";
1705  *  Machine/OS name selection pattern
1706  */
1707 tSCC* apzAix_Stdlib_VallocMachs[] = {
1708         "*-*-aix*",
1709         (const char*)NULL };
1712  *  content selection pattern - do fix if pattern found
1713  */
1714 tSCC zAix_Stdlib_VallocSelect0[] =
1715        "#define[ \t]+valloc[ \t]+__linux_valloc";
1717 #define    AIX_STDLIB_VALLOC_TEST_CT  1
1718 static tTestDesc aAix_Stdlib_VallocTests[] = {
1719   { TT_EGREP,    zAix_Stdlib_VallocSelect0, (regex_t*)NULL }, };
1722  *  Fix Command Arguments for Aix_Stdlib_Valloc
1723  */
1724 static const char* apzAix_Stdlib_VallocPatch[] = {
1725     "format",
1726     "extern void *valloc(size_t) __asm__(\"__linux_valloc\");",
1727     (char*)NULL };
1729 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1731  *  Description of Aix_Stdlib_Vec_Malloc fix
1732  */
1733 tSCC zAix_Stdlib_Vec_MallocName[] =
1734      "aix_stdlib_vec_malloc";
1737  *  File name selection pattern
1738  */
1739 tSCC zAix_Stdlib_Vec_MallocList[] =
1740   "stdlib.h\0";
1742  *  Machine/OS name selection pattern
1743  */
1744 tSCC* apzAix_Stdlib_Vec_MallocMachs[] = {
1745         "*-*-aix*",
1746         (const char*)NULL };
1749  *  content selection pattern - do fix if pattern found
1750  */
1751 tSCC zAix_Stdlib_Vec_MallocSelect0[] =
1752        "#define[ \t]+malloc[ \t]+vec_malloc";
1754 #define    AIX_STDLIB_VEC_MALLOC_TEST_CT  1
1755 static tTestDesc aAix_Stdlib_Vec_MallocTests[] = {
1756   { TT_EGREP,    zAix_Stdlib_Vec_MallocSelect0, (regex_t*)NULL }, };
1759  *  Fix Command Arguments for Aix_Stdlib_Vec_Malloc
1760  */
1761 static const char* apzAix_Stdlib_Vec_MallocPatch[] = {
1762     "format",
1763     "extern void *malloc(size_t) __asm__(\"vec_malloc\");",
1764     (char*)NULL };
1766 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1768  *  Description of Aix_Stdlib_Vec_Calloc fix
1769  */
1770 tSCC zAix_Stdlib_Vec_CallocName[] =
1771      "aix_stdlib_vec_calloc";
1774  *  File name selection pattern
1775  */
1776 tSCC zAix_Stdlib_Vec_CallocList[] =
1777   "stdlib.h\0";
1779  *  Machine/OS name selection pattern
1780  */
1781 tSCC* apzAix_Stdlib_Vec_CallocMachs[] = {
1782         "*-*-aix*",
1783         (const char*)NULL };
1786  *  content selection pattern - do fix if pattern found
1787  */
1788 tSCC zAix_Stdlib_Vec_CallocSelect0[] =
1789        "#define[ \t]+calloc[ \t]+vec_calloc";
1791 #define    AIX_STDLIB_VEC_CALLOC_TEST_CT  1
1792 static tTestDesc aAix_Stdlib_Vec_CallocTests[] = {
1793   { TT_EGREP,    zAix_Stdlib_Vec_CallocSelect0, (regex_t*)NULL }, };
1796  *  Fix Command Arguments for Aix_Stdlib_Vec_Calloc
1797  */
1798 static const char* apzAix_Stdlib_Vec_CallocPatch[] = {
1799     "format",
1800     "extern void *calloc(size_t, size_t) __asm__(\"vec_calloc\");",
1801     (char*)NULL };
1803 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1805  *  Description of Aix_Strtof_Const fix
1806  */
1807 tSCC zAix_Strtof_ConstName[] =
1808      "aix_strtof_const";
1811  *  File name selection pattern
1812  */
1813 tSCC zAix_Strtof_ConstList[] =
1814   "stdlib.h\0";
1816  *  Machine/OS name selection pattern
1817  */
1818 tSCC* apzAix_Strtof_ConstMachs[] = {
1819         "*-*-aix*",
1820         (const char*)NULL };
1823  *  content selection pattern - do fix if pattern found
1824  */
1825 tSCC zAix_Strtof_ConstSelect0[] =
1826        "((extern[ \t]+)?float[ \t]+strtof)\\(char \\*, char \\*\\*\\);";
1828 #define    AIX_STRTOF_CONST_TEST_CT  1
1829 static tTestDesc aAix_Strtof_ConstTests[] = {
1830   { TT_EGREP,    zAix_Strtof_ConstSelect0, (regex_t*)NULL }, };
1833  *  Fix Command Arguments for Aix_Strtof_Const
1834  */
1835 static const char* apzAix_Strtof_ConstPatch[] = {
1836     "format",
1837     "%1(const char *, char **);",
1838     (char*)NULL };
1840 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1842  *  Description of Aix_Sysmachine fix
1843  */
1844 tSCC zAix_SysmachineName[] =
1845      "aix_sysmachine";
1848  *  File name selection pattern
1849  */
1850 tSCC zAix_SysmachineList[] =
1851   "sys/machine.h\0";
1853  *  Machine/OS name selection pattern
1854  */
1855 tSCC* apzAix_SysmachineMachs[] = {
1856         "*-*-aix*",
1857         (const char*)NULL };
1860  *  content selection pattern - do fix if pattern found
1861  */
1862 tSCC zAix_SysmachineSelect0[] =
1863        "\\\\ +\n";
1865 #define    AIX_SYSMACHINE_TEST_CT  1
1866 static tTestDesc aAix_SysmachineTests[] = {
1867   { TT_EGREP,    zAix_SysmachineSelect0, (regex_t*)NULL }, };
1870  *  Fix Command Arguments for Aix_Sysmachine
1871  */
1872 static const char* apzAix_SysmachinePatch[] = {
1873     "format",
1874     "\\\n",
1875     (char*)NULL };
1877 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1879  *  Description of Aix_Syswait_2 fix
1880  */
1881 tSCC zAix_Syswait_2Name[] =
1882      "aix_syswait_2";
1885  *  File name selection pattern
1886  */
1887 tSCC zAix_Syswait_2List[] =
1888   "sys/wait.h\0";
1890  *  Machine/OS name selection pattern
1891  */
1892 tSCC* apzAix_Syswait_2Machs[] = {
1893         "*-*-aix*",
1894         (const char*)NULL };
1897  *  content selection pattern - do fix if pattern found
1898  */
1899 tSCC zAix_Syswait_2Select0[] =
1900        "\\? (\\(\\(\\(\\(unsigned[^)]*\\)[^)]*\\) >> [^)]*\\) \\& 0xff\\) : -1)";
1902 #define    AIX_SYSWAIT_2_TEST_CT  1
1903 static tTestDesc aAix_Syswait_2Tests[] = {
1904   { TT_EGREP,    zAix_Syswait_2Select0, (regex_t*)NULL }, };
1907  *  Fix Command Arguments for Aix_Syswait_2
1908  */
1909 static const char* apzAix_Syswait_2Patch[] = {
1910     "format",
1911     "? (int)%1",
1912     (char*)NULL };
1914 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1916  *  Description of Aix_Volatile fix
1917  */
1918 tSCC zAix_VolatileName[] =
1919      "aix_volatile";
1922  *  File name selection pattern
1923  */
1924 tSCC zAix_VolatileList[] =
1925   "sys/signal.h\0";
1927  *  Machine/OS name selection pattern
1928  */
1929 tSCC* apzAix_VolatileMachs[] = {
1930         "*-*-aix*",
1931         (const char*)NULL };
1934  *  content selection pattern - do fix if pattern found
1935  */
1936 tSCC zAix_VolatileSelect0[] =
1937        "typedef volatile int sig_atomic_t";
1939 #define    AIX_VOLATILE_TEST_CT  1
1940 static tTestDesc aAix_VolatileTests[] = {
1941   { TT_EGREP,    zAix_VolatileSelect0, (regex_t*)NULL }, };
1944  *  Fix Command Arguments for Aix_Volatile
1945  */
1946 static const char* apzAix_VolatilePatch[] = {
1947     "format",
1948     "typedef int sig_atomic_t",
1949     (char*)NULL };
1951 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1953  *  Description of Aix_Unistd fix
1954  */
1955 tSCC zAix_UnistdName[] =
1956      "aix_unistd";
1959  *  File name selection pattern
1960  */
1961 tSCC zAix_UnistdList[] =
1962   "unistd.h\0";
1964  *  Machine/OS name selection pattern
1965  */
1966 tSCC* apzAix_UnistdMachs[] = {
1967         "*-*-aix*",
1968         (const char*)NULL };
1971  *  content selection pattern - do fix if pattern found
1972  */
1973 tSCC zAix_UnistdSelect0[] =
1974        "[ \t]+static[ \t]+int[ \t]+getdtablesize\\(\\)";
1976 #define    AIX_UNISTD_TEST_CT  1
1977 static tTestDesc aAix_UnistdTests[] = {
1978   { TT_EGREP,    zAix_UnistdSelect0, (regex_t*)NULL }, };
1981  *  Fix Command Arguments for Aix_Unistd
1982  */
1983 static const char* apzAix_UnistdPatch[] = {
1984     "format",
1985     "\tstatic int\t\tgetdtablesize(void)",
1986     (char*)NULL };
1988 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1990  *  Description of Alpha___Assert fix
1991  */
1992 tSCC zAlpha___AssertName[] =
1993      "alpha___assert";
1996  *  File name selection pattern
1997  */
1998 tSCC zAlpha___AssertList[] =
1999   "assert.h\0";
2001  *  Machine/OS name selection pattern
2002  */
2003 #define apzAlpha___AssertMachs (const char**)NULL
2006  *  content selection pattern - do fix if pattern found
2007  */
2008 tSCC zAlpha___AssertSelect0[] =
2009        "__assert\\(char \\*, char \\*, int\\)";
2011 #define    ALPHA___ASSERT_TEST_CT  1
2012 static tTestDesc aAlpha___AssertTests[] = {
2013   { TT_EGREP,    zAlpha___AssertSelect0, (regex_t*)NULL }, };
2016  *  Fix Command Arguments for Alpha___Assert
2017  */
2018 static const char* apzAlpha___AssertPatch[] = {
2019     "format",
2020     "__assert(const char *, const char *, int)",
2021     (char*)NULL };
2023 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2025  *  Description of Alpha_Assert fix
2026  */
2027 tSCC zAlpha_AssertName[] =
2028      "alpha_assert";
2031  *  File name selection pattern
2032  */
2033 tSCC zAlpha_AssertList[] =
2034   "assert.h\0";
2036  *  Machine/OS name selection pattern
2037  */
2038 #define apzAlpha_AssertMachs (const char**)NULL
2041  *  content selection pattern - do fix if pattern found
2042  */
2043 tSCC zAlpha_AssertSelect0[] =
2044        "(#[ \t]*define assert\\(EX\\).*)\\(\\(int\\) \\(EX\\)\\)";
2046 #define    ALPHA_ASSERT_TEST_CT  1
2047 static tTestDesc aAlpha_AssertTests[] = {
2048   { TT_EGREP,    zAlpha_AssertSelect0, (regex_t*)NULL }, };
2051  *  Fix Command Arguments for Alpha_Assert
2052  */
2053 static const char* apzAlpha_AssertPatch[] = {
2054     "format",
2055     "%1(EX)",
2056     (char*)NULL };
2058 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2060  *  Description of Alpha_Getopt fix
2061  */
2062 tSCC zAlpha_GetoptName[] =
2063      "alpha_getopt";
2066  *  File name selection pattern
2067  */
2068 tSCC zAlpha_GetoptList[] =
2069   "stdio.h\0stdlib.h\0";
2071  *  Machine/OS name selection pattern
2072  */
2073 #define apzAlpha_GetoptMachs (const char**)NULL
2076  *  content selection pattern - do fix if pattern found
2077  */
2078 tSCC zAlpha_GetoptSelect0[] =
2079        "getopt\\(int, char \\*\\[\\], *char \\*\\)";
2081 #define    ALPHA_GETOPT_TEST_CT  1
2082 static tTestDesc aAlpha_GetoptTests[] = {
2083   { TT_EGREP,    zAlpha_GetoptSelect0, (regex_t*)NULL }, };
2086  *  Fix Command Arguments for Alpha_Getopt
2087  */
2088 static const char* apzAlpha_GetoptPatch[] = {
2089     "format",
2090     "getopt(int, char *const[], const char *)",
2091     (char*)NULL };
2093 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2095  *  Description of Alpha_If_Semicolon fix
2096  */
2097 tSCC zAlpha_If_SemicolonName[] =
2098      "alpha_if_semicolon";
2101  *  File name selection pattern
2102  */
2103 tSCC zAlpha_If_SemicolonList[] =
2104   "net/if.h\0";
2106  *  Machine/OS name selection pattern
2107  */
2108 #define apzAlpha_If_SemicolonMachs (const char**)NULL
2111  *  content selection pattern - do fix if pattern found
2112  */
2113 tSCC zAlpha_If_SemicolonSelect0[] =
2114        "struct[ \t]+sockaddr[ \t]+vmif_paddr[ \t]+/\\*";
2116 #define    ALPHA_IF_SEMICOLON_TEST_CT  1
2117 static tTestDesc aAlpha_If_SemicolonTests[] = {
2118   { TT_EGREP,    zAlpha_If_SemicolonSelect0, (regex_t*)NULL }, };
2121  *  Fix Command Arguments for Alpha_If_Semicolon
2122  */
2123 static const char* apzAlpha_If_SemicolonPatch[] = {
2124     "format",
2125     "struct sockaddr vmif_paddr;\t/*",
2126     (char*)NULL };
2128 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2130  *  Description of Alpha_Parens fix
2131  */
2132 tSCC zAlpha_ParensName[] =
2133      "alpha_parens";
2136  *  File name selection pattern
2137  */
2138 tSCC zAlpha_ParensList[] =
2139   "sym.h\0";
2141  *  Machine/OS name selection pattern
2142  */
2143 #define apzAlpha_ParensMachs (const char**)NULL
2146  *  content selection pattern - do fix if pattern found
2147  */
2148 tSCC zAlpha_ParensSelect0[] =
2149        "#ifndef\\(__mips64\\)";
2151 #define    ALPHA_PARENS_TEST_CT  1
2152 static tTestDesc aAlpha_ParensTests[] = {
2153   { TT_EGREP,    zAlpha_ParensSelect0, (regex_t*)NULL }, };
2156  *  Fix Command Arguments for Alpha_Parens
2157  */
2158 static const char* apzAlpha_ParensPatch[] = {
2159     "format",
2160     "#ifndef __mips64",
2161     (char*)NULL };
2163 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2165  *  Description of Alpha_Sbrk fix
2166  */
2167 tSCC zAlpha_SbrkName[] =
2168      "alpha_sbrk";
2171  *  File name selection pattern
2172  */
2173 tSCC zAlpha_SbrkList[] =
2174   "unistd.h\0";
2176  *  Machine/OS name selection pattern
2177  */
2178 #define apzAlpha_SbrkMachs (const char**)NULL
2181  *  content selection pattern - do fix if pattern found
2182  */
2183 tSCC zAlpha_SbrkSelect0[] =
2184        "char[ \t]*\\*[\t ]*sbrk[ \t]*\\(";
2186 #define    ALPHA_SBRK_TEST_CT  1
2187 static tTestDesc aAlpha_SbrkTests[] = {
2188   { TT_EGREP,    zAlpha_SbrkSelect0, (regex_t*)NULL }, };
2191  *  Fix Command Arguments for Alpha_Sbrk
2192  */
2193 static const char* apzAlpha_SbrkPatch[] = {
2194     "format",
2195     "void *sbrk(",
2196     (char*)NULL };
2198 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2200  *  Description of Avoid_Bool_Define fix
2201  */
2202 tSCC zAvoid_Bool_DefineName[] =
2203      "avoid_bool_define";
2206  *  File name selection pattern
2207  */
2208 tSCC zAvoid_Bool_DefineList[] =
2209   "curses.h\0curses_colr/curses.h\0term.h\0tinfo.h\0";
2211  *  Machine/OS name selection pattern
2212  */
2213 #define apzAvoid_Bool_DefineMachs (const char**)NULL
2216  *  content selection pattern - do fix if pattern found
2217  */
2218 tSCC zAvoid_Bool_DefineSelect0[] =
2219        "#[ \t]*define[ \t]+bool[ \t]";
2222  *  content bypass pattern - skip fix if pattern found
2223  */
2224 tSCC zAvoid_Bool_DefineBypass0[] =
2225        "__cplusplus";
2227 #define    AVOID_BOOL_DEFINE_TEST_CT  2
2228 static tTestDesc aAvoid_Bool_DefineTests[] = {
2229   { TT_NEGREP,   zAvoid_Bool_DefineBypass0, (regex_t*)NULL },
2230   { TT_EGREP,    zAvoid_Bool_DefineSelect0, (regex_t*)NULL }, };
2233  *  Fix Command Arguments for Avoid_Bool_Define
2234  */
2235 static const char* apzAvoid_Bool_DefinePatch[] = {
2236     "format",
2237     "#ifndef __cplusplus\n\
2238 %0\n\
2239 #endif",
2240     "^[ \t]*#[ \t]*define[ \t]+bool[ \t].*",
2241     (char*)NULL };
2243 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2245  *  Description of Avoid_Bool_Type fix
2246  */
2247 tSCC zAvoid_Bool_TypeName[] =
2248      "avoid_bool_type";
2251  *  File name selection pattern
2252  */
2253 tSCC zAvoid_Bool_TypeList[] =
2254   "curses.h\0curses_colr/curses.h\0term.h\0tinfo.h\0";
2256  *  Machine/OS name selection pattern
2257  */
2258 #define apzAvoid_Bool_TypeMachs (const char**)NULL
2261  *  content selection pattern - do fix if pattern found
2262  */
2263 tSCC zAvoid_Bool_TypeSelect0[] =
2264        "^[ \t]*typedef[ \t].*[ \t]bool[ \t]*;";
2267  *  content bypass pattern - skip fix if pattern found
2268  */
2269 tSCC zAvoid_Bool_TypeBypass0[] =
2270        "__cplusplus";
2272 #define    AVOID_BOOL_TYPE_TEST_CT  2
2273 static tTestDesc aAvoid_Bool_TypeTests[] = {
2274   { TT_NEGREP,   zAvoid_Bool_TypeBypass0, (regex_t*)NULL },
2275   { TT_EGREP,    zAvoid_Bool_TypeSelect0, (regex_t*)NULL }, };
2278  *  Fix Command Arguments for Avoid_Bool_Type
2279  */
2280 static const char* apzAvoid_Bool_TypePatch[] = {
2281     "format",
2282     "#ifndef __cplusplus\n\
2283 %0\n\
2284 #endif",
2285     (char*)NULL };
2287 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2289  *  Description of Avoid_Wchar_T_Type fix
2290  */
2291 tSCC zAvoid_Wchar_T_TypeName[] =
2292      "avoid_wchar_t_type";
2295  *  File name selection pattern
2296  */
2297 #define zAvoid_Wchar_T_TypeList (char*)NULL
2299  *  Machine/OS name selection pattern
2300  */
2301 #define apzAvoid_Wchar_T_TypeMachs (const char**)NULL
2304  *  content selection pattern - do fix if pattern found
2305  */
2306 tSCC zAvoid_Wchar_T_TypeSelect0[] =
2307        "^[ \t]*typedef[ \t].*[ \t]wchar_t[ \t]*;";
2310  *  content bypass pattern - skip fix if pattern found
2311  */
2312 tSCC zAvoid_Wchar_T_TypeBypass0[] =
2313        "__cplusplus";
2314 tSCC zAvoid_Wchar_T_TypeBypass1[] =
2315        "_LINUX_NLS_H";
2316 tSCC zAvoid_Wchar_T_TypeBypass2[] =
2317        "XFree86: xc/lib/X11/Xlib\\.h";
2319 #define    AVOID_WCHAR_T_TYPE_TEST_CT  4
2320 static tTestDesc aAvoid_Wchar_T_TypeTests[] = {
2321   { TT_NEGREP,   zAvoid_Wchar_T_TypeBypass0, (regex_t*)NULL },
2322   { TT_NEGREP,   zAvoid_Wchar_T_TypeBypass1, (regex_t*)NULL },
2323   { TT_NEGREP,   zAvoid_Wchar_T_TypeBypass2, (regex_t*)NULL },
2324   { TT_EGREP,    zAvoid_Wchar_T_TypeSelect0, (regex_t*)NULL }, };
2327  *  Fix Command Arguments for Avoid_Wchar_T_Type
2328  */
2329 static const char* apzAvoid_Wchar_T_TypePatch[] = {
2330     "format",
2331     "#ifndef __cplusplus\n\
2332 %0\n\
2333 #endif",
2334     (char*)NULL };
2336 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2338  *  Description of Bad_Struct_Term fix
2339  */
2340 tSCC zBad_Struct_TermName[] =
2341      "bad_struct_term";
2344  *  File name selection pattern
2345  */
2346 tSCC zBad_Struct_TermList[] =
2347   "curses.h\0";
2349  *  Machine/OS name selection pattern
2350  */
2351 #define apzBad_Struct_TermMachs (const char**)NULL
2354  *  content selection pattern - do fix if pattern found
2355  */
2356 tSCC zBad_Struct_TermSelect0[] =
2357        "^[ \t]*typedef[ \t]+struct[ \t]+term[ \t]*;";
2359 #define    BAD_STRUCT_TERM_TEST_CT  1
2360 static tTestDesc aBad_Struct_TermTests[] = {
2361   { TT_EGREP,    zBad_Struct_TermSelect0, (regex_t*)NULL }, };
2364  *  Fix Command Arguments for Bad_Struct_Term
2365  */
2366 static const char* apzBad_Struct_TermPatch[] = {
2367     "format",
2368     "struct term;",
2369     (char*)NULL };
2371 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2373  *  Description of Badquote fix
2374  */
2375 tSCC zBadquoteName[] =
2376      "badquote";
2379  *  File name selection pattern
2380  */
2381 tSCC zBadquoteList[] =
2382   "sundev/vuid_event.h\0";
2384  *  Machine/OS name selection pattern
2385  */
2386 #define apzBadquoteMachs (const char**)NULL
2389  *  content selection pattern - do fix if pattern found
2390  */
2391 tSCC zBadquoteSelect0[] =
2392        "doesn't";
2394 #define    BADQUOTE_TEST_CT  1
2395 static tTestDesc aBadquoteTests[] = {
2396   { TT_EGREP,    zBadquoteSelect0, (regex_t*)NULL }, };
2399  *  Fix Command Arguments for Badquote
2400  */
2401 static const char* apzBadquotePatch[] = {
2402     "format",
2403     "does not",
2404     (char*)NULL };
2406 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2408  *  Description of Broken_Assert_Stdio fix
2409  */
2410 tSCC zBroken_Assert_StdioName[] =
2411      "broken_assert_stdio";
2414  *  File name selection pattern
2415  */
2416 tSCC zBroken_Assert_StdioList[] =
2417   "assert.h\0";
2419  *  Machine/OS name selection pattern
2420  */
2421 #define apzBroken_Assert_StdioMachs (const char**)NULL
2424  *  content selection pattern - do fix if pattern found
2425  */
2426 tSCC zBroken_Assert_StdioSelect0[] =
2427        "stderr";
2430  *  content bypass pattern - skip fix if pattern found
2431  */
2432 tSCC zBroken_Assert_StdioBypass0[] =
2433        "include.*stdio\\.h";
2435 #define    BROKEN_ASSERT_STDIO_TEST_CT  2
2436 static tTestDesc aBroken_Assert_StdioTests[] = {
2437   { TT_NEGREP,   zBroken_Assert_StdioBypass0, (regex_t*)NULL },
2438   { TT_EGREP,    zBroken_Assert_StdioSelect0, (regex_t*)NULL }, };
2441  *  Fix Command Arguments for Broken_Assert_Stdio
2442  */
2443 static const char* apzBroken_Assert_StdioPatch[] = {
2444     "wrap",
2445     "#include <stdio.h>\n",
2446     (char*)NULL };
2448 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2450  *  Description of Broken_Assert_Stdlib fix
2451  */
2452 tSCC zBroken_Assert_StdlibName[] =
2453      "broken_assert_stdlib";
2456  *  File name selection pattern
2457  */
2458 tSCC zBroken_Assert_StdlibList[] =
2459   "assert.h\0";
2461  *  Machine/OS name selection pattern
2462  */
2463 #define apzBroken_Assert_StdlibMachs (const char**)NULL
2466  *  content selection pattern - do fix if pattern found
2467  */
2468 tSCC zBroken_Assert_StdlibSelect0[] =
2469        "exit *\\(|abort *\\(";
2472  *  content bypass pattern - skip fix if pattern found
2473  */
2474 tSCC zBroken_Assert_StdlibBypass0[] =
2475        "include.*stdlib\\.h";
2477 #define    BROKEN_ASSERT_STDLIB_TEST_CT  2
2478 static tTestDesc aBroken_Assert_StdlibTests[] = {
2479   { TT_NEGREP,   zBroken_Assert_StdlibBypass0, (regex_t*)NULL },
2480   { TT_EGREP,    zBroken_Assert_StdlibSelect0, (regex_t*)NULL }, };
2483  *  Fix Command Arguments for Broken_Assert_Stdlib
2484  */
2485 static const char* apzBroken_Assert_StdlibPatch[] = {
2486     "wrap",
2487     "#ifdef __cplusplus\n\
2488 #include <stdlib.h>\n\
2489 #endif\n",
2490     (char*)NULL };
2492 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2494  *  Description of Broken_Cabs fix
2495  */
2496 tSCC zBroken_CabsName[] =
2497      "broken_cabs";
2500  *  File name selection pattern
2501  */
2502 tSCC zBroken_CabsList[] =
2503   "math.h\0architecture/*/math.h\0";
2505  *  Machine/OS name selection pattern
2506  */
2507 #define apzBroken_CabsMachs (const char**)NULL
2510  *  content selection pattern - do fix if pattern found
2511  */
2512 tSCC zBroken_CabsSelect0[] =
2513        "^extern[ \t]+double[ \t]+cabs";
2515 #define    BROKEN_CABS_TEST_CT  1
2516 static tTestDesc aBroken_CabsTests[] = {
2517   { TT_EGREP,    zBroken_CabsSelect0, (regex_t*)NULL }, };
2520  *  Fix Command Arguments for Broken_Cabs
2521  */
2522 static const char* apzBroken_CabsPatch[] = { sed_cmd_z,
2523     "-e", "s/^extern[ \t]*double[ \t]*cabs[ \t]*([^\\)]*);//",
2524     "-e", "s/^extern[ \t]*long[ \t]*double[ \t]*cabsl[ \t]*([^\\)]*);//",
2525     (char*)NULL };
2527 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2529  *  Description of Broken_Nan fix
2530  */
2531 tSCC zBroken_NanName[] =
2532      "broken_nan";
2535  *  File name selection pattern
2536  */
2537 tSCC zBroken_NanList[] =
2538   "architecture/ppc/math.h\0architecture/*/math.h\0";
2540  *  Machine/OS name selection pattern
2541  */
2542 #define apzBroken_NanMachs (const char**)NULL
2545  *  content selection pattern - do fix if pattern found
2546  */
2547 tSCC zBroken_NanSelect0[] =
2548        "#if defined\\(__APPLE_CC__\\) && \\(__APPLE_CC__ >= 1345\\)";
2551  *  content bypass pattern - skip fix if pattern found
2552  */
2553 tSCC zBroken_NanBypass0[] =
2554        "powl";
2556 #define    BROKEN_NAN_TEST_CT  2
2557 static tTestDesc aBroken_NanTests[] = {
2558   { TT_NEGREP,   zBroken_NanBypass0, (regex_t*)NULL },
2559   { TT_EGREP,    zBroken_NanSelect0, (regex_t*)NULL }, };
2562  *  Fix Command Arguments for Broken_Nan
2563  */
2564 static const char* apzBroken_NanPatch[] = {
2565     "format",
2566     "#if 1",
2567     (char*)NULL };
2569 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2571  *  Description of Bsd_Stdio_Attrs_Conflict fix
2572  */
2573 tSCC zBsd_Stdio_Attrs_ConflictName[] =
2574      "bsd_stdio_attrs_conflict";
2577  *  File name selection pattern
2578  */
2579 tSCC zBsd_Stdio_Attrs_ConflictList[] =
2580   "stdio.h\0";
2582  *  Machine/OS name selection pattern
2583  */
2584 tSCC* apzBsd_Stdio_Attrs_ConflictMachs[] = {
2585         "*-*-*bsd*",
2586         "*-*-*darwin*",
2587         (const char*)NULL };
2590  *  content selection pattern - do fix if pattern found
2591  */
2592 tSCC zBsd_Stdio_Attrs_ConflictSelect0[] =
2593        "^#define[ \t]*vfscanf[ \t]*__svfscanf[ \t]*$";
2595 #define    BSD_STDIO_ATTRS_CONFLICT_TEST_CT  1
2596 static tTestDesc aBsd_Stdio_Attrs_ConflictTests[] = {
2597   { TT_EGREP,    zBsd_Stdio_Attrs_ConflictSelect0, (regex_t*)NULL }, };
2600  *  Fix Command Arguments for Bsd_Stdio_Attrs_Conflict
2601  */
2602 static const char* apzBsd_Stdio_Attrs_ConflictPatch[] = {
2603     "format",
2604     "#define _BSD_STRING(_BSD_X) _BSD_STRINGX(_BSD_X)\n\
2605 #define _BSD_STRINGX(_BSD_X) #_BSD_X\n\
2606 int vfscanf(FILE *, const char *, __builtin_va_list) __asm__ (_BSD_STRING(__USER_LABEL_PREFIX__) \"__svfscanf\");",
2607     (char*)NULL };
2609 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2611  *  Description of Ctrl_Quotes_Def fix
2612  */
2613 tSCC zCtrl_Quotes_DefName[] =
2614      "ctrl_quotes_def";
2617  *  File name selection pattern
2618  */
2619 #define zCtrl_Quotes_DefList (char*)NULL
2621  *  Machine/OS name selection pattern
2622  */
2623 #define apzCtrl_Quotes_DefMachs (const char**)NULL
2626  *  content selection pattern - do fix if pattern found
2627  */
2628 tSCC zCtrl_Quotes_DefSelect0[] =
2629        "define[ \t]+[A-Z0-9_]+CTRL\\([a-zA-Z][,)]";
2631 #define    CTRL_QUOTES_DEF_TEST_CT  1
2632 static tTestDesc aCtrl_Quotes_DefTests[] = {
2633   { TT_EGREP,    zCtrl_Quotes_DefSelect0, (regex_t*)NULL }, };
2636  *  Fix Command Arguments for Ctrl_Quotes_Def
2637  */
2638 static const char* apzCtrl_Quotes_DefPatch[] = {
2639     "char_macro_def",
2640     "CTRL",
2641     (char*)NULL };
2643 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2645  *  Description of Ctrl_Quotes_Use fix
2646  */
2647 tSCC zCtrl_Quotes_UseName[] =
2648      "ctrl_quotes_use";
2651  *  File name selection pattern
2652  */
2653 #define zCtrl_Quotes_UseList (char*)NULL
2655  *  Machine/OS name selection pattern
2656  */
2657 #define apzCtrl_Quotes_UseMachs (const char**)NULL
2660  *  content selection pattern - do fix if pattern found
2661  */
2662 tSCC zCtrl_Quotes_UseSelect0[] =
2663        "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+CTRL[ \t]*\\( *[^,']";
2665 #define    CTRL_QUOTES_USE_TEST_CT  1
2666 static tTestDesc aCtrl_Quotes_UseTests[] = {
2667   { TT_EGREP,    zCtrl_Quotes_UseSelect0, (regex_t*)NULL }, };
2670  *  Fix Command Arguments for Ctrl_Quotes_Use
2671  */
2672 static const char* apzCtrl_Quotes_UsePatch[] = {
2673     "char_macro_use",
2674     "CTRL",
2675     (char*)NULL };
2677 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2679  *  Description of Cxx_Unready fix
2680  */
2681 tSCC zCxx_UnreadyName[] =
2682      "cxx_unready";
2685  *  File name selection pattern
2686  */
2687 tSCC zCxx_UnreadyList[] =
2688   "sys/mman.h\0rpc/types.h\0";
2690  *  Machine/OS name selection pattern
2691  */
2692 #define apzCxx_UnreadyMachs (const char**)NULL
2695  *  content selection pattern - do fix if pattern found
2696  */
2697 tSCC zCxx_UnreadySelect0[] =
2698        "[^#]+malloc.*;";
2701  *  content bypass pattern - skip fix if pattern found
2702  */
2703 tSCC zCxx_UnreadyBypass0[] =
2704        "\"C\"|__BEGIN_DECLS";
2706 #define    CXX_UNREADY_TEST_CT  2
2707 static tTestDesc aCxx_UnreadyTests[] = {
2708   { TT_NEGREP,   zCxx_UnreadyBypass0, (regex_t*)NULL },
2709   { TT_EGREP,    zCxx_UnreadySelect0, (regex_t*)NULL }, };
2712  *  Fix Command Arguments for Cxx_Unready
2713  */
2714 static const char* apzCxx_UnreadyPatch[] = {
2715     "wrap",
2716     "#ifdef __cplusplus\n\
2717 extern \"C\" {\n\
2718 #endif\n",
2719     "#ifdef __cplusplus\n\
2720 }\n\
2721 #endif\n",
2722     (char*)NULL };
2724 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2726  *  Description of Darwin_Availabilityinternal fix
2727  */
2728 tSCC zDarwin_AvailabilityinternalName[] =
2729      "darwin_availabilityinternal";
2732  *  File name selection pattern
2733  */
2734 tSCC zDarwin_AvailabilityinternalList[] =
2735   "AvailabilityInternal.h\0";
2737  *  Machine/OS name selection pattern
2738  */
2739 tSCC* apzDarwin_AvailabilityinternalMachs[] = {
2740         "*-*-darwin*",
2741         (const char*)NULL };
2744  *  content selection pattern - do fix if pattern found
2745  */
2746 tSCC zDarwin_AvailabilityinternalSelect0[] =
2747        "#define[ \t]+(__API_[ADU]\\([^)]*\\)).*";
2749 #define    DARWIN_AVAILABILITYINTERNAL_TEST_CT  1
2750 static tTestDesc aDarwin_AvailabilityinternalTests[] = {
2751   { TT_EGREP,    zDarwin_AvailabilityinternalSelect0, (regex_t*)NULL }, };
2754  *  Fix Command Arguments for Darwin_Availabilityinternal
2755  */
2756 static const char* apzDarwin_AvailabilityinternalPatch[] = {
2757     "format",
2758     "#if defined(__has_attribute)\n\
2759   #if __has_attribute(availability)\n\
2760 %0\n\
2761   #else\n\
2762     #define %1\n\
2763   #endif\n\
2764 #else\n\
2765     #define %1\n\
2766 #endif",
2767     (char*)NULL };
2769 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2771  *  Description of Darwin_9_Long_Double_Funcs_2 fix
2772  */
2773 tSCC zDarwin_9_Long_Double_Funcs_2Name[] =
2774      "darwin_9_long_double_funcs_2";
2777  *  File name selection pattern
2778  */
2779 tSCC zDarwin_9_Long_Double_Funcs_2List[] =
2780   "math.h\0";
2782  *  Machine/OS name selection pattern
2783  */
2784 tSCC* apzDarwin_9_Long_Double_Funcs_2Machs[] = {
2785         "*-*-darwin*",
2786         (const char*)NULL };
2789  *  content selection pattern - do fix if pattern found
2790  */
2791 tSCC zDarwin_9_Long_Double_Funcs_2Select0[] =
2792        "#include[ \\t]+\\\"";
2794 #define    DARWIN_9_LONG_DOUBLE_FUNCS_2_TEST_CT  1
2795 static tTestDesc aDarwin_9_Long_Double_Funcs_2Tests[] = {
2796   { TT_EGREP,    zDarwin_9_Long_Double_Funcs_2Select0, (regex_t*)NULL }, };
2799  *  Fix Command Arguments for Darwin_9_Long_Double_Funcs_2
2800  */
2801 static const char* apzDarwin_9_Long_Double_Funcs_2Patch[] = {
2802     "format",
2803     "%1<%2.h>",
2804     "([ \\t]*#[ \\t]*include[ \\t]+)\"([a-z0-9/]+)\\.h\"",
2805     (char*)NULL };
2807 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2809  *  Description of Darwin_Externc fix
2810  */
2811 tSCC zDarwin_ExterncName[] =
2812      "darwin_externc";
2815  *  File name selection pattern
2816  */
2817 tSCC zDarwin_ExterncList[] =
2818   "mach-o/swap.h\0mach/mach_time.h\0mach/mach_traps.h\0mach/message.h\0mach/mig.h\0mach/semaphore.h\0";
2820  *  Machine/OS name selection pattern
2821  */
2822 tSCC* apzDarwin_ExterncMachs[] = {
2823         "*-*-darwin*",
2824         (const char*)NULL };
2827  *  content bypass pattern - skip fix if pattern found
2828  */
2829 tSCC zDarwin_ExterncBypass0[] =
2830        "extern \"C\"";
2831 tSCC zDarwin_ExterncBypass1[] =
2832        "__BEGIN_DECLS";
2834 #define    DARWIN_EXTERNC_TEST_CT  2
2835 static tTestDesc aDarwin_ExterncTests[] = {
2836   { TT_NEGREP,   zDarwin_ExterncBypass0, (regex_t*)NULL },
2837   { TT_NEGREP,   zDarwin_ExterncBypass1, (regex_t*)NULL }, };
2840  *  Fix Command Arguments for Darwin_Externc
2841  */
2842 static const char* apzDarwin_ExterncPatch[] = {
2843     "wrap",
2844     "#ifdef __cplusplus\n\
2845 extern \"C\" {\n\
2846 #endif\n",
2847     "#ifdef __cplusplus\n\
2848 }\n\
2849 #endif\n",
2850     (char*)NULL };
2852 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2854  *  Description of Darwin_Gcc4_Breakage fix
2855  */
2856 tSCC zDarwin_Gcc4_BreakageName[] =
2857      "darwin_gcc4_breakage";
2860  *  File name selection pattern
2861  */
2862 tSCC zDarwin_Gcc4_BreakageList[] =
2863   "AvailabilityMacros.h\0";
2865  *  Machine/OS name selection pattern
2866  */
2867 tSCC* apzDarwin_Gcc4_BreakageMachs[] = {
2868         "*-*-darwin*",
2869         (const char*)NULL };
2872  *  content selection pattern - do fix if pattern found
2873  */
2874 tSCC zDarwin_Gcc4_BreakageSelect0[] =
2875        "\\(__GNUC__ >= 3\\) && \\(__GNUC_MINOR__ >= 1\\)";
2877 #define    DARWIN_GCC4_BREAKAGE_TEST_CT  1
2878 static tTestDesc aDarwin_Gcc4_BreakageTests[] = {
2879   { TT_EGREP,    zDarwin_Gcc4_BreakageSelect0, (regex_t*)NULL }, };
2882  *  Fix Command Arguments for Darwin_Gcc4_Breakage
2883  */
2884 static const char* apzDarwin_Gcc4_BreakagePatch[] = {
2885     "format",
2886     "((__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))",
2887     (char*)NULL };
2889 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2891  *  Description of Darwin_Ll_Funcs_Avail fix
2892  */
2893 tSCC zDarwin_Ll_Funcs_AvailName[] =
2894      "darwin_ll_funcs_avail";
2897  *  File name selection pattern
2898  */
2899 tSCC zDarwin_Ll_Funcs_AvailList[] =
2900   "architecture/ppc/math.h\0architecture/i386/math.h\0";
2902  *  Machine/OS name selection pattern
2903  */
2904 tSCC* apzDarwin_Ll_Funcs_AvailMachs[] = {
2905         "*-*-darwin*",
2906         (const char*)NULL };
2909  *  content selection pattern - do fix if pattern found
2910  */
2911 tSCC zDarwin_Ll_Funcs_AvailSelect0[] =
2912        "#if[^_]*__STDC_VERSION__[^_]*__STDC_VERSION__[^1]*199901L[^_]*__STRICT_ANSI__[^_]*__GNUC__[^)]*";
2914 #define    DARWIN_LL_FUNCS_AVAIL_TEST_CT  1
2915 static tTestDesc aDarwin_Ll_Funcs_AvailTests[] = {
2916   { TT_EGREP,    zDarwin_Ll_Funcs_AvailSelect0, (regex_t*)NULL }, };
2919  *  Fix Command Arguments for Darwin_Ll_Funcs_Avail
2920  */
2921 static const char* apzDarwin_Ll_Funcs_AvailPatch[] = { sed_cmd_z,
2922     "-e", "s/#if[^_]*__STDC_VERSION__[^_]*__STDC_VERSION__[^_]*199901L[^_]*__STRICT_ANSI__[^_]*__GNUC__[^\\)]*)/#if !(__DARWIN_NO_LONG_LONG)/",
2923     (char*)NULL };
2925 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2927  *  Description of Darwin_Longjmp_Noreturn fix
2928  */
2929 tSCC zDarwin_Longjmp_NoreturnName[] =
2930      "darwin_longjmp_noreturn";
2933  *  File name selection pattern
2934  */
2935 tSCC zDarwin_Longjmp_NoreturnList[] =
2936   "i386/setjmp.h\0";
2938  *  Machine/OS name selection pattern
2939  */
2940 tSCC* apzDarwin_Longjmp_NoreturnMachs[] = {
2941         "*-*-darwin*",
2942         (const char*)NULL };
2945  *  content selection pattern - do fix if pattern found
2946  */
2947 tSCC zDarwin_Longjmp_NoreturnSelect0[] =
2948        "(.*longjmp\\(.*jmp_buf.*[^)]+\\));";
2951  *  content bypass pattern - skip fix if pattern found
2952  */
2953 tSCC zDarwin_Longjmp_NoreturnBypass0[] =
2954        "__dead2";
2956 #define    DARWIN_LONGJMP_NORETURN_TEST_CT  2
2957 static tTestDesc aDarwin_Longjmp_NoreturnTests[] = {
2958   { TT_NEGREP,   zDarwin_Longjmp_NoreturnBypass0, (regex_t*)NULL },
2959   { TT_EGREP,    zDarwin_Longjmp_NoreturnSelect0, (regex_t*)NULL }, };
2962  *  Fix Command Arguments for Darwin_Longjmp_Noreturn
2963  */
2964 static const char* apzDarwin_Longjmp_NoreturnPatch[] = {
2965     "format",
2966     "%1 __attribute__ ((__noreturn__));",
2967     (char*)NULL };
2969 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2971  *  Description of Darwin_Os_Trace_1 fix
2972  */
2973 tSCC zDarwin_Os_Trace_1Name[] =
2974      "darwin_os_trace_1";
2977  *  File name selection pattern
2978  */
2979 tSCC zDarwin_Os_Trace_1List[] =
2980   "os/trace.h\0";
2982  *  Machine/OS name selection pattern
2983  */
2984 tSCC* apzDarwin_Os_Trace_1Machs[] = {
2985         "*-*-darwin*",
2986         (const char*)NULL };
2989  *  content selection pattern - do fix if pattern found
2990  */
2991 tSCC zDarwin_Os_Trace_1Select0[] =
2992        "^(_os_trace_verify_printf.*) (__attribute__.*)";
2994 #define    DARWIN_OS_TRACE_1_TEST_CT  1
2995 static tTestDesc aDarwin_Os_Trace_1Tests[] = {
2996   { TT_EGREP,    zDarwin_Os_Trace_1Select0, (regex_t*)NULL }, };
2999  *  Fix Command Arguments for Darwin_Os_Trace_1
3000  */
3001 static const char* apzDarwin_Os_Trace_1Patch[] = {
3002     "format",
3003     "%1",
3004     (char*)NULL };
3006 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3008  *  Description of Darwin_Os_Trace_2 fix
3009  */
3010 tSCC zDarwin_Os_Trace_2Name[] =
3011      "darwin_os_trace_2";
3014  *  File name selection pattern
3015  */
3016 tSCC zDarwin_Os_Trace_2List[] =
3017   "os/trace.h\0";
3019  *  Machine/OS name selection pattern
3020  */
3021 tSCC* apzDarwin_Os_Trace_2Machs[] = {
3022         "*-*-darwin*",
3023         (const char*)NULL };
3026  *  content selection pattern - do fix if pattern found
3027  */
3028 tSCC zDarwin_Os_Trace_2Select0[] =
3029        "typedef.*\\^os_trace_payload_t.*";
3031 #define    DARWIN_OS_TRACE_2_TEST_CT  1
3032 static tTestDesc aDarwin_Os_Trace_2Tests[] = {
3033   { TT_EGREP,    zDarwin_Os_Trace_2Select0, (regex_t*)NULL }, };
3036  *  Fix Command Arguments for Darwin_Os_Trace_2
3037  */
3038 static const char* apzDarwin_Os_Trace_2Patch[] = {
3039     "format",
3040     "#if __BLOCKS__\n\
3041 %0\n\
3042 #endif",
3043     (char*)NULL };
3045 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3047  *  Description of Darwin_Os_Trace_3 fix
3048  */
3049 tSCC zDarwin_Os_Trace_3Name[] =
3050      "darwin_os_trace_3";
3053  *  File name selection pattern
3054  */
3055 tSCC zDarwin_Os_Trace_3List[] =
3056   "os/trace.h\0";
3058  *  Machine/OS name selection pattern
3059  */
3060 tSCC* apzDarwin_Os_Trace_3Machs[] = {
3061         "*-*-darwin*",
3062         (const char*)NULL };
3065  *  content selection pattern - do fix if pattern found
3066  */
3067 tSCC zDarwin_Os_Trace_3Select0[] =
3068        "__(API|OSX)_.*\n\
3069 OS_EXPORT.*\n\
3070 .*\n\
3071 _os_trace.*os_trace_payload_t payload);";
3073 #define    DARWIN_OS_TRACE_3_TEST_CT  1
3074 static tTestDesc aDarwin_Os_Trace_3Tests[] = {
3075   { TT_EGREP,    zDarwin_Os_Trace_3Select0, (regex_t*)NULL }, };
3078  *  Fix Command Arguments for Darwin_Os_Trace_3
3079  */
3080 static const char* apzDarwin_Os_Trace_3Patch[] = {
3081     "format",
3082     "#if __BLOCKS__\n\
3083 %0\n\
3084 #endif",
3085     (char*)NULL };
3087 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3089  *  Description of Darwin_Os_Base_1 fix
3090  */
3091 tSCC zDarwin_Os_Base_1Name[] =
3092      "darwin_os_base_1";
3095  *  File name selection pattern
3096  */
3097 tSCC zDarwin_Os_Base_1List[] =
3098   "os/base.h\0";
3100  *  Machine/OS name selection pattern
3101  */
3102 tSCC* apzDarwin_Os_Base_1Machs[] = {
3103         "*-*-darwin*",
3104         (const char*)NULL };
3107  *  content selection pattern - do fix if pattern found
3108  */
3109 tSCC zDarwin_Os_Base_1Select0[] =
3110        "#define __has_attribute.*\n\
3111 #endif";
3113 #define    DARWIN_OS_BASE_1_TEST_CT  1
3114 static tTestDesc aDarwin_Os_Base_1Tests[] = {
3115   { TT_EGREP,    zDarwin_Os_Base_1Select0, (regex_t*)NULL }, };
3118  *  Fix Command Arguments for Darwin_Os_Base_1
3119  */
3120 static const char* apzDarwin_Os_Base_1Patch[] = {
3121     "format",
3122     "%0\n\
3123 #ifndef __has_extension\n\
3124 #define __has_extension(x) 0\n\
3125 #endif",
3126     (char*)NULL };
3128 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3130  *  Description of Darwin_Dispatch_Object_1 fix
3131  */
3132 tSCC zDarwin_Dispatch_Object_1Name[] =
3133      "darwin_dispatch_object_1";
3136  *  File name selection pattern
3137  */
3138 tSCC zDarwin_Dispatch_Object_1List[] =
3139   "dispatch/object.h\0";
3141  *  Machine/OS name selection pattern
3142  */
3143 tSCC* apzDarwin_Dispatch_Object_1Machs[] = {
3144         "*-*-darwin*",
3145         (const char*)NULL };
3148  *  content selection pattern - do fix if pattern found
3149  */
3150 tSCC zDarwin_Dispatch_Object_1Select0[] =
3151        "typedef void.*\\^dispatch_block_t.*";
3153 #define    DARWIN_DISPATCH_OBJECT_1_TEST_CT  1
3154 static tTestDesc aDarwin_Dispatch_Object_1Tests[] = {
3155   { TT_EGREP,    zDarwin_Dispatch_Object_1Select0, (regex_t*)NULL }, };
3158  *  Fix Command Arguments for Darwin_Dispatch_Object_1
3159  */
3160 static const char* apzDarwin_Dispatch_Object_1Patch[] = {
3161     "format",
3162     "#if __BLOCKS__\n\
3163 %0\n\
3164 #endif",
3165     (char*)NULL };
3167 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3169  *  Description of Darwin_Private_Extern fix
3170  */
3171 tSCC zDarwin_Private_ExternName[] =
3172      "darwin_private_extern";
3175  *  File name selection pattern
3176  */
3177 tSCC zDarwin_Private_ExternList[] =
3178   "mach-o/dyld.h\0";
3180  *  Machine/OS name selection pattern
3181  */
3182 tSCC* apzDarwin_Private_ExternMachs[] = {
3183         "*-*-darwin*",
3184         (const char*)NULL };
3187  *  content selection pattern - do fix if pattern found
3188  */
3189 tSCC zDarwin_Private_ExternSelect0[] =
3190        "__private_extern__ [a-z_]+ _dyld_";
3192 #define    DARWIN_PRIVATE_EXTERN_TEST_CT  1
3193 static tTestDesc aDarwin_Private_ExternTests[] = {
3194   { TT_EGREP,    zDarwin_Private_ExternSelect0, (regex_t*)NULL }, };
3197  *  Fix Command Arguments for Darwin_Private_Extern
3198  */
3199 static const char* apzDarwin_Private_ExternPatch[] = {
3200     "format",
3201     "extern",
3202     "__private_extern__",
3203     (char*)NULL };
3205 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3207  *  Description of Darwin_Stdint_1 fix
3208  */
3209 tSCC zDarwin_Stdint_1Name[] =
3210      "darwin_stdint_1";
3213  *  File name selection pattern
3214  */
3215 tSCC zDarwin_Stdint_1List[] =
3216   "stdint-darwin.h\0stdint.h\0";
3218  *  Machine/OS name selection pattern
3219  */
3220 tSCC* apzDarwin_Stdint_1Machs[] = {
3221         "*-*-darwin*",
3222         (const char*)NULL };
3225  *  content selection pattern - do fix if pattern found
3226  */
3227 tSCC zDarwin_Stdint_1Select0[] =
3228        "#define UINT8_C\\(v\\)[ \t]+\\(v ## U\\)\n\
3229 #define UINT16_C\\(v\\)[ \t]+\\(v ## U\\)";
3231 #define    DARWIN_STDINT_1_TEST_CT  1
3232 static tTestDesc aDarwin_Stdint_1Tests[] = {
3233   { TT_EGREP,    zDarwin_Stdint_1Select0, (regex_t*)NULL }, };
3236  *  Fix Command Arguments for Darwin_Stdint_1
3237  */
3238 static const char* apzDarwin_Stdint_1Patch[] = {
3239     "format",
3240     "#define UINT8_C(v)\tv\n\
3241 #define UINT16_C(v)\tv",
3242     (char*)NULL };
3244 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3246  *  Description of Darwin_Stdint_2 fix
3247  */
3248 tSCC zDarwin_Stdint_2Name[] =
3249      "darwin_stdint_2";
3252  *  File name selection pattern
3253  */
3254 tSCC zDarwin_Stdint_2List[] =
3255   "stdint-darwin.h\0stdint.h\0";
3257  *  Machine/OS name selection pattern
3258  */
3259 tSCC* apzDarwin_Stdint_2Machs[] = {
3260         "*-*-darwin*",
3261         (const char*)NULL };
3264  *  content selection pattern - do fix if pattern found
3265  */
3266 tSCC zDarwin_Stdint_2Select0[] =
3267        "#if __WORDSIZE == 64\n\
3268 #define INTPTR_MIN[ \t]+INT64_MIN\n\
3269 #define INTPTR_MAX[ \t]+INT64_MAX\n\
3270 #else\n\
3271 #define INTPTR_MIN[ \t]+INT32_MIN\n\
3272 #define INTPTR_MAX[ \t]+INT32_MAX\n\
3273 #endif";
3275 #define    DARWIN_STDINT_2_TEST_CT  1
3276 static tTestDesc aDarwin_Stdint_2Tests[] = {
3277   { TT_EGREP,    zDarwin_Stdint_2Select0, (regex_t*)NULL }, };
3280  *  Fix Command Arguments for Darwin_Stdint_2
3281  */
3282 static const char* apzDarwin_Stdint_2Patch[] = {
3283     "format",
3284     "#if __WORDSIZE == 64\n\
3285 #define INTPTR_MAX 9223372036854775807L\n\
3286 #define INTPTR_MIN (-INTPTR_MAX-1)\n\
3287 #else\n\
3288 #define INTPTR_MAX 2147483647L\n\
3289 #define INTPTR_MIN (-INTPTR_MAX-1)\n\
3290 #endif",
3291     (char*)NULL };
3293 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3295  *  Description of Darwin_Stdint_3 fix
3296  */
3297 tSCC zDarwin_Stdint_3Name[] =
3298      "darwin_stdint_3";
3301  *  File name selection pattern
3302  */
3303 tSCC zDarwin_Stdint_3List[] =
3304   "stdint-darwin.h\0stdint.h\0";
3306  *  Machine/OS name selection pattern
3307  */
3308 tSCC* apzDarwin_Stdint_3Machs[] = {
3309         "*-*-darwin*",
3310         (const char*)NULL };
3313  *  content selection pattern - do fix if pattern found
3314  */
3315 tSCC zDarwin_Stdint_3Select0[] =
3316        "#if __WORDSIZE == 64\n\
3317 #define UINTPTR_MAX[ \t]+UINT64_MAX\n\
3318 #else\n\
3319 #define UINTPTR_MAX[ \t]+UINT32_MAX\n\
3320 #endif";
3322 #define    DARWIN_STDINT_3_TEST_CT  1
3323 static tTestDesc aDarwin_Stdint_3Tests[] = {
3324   { TT_EGREP,    zDarwin_Stdint_3Select0, (regex_t*)NULL }, };
3327  *  Fix Command Arguments for Darwin_Stdint_3
3328  */
3329 static const char* apzDarwin_Stdint_3Patch[] = {
3330     "format",
3331     "#if __WORDSIZE == 64\n\
3332 #define UINTPTR_MAX 18446744073709551615UL\n\
3333 #else\n\
3334 #define UINTPTR_MAX 4294967295UL\n\
3335 #endif",
3336     (char*)NULL };
3338 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3340  *  Description of Darwin_Stdint_4 fix
3341  */
3342 tSCC zDarwin_Stdint_4Name[] =
3343      "darwin_stdint_4";
3346  *  File name selection pattern
3347  */
3348 tSCC zDarwin_Stdint_4List[] =
3349   "stdint-darwin.h\0stdint.h\0";
3351  *  Machine/OS name selection pattern
3352  */
3353 tSCC* apzDarwin_Stdint_4Machs[] = {
3354         "*-*-darwin*",
3355         (const char*)NULL };
3358  *  content selection pattern - do fix if pattern found
3359  */
3360 tSCC zDarwin_Stdint_4Select0[] =
3361        "#if __WORDSIZE == 64\n\
3362 #define SIZE_MAX[ \t]+UINT64_MAX\n\
3363 #else\n\
3364 #define SIZE_MAX[ \t]+UINT32_MAX\n\
3365 #endif";
3367 #define    DARWIN_STDINT_4_TEST_CT  1
3368 static tTestDesc aDarwin_Stdint_4Tests[] = {
3369   { TT_EGREP,    zDarwin_Stdint_4Select0, (regex_t*)NULL }, };
3372  *  Fix Command Arguments for Darwin_Stdint_4
3373  */
3374 static const char* apzDarwin_Stdint_4Patch[] = {
3375     "format",
3376     "#if __WORDSIZE == 64\n\
3377 #define SIZE_MAX 18446744073709551615UL\n\
3378 #else\n\
3379 #define SIZE_MAX 4294967295UL\n\
3380 #endif",
3381     (char*)NULL };
3383 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3385  *  Description of Darwin_Stdint_5 fix
3386  */
3387 tSCC zDarwin_Stdint_5Name[] =
3388      "darwin_stdint_5";
3391  *  File name selection pattern
3392  */
3393 tSCC zDarwin_Stdint_5List[] =
3394   "stdint-darwin.h\0stdint.h\0";
3396  *  Machine/OS name selection pattern
3397  */
3398 tSCC* apzDarwin_Stdint_5Machs[] = {
3399         "*-*-darwin*",
3400         (const char*)NULL };
3403  *  content selection pattern - do fix if pattern found
3404  */
3405 tSCC zDarwin_Stdint_5Select0[] =
3406        "#define INTMAX_MIN[ \t]+INT64_MIN\n\
3407 #define INTMAX_MAX[ \t]+INT64_MAX\n\n\
3408 #define UINTMAX_MAX[ \t]+UINT64_MAX";
3410 #define    DARWIN_STDINT_5_TEST_CT  1
3411 static tTestDesc aDarwin_Stdint_5Tests[] = {
3412   { TT_EGREP,    zDarwin_Stdint_5Select0, (regex_t*)NULL }, };
3415  *  Fix Command Arguments for Darwin_Stdint_5
3416  */
3417 static const char* apzDarwin_Stdint_5Patch[] = {
3418     "format",
3419     "#if __WORDSIZE == 64\n\
3420 #define INTMAX_MIN   (-9223372036854775807L - 1)\n\
3421 #define INTMAX_MAX   9223372036854775807L\n\
3422 #define UINTMAX_MAX  18446744073709551615UL\n\
3423 #else\n\
3424 #define INTMAX_MIN   (-9223372036854775807LL - 1)\n\
3425 #define INTMAX_MAX   9223372036854775807LL\n\
3426 #define UINTMAX_MAX  18446744073709551615ULL\n\
3427 #endif",
3428     (char*)NULL };
3430 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3432  *  Description of Darwin_Stdint_6 fix
3433  */
3434 tSCC zDarwin_Stdint_6Name[] =
3435      "darwin_stdint_6";
3438  *  File name selection pattern
3439  */
3440 tSCC zDarwin_Stdint_6List[] =
3441   "stdint-darwin.h\0stdint.h\0";
3443  *  Machine/OS name selection pattern
3444  */
3445 tSCC* apzDarwin_Stdint_6Machs[] = {
3446         "*-*-darwin*",
3447         (const char*)NULL };
3450  *  content selection pattern - do fix if pattern found
3451  */
3452 tSCC zDarwin_Stdint_6Select0[] =
3453        "#if __WORDSIZE == 64\n\
3454 #define PTRDIFF_MIN[ \t]+INT64_MIN\n\
3455 #define PTRDIFF_MAX[ \t]+INT64_MAX\n\
3456 #else\n\
3457 #define PTRDIFF_MIN[ \t]+INT32_MIN\n\
3458 #define PTRDIFF_MAX[ \t]+INT32_MAX\n\
3459 #endif";
3461 #define    DARWIN_STDINT_6_TEST_CT  1
3462 static tTestDesc aDarwin_Stdint_6Tests[] = {
3463   { TT_EGREP,    zDarwin_Stdint_6Select0, (regex_t*)NULL }, };
3466  *  Fix Command Arguments for Darwin_Stdint_6
3467  */
3468 static const char* apzDarwin_Stdint_6Patch[] = {
3469     "format",
3470     "#if __WORDSIZE == 64\n\
3471 #define PTRDIFF_MIN (-9223372036854775807L - 1)\n\
3472 #define PTRDIFF_MAX 9223372036854775807L\n\
3473 #else\n\
3474 #define PTRDIFF_MIN (-2147483647 - 1)\n\
3475 #define PTRDIFF_MAX 2147483647\n\
3476 #endif",
3477     (char*)NULL };
3479 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3481  *  Description of Darwin_Stdint_7 fix
3482  */
3483 tSCC zDarwin_Stdint_7Name[] =
3484      "darwin_stdint_7";
3487  *  File name selection pattern
3488  */
3489 tSCC zDarwin_Stdint_7List[] =
3490   "stdint-darwin.h\0stdint.h\0";
3492  *  Machine/OS name selection pattern
3493  */
3494 tSCC* apzDarwin_Stdint_7Machs[] = {
3495         "*-*-darwin*",
3496         (const char*)NULL };
3499  *  content selection pattern - do fix if pattern found
3500  */
3501 tSCC zDarwin_Stdint_7Select0[] =
3502        "#define INTMAX_C\\(v\\)[ \t]+\\(v ## LL\\)\n\
3503 #define UINTMAX_C\\(v\\)[ \t]+\\(v ## ULL\\)";
3505 #define    DARWIN_STDINT_7_TEST_CT  1
3506 static tTestDesc aDarwin_Stdint_7Tests[] = {
3507   { TT_EGREP,    zDarwin_Stdint_7Select0, (regex_t*)NULL }, };
3510  *  Fix Command Arguments for Darwin_Stdint_7
3511  */
3512 static const char* apzDarwin_Stdint_7Patch[] = {
3513     "format",
3514     "#if __WORDSIZE == 64\n\
3515 #define INTMAX_C(v)  (v ## L)\n\
3516 #define UINTMAX_C(v) (v ## UL)\n\
3517 #else\n\
3518 #define INTMAX_C(v)  (v ## LL)\n\
3519 #define UINTMAX_C(v) (v ## ULL)\n\
3520 #endif",
3521     (char*)NULL };
3523 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3525  *  Description of Darwin_Ucred__Atomic fix
3526  */
3527 tSCC zDarwin_Ucred__AtomicName[] =
3528      "darwin_ucred__Atomic";
3531  *  File name selection pattern
3532  */
3533 tSCC zDarwin_Ucred__AtomicList[] =
3534   "sys/ucred.h\0";
3536  *  Machine/OS name selection pattern
3537  */
3538 tSCC* apzDarwin_Ucred__AtomicMachs[] = {
3539         "*-*-darwin*",
3540         (const char*)NULL };
3543  *  content selection pattern - do fix if pattern found
3544  */
3545 tSCC zDarwin_Ucred__AtomicSelect0[] =
3546        "_Atomic";
3548 #define    DARWIN_UCRED__ATOMIC_TEST_CT  1
3549 static tTestDesc aDarwin_Ucred__AtomicTests[] = {
3550   { TT_EGREP,    zDarwin_Ucred__AtomicSelect0, (regex_t*)NULL }, };
3553  *  Fix Command Arguments for Darwin_Ucred__Atomic
3554  */
3555 static const char* apzDarwin_Ucred__AtomicPatch[] = {
3556     "wrap",
3557     "#if (__STDC_VERSION__ < 201112L) || defined(__cplusplus)\n\
3558 # define _Atomic volatile\n\
3559 #endif\n",
3560     "#if (__STDC_VERSION__ < 201112L) || defined(__cplusplus)\n\
3561 # undef _Atomic\n\
3562 #endif\n",
3563     (char*)NULL };
3565 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3567  *  Description of Dec_Intern_Asm fix
3568  */
3569 tSCC zDec_Intern_AsmName[] =
3570      "dec_intern_asm";
3573  *  File name selection pattern
3574  */
3575 tSCC zDec_Intern_AsmList[] =
3576   "c_asm.h\0";
3578  *  Machine/OS name selection pattern
3579  */
3580 #define apzDec_Intern_AsmMachs (const char**)NULL
3581 #define DEC_INTERN_ASM_TEST_CT  0
3582 #define aDec_Intern_AsmTests   (tTestDesc*)NULL
3585  *  Fix Command Arguments for Dec_Intern_Asm
3586  */
3587 static const char* apzDec_Intern_AsmPatch[] = { sed_cmd_z,
3588     "-e", "/^[ \t]*float[ \t]*fasm/i\\\n\
3589 #ifdef __DECC\n",
3590     "-e", "/^[ \t]*#[ \t]*pragma[ \t]*intrinsic([ \t]*dasm/a\\\n\
3591 #endif\n",
3592     (char*)NULL };
3594 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3596  *  Description of Djgpp_Wchar_H fix
3597  */
3598 tSCC zDjgpp_Wchar_HName[] =
3599      "djgpp_wchar_h";
3602  *  File name selection pattern
3603  */
3604 #define zDjgpp_Wchar_HList (char*)NULL
3606  *  Machine/OS name selection pattern
3607  */
3608 #define apzDjgpp_Wchar_HMachs (const char**)NULL
3611  *  content selection pattern - do fix if pattern found
3612  */
3613 tSCC zDjgpp_Wchar_HSelect0[] =
3614        "__DJ_wint_t";
3617  *  content bypass pattern - skip fix if pattern found
3618  */
3619 tSCC zDjgpp_Wchar_HBypass0[] =
3620        "sys/djtypes.h";
3622 #define    DJGPP_WCHAR_H_TEST_CT  2
3623 static tTestDesc aDjgpp_Wchar_HTests[] = {
3624   { TT_NEGREP,   zDjgpp_Wchar_HBypass0, (regex_t*)NULL },
3625   { TT_EGREP,    zDjgpp_Wchar_HSelect0, (regex_t*)NULL }, };
3628  *  Fix Command Arguments for Djgpp_Wchar_H
3629  */
3630 static const char* apzDjgpp_Wchar_HPatch[] = {
3631     "format",
3632     "%0\n\
3633 #include <sys/djtypes.h>",
3634     "#include <stddef.h>",
3635     (char*)NULL };
3637 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3639  *  Description of Ecd_Cursor fix
3640  */
3641 tSCC zEcd_CursorName[] =
3642      "ecd_cursor";
3645  *  File name selection pattern
3646  */
3647 tSCC zEcd_CursorList[] =
3648   "sunwindow/win_lock.h\0sunwindow/win_cursor.h\0";
3650  *  Machine/OS name selection pattern
3651  */
3652 #define apzEcd_CursorMachs (const char**)NULL
3655  *  content selection pattern - do fix if pattern found
3656  */
3657 tSCC zEcd_CursorSelect0[] =
3658        "ecd\\.cursor";
3660 #define    ECD_CURSOR_TEST_CT  1
3661 static tTestDesc aEcd_CursorTests[] = {
3662   { TT_EGREP,    zEcd_CursorSelect0, (regex_t*)NULL }, };
3665  *  Fix Command Arguments for Ecd_Cursor
3666  */
3667 static const char* apzEcd_CursorPatch[] = {
3668     "format",
3669     "ecd_cursor",
3670     (char*)NULL };
3672 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3674  *  Description of Feraiseexcept_Nosse_Divbyzero fix
3675  */
3676 tSCC zFeraiseexcept_Nosse_DivbyzeroName[] =
3677      "feraiseexcept_nosse_divbyzero";
3680  *  File name selection pattern
3681  */
3682 tSCC zFeraiseexcept_Nosse_DivbyzeroList[] =
3683   "bits/fenv.h\0*/bits/fenv.h\0";
3685  *  Machine/OS name selection pattern
3686  */
3687 tSCC* apzFeraiseexcept_Nosse_DivbyzeroMachs[] = {
3688         "i[34567]86-*-linux*",
3689         "x86*-linux*",
3690         "amd64-*-linux*",
3691         (const char*)NULL };
3694  *  content selection pattern - do fix if pattern found
3695  */
3696 tSCC zFeraiseexcept_Nosse_DivbyzeroSelect0[] =
3697        "^([\t ]*)__asm__ __volatile__ \\(\"divss %1, %0 *\" : : \"x\" \\(__f\\), \"x\" \\(__g\\)\\);$";
3700  *  content bypass pattern - skip fix if pattern found
3701  */
3702 tSCC zFeraiseexcept_Nosse_DivbyzeroBypass0[] =
3703        "\"fdivp .*; fwait\"";
3705 #define    FERAISEEXCEPT_NOSSE_DIVBYZERO_TEST_CT  2
3706 static tTestDesc aFeraiseexcept_Nosse_DivbyzeroTests[] = {
3707   { TT_NEGREP,   zFeraiseexcept_Nosse_DivbyzeroBypass0, (regex_t*)NULL },
3708   { TT_EGREP,    zFeraiseexcept_Nosse_DivbyzeroSelect0, (regex_t*)NULL }, };
3711  *  Fix Command Arguments for Feraiseexcept_Nosse_Divbyzero
3712  */
3713 static const char* apzFeraiseexcept_Nosse_DivbyzeroPatch[] = {
3714     "format",
3715     "# ifdef __SSE_MATH__\n\
3716 %0\n\
3717 # else\n\
3718 %1__asm__ __volatile__ (\"fdivp %%%%st, %%%%st(1); fwait\"\n\
3719 %1\t\t\t: \"=t\" (__f) : \"0\" (__f), \"u\" (__g) : \"st(1)\");\n\
3720 # endif",
3721     (char*)NULL };
3723 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3725  *  Description of Feraiseexcept_Nosse_Invalid fix
3726  */
3727 tSCC zFeraiseexcept_Nosse_InvalidName[] =
3728      "feraiseexcept_nosse_invalid";
3731  *  File name selection pattern
3732  */
3733 tSCC zFeraiseexcept_Nosse_InvalidList[] =
3734   "bits/fenv.h\0*/bits/fenv.h\0";
3736  *  Machine/OS name selection pattern
3737  */
3738 tSCC* apzFeraiseexcept_Nosse_InvalidMachs[] = {
3739         "i[34567]86-*-linux*",
3740         "x86*-linux*",
3741         "amd64-*-linux*",
3742         (const char*)NULL };
3745  *  content selection pattern - do fix if pattern found
3746  */
3747 tSCC zFeraiseexcept_Nosse_InvalidSelect0[] =
3748        "^([\t ]*)__asm__ __volatile__ \\(\"divss %0, %0 *\" : : \"x\" \\(__f\\)\\);$";
3751  *  content bypass pattern - skip fix if pattern found
3752  */
3753 tSCC zFeraiseexcept_Nosse_InvalidBypass0[] =
3754        "\"fdiv .*; fwait\"";
3756 #define    FERAISEEXCEPT_NOSSE_INVALID_TEST_CT  2
3757 static tTestDesc aFeraiseexcept_Nosse_InvalidTests[] = {
3758   { TT_NEGREP,   zFeraiseexcept_Nosse_InvalidBypass0, (regex_t*)NULL },
3759   { TT_EGREP,    zFeraiseexcept_Nosse_InvalidSelect0, (regex_t*)NULL }, };
3762  *  Fix Command Arguments for Feraiseexcept_Nosse_Invalid
3763  */
3764 static const char* apzFeraiseexcept_Nosse_InvalidPatch[] = {
3765     "format",
3766     "# ifdef __SSE_MATH__\n\
3767 %0\n\
3768 # else\n\
3769 %1__asm__ __volatile__ (\"fdiv %%%%st, %%%%st(0); fwait\"\n\
3770 %1\t\t\t: \"=t\" (__f) : \"0\" (__f));\n\
3771 # endif",
3772     (char*)NULL };
3774 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3776  *  Description of Freebsd_Gcc3_Breakage fix
3777  */
3778 tSCC zFreebsd_Gcc3_BreakageName[] =
3779      "freebsd_gcc3_breakage";
3782  *  File name selection pattern
3783  */
3784 tSCC zFreebsd_Gcc3_BreakageList[] =
3785   "sys/cdefs.h\0";
3787  *  Machine/OS name selection pattern
3788  */
3789 tSCC* apzFreebsd_Gcc3_BreakageMachs[] = {
3790         "*-*-freebsd*",
3791         (const char*)NULL };
3794  *  content selection pattern - do fix if pattern found
3795  */
3796 tSCC zFreebsd_Gcc3_BreakageSelect0[] =
3797        "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7$";
3800  *  content bypass pattern - skip fix if pattern found
3801  */
3802 tSCC zFreebsd_Gcc3_BreakageBypass0[] =
3803        "__GNUC__[ \\t]*([>=]=[ \\t]*[3-9]|>[ \\t]*2)";
3805 #define    FREEBSD_GCC3_BREAKAGE_TEST_CT  2
3806 static tTestDesc aFreebsd_Gcc3_BreakageTests[] = {
3807   { TT_NEGREP,   zFreebsd_Gcc3_BreakageBypass0, (regex_t*)NULL },
3808   { TT_EGREP,    zFreebsd_Gcc3_BreakageSelect0, (regex_t*)NULL }, };
3811  *  Fix Command Arguments for Freebsd_Gcc3_Breakage
3812  */
3813 static const char* apzFreebsd_Gcc3_BreakagePatch[] = {
3814     "format",
3815     "%0 || __GNUC__ >= 3",
3816     (char*)NULL };
3818 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3820  *  Description of Freebsd_Gcc4_Breakage fix
3821  */
3822 tSCC zFreebsd_Gcc4_BreakageName[] =
3823      "freebsd_gcc4_breakage";
3826  *  File name selection pattern
3827  */
3828 tSCC zFreebsd_Gcc4_BreakageList[] =
3829   "sys/cdefs.h\0";
3831  *  Machine/OS name selection pattern
3832  */
3833 tSCC* apzFreebsd_Gcc4_BreakageMachs[] = {
3834         "*-*-freebsd*",
3835         (const char*)NULL };
3838  *  content selection pattern - do fix if pattern found
3839  */
3840 tSCC zFreebsd_Gcc4_BreakageSelect0[] =
3841        "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 \\|\\| __GNUC__ == 3$";
3843 #define    FREEBSD_GCC4_BREAKAGE_TEST_CT  1
3844 static tTestDesc aFreebsd_Gcc4_BreakageTests[] = {
3845   { TT_EGREP,    zFreebsd_Gcc4_BreakageSelect0, (regex_t*)NULL }, };
3848  *  Fix Command Arguments for Freebsd_Gcc4_Breakage
3849  */
3850 static const char* apzFreebsd_Gcc4_BreakagePatch[] = {
3851     "format",
3852     "#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 || __GNUC__ >= 3",
3853     (char*)NULL };
3855 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3857  *  Description of Glibc_C99_Inline_1 fix
3858  */
3859 tSCC zGlibc_C99_Inline_1Name[] =
3860      "glibc_c99_inline_1";
3863  *  File name selection pattern
3864  */
3865 tSCC zGlibc_C99_Inline_1List[] =
3866   "features.h\0*/features.h\0";
3868  *  Machine/OS name selection pattern
3869  */
3870 #define apzGlibc_C99_Inline_1Machs (const char**)NULL
3873  *  content selection pattern - do fix if pattern found
3874  */
3875 tSCC zGlibc_C99_Inline_1Select0[] =
3876        "^ *&& !defined __OPTIMIZE_SIZE__ && !defined __NO_INLINE__$";
3878 #define    GLIBC_C99_INLINE_1_TEST_CT  1
3879 static tTestDesc aGlibc_C99_Inline_1Tests[] = {
3880   { TT_EGREP,    zGlibc_C99_Inline_1Select0, (regex_t*)NULL }, };
3883  *  Fix Command Arguments for Glibc_C99_Inline_1
3884  */
3885 static const char* apzGlibc_C99_Inline_1Patch[] = {
3886     "format",
3887     "%0 && (defined __extern_inline || defined __GNUC_GNU_INLINE__)",
3888     (char*)NULL };
3890 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3892  *  Description of Glibc_C99_Inline_1a fix
3893  */
3894 tSCC zGlibc_C99_Inline_1aName[] =
3895      "glibc_c99_inline_1a";
3898  *  File name selection pattern
3899  */
3900 tSCC zGlibc_C99_Inline_1aList[] =
3901   "features.h\0*/features.h\0";
3903  *  Machine/OS name selection pattern
3904  */
3905 #define apzGlibc_C99_Inline_1aMachs (const char**)NULL
3908  *  content selection pattern - do fix if pattern found
3909  */
3910 tSCC zGlibc_C99_Inline_1aSelect0[] =
3911        "(\\) && defined __OPTIMIZE__ && !defined __OPTIMIZE_SIZE__)\n\
3912 (#[ \t]*define[ \t]*__USE_EXTERN_INLINES[ \t]*1)";
3914 #define    GLIBC_C99_INLINE_1A_TEST_CT  1
3915 static tTestDesc aGlibc_C99_Inline_1aTests[] = {
3916   { TT_EGREP,    zGlibc_C99_Inline_1aSelect0, (regex_t*)NULL }, };
3919  *  Fix Command Arguments for Glibc_C99_Inline_1a
3920  */
3921 static const char* apzGlibc_C99_Inline_1aPatch[] = {
3922     "format",
3923     "%1 && (defined __extern_inline || defined __GNUC_GNU_INLINE__)\n\
3924 %2",
3925     (char*)NULL };
3927 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3929  *  Description of Glibc_C99_Inline_2 fix
3930  */
3931 tSCC zGlibc_C99_Inline_2Name[] =
3932      "glibc_c99_inline_2";
3935  *  File name selection pattern
3936  */
3937 tSCC zGlibc_C99_Inline_2List[] =
3938   "sys/stat.h\0*/sys/stat.h\0";
3940  *  Machine/OS name selection pattern
3941  */
3942 #define apzGlibc_C99_Inline_2Machs (const char**)NULL
3945  *  content selection pattern - do fix if pattern found
3946  */
3947 tSCC zGlibc_C99_Inline_2Select0[] =
3948        "extern __inline__ int";
3950 #define    GLIBC_C99_INLINE_2_TEST_CT  1
3951 static tTestDesc aGlibc_C99_Inline_2Tests[] = {
3952   { TT_EGREP,    zGlibc_C99_Inline_2Select0, (regex_t*)NULL }, };
3955  *  Fix Command Arguments for Glibc_C99_Inline_2
3956  */
3957 static const char* apzGlibc_C99_Inline_2Patch[] = { sed_cmd_z,
3958     "-e", "s/extern int \\(stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
3959 extern\\\n\
3960 #endif\\\n\
3961 __inline__ int \\1/",
3962     "-e", "s/extern int \\([lf]stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
3963 extern\\\n\
3964 #endif\\\n\
3965 __inline__ int \\1/",
3966     "-e", "s/extern int \\(mknod\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
3967 extern\\\n\
3968 #endif\\\n\
3969 __inline__ int \\1/",
3970     "-e", "s/extern int __REDIRECT\\(_NTH\\)\\{0,1\\} (\\(stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
3971 extern\\\n\
3972 #endif\\\n\
3973 __inline__ int __REDIRECT\\1 (\\2/",
3974     "-e", "s/extern int __REDIRECT\\(_NTH\\)\\{0,1\\} (\\([lf]stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
3975 extern\\\n\
3976 #endif\\\n\
3977 __inline__ int __REDIRECT\\1 (\\2/",
3978     "-e", "s/^extern __inline__ int/#ifdef __GNUC_GNU_INLINE__\\\n\
3979 extern\\\n\
3980 #endif\\\n\
3981 __inline__ int/",
3982     (char*)NULL };
3984 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3986  *  Description of Glibc_C99_Inline_3 fix
3987  */
3988 tSCC zGlibc_C99_Inline_3Name[] =
3989      "glibc_c99_inline_3";
3992  *  File name selection pattern
3993  */
3994 tSCC zGlibc_C99_Inline_3List[] =
3995   "bits/string2.h\0*/bits/string2.h\0";
3997  *  Machine/OS name selection pattern
3998  */
3999 #define apzGlibc_C99_Inline_3Machs (const char**)NULL
4002  *  content selection pattern - do fix if pattern found
4003  */
4004 tSCC zGlibc_C99_Inline_3Select0[] =
4005        "extern __inline";
4008  *  content bypass pattern - skip fix if pattern found
4009  */
4010 tSCC zGlibc_C99_Inline_3Bypass0[] =
4011        "__extern_inline|__GNU_STDC_INLINE__";
4013 #define    GLIBC_C99_INLINE_3_TEST_CT  2
4014 static tTestDesc aGlibc_C99_Inline_3Tests[] = {
4015   { TT_NEGREP,   zGlibc_C99_Inline_3Bypass0, (regex_t*)NULL },
4016   { TT_EGREP,    zGlibc_C99_Inline_3Select0, (regex_t*)NULL }, };
4019  *  Fix Command Arguments for Glibc_C99_Inline_3
4020  */
4021 static const char* apzGlibc_C99_Inline_3Patch[] = {
4022     "format",
4023     "# if defined(__cplusplus) || defined(__GNUC_STDC_INLINE__)",
4024     "^# ifdef __cplusplus$",
4025     (char*)NULL };
4027 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4029  *  Description of Glibc_C99_Inline_4 fix
4030  */
4031 tSCC zGlibc_C99_Inline_4Name[] =
4032      "glibc_c99_inline_4";
4035  *  File name selection pattern
4036  */
4037 tSCC zGlibc_C99_Inline_4List[] =
4038   "sys/sysmacros.h\0*/sys/sysmacros.h\0wchar.h\0*/wchar.h\0pthread.h\0*/pthread.h\0";
4040  *  Machine/OS name selection pattern
4041  */
4042 #define apzGlibc_C99_Inline_4Machs (const char**)NULL
4045  *  content selection pattern - do fix if pattern found
4046  */
4047 tSCC zGlibc_C99_Inline_4Select0[] =
4048        "(^| )extern __inline";
4051  *  content bypass pattern - skip fix if pattern found
4052  */
4053 tSCC zGlibc_C99_Inline_4Bypass0[] =
4054        "__extern_inline|__gnu_inline__";
4056 #define    GLIBC_C99_INLINE_4_TEST_CT  2
4057 static tTestDesc aGlibc_C99_Inline_4Tests[] = {
4058   { TT_NEGREP,   zGlibc_C99_Inline_4Bypass0, (regex_t*)NULL },
4059   { TT_EGREP,    zGlibc_C99_Inline_4Select0, (regex_t*)NULL }, };
4062  *  Fix Command Arguments for Glibc_C99_Inline_4
4063  */
4064 static const char* apzGlibc_C99_Inline_4Patch[] = {
4065     "format",
4066     "%0 __attribute__ ((__gnu_inline__))",
4067     (char*)NULL };
4069 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4071  *  Description of Glibc_Mutex_Init fix
4072  */
4073 tSCC zGlibc_Mutex_InitName[] =
4074      "glibc_mutex_init";
4077  *  File name selection pattern
4078  */
4079 tSCC zGlibc_Mutex_InitList[] =
4080   "pthread.h\0";
4082  *  Machine/OS name selection pattern
4083  */
4084 #define apzGlibc_Mutex_InitMachs (const char**)NULL
4087  *  content selection pattern - do fix if pattern found
4088  */
4089 tSCC zGlibc_Mutex_InitSelect0[] =
4090        "\\{ *\\{ *0, *\\} *\\}";
4092 #define    GLIBC_MUTEX_INIT_TEST_CT  1
4093 static tTestDesc aGlibc_Mutex_InitTests[] = {
4094   { TT_EGREP,    zGlibc_Mutex_InitSelect0, (regex_t*)NULL }, };
4097  *  Fix Command Arguments for Glibc_Mutex_Init
4098  */
4099 static const char* apzGlibc_Mutex_InitPatch[] = { sed_cmd_z,
4100     "-e", "/define[ \t]\\{1,\\}PTHREAD_MUTEX_INITIALIZER[ \t]*\\\\/{\n\
4101 N\n\
4102 s/{ { 0, } }/{ { 0, 0, 0, 0, 0, 0 } }/\n\
4104     "-e", "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(RECURSIVE\\)_NP\\) }/{ \\1, 0 }/",
4105     "-e", "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(ERRORCHECK\\)_NP\\) }/{ \\1, 0 }/",
4106     "-e", "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(ADAPTIVE\\)_NP\\) }/{ \\1, 0 }/",
4107     "-e", "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(RECURSIVE\\)_NP\\) }/{ \\1, 0, 0 }/",
4108     "-e", "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(ERRORCHECK\\)_NP\\) }/{ \\1, 0, 0 }/",
4109     "-e", "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(ADAPTIVE\\)_NP\\) }/{ \\1, 0, 0 }/",
4110     "-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\
4111 #  \\1\\\n\
4112   { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }\\\n\
4113 # else\\\n\
4114 #  \\1\\\n\
4115   { { 0, 0, 0, 0, 0, 0, 0, 0 } }\\\n\
4116 # endif/",
4117     "-e", "s/{ \\(0, 0, 0, 0, 0, 0, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP\\) }/{ \\1, 0 }/",
4118     "-e", "/define[ \t]\\{1,\\}PTHREAD_COND_INITIALIZER/s/{ { 0, } }/{ { 0, 0, 0, 0, 0, (void *) 0, 0, 0 } }/",
4119     (char*)NULL };
4121 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4123  *  Description of Glibc_Stdint fix
4124  */
4125 tSCC zGlibc_StdintName[] =
4126      "glibc_stdint";
4129  *  File name selection pattern
4130  */
4131 tSCC zGlibc_StdintList[] =
4132   "stdint.h\0";
4134  *  Machine/OS name selection pattern
4135  */
4136 #define apzGlibc_StdintMachs (const char**)NULL
4139  *  content selection pattern - do fix if pattern found
4140  */
4141 tSCC zGlibc_StdintSelect0[] =
4142        "GNU C Library";
4144 #define    GLIBC_STDINT_TEST_CT  1
4145 static tTestDesc aGlibc_StdintTests[] = {
4146   { TT_EGREP,    zGlibc_StdintSelect0, (regex_t*)NULL }, };
4149  *  Fix Command Arguments for Glibc_Stdint
4150  */
4151 static const char* apzGlibc_StdintPatch[] = {
4152     "format",
4153     "# define UINT8_C(c)\tc\n\
4154 # define UINT16_C(c)\tc",
4155     "# define UINT8_C\\(c\\)\tc ## U\n\
4156 # define UINT16_C\\(c\\)\tc ## U",
4157     (char*)NULL };
4159 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4161  *  Description of Glibc_Strncpy fix
4162  */
4163 tSCC zGlibc_StrncpyName[] =
4164      "glibc_strncpy";
4167  *  File name selection pattern
4168  */
4169 tSCC zGlibc_StrncpyList[] =
4170   "bits/string2.h\0*/bits/string2.h\0";
4172  *  Machine/OS name selection pattern
4173  */
4174 #define apzGlibc_StrncpyMachs (const char**)NULL
4177  *  content bypass pattern - skip fix if pattern found
4178  */
4179 tSCC zGlibc_StrncpyBypass0[] =
4180        "__builtin_strncpy";
4182 #define    GLIBC_STRNCPY_TEST_CT  1
4183 static tTestDesc aGlibc_StrncpyTests[] = {
4184   { TT_NEGREP,   zGlibc_StrncpyBypass0, (regex_t*)NULL }, };
4187  *  Fix Command Arguments for Glibc_Strncpy
4188  */
4189 static const char* apzGlibc_StrncpyPatch[] = {
4190     "format",
4191     "#  define strncpy(dest, src, n) __builtin_strncpy (dest, src, n)",
4192     "#  define strncpy([^\n\
4193 ]*\\\\\n\
4194 )*[^\n\
4195 ]*",
4196     (char*)NULL };
4198 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4200  *  Description of Glibc_Tgmath fix
4201  */
4202 tSCC zGlibc_TgmathName[] =
4203      "glibc_tgmath";
4206  *  File name selection pattern
4207  */
4208 tSCC zGlibc_TgmathList[] =
4209   "tgmath.h\0";
4211  *  Machine/OS name selection pattern
4212  */
4213 #define apzGlibc_TgmathMachs (const char**)NULL
4216  *  content selection pattern - do fix if pattern found
4217  */
4218 tSCC zGlibc_TgmathSelect0[] =
4219        "\\(\\(\\(type\\) 0.25\\) && \\(\\(type\\) 0.25 - 1\\)\\)";
4222  *  content bypass pattern - skip fix if pattern found
4223  */
4224 tSCC zGlibc_TgmathBypass0[] =
4225        "__floating_type\\(type\\) \\\\\n\
4226 .*__builtin_classify_type";
4228 #define    GLIBC_TGMATH_TEST_CT  2
4229 static tTestDesc aGlibc_TgmathTests[] = {
4230   { TT_NEGREP,   zGlibc_TgmathBypass0, (regex_t*)NULL },
4231   { TT_EGREP,    zGlibc_TgmathSelect0, (regex_t*)NULL }, };
4234  *  Fix Command Arguments for Glibc_Tgmath
4235  */
4236 static const char* apzGlibc_TgmathPatch[] = {
4237     "format",
4238     "(__builtin_classify_type ((type) 0) == 8 || (__builtin_classify_type ((type) 0) == 9 && __builtin_classify_type (__real__ ((type) 0)) == 8))",
4239     (char*)NULL };
4241 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4243  *  Description of Gnu_Types fix
4244  */
4245 tSCC zGnu_TypesName[] =
4246      "gnu_types";
4249  *  File name selection pattern
4250  */
4251 tSCC zGnu_TypesList[] =
4252   "sys/types.h\0stdlib.h\0sys/stdtypes.h\0stddef.h\0memory.h\0unistd.h\0";
4254  *  Machine/OS name selection pattern
4255  */
4256 tSCC* apzGnu_TypesMachs[] = {
4257         "*-*-solaris2.1[0-9]*",
4258         (const char*)NULL };
4261  *  content selection pattern - do fix if pattern found
4262  */
4263 tSCC zGnu_TypesSelect0[] =
4264        "^[ \t]*typedef[ \t]+.*[ \t](ptrdiff|size|wchar)_t;";
4267  *  content bypass pattern - skip fix if pattern found
4268  */
4269 tSCC zGnu_TypesBypass0[] =
4270        "_GCC_(PTRDIFF|SIZE|WCHAR)_T";
4272 #define    GNU_TYPES_TEST_CT  2
4273 static tTestDesc aGnu_TypesTests[] = {
4274   { TT_NEGREP,   zGnu_TypesBypass0, (regex_t*)NULL },
4275   { TT_EGREP,    zGnu_TypesSelect0, (regex_t*)NULL }, };
4278  *  Fix Command Arguments for Gnu_Types
4279  */
4280 static const char* apzGnu_TypesPatch[] = {
4281     "gnu_type",
4282     (char*)NULL };
4284 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4286  *  Description of Hp_Inline fix
4287  */
4288 tSCC zHp_InlineName[] =
4289      "hp_inline";
4292  *  File name selection pattern
4293  */
4294 tSCC zHp_InlineList[] =
4295   "sys/spinlock.h\0machine/machparam.h\0";
4297  *  Machine/OS name selection pattern
4298  */
4299 #define apzHp_InlineMachs (const char**)NULL
4302  *  content selection pattern - do fix if pattern found
4303  */
4304 tSCC zHp_InlineSelect0[] =
4305        "[ \t]*#[ \t]*include[ \t]+\"\\.\\./machine/";
4307 #define    HP_INLINE_TEST_CT  1
4308 static tTestDesc aHp_InlineTests[] = {
4309   { TT_EGREP,    zHp_InlineSelect0, (regex_t*)NULL }, };
4312  *  Fix Command Arguments for Hp_Inline
4313  */
4314 static const char* apzHp_InlinePatch[] = {
4315     "format",
4316     "%1<machine/%2.h>",
4317     "([ \t]*#[ \t]*include[ \t]+)\"\\.\\./machine/([a-z]+)\\.h\"",
4318     (char*)NULL };
4320 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4322  *  Description of Hp_Sysfile fix
4323  */
4324 tSCC zHp_SysfileName[] =
4325      "hp_sysfile";
4328  *  File name selection pattern
4329  */
4330 tSCC zHp_SysfileList[] =
4331   "sys/file.h\0";
4333  *  Machine/OS name selection pattern
4334  */
4335 #define apzHp_SysfileMachs (const char**)NULL
4338  *  content selection pattern - do fix if pattern found
4339  */
4340 tSCC zHp_SysfileSelect0[] =
4341        "HPUX_SOURCE";
4343 #define    HP_SYSFILE_TEST_CT  1
4344 static tTestDesc aHp_SysfileTests[] = {
4345   { TT_EGREP,    zHp_SysfileSelect0, (regex_t*)NULL }, };
4348  *  Fix Command Arguments for Hp_Sysfile
4349  */
4350 static const char* apzHp_SysfilePatch[] = {
4351     "format",
4352     "(struct file *, ...)",
4353     "\\(\\.\\.\\.\\)",
4354     (char*)NULL };
4356 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4358  *  Description of Hppa_Hpux_Fp_Macros fix
4359  */
4360 tSCC zHppa_Hpux_Fp_MacrosName[] =
4361      "hppa_hpux_fp_macros";
4364  *  File name selection pattern
4365  */
4366 tSCC zHppa_Hpux_Fp_MacrosList[] =
4367   "math.h\0";
4369  *  Machine/OS name selection pattern
4370  */
4371 tSCC* apzHppa_Hpux_Fp_MacrosMachs[] = {
4372         "hppa*-hp-hpux11*",
4373         (const char*)NULL };
4376  *  content selection pattern - do fix if pattern found
4377  */
4378 tSCC zHppa_Hpux_Fp_MacrosSelect0[] =
4379        "#[ \t]*define[ \t]*FP_NORMAL.*\n\
4380 #[ \t]*define[ \t]*FP_ZERO.*\n\
4381 #[ \t]*define[ \t]*FP_INFINITE.*\n\
4382 #[ \t]*define[ \t]*FP_SUBNORMAL.*\n\
4383 #[ \t]*define[ \t]*FP_NAN.*\n";
4385 #define    HPPA_HPUX_FP_MACROS_TEST_CT  1
4386 static tTestDesc aHppa_Hpux_Fp_MacrosTests[] = {
4387   { TT_EGREP,    zHppa_Hpux_Fp_MacrosSelect0, (regex_t*)NULL }, };
4390  *  Fix Command Arguments for Hppa_Hpux_Fp_Macros
4391  */
4392 static const char* apzHppa_Hpux_Fp_MacrosPatch[] = {
4393     "format",
4394     "#endif /* _INCLUDE_HPUX_SOURCE */\n\n\
4395 #if defined(_INCLUDE_HPUX_SOURCE) || \\\n\
4396    (defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L))\n\
4397 %0#endif\n\n\
4398 #ifdef _INCLUDE_HPUX_SOURCE\n",
4399     (char*)NULL };
4401 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4403  *  Description of Hpux10_Cpp_Pow_Inline fix
4404  */
4405 tSCC zHpux10_Cpp_Pow_InlineName[] =
4406      "hpux10_cpp_pow_inline";
4409  *  File name selection pattern
4410  */
4411 tSCC zHpux10_Cpp_Pow_InlineList[] =
4412   "fixinc-test-limits.h\0math.h\0";
4414  *  Machine/OS name selection pattern
4415  */
4416 #define apzHpux10_Cpp_Pow_InlineMachs (const char**)NULL
4419  *  content selection pattern - do fix if pattern found
4420  */
4421 tSCC zHpux10_Cpp_Pow_InlineSelect0[] =
4422        "^# +ifdef +__cplusplus\n\
4423  +\\}\n\
4424  +inline +double +pow\\(double +__d,int +__expon\\) +\\{\n\
4425 [ \t]+return +pow\\(__d,\\(double\\)__expon\\);\n\
4426  +\\}\n\
4427  +extern +\"C\" +\\{\n\
4428 #else\n\
4429 # +endif";
4431 #define    HPUX10_CPP_POW_INLINE_TEST_CT  1
4432 static tTestDesc aHpux10_Cpp_Pow_InlineTests[] = {
4433   { TT_EGREP,    zHpux10_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
4436  *  Fix Command Arguments for Hpux10_Cpp_Pow_Inline
4437  */
4438 static const char* apzHpux10_Cpp_Pow_InlinePatch[] = {
4439     "format",
4440     "",
4441     (char*)NULL };
4443 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4445  *  Description of Hpux11_Cpp_Pow_Inline fix
4446  */
4447 tSCC zHpux11_Cpp_Pow_InlineName[] =
4448      "hpux11_cpp_pow_inline";
4451  *  File name selection pattern
4452  */
4453 tSCC zHpux11_Cpp_Pow_InlineList[] =
4454   "math.h\0";
4456  *  Machine/OS name selection pattern
4457  */
4458 #define apzHpux11_Cpp_Pow_InlineMachs (const char**)NULL
4461  *  content selection pattern - do fix if pattern found
4462  */
4463 tSCC zHpux11_Cpp_Pow_InlineSelect0[] =
4464        " +inline double pow\\(double d,int expon\\) \\{\n\
4465  +return pow\\(d, \\(double\\)expon\\);\n\
4466  +\\}\n";
4468 #define    HPUX11_CPP_POW_INLINE_TEST_CT  1
4469 static tTestDesc aHpux11_Cpp_Pow_InlineTests[] = {
4470   { TT_EGREP,    zHpux11_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
4473  *  Fix Command Arguments for Hpux11_Cpp_Pow_Inline
4474  */
4475 static const char* apzHpux11_Cpp_Pow_InlinePatch[] = {
4476     "format",
4477     "",
4478     (char*)NULL };
4480 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4482  *  Description of Hpux10_Ctype_Declarations1 fix
4483  */
4484 tSCC zHpux10_Ctype_Declarations1Name[] =
4485      "hpux10_ctype_declarations1";
4488  *  File name selection pattern
4489  */
4490 tSCC zHpux10_Ctype_Declarations1List[] =
4491   "ctype.h\0";
4493  *  Machine/OS name selection pattern
4494  */
4495 #define apzHpux10_Ctype_Declarations1Machs (const char**)NULL
4498  *  content selection pattern - do fix if pattern found
4499  */
4500 tSCC zHpux10_Ctype_Declarations1Select0[] =
4501        "^#[ \t]*define _toupper\\(__c\\)[ \t]*__toupper\\(__c\\)";
4504  *  content bypass pattern - skip fix if pattern found
4505  */
4506 tSCC zHpux10_Ctype_Declarations1Bypass0[] =
4507        "^[ \t]*extern[ \t]*int[ \t]*__tolower[ \t]*\\(";
4509 #define    HPUX10_CTYPE_DECLARATIONS1_TEST_CT  2
4510 static tTestDesc aHpux10_Ctype_Declarations1Tests[] = {
4511   { TT_NEGREP,   zHpux10_Ctype_Declarations1Bypass0, (regex_t*)NULL },
4512   { TT_EGREP,    zHpux10_Ctype_Declarations1Select0, (regex_t*)NULL }, };
4515  *  Fix Command Arguments for Hpux10_Ctype_Declarations1
4516  */
4517 static const char* apzHpux10_Ctype_Declarations1Patch[] = {
4518     "format",
4519     "#ifdef _PROTOTYPES\n\
4520 extern int __tolower(int);\n\
4521 extern int __toupper(int);\n\
4522 #else /* NOT _PROTOTYPES */\n\
4523 extern int __tolower();\n\
4524 extern int __toupper();\n\
4525 #endif /* _PROTOTYPES */\n\n\
4526 %0\n",
4527     (char*)NULL };
4529 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4531  *  Description of Hpux10_Ctype_Declarations2 fix
4532  */
4533 tSCC zHpux10_Ctype_Declarations2Name[] =
4534      "hpux10_ctype_declarations2";
4537  *  File name selection pattern
4538  */
4539 tSCC zHpux10_Ctype_Declarations2List[] =
4540   "ctype.h\0";
4542  *  Machine/OS name selection pattern
4543  */
4544 #define apzHpux10_Ctype_Declarations2Machs (const char**)NULL
4547  *  content selection pattern - do fix if pattern found
4548  */
4549 tSCC zHpux10_Ctype_Declarations2Select0[] =
4550        "^#  if defined\\(_SB_CTYPE_MACROS\\) && \\!defined\\(__lint\\)";
4553  *  content bypass pattern - skip fix if pattern found
4554  */
4555 tSCC zHpux10_Ctype_Declarations2Bypass0[] =
4556        "^[ \t]*extern[ \t]*int[ \t]*_isalnum[ \t]*\\(";
4558 #define    HPUX10_CTYPE_DECLARATIONS2_TEST_CT  2
4559 static tTestDesc aHpux10_Ctype_Declarations2Tests[] = {
4560   { TT_NEGREP,   zHpux10_Ctype_Declarations2Bypass0, (regex_t*)NULL },
4561   { TT_EGREP,    zHpux10_Ctype_Declarations2Select0, (regex_t*)NULL }, };
4564  *  Fix Command Arguments for Hpux10_Ctype_Declarations2
4565  */
4566 static const char* apzHpux10_Ctype_Declarations2Patch[] = {
4567     "format",
4568     "%0\n\n\
4569 #ifdef _PROTOTYPES\n\
4570      extern int _isalnum(int);\n\
4571      extern int _isalpha(int);\n\
4572      extern int _iscntrl(int);\n\
4573      extern int _isdigit(int);\n\
4574      extern int _isgraph(int);\n\
4575      extern int _islower(int);\n\
4576      extern int _isprint(int);\n\
4577      extern int _ispunct(int);\n\
4578      extern int _isspace(int);\n\
4579      extern int _isupper(int);\n\
4580      extern int _isxdigit(int);\n\
4581 #  else /* not _PROTOTYPES */\n\
4582      extern int _isalnum();\n\
4583      extern int _isalpha();\n\
4584      extern int _iscntrl();\n\
4585      extern int _isdigit();\n\
4586      extern int _isgraph();\n\
4587      extern int _islower();\n\
4588      extern int _isprint();\n\
4589      extern int _ispunct();\n\
4590      extern int _isspace();\n\
4591      extern int _isupper();\n\
4592      extern int _isxdigit();\n\
4593 #endif /* _PROTOTYPES */\n",
4594     (char*)NULL };
4596 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4598  *  Description of Hpux10_Stdio_Declarations fix
4599  */
4600 tSCC zHpux10_Stdio_DeclarationsName[] =
4601      "hpux10_stdio_declarations";
4604  *  File name selection pattern
4605  */
4606 tSCC zHpux10_Stdio_DeclarationsList[] =
4607   "stdio.h\0";
4609  *  Machine/OS name selection pattern
4610  */
4611 #define apzHpux10_Stdio_DeclarationsMachs (const char**)NULL
4614  *  content selection pattern - do fix if pattern found
4615  */
4616 tSCC zHpux10_Stdio_DeclarationsSelect0[] =
4617        "^#[ \t]*define _iob[ \t]*__iob";
4620  *  content bypass pattern - skip fix if pattern found
4621  */
4622 tSCC zHpux10_Stdio_DeclarationsBypass0[] =
4623        "^[ \t]*extern[ \t]*int[ \t]*vsnprintf[ \t]*\\(";
4625 #define    HPUX10_STDIO_DECLARATIONS_TEST_CT  2
4626 static tTestDesc aHpux10_Stdio_DeclarationsTests[] = {
4627   { TT_NEGREP,   zHpux10_Stdio_DeclarationsBypass0, (regex_t*)NULL },
4628   { TT_EGREP,    zHpux10_Stdio_DeclarationsSelect0, (regex_t*)NULL }, };
4631  *  Fix Command Arguments for Hpux10_Stdio_Declarations
4632  */
4633 static const char* apzHpux10_Stdio_DeclarationsPatch[] = {
4634     "format",
4635     "%0\n\n\
4636 #  if defined(__STDC__) || defined(__cplusplus)\n\
4637      extern int snprintf(char *, size_t, const char *, ...);\n\
4638      extern int vsnprintf(char *, size_t, const char *, __va_list);\n\
4639 #  else /* not __STDC__) || __cplusplus */\n\
4640      extern int snprintf();\n\
4641      extern int vsnprintf();\n\
4642 #  endif /* __STDC__) || __cplusplus */\n",
4643     (char*)NULL };
4645 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4647  *  Description of Hppa_Hpux11_Alloca fix
4648  */
4649 tSCC zHppa_Hpux11_AllocaName[] =
4650      "hppa_hpux11_alloca";
4653  *  File name selection pattern
4654  */
4655 tSCC zHppa_Hpux11_AllocaList[] =
4656   "alloca.h\0";
4658  *  Machine/OS name selection pattern
4659  */
4660 tSCC* apzHppa_Hpux11_AllocaMachs[] = {
4661         "hppa*-*-hpux11*",
4662         (const char*)NULL };
4665  *  content selection pattern - do fix if pattern found
4666  */
4667 tSCC zHppa_Hpux11_AllocaSelect0[] =
4668        "#ifndef _STDDEF_INCLUDED";
4670 #define    HPPA_HPUX11_ALLOCA_TEST_CT  1
4671 static tTestDesc aHppa_Hpux11_AllocaTests[] = {
4672   { TT_EGREP,    zHppa_Hpux11_AllocaSelect0, (regex_t*)NULL }, };
4675  *  Fix Command Arguments for Hppa_Hpux11_Alloca
4676  */
4677 static const char* apzHppa_Hpux11_AllocaPatch[] = {
4678     "format",
4679     "#ifndef _SYS_STDSYMS_INCLUDED\n\
4680 #  include <sys/stdsyms.h>\n\
4681 #endif /* _SYS_STDSYMS_INCLUDED */\n\n\
4682 %0",
4683     (char*)NULL };
4685 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4687  *  Description of Hpux11_Abs fix
4688  */
4689 tSCC zHpux11_AbsName[] =
4690      "hpux11_abs";
4693  *  File name selection pattern
4694  */
4695 tSCC zHpux11_AbsList[] =
4696   "stdlib.h\0";
4698  *  Machine/OS name selection pattern
4699  */
4700 tSCC* apzHpux11_AbsMachs[] = {
4701         "*-hp-hpux11*",
4702         (const char*)NULL };
4705  *  content selection pattern - do fix if pattern found
4706  */
4707 tSCC zHpux11_AbsSelect0[] =
4708        "ifndef _MATH_INCLUDED";
4710 #define    HPUX11_ABS_TEST_CT  1
4711 static tTestDesc aHpux11_AbsTests[] = {
4712   { TT_EGREP,    zHpux11_AbsSelect0, (regex_t*)NULL }, };
4715  *  Fix Command Arguments for Hpux11_Abs
4716  */
4717 static const char* apzHpux11_AbsPatch[] = {
4718     "format",
4719     "if !defined(_MATH_INCLUDED) || defined(__GNUG__)",
4720     (char*)NULL };
4722 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4724  *  Description of Hpux11_Lwp_Rwlock_Valid fix
4725  */
4726 tSCC zHpux11_Lwp_Rwlock_ValidName[] =
4727      "hpux11_lwp_rwlock_valid";
4730  *  File name selection pattern
4731  */
4732 tSCC zHpux11_Lwp_Rwlock_ValidList[] =
4733   "sys/pthread.h\0";
4735  *  Machine/OS name selection pattern
4736  */
4737 tSCC* apzHpux11_Lwp_Rwlock_ValidMachs[] = {
4738         "*-hp-hpux11*",
4739         (const char*)NULL };
4742  *  content selection pattern - do fix if pattern found
4743  */
4744 tSCC zHpux11_Lwp_Rwlock_ValidSelect0[] =
4745        "#define __LWP_RWLOCK_VALID[ \t]*0x8c91";
4747 #define    HPUX11_LWP_RWLOCK_VALID_TEST_CT  1
4748 static tTestDesc aHpux11_Lwp_Rwlock_ValidTests[] = {
4749   { TT_EGREP,    zHpux11_Lwp_Rwlock_ValidSelect0, (regex_t*)NULL }, };
4752  *  Fix Command Arguments for Hpux11_Lwp_Rwlock_Valid
4753  */
4754 static const char* apzHpux11_Lwp_Rwlock_ValidPatch[] = {
4755     "format",
4756     "#define __LWP_RWLOCK_VALID              -29551",
4757     (char*)NULL };
4759 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4761  *  Description of Hpux11_Extern_Sendfile fix
4762  */
4763 tSCC zHpux11_Extern_SendfileName[] =
4764      "hpux11_extern_sendfile";
4767  *  File name selection pattern
4768  */
4769 tSCC zHpux11_Extern_SendfileList[] =
4770   "sys/socket.h\0";
4772  *  Machine/OS name selection pattern
4773  */
4774 tSCC* apzHpux11_Extern_SendfileMachs[] = {
4775         "*-hp-hpux11.[12]*",
4776         (const char*)NULL };
4779  *  content selection pattern - do fix if pattern found
4780  */
4781 tSCC zHpux11_Extern_SendfileSelect0[] =
4782        "^[ \t]*extern sbsize_t sendfile.*\n\
4783 .*, int\\)\\);\n";
4785 #define    HPUX11_EXTERN_SENDFILE_TEST_CT  1
4786 static tTestDesc aHpux11_Extern_SendfileTests[] = {
4787   { TT_EGREP,    zHpux11_Extern_SendfileSelect0, (regex_t*)NULL }, };
4790  *  Fix Command Arguments for Hpux11_Extern_Sendfile
4791  */
4792 static const char* apzHpux11_Extern_SendfilePatch[] = {
4793     "format",
4794     "#ifndef _APP32_64BIT_OFF_T\n\
4795 %0#endif\n",
4796     (char*)NULL };
4798 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4800  *  Description of Hpux11_Extern_Sendpath fix
4801  */
4802 tSCC zHpux11_Extern_SendpathName[] =
4803      "hpux11_extern_sendpath";
4806  *  File name selection pattern
4807  */
4808 tSCC zHpux11_Extern_SendpathList[] =
4809   "sys/socket.h\0";
4811  *  Machine/OS name selection pattern
4812  */
4813 tSCC* apzHpux11_Extern_SendpathMachs[] = {
4814         "*-hp-hpux11.[12]*",
4815         (const char*)NULL };
4818  *  content selection pattern - do fix if pattern found
4819  */
4820 tSCC zHpux11_Extern_SendpathSelect0[] =
4821        "^[ \t]*extern sbsize_t sendpath.*\n\
4822 .*, int\\)\\);\n";
4824 #define    HPUX11_EXTERN_SENDPATH_TEST_CT  1
4825 static tTestDesc aHpux11_Extern_SendpathTests[] = {
4826   { TT_EGREP,    zHpux11_Extern_SendpathSelect0, (regex_t*)NULL }, };
4829  *  Fix Command Arguments for Hpux11_Extern_Sendpath
4830  */
4831 static const char* apzHpux11_Extern_SendpathPatch[] = {
4832     "format",
4833     "#ifndef _APP32_64BIT_OFF_T\n\
4834 %0#endif\n",
4835     (char*)NULL };
4837 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4839  *  Description of Hpux11_Fabsf fix
4840  */
4841 tSCC zHpux11_FabsfName[] =
4842      "hpux11_fabsf";
4845  *  File name selection pattern
4846  */
4847 tSCC zHpux11_FabsfList[] =
4848   "math.h\0";
4850  *  Machine/OS name selection pattern
4851  */
4852 tSCC* apzHpux11_FabsfMachs[] = {
4853         "*-hp-hpux11*",
4854         (const char*)NULL };
4857  *  content selection pattern - do fix if pattern found
4858  */
4859 tSCC zHpux11_FabsfSelect0[] =
4860        "^[ \t]*#[ \t]*define[ \t]+fabsf\\(.*";
4862 #define    HPUX11_FABSF_TEST_CT  1
4863 static tTestDesc aHpux11_FabsfTests[] = {
4864   { TT_EGREP,    zHpux11_FabsfSelect0, (regex_t*)NULL }, };
4867  *  Fix Command Arguments for Hpux11_Fabsf
4868  */
4869 static const char* apzHpux11_FabsfPatch[] = {
4870     "format",
4871     "#ifndef __cplusplus\n\
4872 %0\n\
4873 #endif",
4874     (char*)NULL };
4876 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4878  *  Description of Hpux11_Pthread_Pointer fix
4879  */
4880 tSCC zHpux11_Pthread_PointerName[] =
4881      "hpux11_pthread_pointer";
4884  *  File name selection pattern
4885  */
4886 tSCC zHpux11_Pthread_PointerList[] =
4887   "sys/pthread.h\0";
4889  *  Machine/OS name selection pattern
4890  */
4891 tSCC* apzHpux11_Pthread_PointerMachs[] = {
4892         "*-hp-hpux11.[0-3]*",
4893         (const char*)NULL };
4896  *  content selection pattern - do fix if pattern found
4897  */
4898 tSCC zHpux11_Pthread_PointerSelect0[] =
4899        "(void[ \t]*\\*)(m|c|rw)(_ptr)";
4901 #define    HPUX11_PTHREAD_POINTER_TEST_CT  1
4902 static tTestDesc aHpux11_Pthread_PointerTests[] = {
4903   { TT_EGREP,    zHpux11_Pthread_PointerSelect0, (regex_t*)NULL }, };
4906  *  Fix Command Arguments for Hpux11_Pthread_Pointer
4907  */
4908 static const char* apzHpux11_Pthread_PointerPatch[] = {
4909     "format",
4910     "long\t%2%3",
4911     (char*)NULL };
4913 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4915  *  Description of Hpux11_Pthread_Const fix
4916  */
4917 tSCC zHpux11_Pthread_ConstName[] =
4918      "hpux11_pthread_const";
4921  *  File name selection pattern
4922  */
4923 tSCC zHpux11_Pthread_ConstList[] =
4924   "sys/pthread.h\0";
4926  *  Machine/OS name selection pattern
4927  */
4928 tSCC* apzHpux11_Pthread_ConstMachs[] = {
4929         "*-hp-hpux11.[0-3]*",
4930         (const char*)NULL };
4933  *  content selection pattern - do fix if pattern found
4934  */
4935 tSCC zHpux11_Pthread_ConstSelect0[] =
4936        "^(#define[ \t]+__POINTER_SET[ \t0,]*)(.*\\))";
4938 #define    HPUX11_PTHREAD_CONST_TEST_CT  1
4939 static tTestDesc aHpux11_Pthread_ConstTests[] = {
4940   { TT_EGREP,    zHpux11_Pthread_ConstSelect0, (regex_t*)NULL }, };
4943  *  Fix Command Arguments for Hpux11_Pthread_Const
4944  */
4945 static const char* apzHpux11_Pthread_ConstPatch[] = {
4946     "format",
4947     "%11",
4948     (char*)NULL };
4950 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4952  *  Description of Hpux11_Size_T fix
4953  */
4954 tSCC zHpux11_Size_TName[] =
4955      "hpux11_size_t";
4958  *  File name selection pattern
4959  */
4960 #define zHpux11_Size_TList (char*)NULL
4962  *  Machine/OS name selection pattern
4963  */
4964 tSCC* apzHpux11_Size_TMachs[] = {
4965         "*-hp-hpux11*",
4966         (const char*)NULL };
4969  *  content selection pattern - do fix if pattern found
4970  */
4971 tSCC zHpux11_Size_TSelect0[] =
4972        "__size_t";
4974 #define    HPUX11_SIZE_T_TEST_CT  1
4975 static tTestDesc aHpux11_Size_TTests[] = {
4976   { TT_EGREP,    zHpux11_Size_TSelect0, (regex_t*)NULL }, };
4979  *  Fix Command Arguments for Hpux11_Size_T
4980  */
4981 static const char* apzHpux11_Size_TPatch[] = {
4982     "format",
4983     "_hpux_size_t",
4984     (char*)NULL };
4986 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4988  *  Description of Hpux11_Snprintf fix
4989  */
4990 tSCC zHpux11_SnprintfName[] =
4991      "hpux11_snprintf";
4994  *  File name selection pattern
4995  */
4996 tSCC zHpux11_SnprintfList[] =
4997   "stdio.h\0";
4999  *  Machine/OS name selection pattern
5000  */
5001 #define apzHpux11_SnprintfMachs (const char**)NULL
5004  *  content selection pattern - do fix if pattern found
5005  */
5006 tSCC zHpux11_SnprintfSelect0[] =
5007        "(extern int snprintf *\\(char *\\*, *(|__|_hpux_)size_t,) *(char *\\*, *\\.\\.\\.\\);)";
5009 #define    HPUX11_SNPRINTF_TEST_CT  1
5010 static tTestDesc aHpux11_SnprintfTests[] = {
5011   { TT_EGREP,    zHpux11_SnprintfSelect0, (regex_t*)NULL }, };
5014  *  Fix Command Arguments for Hpux11_Snprintf
5015  */
5016 static const char* apzHpux11_SnprintfPatch[] = {
5017     "format",
5018     "%1 const %3",
5019     (char*)NULL };
5021 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5023  *  Description of Hpux11_Vsnprintf fix
5024  */
5025 tSCC zHpux11_VsnprintfName[] =
5026      "hpux11_vsnprintf";
5029  *  File name selection pattern
5030  */
5031 tSCC zHpux11_VsnprintfList[] =
5032   "stdio.h\0";
5034  *  Machine/OS name selection pattern
5035  */
5036 #define apzHpux11_VsnprintfMachs (const char**)NULL
5039  *  content selection pattern - do fix if pattern found
5040  */
5041 tSCC zHpux11_VsnprintfSelect0[] =
5042        "(extern int vsnprintf\\(char \\*, _[hpux]*_size_t, const char \\*,) __va__list\\);";
5044 #define    HPUX11_VSNPRINTF_TEST_CT  1
5045 static tTestDesc aHpux11_VsnprintfTests[] = {
5046   { TT_EGREP,    zHpux11_VsnprintfSelect0, (regex_t*)NULL }, };
5049  *  Fix Command Arguments for Hpux11_Vsnprintf
5050  */
5051 static const char* apzHpux11_VsnprintfPatch[] = {
5052     "format",
5053     "%1 __va_list);",
5054     (char*)NULL };
5056 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5058  *  Description of Hpux_Vsscanf fix
5059  */
5060 tSCC zHpux_VsscanfName[] =
5061      "hpux_vsscanf";
5064  *  File name selection pattern
5065  */
5066 tSCC zHpux_VsscanfList[] =
5067   "stdio.h\0";
5069  *  Machine/OS name selection pattern
5070  */
5071 tSCC* apzHpux_VsscanfMachs[] = {
5072         "*-*-hpux*",
5073         (const char*)NULL };
5076  *  content selection pattern - do fix if pattern found
5077  */
5078 tSCC zHpux_VsscanfSelect0[] =
5079        "(extern int vsscanf\\()char";
5081 #define    HPUX_VSSCANF_TEST_CT  1
5082 static tTestDesc aHpux_VsscanfTests[] = {
5083   { TT_EGREP,    zHpux_VsscanfSelect0, (regex_t*)NULL }, };
5086  *  Fix Command Arguments for Hpux_Vsscanf
5087  */
5088 static const char* apzHpux_VsscanfPatch[] = {
5089     "format",
5090     "%1const char",
5091     (char*)NULL };
5093 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5095  *  Description of Hpux8_Bogus_Inlines fix
5096  */
5097 tSCC zHpux8_Bogus_InlinesName[] =
5098      "hpux8_bogus_inlines";
5101  *  File name selection pattern
5102  */
5103 tSCC zHpux8_Bogus_InlinesList[] =
5104   "math.h\0";
5106  *  Machine/OS name selection pattern
5107  */
5108 #define apzHpux8_Bogus_InlinesMachs (const char**)NULL
5111  *  content selection pattern - do fix if pattern found
5112  */
5113 tSCC zHpux8_Bogus_InlinesSelect0[] =
5114        "inline";
5117  *  content bypass pattern - skip fix if pattern found
5118  */
5119 tSCC zHpux8_Bogus_InlinesBypass0[] =
5120        "__GNUG__";
5122 #define    HPUX8_BOGUS_INLINES_TEST_CT  2
5123 static tTestDesc aHpux8_Bogus_InlinesTests[] = {
5124   { TT_NEGREP,   zHpux8_Bogus_InlinesBypass0, (regex_t*)NULL },
5125   { TT_EGREP,    zHpux8_Bogus_InlinesSelect0, (regex_t*)NULL }, };
5128  *  Fix Command Arguments for Hpux8_Bogus_Inlines
5129  */
5130 static const char* apzHpux8_Bogus_InlinesPatch[] = { sed_cmd_z,
5131     "-e", "s@inline int abs(int [a-z][a-z]*) {.*}@extern \"C\" int abs(int);@",
5132     "-e", "s@inline double abs(double [a-z][a-z]*) {.*}@@",
5133     "-e", "s@inline int sqr(int [a-z][a-z]*) {.*}@@",
5134     "-e", "s@inline double sqr(double [a-z][a-z]*) {.*}@@",
5135     (char*)NULL };
5137 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5139  *  Description of Hpux_C99_Intptr fix
5140  */
5141 tSCC zHpux_C99_IntptrName[] =
5142      "hpux_c99_intptr";
5145  *  File name selection pattern
5146  */
5147 tSCC zHpux_C99_IntptrList[] =
5148   "stdint-hpux11.h\0stdint.h\0";
5150  *  Machine/OS name selection pattern
5151  */
5152 tSCC* apzHpux_C99_IntptrMachs[] = {
5153         "*-hp-hpux11.3*",
5154         (const char*)NULL };
5155 #define HPUX_C99_INTPTR_TEST_CT  0
5156 #define aHpux_C99_IntptrTests   (tTestDesc*)NULL
5159  *  Fix Command Arguments for Hpux_C99_Intptr
5160  */
5161 static const char* apzHpux_C99_IntptrPatch[] = { sed_cmd_z,
5162     "-e", "s@^[ \t]*#[ \t]*define[ \t]*PTRDIFF_MAX[ \t]*INT32_MAX[ \t]*$@#define PTRDIFF_MAX (2147483647l)@",
5163     "-e", "s@^[ \t]*#[ \t]*define[ \t]*PTRDIFF_MIN[ \t]*INT32_MIN[ \t]*$@#define PTRDIFF_MIN (-PTRDIFF_MAX - 1)@",
5164     "-e", "s@^[ \t]*#[ \t]*define[ \t]*INTPTR_MAX[ \t]*INT32_MAX[ \t]*$@#define INTPTR_MAX (2147483647l)@",
5165     "-e", "s@^[ \t]*#[ \t]*define[ \t]*INTPTR_MIN[ \t]*INT32_MIN[ \t]*$@#define INTPTR_MIN (-INTPTR_MAX - 1)@",
5166     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINTPTR_MAX[ \t]*UINT32_MAX[ \t]*$@#define UINTPTR_MAX (4294967295ul)@",
5167     "-e", "s@^[ \t]*#[ \t]*define[ \t]*SIZE_MAX[ \t]*UINT32_MAX[ \t]*$@#define SIZE_MAX (4294967295ul)@",
5168     (char*)NULL };
5170 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5172  *  Description of Hpux_C99_Inttypes fix
5173  */
5174 tSCC zHpux_C99_InttypesName[] =
5175      "hpux_c99_inttypes";
5178  *  File name selection pattern
5179  */
5180 tSCC zHpux_C99_InttypesList[] =
5181   "inttypes.h\0stdint-hpux11.h\0stdint.h\0";
5183  *  Machine/OS name selection pattern
5184  */
5185 tSCC* apzHpux_C99_InttypesMachs[] = {
5186         "*-hp-hpux11.[23]*",
5187         (const char*)NULL };
5188 #define HPUX_C99_INTTYPES_TEST_CT  0
5189 #define aHpux_C99_InttypesTests   (tTestDesc*)NULL
5192  *  Fix Command Arguments for Hpux_C99_Inttypes
5193  */
5194 static const char* apzHpux_C99_InttypesPatch[] = { sed_cmd_z,
5195     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT8_C(__c)[ \t]*__CONCAT_U__(__c)[ \t]*$@#define UINT8_C(__c) (__c)@",
5196     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT16_C(__c)[ \t]*__CONCAT_U__(__c)[ \t]*$@#define UINT16_C(__c) (__c)@",
5197     "-e", "s@^[ \t]*#[ \t]*define[ \t]*INT32_C(__c)[ \t]*__CONCAT__(__c,l)[ \t]*$@#define INT32_C(__c) (__c)@",
5198     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT32_C(__c)[ \t].*$@#define UINT32_C(__c) __CONCAT__(__c,u)@",
5199     (char*)NULL };
5201 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5203  *  Description of Hpux_C99_Inttypes2 fix
5204  */
5205 tSCC zHpux_C99_Inttypes2Name[] =
5206      "hpux_c99_inttypes2";
5209  *  File name selection pattern
5210  */
5211 tSCC zHpux_C99_Inttypes2List[] =
5212   "stdint-hpux11.h\0stdint.h\0";
5214  *  Machine/OS name selection pattern
5215  */
5216 tSCC* apzHpux_C99_Inttypes2Machs[] = {
5217         "*-hp-hpux11.2*",
5218         (const char*)NULL };
5219 #define HPUX_C99_INTTYPES2_TEST_CT  0
5220 #define aHpux_C99_Inttypes2Tests   (tTestDesc*)NULL
5223  *  Fix Command Arguments for Hpux_C99_Inttypes2
5224  */
5225 static const char* apzHpux_C99_Inttypes2Patch[] = { sed_cmd_z,
5226     "-e", "s@^[ \t]*#[ \t]*define[ \t]*INT8_C(__c)[ \t]*((signed char)(__c))[ \t]*$@#define INT8_C(__c) (__c)@",
5227     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT8_C(__c)[ \t]*((unsigned char)(__c))[ \t]*$@#define UINT8_C(__c) (__c)@",
5228     "-e", "s@^[ \t]*#[ \t]*define[ \t]*INT16_C(__c)[ \t]*((short)(__c))[ \t]*$@#define INT16_C(__c) (__c)@",
5229     "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT16_C(__c)[ \t]*((unsigned short)(__c))[ \t]*$@#define UINT16_C(__c) (__c)@",
5230     (char*)NULL };
5232 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5234  *  Description of Hpux_C99_Inttypes3 fix
5235  */
5236 tSCC zHpux_C99_Inttypes3Name[] =
5237      "hpux_c99_inttypes3";
5240  *  File name selection pattern
5241  */
5242 tSCC zHpux_C99_Inttypes3List[] =
5243   "inttypes.h\0";
5245  *  Machine/OS name selection pattern
5246  */
5247 tSCC* apzHpux_C99_Inttypes3Machs[] = {
5248         "hppa*-hp-hpux11*",
5249         (const char*)NULL };
5252  *  content selection pattern - do fix if pattern found
5253  */
5254 tSCC zHpux_C99_Inttypes3Select0[] =
5255        "#define[ \t]INTPTR_MAX[ \t]*\n\
5256 #define[ \t]UINTPTR_MAX[ \t]*\n";
5258 #define    HPUX_C99_INTTYPES3_TEST_CT  1
5259 static tTestDesc aHpux_C99_Inttypes3Tests[] = {
5260   { TT_EGREP,    zHpux_C99_Inttypes3Select0, (regex_t*)NULL }, };
5263  *  Fix Command Arguments for Hpux_C99_Inttypes3
5264  */
5265 static const char* apzHpux_C99_Inttypes3Patch[] = {
5266     "format",
5267     "#undef SIZE_MAX\n\
5268 #define SIZE_MAX __SIZE_MAX__\n\
5269 #ifdef __INTPTR_MAX__\n\
5270 # undef INTPTR_MAX\n\
5271 # define INTPTR_MAX __INTPTR_MAX__\n\
5272 # undef INTPTR_MIN\n\
5273 # define INTPTR_MIN (-INTPTR_MAX - 1)\n\
5274 #endif\n\
5275 #ifdef __UINTPTR_MAX__\n\
5276 # undef UINTPTR_MAX\n\
5277 # define UINTPTR_MAX __UINTPTR_MAX__\n\
5278 #endif\n",
5279     (char*)NULL };
5281 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5283  *  Description of Hpux_C99_Inttypes4 fix
5284  */
5285 tSCC zHpux_C99_Inttypes4Name[] =
5286      "hpux_c99_inttypes4";
5289  *  File name selection pattern
5290  */
5291 tSCC zHpux_C99_Inttypes4List[] =
5292   "inttypes.h\0";
5294  *  Machine/OS name selection pattern
5295  */
5296 tSCC* apzHpux_C99_Inttypes4Machs[] = {
5297         "hppa*-hp-hpux11.[01]*",
5298         (const char*)NULL };
5299 #define HPUX_C99_INTTYPES4_TEST_CT  0
5300 #define aHpux_C99_Inttypes4Tests   (tTestDesc*)NULL
5303  *  Fix Command Arguments for Hpux_C99_Inttypes4
5304  */
5305 static const char* apzHpux_C99_Inttypes4Patch[] = { sed_cmd_z,
5306     "-e", "/^[ \t]*#[ \t]*define[ \t]*SCNxMAX[ \t]*SCNx64/a\\\n\
5307 #define SCNuMAX \t SCNu64\n",
5308     "-e", "/^[ \t]*#[ \t]*define[ \t]*SCNxMAX[ \t]*SCNx32/a\\\n\
5309 #define SCNuMAX \t SCNu32\n",
5310     (char*)NULL };
5312 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5314  *  Description of Hpux_Ctype_Macros fix
5315  */
5316 tSCC zHpux_Ctype_MacrosName[] =
5317      "hpux_ctype_macros";
5320  *  File name selection pattern
5321  */
5322 tSCC zHpux_Ctype_MacrosList[] =
5323   "ctype.h\0";
5325  *  Machine/OS name selection pattern
5326  */
5327 #define apzHpux_Ctype_MacrosMachs (const char**)NULL
5330  *  content selection pattern - do fix if pattern found
5331  */
5332 tSCC zHpux_Ctype_MacrosSelect0[] =
5333        "((: |\\()__SB_masks \\? )(__SB_masks\\[__(alnum|c)\\] & _IS)";
5335 #define    HPUX_CTYPE_MACROS_TEST_CT  1
5336 static tTestDesc aHpux_Ctype_MacrosTests[] = {
5337   { TT_EGREP,    zHpux_Ctype_MacrosSelect0, (regex_t*)NULL }, };
5340  *  Fix Command Arguments for Hpux_Ctype_Macros
5341  */
5342 static const char* apzHpux_Ctype_MacrosPatch[] = {
5343     "format",
5344     "%1(int)%3",
5345     (char*)NULL };
5347 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5349  *  Description of Hpux_Extern_Errno fix
5350  */
5351 tSCC zHpux_Extern_ErrnoName[] =
5352      "hpux_extern_errno";
5355  *  File name selection pattern
5356  */
5357 tSCC zHpux_Extern_ErrnoList[] =
5358   "errno.h\0";
5360  *  Machine/OS name selection pattern
5361  */
5362 tSCC* apzHpux_Extern_ErrnoMachs[] = {
5363         "*-hp-hpux10.*",
5364         "*-hp-hpux11.[0-2]*",
5365         (const char*)NULL };
5368  *  content selection pattern - do fix if pattern found
5369  */
5370 tSCC zHpux_Extern_ErrnoSelect0[] =
5371        "^[ \t]*extern int errno;$";
5373 #define    HPUX_EXTERN_ERRNO_TEST_CT  1
5374 static tTestDesc aHpux_Extern_ErrnoTests[] = {
5375   { TT_EGREP,    zHpux_Extern_ErrnoSelect0, (regex_t*)NULL }, };
5378  *  Fix Command Arguments for Hpux_Extern_Errno
5379  */
5380 static const char* apzHpux_Extern_ErrnoPatch[] = {
5381     "format",
5382     "#ifdef __cplusplus\n\
5383 extern \"C\" {\n\
5384 #endif\n\
5385 %0\n\
5386 #ifdef __cplusplus\n\
5387 }\n\
5388 #endif",
5389     (char*)NULL };
5391 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5393  *  Description of Hpux_Htonl fix
5394  */
5395 tSCC zHpux_HtonlName[] =
5396      "hpux_htonl";
5399  *  File name selection pattern
5400  */
5401 tSCC zHpux_HtonlList[] =
5402   "netinet/in.h\0";
5404  *  Machine/OS name selection pattern
5405  */
5406 #define apzHpux_HtonlMachs (const char**)NULL
5409  *  content selection pattern - do fix if pattern found
5410  */
5411 tSCC zHpux_HtonlSelect0[] =
5412        "#ifndef _XOPEN_SOURCE_EXTENDED[ \t]*\n\
5413 (/\\*\n\
5414  \\* Macros for number representation conversion\\.\n\
5415  \\*/\n\
5416 #ifndef ntohl)";
5418 #define    HPUX_HTONL_TEST_CT  1
5419 static tTestDesc aHpux_HtonlTests[] = {
5420   { TT_EGREP,    zHpux_HtonlSelect0, (regex_t*)NULL }, };
5423  *  Fix Command Arguments for Hpux_Htonl
5424  */
5425 static const char* apzHpux_HtonlPatch[] = {
5426     "format",
5427     "#if 1\n\
5428 %1",
5429     (char*)NULL };
5431 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5433  *  Description of Hpux_Imaginary_I fix
5434  */
5435 tSCC zHpux_Imaginary_IName[] =
5436      "hpux_imaginary_i";
5439  *  File name selection pattern
5440  */
5441 tSCC zHpux_Imaginary_IList[] =
5442   "complex.h\0";
5444  *  Machine/OS name selection pattern
5445  */
5446 tSCC* apzHpux_Imaginary_IMachs[] = {
5447         "ia64-hp-hpux11.*",
5448         (const char*)NULL };
5451  *  content selection pattern - do fix if pattern found
5452  */
5453 tSCC zHpux_Imaginary_ISelect0[] =
5454        "^[ \t]*#[ \t]*define[ \t]*_Complex_I.*";
5456 #define    HPUX_IMAGINARY_I_TEST_CT  1
5457 static tTestDesc aHpux_Imaginary_ITests[] = {
5458   { TT_EGREP,    zHpux_Imaginary_ISelect0, (regex_t*)NULL }, };
5461  *  Fix Command Arguments for Hpux_Imaginary_I
5462  */
5463 static const char* apzHpux_Imaginary_IPatch[] = {
5464     "format",
5465     "#define _Complex_I (__extension__ 1.0iF)",
5466     (char*)NULL };
5468 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5470  *  Description of Hpux_Inttype_Int8_T fix
5471  */
5472 tSCC zHpux_Inttype_Int8_TName[] =
5473      "hpux_inttype_int8_t";
5476  *  File name selection pattern
5477  */
5478 tSCC zHpux_Inttype_Int8_TList[] =
5479   "sys/_inttypes.h\0";
5481  *  Machine/OS name selection pattern
5482  */
5483 tSCC* apzHpux_Inttype_Int8_TMachs[] = {
5484         "*-hp-hpux1[01].*",
5485         (const char*)NULL };
5488  *  content selection pattern - do fix if pattern found
5489  */
5490 tSCC zHpux_Inttype_Int8_TSelect0[] =
5491        "^[ \t]*typedef[ \t]*char[ \t]*int(_least){0,1}8_t.*";
5493 #define    HPUX_INTTYPE_INT8_T_TEST_CT  1
5494 static tTestDesc aHpux_Inttype_Int8_TTests[] = {
5495   { TT_EGREP,    zHpux_Inttype_Int8_TSelect0, (regex_t*)NULL }, };
5498  *  Fix Command Arguments for Hpux_Inttype_Int8_T
5499  */
5500 static const char* apzHpux_Inttype_Int8_TPatch[] = {
5501     "format",
5502     "typedef signed char int%18_t;",
5503     (char*)NULL };
5505 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5507  *  Description of Hpux_Long_Double fix
5508  */
5509 tSCC zHpux_Long_DoubleName[] =
5510      "hpux_long_double";
5513  *  File name selection pattern
5514  */
5515 tSCC zHpux_Long_DoubleList[] =
5516   "stdlib.h\0";
5518  *  Machine/OS name selection pattern
5519  */
5520 tSCC* apzHpux_Long_DoubleMachs[] = {
5521         "*-*-hpux10*",
5522         "*-*-hpux11.[012]*",
5523         (const char*)NULL };
5526  *  content selection pattern - do fix if pattern found
5527  */
5528 tSCC zHpux_Long_DoubleSelect0[] =
5529        "extern[ \t]long_double[ \t]strtold";
5532  *  content bypass pattern - skip fix if pattern found
5533  */
5534 tSCC zHpux_Long_DoubleBypass0[] =
5535        "long_double_t";
5537 #define    HPUX_LONG_DOUBLE_TEST_CT  2
5538 static tTestDesc aHpux_Long_DoubleTests[] = {
5539   { TT_NEGREP,   zHpux_Long_DoubleBypass0, (regex_t*)NULL },
5540   { TT_EGREP,    zHpux_Long_DoubleSelect0, (regex_t*)NULL }, };
5543  *  Fix Command Arguments for Hpux_Long_Double
5544  */
5545 static const char* apzHpux_Long_DoublePatch[] = { sed_cmd_z,
5546     "-e", "/^#[ \t]*ifndef _LONG_DOUBLE/,/\\/\\* _LONG_DOUBLE \\*\\//D",
5547     "-e", "s/long_double/long double/g",
5548     (char*)NULL };
5550 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5552  *  Description of Hpux_Long_Double_2 fix
5553  */
5554 tSCC zHpux_Long_Double_2Name[] =
5555      "hpux_long_double_2";
5558  *  File name selection pattern
5559  */
5560 tSCC zHpux_Long_Double_2List[] =
5561   "stdlib.h\0";
5563  *  Machine/OS name selection pattern
5564  */
5565 tSCC* apzHpux_Long_Double_2Machs[] = {
5566         "hppa*-*-hpux11.3*",
5567         (const char*)NULL };
5570  *  content selection pattern - do fix if pattern found
5571  */
5572 tSCC zHpux_Long_Double_2Select0[] =
5573        "#[ \t]*if[ \t]*!defined\\(__ia64\\) \\|\\| defined\\(_PROTOTYPES\\) \\|\\| defined\\(_LONG_DOUBLE_STRUCT\\)";
5575 #define    HPUX_LONG_DOUBLE_2_TEST_CT  1
5576 static tTestDesc aHpux_Long_Double_2Tests[] = {
5577   { TT_EGREP,    zHpux_Long_Double_2Select0, (regex_t*)NULL }, };
5580  *  Fix Command Arguments for Hpux_Long_Double_2
5581  */
5582 static const char* apzHpux_Long_Double_2Patch[] = {
5583     "format",
5584     "#  if !defined(_PROTOTYPES) || defined(_LONG_DOUBLE_STRUCT)",
5585     (char*)NULL };
5587 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5589  *  Description of Hpux_Pthread_Initializers fix
5590  */
5591 tSCC zHpux_Pthread_InitializersName[] =
5592      "hpux_pthread_initializers";
5595  *  File name selection pattern
5596  */
5597 tSCC zHpux_Pthread_InitializersList[] =
5598   "sys/pthread.h\0";
5600  *  Machine/OS name selection pattern
5601  */
5602 tSCC* apzHpux_Pthread_InitializersMachs[] = {
5603         "*-hp-hpux11.[0-3]*",
5604         (const char*)NULL };
5605 #define HPUX_PTHREAD_INITIALIZERS_TEST_CT  0
5606 #define aHpux_Pthread_InitializersTests   (tTestDesc*)NULL
5609  *  Fix Command Arguments for Hpux_Pthread_Initializers
5610  */
5611 static const char* apzHpux_Pthread_InitializersPatch[] = { sed_cmd_z,
5612     "-e", "s@^[ \t]*1, 1, 1, 1,[ \t]*\\\\@\t{ 1, 1, 1, 1 },\t\t\t\t\t\t\t\\\\@",
5613     "-e", "s@^[ \t]*1,[ \t]*\\\\@\t{ 1, 0 }@",
5614     "-e", "/^[ \t]*0$/d",
5615     "-e", "s@__PTHREAD_MUTEX_VALID, 0@{ __PTHREAD_MUTEX_VALID, 0 }@",
5616     "-e", "s@^[ \t]*0, 0, -1, 0,[ \t]*\\\\@\t{ 0, 0, -1, 0 },\t\t\t\t\t\t\\\\@",
5617     "-e", "s@0, __LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\@{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@",
5618     "-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\\\\@",
5619     "-e", "s@^[ \t]*0, 0[ \t]*\\\\@\t{ 0, 0 }\t\t\t\t\t\t\t\\\\@",
5620     "-e", "s@__PTHREAD_COND_VALID, 0@{ __PTHREAD_COND_VALID, 0 }@",
5621     "-e", "s@__LWP_COND_VALID, 0,[ \t]*\\\\@{ __LWP_COND_VALID, 0 },\t\t\t\t\t\\\\@",
5622     "-e", "s@__PTHREAD_RWLOCK_VALID, 0@{ __PTHREAD_RWLOCK_VALID, 0 }@",
5623     "-e", "s@__LWP_RWLOCK_VALID, 0,[ \t]*\\\\@{ __LWP_RWLOCK_VALID, 0 },\t\t\t\t\t\\\\@",
5624     "-e", "s@^[ \t]*0, 0, 0, 0, 0, 0, 0[ \t]*\\\\@\t{ 0, 0, 0, 0, 0 }, { 0, 0}\t\t\t\t\t\\\\@",
5625     (char*)NULL };
5627 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5629  *  Description of Hpux_Spu_Info fix
5630  */
5631 tSCC zHpux_Spu_InfoName[] =
5632      "hpux_spu_info";
5635  *  File name selection pattern
5636  */
5637 tSCC zHpux_Spu_InfoList[] =
5638   "ia64/sys/getppdp.h\0*/sys/getppdp.h\0";
5640  *  Machine/OS name selection pattern
5641  */
5642 tSCC* apzHpux_Spu_InfoMachs[] = {
5643         "*-hp-hpux*",
5644         (const char*)NULL };
5647  *  content selection pattern - do fix if pattern found
5648  */
5649 tSCC zHpux_Spu_InfoSelect0[] =
5650        "^.*extern.*spu_info.*";
5652 #define    HPUX_SPU_INFO_TEST_CT  1
5653 static tTestDesc aHpux_Spu_InfoTests[] = {
5654   { TT_EGREP,    zHpux_Spu_InfoSelect0, (regex_t*)NULL }, };
5657  *  Fix Command Arguments for Hpux_Spu_Info
5658  */
5659 static const char* apzHpux_Spu_InfoPatch[] = {
5660     "format",
5661     "#ifdef _KERNEL\n\
5662 %0\n\
5663 #endif",
5664     (char*)NULL };
5666 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5668  *  Description of Hpux_Stdint_Least_Fast fix
5669  */
5670 tSCC zHpux_Stdint_Least_FastName[] =
5671      "hpux_stdint_least_fast";
5674  *  File name selection pattern
5675  */
5676 tSCC zHpux_Stdint_Least_FastList[] =
5677   "stdint-hpux11.h\0stdint.h\0";
5679  *  Machine/OS name selection pattern
5680  */
5681 tSCC* apzHpux_Stdint_Least_FastMachs[] = {
5682         "*-hp-hpux11.2*",
5683         (const char*)NULL };
5686  *  content selection pattern - do fix if pattern found
5687  */
5688 tSCC zHpux_Stdint_Least_FastSelect0[] =
5689        "^[ \t]*#[ \t]*define[ \t]+UINT_(LEAST|FAST)64_MAX[ \t]+ULLONG_MAX";
5691 #define    HPUX_STDINT_LEAST_FAST_TEST_CT  1
5692 static tTestDesc aHpux_Stdint_Least_FastTests[] = {
5693   { TT_EGREP,    zHpux_Stdint_Least_FastSelect0, (regex_t*)NULL }, };
5696  *  Fix Command Arguments for Hpux_Stdint_Least_Fast
5697  */
5698 static const char* apzHpux_Stdint_Least_FastPatch[] = {
5699     "format",
5700     "#  define\tUINT_%164_MAX\t__UINT64_MAX__",
5701     (char*)NULL };
5703 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5705  *  Description of Hpux_Longjmp fix
5706  */
5707 tSCC zHpux_LongjmpName[] =
5708      "hpux_longjmp";
5711  *  File name selection pattern
5712  */
5713 tSCC zHpux_LongjmpList[] =
5714   "setjmp.h\0";
5716  *  Machine/OS name selection pattern
5717  */
5718 tSCC* apzHpux_LongjmpMachs[] = {
5719         "*-hp-hpux*",
5720         (const char*)NULL };
5723  *  content selection pattern - do fix if pattern found
5724  */
5725 tSCC zHpux_LongjmpSelect0[] =
5726        "^[ \t]*extern[ \t]+void[ \t]+.*longjmp[ \t]*(__\\(\\(.*int\\)\\)|\\(.*int\\)|\\(\\))";
5728 #define    HPUX_LONGJMP_TEST_CT  1
5729 static tTestDesc aHpux_LongjmpTests[] = {
5730   { TT_EGREP,    zHpux_LongjmpSelect0, (regex_t*)NULL }, };
5733  *  Fix Command Arguments for Hpux_Longjmp
5734  */
5735 static const char* apzHpux_LongjmpPatch[] = {
5736     "format",
5737     "%0 __attribute__ ((__noreturn__))",
5738     (char*)NULL };
5740 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5742  *  Description of Hpux_Systime fix
5743  */
5744 tSCC zHpux_SystimeName[] =
5745      "hpux_systime";
5748  *  File name selection pattern
5749  */
5750 tSCC zHpux_SystimeList[] =
5751   "sys/time.h\0";
5753  *  Machine/OS name selection pattern
5754  */
5755 #define apzHpux_SystimeMachs (const char**)NULL
5758  *  content selection pattern - do fix if pattern found
5759  */
5760 tSCC zHpux_SystimeSelect0[] =
5761        "^extern struct sigevent;";
5763 #define    HPUX_SYSTIME_TEST_CT  1
5764 static tTestDesc aHpux_SystimeTests[] = {
5765   { TT_EGREP,    zHpux_SystimeSelect0, (regex_t*)NULL }, };
5768  *  Fix Command Arguments for Hpux_Systime
5769  */
5770 static const char* apzHpux_SystimePatch[] = {
5771     "format",
5772     "struct sigevent;",
5773     (char*)NULL };
5775 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5777  *  Description of Huge_Val_Hex fix
5778  */
5779 tSCC zHuge_Val_HexName[] =
5780      "huge_val_hex";
5783  *  File name selection pattern
5784  */
5785 tSCC zHuge_Val_HexList[] =
5786   "bits/huge_val.h\0*/bits/huge_val.h\0";
5788  *  Machine/OS name selection pattern
5789  */
5790 #define apzHuge_Val_HexMachs (const char**)NULL
5793  *  content selection pattern - do fix if pattern found
5794  */
5795 tSCC zHuge_Val_HexSelect0[] =
5796        "^#[ \t]*define[ \t]*HUGE_VAL[ \t].*0x1\\.0p.*";
5799  *  content bypass pattern - skip fix if pattern found
5800  */
5801 tSCC zHuge_Val_HexBypass0[] =
5802        "__builtin_huge_val";
5804 #define    HUGE_VAL_HEX_TEST_CT  2
5805 static tTestDesc aHuge_Val_HexTests[] = {
5806   { TT_NEGREP,   zHuge_Val_HexBypass0, (regex_t*)NULL },
5807   { TT_EGREP,    zHuge_Val_HexSelect0, (regex_t*)NULL }, };
5810  *  Fix Command Arguments for Huge_Val_Hex
5811  */
5812 static const char* apzHuge_Val_HexPatch[] = {
5813     "format",
5814     "#define HUGE_VAL (__builtin_huge_val())\n",
5815     (char*)NULL };
5817 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5819  *  Description of Huge_Valf_Hex fix
5820  */
5821 tSCC zHuge_Valf_HexName[] =
5822      "huge_valf_hex";
5825  *  File name selection pattern
5826  */
5827 tSCC zHuge_Valf_HexList[] =
5828   "bits/huge_val.h\0*/bits/huge_val.h\0";
5830  *  Machine/OS name selection pattern
5831  */
5832 #define apzHuge_Valf_HexMachs (const char**)NULL
5835  *  content selection pattern - do fix if pattern found
5836  */
5837 tSCC zHuge_Valf_HexSelect0[] =
5838        "^#[ \t]*define[ \t]*HUGE_VALF[ \t].*0x1\\.0p.*";
5841  *  content bypass pattern - skip fix if pattern found
5842  */
5843 tSCC zHuge_Valf_HexBypass0[] =
5844        "__builtin_huge_valf";
5846 #define    HUGE_VALF_HEX_TEST_CT  2
5847 static tTestDesc aHuge_Valf_HexTests[] = {
5848   { TT_NEGREP,   zHuge_Valf_HexBypass0, (regex_t*)NULL },
5849   { TT_EGREP,    zHuge_Valf_HexSelect0, (regex_t*)NULL }, };
5852  *  Fix Command Arguments for Huge_Valf_Hex
5853  */
5854 static const char* apzHuge_Valf_HexPatch[] = {
5855     "format",
5856     "#define HUGE_VALF (__builtin_huge_valf())\n",
5857     (char*)NULL };
5859 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5861  *  Description of Huge_Vall_Hex fix
5862  */
5863 tSCC zHuge_Vall_HexName[] =
5864      "huge_vall_hex";
5867  *  File name selection pattern
5868  */
5869 tSCC zHuge_Vall_HexList[] =
5870   "bits/huge_val.h\0*/bits/huge_val.h\0";
5872  *  Machine/OS name selection pattern
5873  */
5874 #define apzHuge_Vall_HexMachs (const char**)NULL
5877  *  content selection pattern - do fix if pattern found
5878  */
5879 tSCC zHuge_Vall_HexSelect0[] =
5880        "^#[ \t]*define[ \t]*HUGE_VALL[ \t].*0x1\\.0p.*";
5883  *  content bypass pattern - skip fix if pattern found
5884  */
5885 tSCC zHuge_Vall_HexBypass0[] =
5886        "__builtin_huge_vall";
5888 #define    HUGE_VALL_HEX_TEST_CT  2
5889 static tTestDesc aHuge_Vall_HexTests[] = {
5890   { TT_NEGREP,   zHuge_Vall_HexBypass0, (regex_t*)NULL },
5891   { TT_EGREP,    zHuge_Vall_HexSelect0, (regex_t*)NULL }, };
5894  *  Fix Command Arguments for Huge_Vall_Hex
5895  */
5896 static const char* apzHuge_Vall_HexPatch[] = {
5897     "format",
5898     "#define HUGE_VALL (__builtin_huge_vall())\n",
5899     (char*)NULL };
5901 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5903  *  Description of Int_Abort_Free_And_Exit fix
5904  */
5905 tSCC zInt_Abort_Free_And_ExitName[] =
5906      "int_abort_free_and_exit";
5909  *  File name selection pattern
5910  */
5911 tSCC zInt_Abort_Free_And_ExitList[] =
5912   "stdlib.h\0";
5914  *  Machine/OS name selection pattern
5915  */
5916 #define apzInt_Abort_Free_And_ExitMachs (const char**)NULL
5919  *  content selection pattern - do fix if pattern found
5920  */
5921 tSCC zInt_Abort_Free_And_ExitSelect0[] =
5922        "int[ \t]+(abort|free|exit)[ \t]*\\(";
5925  *  content bypass pattern - skip fix if pattern found
5926  */
5927 tSCC zInt_Abort_Free_And_ExitBypass0[] =
5928        "_CLASSIC_ANSI_TYPES";
5930 #define    INT_ABORT_FREE_AND_EXIT_TEST_CT  2
5931 static tTestDesc aInt_Abort_Free_And_ExitTests[] = {
5932   { TT_NEGREP,   zInt_Abort_Free_And_ExitBypass0, (regex_t*)NULL },
5933   { TT_EGREP,    zInt_Abort_Free_And_ExitSelect0, (regex_t*)NULL }, };
5936  *  Fix Command Arguments for Int_Abort_Free_And_Exit
5937  */
5938 static const char* apzInt_Abort_Free_And_ExitPatch[] = {
5939     "format",
5940     "void\t%1(",
5941     (char*)NULL };
5943 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5945  *  Description of Io_Quotes_Def fix
5946  */
5947 tSCC zIo_Quotes_DefName[] =
5948      "io_quotes_def";
5951  *  File name selection pattern
5952  */
5953 #define zIo_Quotes_DefList (char*)NULL
5955  *  Machine/OS name selection pattern
5956  */
5957 #define apzIo_Quotes_DefMachs (const char**)NULL
5960  *  content selection pattern - do fix if pattern found
5961  */
5962 tSCC zIo_Quotes_DefSelect0[] =
5963        "define[ \t]+[A-Z0-9_]+IO[A-Z]*\\([a-zA-Z][,)]";
5965 #define    IO_QUOTES_DEF_TEST_CT  1
5966 static tTestDesc aIo_Quotes_DefTests[] = {
5967   { TT_EGREP,    zIo_Quotes_DefSelect0, (regex_t*)NULL }, };
5970  *  Fix Command Arguments for Io_Quotes_Def
5971  */
5972 static const char* apzIo_Quotes_DefPatch[] = {
5973     "char_macro_def",
5974     "IO",
5975     (char*)NULL };
5977 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5979  *  Description of Io_Quotes_Use fix
5980  */
5981 tSCC zIo_Quotes_UseName[] =
5982      "io_quotes_use";
5985  *  File name selection pattern
5986  */
5987 #define zIo_Quotes_UseList (char*)NULL
5989  *  Machine/OS name selection pattern
5990  */
5991 #define apzIo_Quotes_UseMachs (const char**)NULL
5994  *  content selection pattern - do fix if pattern found
5995  */
5996 tSCC zIo_Quotes_UseSelect0[] =
5997        "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+IO[A-Z]*[ \t]*\\( *[^,']";
5999 #define    IO_QUOTES_USE_TEST_CT  1
6000 static tTestDesc aIo_Quotes_UseTests[] = {
6001   { TT_EGREP,    zIo_Quotes_UseSelect0, (regex_t*)NULL }, };
6004  *  Fix Command Arguments for Io_Quotes_Use
6005  */
6006 static const char* apzIo_Quotes_UsePatch[] = {
6007     "char_macro_use",
6008     "IO",
6009     (char*)NULL };
6011 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6013  *  Description of Ip_Missing_Semi fix
6014  */
6015 tSCC zIp_Missing_SemiName[] =
6016      "ip_missing_semi";
6019  *  File name selection pattern
6020  */
6021 tSCC zIp_Missing_SemiList[] =
6022   "netinet/ip.h\0";
6024  *  Machine/OS name selection pattern
6025  */
6026 #define apzIp_Missing_SemiMachs (const char**)NULL
6029  *  content selection pattern - do fix if pattern found
6030  */
6031 tSCC zIp_Missing_SemiSelect0[] =
6032        "}$";
6034 #define    IP_MISSING_SEMI_TEST_CT  1
6035 static tTestDesc aIp_Missing_SemiTests[] = {
6036   { TT_EGREP,    zIp_Missing_SemiSelect0, (regex_t*)NULL }, };
6039  *  Fix Command Arguments for Ip_Missing_Semi
6040  */
6041 static const char* apzIp_Missing_SemiPatch[] = { sed_cmd_z,
6042     "-e", "/^struct/,/^};/s/}$/};/",
6043     (char*)NULL };
6045 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6047  *  Description of Irix_Limits_Const fix
6048  */
6049 tSCC zIrix_Limits_ConstName[] =
6050      "irix_limits_const";
6053  *  File name selection pattern
6054  */
6055 tSCC zIrix_Limits_ConstList[] =
6056   "fixinc-test-limits.h\0limits.h\0";
6058  *  Machine/OS name selection pattern
6059  */
6060 #define apzIrix_Limits_ConstMachs (const char**)NULL
6063  *  content selection pattern - do fix if pattern found
6064  */
6065 tSCC zIrix_Limits_ConstSelect0[] =
6066        "^extern const ";
6068 #define    IRIX_LIMITS_CONST_TEST_CT  1
6069 static tTestDesc aIrix_Limits_ConstTests[] = {
6070   { TT_EGREP,    zIrix_Limits_ConstSelect0, (regex_t*)NULL }, };
6073  *  Fix Command Arguments for Irix_Limits_Const
6074  */
6075 static const char* apzIrix_Limits_ConstPatch[] = {
6076     "format",
6077     "extern __const ",
6078     (char*)NULL };
6080 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6082  *  Description of Irix_Stdio_Va_List fix
6083  */
6084 tSCC zIrix_Stdio_Va_ListName[] =
6085      "irix_stdio_va_list";
6088  *  File name selection pattern
6089  */
6090 tSCC zIrix_Stdio_Va_ListList[] =
6091   "stdio.h\0";
6093  *  Machine/OS name selection pattern
6094  */
6095 #define apzIrix_Stdio_Va_ListMachs (const char**)NULL
6098  *  content selection pattern - do fix if pattern found
6099  */
6100 tSCC zIrix_Stdio_Va_ListSelect0[] =
6101        "/\\* va_list \\*/ char \\*";
6103 #define    IRIX_STDIO_VA_LIST_TEST_CT  1
6104 static tTestDesc aIrix_Stdio_Va_ListTests[] = {
6105   { TT_EGREP,    zIrix_Stdio_Va_ListSelect0, (regex_t*)NULL }, };
6108  *  Fix Command Arguments for Irix_Stdio_Va_List
6109  */
6110 static const char* apzIrix_Stdio_Va_ListPatch[] = {
6111     "format",
6112     "__gnuc_va_list",
6113     (char*)NULL };
6115 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6117  *  Description of Kandr_Concat fix
6118  */
6119 tSCC zKandr_ConcatName[] =
6120      "kandr_concat";
6123  *  File name selection pattern
6124  */
6125 tSCC zKandr_ConcatList[] =
6126   "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";
6128  *  Machine/OS name selection pattern
6129  */
6130 #define apzKandr_ConcatMachs (const char**)NULL
6133  *  content selection pattern - do fix if pattern found
6134  */
6135 tSCC zKandr_ConcatSelect0[] =
6136        "/\\*\\*/";
6138 #define    KANDR_CONCAT_TEST_CT  1
6139 static tTestDesc aKandr_ConcatTests[] = {
6140   { TT_EGREP,    zKandr_ConcatSelect0, (regex_t*)NULL }, };
6143  *  Fix Command Arguments for Kandr_Concat
6144  */
6145 static const char* apzKandr_ConcatPatch[] = {
6146     "format",
6147     "##",
6148     (char*)NULL };
6150 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6152  *  Description of Linux_Ia64_Ucontext fix
6153  */
6154 tSCC zLinux_Ia64_UcontextName[] =
6155      "linux_ia64_ucontext";
6158  *  File name selection pattern
6159  */
6160 tSCC zLinux_Ia64_UcontextList[] =
6161   "sys/ucontext.h\0";
6163  *  Machine/OS name selection pattern
6164  */
6165 tSCC* apzLinux_Ia64_UcontextMachs[] = {
6166         "ia64-*-linux*",
6167         (const char*)NULL };
6170  *  content selection pattern - do fix if pattern found
6171  */
6172 tSCC zLinux_Ia64_UcontextSelect0[] =
6173        "\\(\\(\\(char \\*\\) &\\(\\(struct sigcontext \\*\\) 0\\)->sc_gr\\[0\\]\\) - \\(char \\*\\) 0\\)";
6175 #define    LINUX_IA64_UCONTEXT_TEST_CT  1
6176 static tTestDesc aLinux_Ia64_UcontextTests[] = {
6177   { TT_EGREP,    zLinux_Ia64_UcontextSelect0, (regex_t*)NULL }, };
6180  *  Fix Command Arguments for Linux_Ia64_Ucontext
6181  */
6182 static const char* apzLinux_Ia64_UcontextPatch[] = {
6183     "format",
6184     "__builtin_offsetof (struct sigcontext, sc_gr[0])",
6185     (char*)NULL };
6187 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6189  *  Description of Lynxos_No_Warning_In_Sys_Time_H fix
6190  */
6191 tSCC zLynxos_No_Warning_In_Sys_Time_HName[] =
6192      "lynxos_no_warning_in_sys_time_h";
6195  *  File name selection pattern
6196  */
6197 tSCC zLynxos_No_Warning_In_Sys_Time_HList[] =
6198   "sys/time.h\0";
6200  *  Machine/OS name selection pattern
6201  */
6202 #define apzLynxos_No_Warning_In_Sys_Time_HMachs (const char**)NULL
6205  *  content selection pattern - do fix if pattern found
6206  */
6207 tSCC zLynxos_No_Warning_In_Sys_Time_HSelect0[] =
6208        "#warning[ \t]+Using <time.h> instead of <sys/time.h>";
6210 #define    LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT  1
6211 static tTestDesc aLynxos_No_Warning_In_Sys_Time_HTests[] = {
6212   { TT_EGREP,    zLynxos_No_Warning_In_Sys_Time_HSelect0, (regex_t*)NULL }, };
6215  *  Fix Command Arguments for Lynxos_No_Warning_In_Sys_Time_H
6216  */
6217 static const char* apzLynxos_No_Warning_In_Sys_Time_HPatch[] = {
6218     "format",
6219     "",
6220     (char*)NULL };
6222 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6224  *  Description of Lynxos_Missing_Putenv fix
6225  */
6226 tSCC zLynxos_Missing_PutenvName[] =
6227      "lynxos_missing_putenv";
6230  *  File name selection pattern
6231  */
6232 tSCC zLynxos_Missing_PutenvList[] =
6233   "stdlib.h\0";
6235  *  Machine/OS name selection pattern
6236  */
6237 tSCC* apzLynxos_Missing_PutenvMachs[] = {
6238         "*-*-lynxos*",
6239         (const char*)NULL };
6242  *  content selection pattern - do fix if pattern found
6243  */
6244 tSCC zLynxos_Missing_PutenvSelect0[] =
6245        "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);";
6248  *  content bypass pattern - skip fix if pattern found
6249  */
6250 tSCC zLynxos_Missing_PutenvBypass0[] =
6251        "putenv[ \\t]*\\(";
6253 #define    LYNXOS_MISSING_PUTENV_TEST_CT  2
6254 static tTestDesc aLynxos_Missing_PutenvTests[] = {
6255   { TT_NEGREP,   zLynxos_Missing_PutenvBypass0, (regex_t*)NULL },
6256   { TT_EGREP,    zLynxos_Missing_PutenvSelect0, (regex_t*)NULL }, };
6259  *  Fix Command Arguments for Lynxos_Missing_Putenv
6260  */
6261 static const char* apzLynxos_Missing_PutenvPatch[] = {
6262     "format",
6263     "%0\n\
6264 extern int putenv\t\t\t\t_AP((char *));",
6265     "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);",
6266     (char*)NULL };
6268 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6270  *  Description of Machine_Ansi_H_Va_List fix
6271  */
6272 tSCC zMachine_Ansi_H_Va_ListName[] =
6273      "machine_ansi_h_va_list";
6276  *  File name selection pattern
6277  */
6278 #define zMachine_Ansi_H_Va_ListList (char*)NULL
6280  *  Machine/OS name selection pattern
6281  */
6282 #define apzMachine_Ansi_H_Va_ListMachs (const char**)NULL
6285  *  content selection pattern - do fix if pattern found
6286  */
6287 tSCC zMachine_Ansi_H_Va_ListSelect0[] =
6288        "define[ \t]+_BSD_VA_LIST_[ \t]";
6291  *  content bypass pattern - skip fix if pattern found
6292  */
6293 tSCC zMachine_Ansi_H_Va_ListBypass0[] =
6294        "__builtin_va_list";
6296 #define    MACHINE_ANSI_H_VA_LIST_TEST_CT  2
6297 static tTestDesc aMachine_Ansi_H_Va_ListTests[] = {
6298   { TT_NEGREP,   zMachine_Ansi_H_Va_ListBypass0, (regex_t*)NULL },
6299   { TT_EGREP,    zMachine_Ansi_H_Va_ListSelect0, (regex_t*)NULL }, };
6302  *  Fix Command Arguments for Machine_Ansi_H_Va_List
6303  */
6304 static const char* apzMachine_Ansi_H_Va_ListPatch[] = {
6305     "format",
6306     "%1__builtin_va_list",
6307     "(define[ \t]+_BSD_VA_LIST_[ \t]+).*",
6308     (char*)NULL };
6310 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6312  *  Description of Machine_Name fix
6313  */
6314 tSCC zMachine_NameName[] =
6315      "machine_name";
6318  *  File name selection pattern
6319  */
6320 #define zMachine_NameList (char*)NULL
6322  *  Machine/OS name selection pattern
6323  */
6324 #define apzMachine_NameMachs (const char**)NULL
6327  *  perform the C function call test
6328  */
6329 tSCC zMachine_NameFTst0[] = "machine_name";
6331 #define    MACHINE_NAME_TEST_CT  1
6332 static tTestDesc aMachine_NameTests[] = {
6333   { TT_FUNCTION, zMachine_NameFTst0,   0 /* unused */ }, };
6336  *  Fix Command Arguments for Machine_Name
6337  */
6338 static const char* apzMachine_NamePatch[] = {
6339     "machine_name",
6340     (char*)NULL };
6342 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6344  *  Description of Math_Exception fix
6345  */
6346 tSCC zMath_ExceptionName[] =
6347      "math_exception";
6350  *  File name selection pattern
6351  */
6352 tSCC zMath_ExceptionList[] =
6353   "math.h\0";
6355  *  Machine/OS name selection pattern
6356  */
6357 tSCC* apzMath_ExceptionMachs[] = {
6358         "*-*-solaris2.1[0-9]*",
6359         (const char*)NULL };
6362  *  content selection pattern - do fix if pattern found
6363  */
6364 tSCC zMath_ExceptionSelect0[] =
6365        "struct exception";
6368  *  content bypass pattern - skip fix if pattern found
6369  */
6370 tSCC zMath_ExceptionBypass0[] =
6371        "We have a problem when using C\\+\\+|for C\\+\\+, _[a-z0-9A-Z_]+_exception; for C, exception";
6373 #define    MATH_EXCEPTION_TEST_CT  2
6374 static tTestDesc aMath_ExceptionTests[] = {
6375   { TT_NEGREP,   zMath_ExceptionBypass0, (regex_t*)NULL },
6376   { TT_EGREP,    zMath_ExceptionSelect0, (regex_t*)NULL }, };
6379  *  Fix Command Arguments for Math_Exception
6380  */
6381 static const char* apzMath_ExceptionPatch[] = {
6382     "wrap",
6383     "#ifdef __cplusplus\n\
6384 #define exception __math_exception\n\
6385 #endif\n",
6386     "#ifdef __cplusplus\n\
6387 #undef exception\n\
6388 #endif\n",
6389     (char*)NULL };
6391 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6393  *  Description of Math_Huge_Val_From_Dbl_Max fix
6394  */
6395 tSCC zMath_Huge_Val_From_Dbl_MaxName[] =
6396      "math_huge_val_from_dbl_max";
6399  *  File name selection pattern
6400  */
6401 tSCC zMath_Huge_Val_From_Dbl_MaxList[] =
6402   "math.h\0";
6404  *  Machine/OS name selection pattern
6405  */
6406 #define apzMath_Huge_Val_From_Dbl_MaxMachs (const char**)NULL
6409  *  content selection pattern - do fix if pattern found
6410  */
6411 tSCC zMath_Huge_Val_From_Dbl_MaxSelect0[] =
6412        "define[ \t]+HUGE_VAL[ \t]+DBL_MAX";
6415  *  content bypass pattern - skip fix if pattern found
6416  */
6417 tSCC zMath_Huge_Val_From_Dbl_MaxBypass0[] =
6418        "define[ \t]+DBL_MAX";
6420 #define    MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT  2
6421 static tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = {
6422   { TT_NEGREP,   zMath_Huge_Val_From_Dbl_MaxBypass0, (regex_t*)NULL },
6423   { TT_EGREP,    zMath_Huge_Val_From_Dbl_MaxSelect0, (regex_t*)NULL }, };
6426  *  Fix Command Arguments for Math_Huge_Val_From_Dbl_Max
6427  */
6428 static const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c",
6429     "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h | sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n\
6430 \tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\
6431 \tthen sed -e '/define[ \t]*HUGE_VAL[ \t]*DBL_MAX/s@DBL_MAX@'\"$dbl_max_def@\"\n\
6432 \telse cat\n\
6433 \tfi",
6434     (char*)NULL };
6436 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6438  *  Description of Nested_Auth_Des fix
6439  */
6440 tSCC zNested_Auth_DesName[] =
6441      "nested_auth_des";
6444  *  File name selection pattern
6445  */
6446 tSCC zNested_Auth_DesList[] =
6447   "rpc/rpc.h\0";
6449  *  Machine/OS name selection pattern
6450  */
6451 #define apzNested_Auth_DesMachs (const char**)NULL
6454  *  content selection pattern - do fix if pattern found
6455  */
6456 tSCC zNested_Auth_DesSelect0[] =
6457        "(/\\*.*rpc/auth_des\\.h>.*)/\\*";
6459 #define    NESTED_AUTH_DES_TEST_CT  1
6460 static tTestDesc aNested_Auth_DesTests[] = {
6461   { TT_EGREP,    zNested_Auth_DesSelect0, (regex_t*)NULL }, };
6464  *  Fix Command Arguments for Nested_Auth_Des
6465  */
6466 static const char* apzNested_Auth_DesPatch[] = {
6467     "format",
6468     "%1*/ /*",
6469     (char*)NULL };
6471 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6473  *  Description of Netbsd_C99_Inline_1 fix
6474  */
6475 tSCC zNetbsd_C99_Inline_1Name[] =
6476      "netbsd_c99_inline_1";
6479  *  File name selection pattern
6480  */
6481 tSCC zNetbsd_C99_Inline_1List[] =
6482   "signal.h\0";
6484  *  Machine/OS name selection pattern
6485  */
6486 tSCC* apzNetbsd_C99_Inline_1Machs[] = {
6487         "*-*-netbsd*",
6488         (const char*)NULL };
6491  *  content selection pattern - do fix if pattern found
6492  */
6493 tSCC zNetbsd_C99_Inline_1Select0[] =
6494        "extern __inline int";
6496 #define    NETBSD_C99_INLINE_1_TEST_CT  1
6497 static tTestDesc aNetbsd_C99_Inline_1Tests[] = {
6498   { TT_EGREP,    zNetbsd_C99_Inline_1Select0, (regex_t*)NULL }, };
6501  *  Fix Command Arguments for Netbsd_C99_Inline_1
6502  */
6503 static const char* apzNetbsd_C99_Inline_1Patch[] = {
6504     "format",
6505     "extern\n\
6506 #ifdef __GNUC_STDC_INLINE__\n\
6507 __attribute__((__gnu_inline__))\n\
6508 #endif\n\
6509 __inline int",
6510     (char*)NULL };
6512 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6514  *  Description of Netbsd_C99_Inline_2 fix
6515  */
6516 tSCC zNetbsd_C99_Inline_2Name[] =
6517      "netbsd_c99_inline_2";
6520  *  File name selection pattern
6521  */
6522 tSCC zNetbsd_C99_Inline_2List[] =
6523   "signal.h\0";
6525  *  Machine/OS name selection pattern
6526  */
6527 tSCC* apzNetbsd_C99_Inline_2Machs[] = {
6528         "*-*-netbsd*",
6529         (const char*)NULL };
6532  *  content selection pattern - do fix if pattern found
6533  */
6534 tSCC zNetbsd_C99_Inline_2Select0[] =
6535        "#define _SIGINLINE extern __inline";
6537 #define    NETBSD_C99_INLINE_2_TEST_CT  1
6538 static tTestDesc aNetbsd_C99_Inline_2Tests[] = {
6539   { TT_EGREP,    zNetbsd_C99_Inline_2Select0, (regex_t*)NULL }, };
6542  *  Fix Command Arguments for Netbsd_C99_Inline_2
6543  */
6544 static const char* apzNetbsd_C99_Inline_2Patch[] = {
6545     "format",
6546     "#ifdef __GNUC_STDC_INLINE__\n\
6547 #define _SIGINLINE extern __attribute__((__gnu_inline__)) __inline\n\
6548 #else\n\
6549 %0\n\
6550 #endif",
6551     (char*)NULL };
6553 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6555  *  Description of Netbsd_Extra_Semicolon fix
6556  */
6557 tSCC zNetbsd_Extra_SemicolonName[] =
6558      "netbsd_extra_semicolon";
6561  *  File name selection pattern
6562  */
6563 tSCC zNetbsd_Extra_SemicolonList[] =
6564   "sys/cdefs.h\0";
6566  *  Machine/OS name selection pattern
6567  */
6568 tSCC* apzNetbsd_Extra_SemicolonMachs[] = {
6569         "*-*-netbsd*",
6570         (const char*)NULL };
6573  *  content selection pattern - do fix if pattern found
6574  */
6575 tSCC zNetbsd_Extra_SemicolonSelect0[] =
6576        "#define[ \t]*__END_DECLS[ \t]*};";
6578 #define    NETBSD_EXTRA_SEMICOLON_TEST_CT  1
6579 static tTestDesc aNetbsd_Extra_SemicolonTests[] = {
6580   { TT_EGREP,    zNetbsd_Extra_SemicolonSelect0, (regex_t*)NULL }, };
6583  *  Fix Command Arguments for Netbsd_Extra_Semicolon
6584  */
6585 static const char* apzNetbsd_Extra_SemicolonPatch[] = {
6586     "format",
6587     "#define __END_DECLS }",
6588     (char*)NULL };
6590 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6592  *  Description of Newlib_Stdint_1 fix
6593  */
6594 tSCC zNewlib_Stdint_1Name[] =
6595      "newlib_stdint_1";
6598  *  File name selection pattern
6599  */
6600 tSCC zNewlib_Stdint_1List[] =
6601   "stdint-newlib.h\0stdint.h\0";
6603  *  Machine/OS name selection pattern
6604  */
6605 #define apzNewlib_Stdint_1Machs (const char**)NULL
6608  *  content selection pattern - do fix if pattern found
6609  */
6610 tSCC zNewlib_Stdint_1Select0[] =
6611        "@todo - Add support for wint_t types";
6613 #define    NEWLIB_STDINT_1_TEST_CT  1
6614 static tTestDesc aNewlib_Stdint_1Tests[] = {
6615   { TT_EGREP,    zNewlib_Stdint_1Select0, (regex_t*)NULL }, };
6618  *  Fix Command Arguments for Newlib_Stdint_1
6619  */
6620 static const char* apzNewlib_Stdint_1Patch[] = { sed_cmd_z,
6621     "-e", "s@#define INT32_MIN.*@#define INT32_MIN (-INT32_MAX - 1)@",
6622     "-e", "s@#define INT32_MAX.*@#define INT32_MAX __INT32_MAX__@",
6623     "-e", "s@#define UINT32_MAX.*@#define UINT32_MAX __UINT32_MAX__@",
6624     "-e", "s@#define INT_LEAST32_MIN.*@#define INT_LEAST32_MIN (-INT_LEAST32_MAX - 1)@",
6625     "-e", "s@#define INT_LEAST32_MAX.*@#define INT_LEAST32_MAX __INT_LEAST32_MAX__@",
6626     "-e", "s@#define UINT_LEAST32_MAX.*@#define UINT_LEAST32_MAX __UINT_LEAST32_MAX__@",
6627     "-e", "s@#define INT_FAST\\([0-9]*\\)_MIN.*@#define INT_FAST\\1_MIN (-INT_FAST\\1_MAX - 1)@",
6628     "-e", "s@#define INT_FAST\\([0-9]*\\)_MAX.*@#define INT_FAST\\1_MAX __INT_FAST\\1_MAX__@",
6629     "-e", "s@#define UINT_FAST\\([0-9]*\\)_MAX.*@#define UINT_FAST\\1_MAX __UINT_FAST\\1_MAX__@",
6630     "-e", "s@#define SIZE_MAX.*@#define SIZE_MAX __SIZE_MAX__@",
6631     "-e", "s@#define PTRDIFF_MIN.*@#define PTRDIFF_MIN (-PTRDIFF_MAX - 1)@",
6632     "-e", "s@#define PTRDIFF_MAX.*@#define PTRDIFF_MAX __PTRDIFF_MAX__@",
6633     "-e", "s@#define UINT8_C.*@#define UINT8_C(c) __UINT8_C(c)@",
6634     "-e", "s@#define UINT16_C.*@#define UINT16_C(c) __UINT16_C(c)@",
6635     (char*)NULL };
6637 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6639  *  Description of Newlib_Stdint_2 fix
6640  */
6641 tSCC zNewlib_Stdint_2Name[] =
6642      "newlib_stdint_2";
6645  *  File name selection pattern
6646  */
6647 tSCC zNewlib_Stdint_2List[] =
6648   "stdint-newlib.h\0stdint.h\0";
6650  *  Machine/OS name selection pattern
6651  */
6652 #define apzNewlib_Stdint_2Machs (const char**)NULL
6655  *  content selection pattern - do fix if pattern found
6656  */
6657 tSCC zNewlib_Stdint_2Select0[] =
6658        "@todo - Add support for wint_t types";
6660 #define    NEWLIB_STDINT_2_TEST_CT  1
6661 static tTestDesc aNewlib_Stdint_2Tests[] = {
6662   { TT_EGREP,    zNewlib_Stdint_2Select0, (regex_t*)NULL }, };
6665  *  Fix Command Arguments for Newlib_Stdint_2
6666  */
6667 static const char* apzNewlib_Stdint_2Patch[] = {
6668     "format",
6669     "#define INTMAX_MAX __INTMAX_MAX__\n\
6670 #define INTMAX_MIN (-INTMAX_MAX - 1)\n\
6671 #define UINTMAX_MAX __UINTMAX_MAX__\n\
6672 #define WCHAR_MAX __WCHAR_MAX__\n\
6673 #define WCHAR_MIN __WCHAR_MIN__\n\
6674 #define WINT_MAX __WINT_MAX__\n\
6675 #define WINT_MIN __WINT_MIN__\n\n\
6676 %0",
6677     "/\\*\\* Macros for minimum-width integer constant expressions \\*/",
6678     (char*)NULL };
6680 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6682  *  Description of Next_Math_Prefix fix
6683  */
6684 tSCC zNext_Math_PrefixName[] =
6685      "next_math_prefix";
6688  *  File name selection pattern
6689  */
6690 tSCC zNext_Math_PrefixList[] =
6691   "ansi/math.h\0";
6693  *  Machine/OS name selection pattern
6694  */
6695 #define apzNext_Math_PrefixMachs (const char**)NULL
6698  *  content selection pattern - do fix if pattern found
6699  */
6700 tSCC zNext_Math_PrefixSelect0[] =
6701        "^extern[ \t]+double[ \t]+__const__[ \t]";
6703 #define    NEXT_MATH_PREFIX_TEST_CT  1
6704 static tTestDesc aNext_Math_PrefixTests[] = {
6705   { TT_EGREP,    zNext_Math_PrefixSelect0, (regex_t*)NULL }, };
6708  *  Fix Command Arguments for Next_Math_Prefix
6709  */
6710 static const char* apzNext_Math_PrefixPatch[] = {
6711     "format",
6712     "extern double %1(",
6713     "^extern[ \t]+double[ \t]+__const__[ \t]+([a-z]+)\\(",
6714     (char*)NULL };
6716 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6718  *  Description of Next_Template fix
6719  */
6720 tSCC zNext_TemplateName[] =
6721      "next_template";
6724  *  File name selection pattern
6725  */
6726 tSCC zNext_TemplateList[] =
6727   "bsd/libc.h\0";
6729  *  Machine/OS name selection pattern
6730  */
6731 #define apzNext_TemplateMachs (const char**)NULL
6734  *  content selection pattern - do fix if pattern found
6735  */
6736 tSCC zNext_TemplateSelect0[] =
6737        "[ \t]template\\)";
6739 #define    NEXT_TEMPLATE_TEST_CT  1
6740 static tTestDesc aNext_TemplateTests[] = {
6741   { TT_EGREP,    zNext_TemplateSelect0, (regex_t*)NULL }, };
6744  *  Fix Command Arguments for Next_Template
6745  */
6746 static const char* apzNext_TemplatePatch[] = {
6747     "format",
6748     "(%1)",
6749     "\\(([^)]*)[ \t]template\\)",
6750     (char*)NULL };
6752 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6754  *  Description of Next_Volitile fix
6755  */
6756 tSCC zNext_VolitileName[] =
6757      "next_volitile";
6760  *  File name selection pattern
6761  */
6762 tSCC zNext_VolitileList[] =
6763   "ansi/stdlib.h\0";
6765  *  Machine/OS name selection pattern
6766  */
6767 #define apzNext_VolitileMachs (const char**)NULL
6770  *  content selection pattern - do fix if pattern found
6771  */
6772 tSCC zNext_VolitileSelect0[] =
6773        "^extern[ \t]+volatile[ \t]+void[ \t]";
6775 #define    NEXT_VOLITILE_TEST_CT  1
6776 static tTestDesc aNext_VolitileTests[] = {
6777   { TT_EGREP,    zNext_VolitileSelect0, (regex_t*)NULL }, };
6780  *  Fix Command Arguments for Next_Volitile
6781  */
6782 static const char* apzNext_VolitilePatch[] = {
6783     "format",
6784     "extern void %1(",
6785     "^extern[ \t]+volatile[ \t]+void[ \t]+(exit|abort)\\(",
6786     (char*)NULL };
6788 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6790  *  Description of Next_Wait_Union fix
6791  */
6792 tSCC zNext_Wait_UnionName[] =
6793      "next_wait_union";
6796  *  File name selection pattern
6797  */
6798 tSCC zNext_Wait_UnionList[] =
6799   "sys/wait.h\0";
6801  *  Machine/OS name selection pattern
6802  */
6803 #define apzNext_Wait_UnionMachs (const char**)NULL
6806  *  content selection pattern - do fix if pattern found
6807  */
6808 tSCC zNext_Wait_UnionSelect0[] =
6809        "wait\\(union wait";
6811 #define    NEXT_WAIT_UNION_TEST_CT  1
6812 static tTestDesc aNext_Wait_UnionTests[] = {
6813   { TT_EGREP,    zNext_Wait_UnionSelect0, (regex_t*)NULL }, };
6816  *  Fix Command Arguments for Next_Wait_Union
6817  */
6818 static const char* apzNext_Wait_UnionPatch[] = {
6819     "format",
6820     "wait(void",
6821     (char*)NULL };
6823 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6825  *  Description of Nodeent_Syntax fix
6826  */
6827 tSCC zNodeent_SyntaxName[] =
6828      "nodeent_syntax";
6831  *  File name selection pattern
6832  */
6833 tSCC zNodeent_SyntaxList[] =
6834   "netdnet/dnetdb.h\0";
6836  *  Machine/OS name selection pattern
6837  */
6838 #define apzNodeent_SyntaxMachs (const char**)NULL
6841  *  content selection pattern - do fix if pattern found
6842  */
6843 tSCC zNodeent_SyntaxSelect0[] =
6844        "char[ \t]*\\*na_addr[ \t]*$";
6846 #define    NODEENT_SYNTAX_TEST_CT  1
6847 static tTestDesc aNodeent_SyntaxTests[] = {
6848   { TT_EGREP,    zNodeent_SyntaxSelect0, (regex_t*)NULL }, };
6851  *  Fix Command Arguments for Nodeent_Syntax
6852  */
6853 static const char* apzNodeent_SyntaxPatch[] = {
6854     "format",
6855     "%0;",
6856     (char*)NULL };
6858 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6860  *  Description of Openbsd_Null_Definition fix
6861  */
6862 tSCC zOpenbsd_Null_DefinitionName[] =
6863      "openbsd_null_definition";
6866  *  File name selection pattern
6867  */
6868 tSCC zOpenbsd_Null_DefinitionList[] =
6869   "locale.h\0stddef.h\0stdio.h\0string.h\0time.h\0unistd.h\0wchar.h\0sys/param.h\0";
6871  *  Machine/OS name selection pattern
6872  */
6873 tSCC* apzOpenbsd_Null_DefinitionMachs[] = {
6874         "*-*-openbsd*",
6875         (const char*)NULL };
6878  *  content selection pattern - do fix if pattern found
6879  */
6880 tSCC zOpenbsd_Null_DefinitionSelect0[] =
6881        "__GNUG__";
6883 #define    OPENBSD_NULL_DEFINITION_TEST_CT  1
6884 static tTestDesc aOpenbsd_Null_DefinitionTests[] = {
6885   { TT_EGREP,    zOpenbsd_Null_DefinitionSelect0, (regex_t*)NULL }, };
6888  *  Fix Command Arguments for Openbsd_Null_Definition
6889  */
6890 static const char* apzOpenbsd_Null_DefinitionPatch[] = {
6891     "format",
6892     "#ifndef NULL\n\
6893 #ifdef __cplusplus\n\
6894 #ifdef __GNUG__\n\
6895 #define NULL\t__null\n\
6896 #else\t /* ! __GNUG__  */\n\
6897 #define NULL\t0L\n\
6898 #endif\t /* __GNUG__  */\n\
6899 #else\t /* ! __cplusplus  */\n\
6900 #define NULL\t((void *)0)\n\
6901 #endif\t /* __cplusplus  */\n\
6902 #endif\t /* !NULL  */",
6903     "^#ifndef[ \t]*NULL\n\
6904 ^#ifdef[ \t]*__GNUG__\n\
6905 ^#define[ \t]*NULL[ \t]*__null\n\
6906 ^#else\n\
6907 ^#define[ \t]*NULL[ \t]*0L\n\
6908 ^#endif\n\
6909 ^#endif",
6910     (char*)NULL };
6912 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6914  *  Description of Obstack_Lvalue_Cast fix
6915  */
6916 tSCC zObstack_Lvalue_CastName[] =
6917      "obstack_lvalue_cast";
6920  *  File name selection pattern
6921  */
6922 tSCC zObstack_Lvalue_CastList[] =
6923   "obstack.h\0";
6925  *  Machine/OS name selection pattern
6926  */
6927 #define apzObstack_Lvalue_CastMachs (const char**)NULL
6930  *  content selection pattern - do fix if pattern found
6931  */
6932 tSCC zObstack_Lvalue_CastSelect0[] =
6933        "\\*\\(\\(([^()]*)\\*\\)(.*)\\)\\+\\+ = \\(([^()]*)\\)";
6935 #define    OBSTACK_LVALUE_CAST_TEST_CT  1
6936 static tTestDesc aObstack_Lvalue_CastTests[] = {
6937   { TT_EGREP,    zObstack_Lvalue_CastSelect0, (regex_t*)NULL }, };
6940  *  Fix Command Arguments for Obstack_Lvalue_Cast
6941  */
6942 static const char* apzObstack_Lvalue_CastPatch[] = {
6943     "format",
6944     "((*((%1*)%2) = (%3)), (%2 += sizeof (%1)))",
6945     (char*)NULL };
6947 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6949  *  Description of Openbsd_Va_Start fix
6950  */
6951 tSCC zOpenbsd_Va_StartName[] =
6952      "openbsd_va_start";
6955  *  File name selection pattern
6956  */
6957 tSCC zOpenbsd_Va_StartList[] =
6958   "stdarg.h\0";
6960  *  Machine/OS name selection pattern
6961  */
6962 tSCC* apzOpenbsd_Va_StartMachs[] = {
6963         "*-*-openbsd*",
6964         (const char*)NULL };
6967  *  content selection pattern - do fix if pattern found
6968  */
6969 tSCC zOpenbsd_Va_StartSelect0[] =
6970        "__builtin_stdarg_start";
6972 #define    OPENBSD_VA_START_TEST_CT  1
6973 static tTestDesc aOpenbsd_Va_StartTests[] = {
6974   { TT_EGREP,    zOpenbsd_Va_StartSelect0, (regex_t*)NULL }, };
6977  *  Fix Command Arguments for Openbsd_Va_Start
6978  */
6979 static const char* apzOpenbsd_Va_StartPatch[] = {
6980     "format",
6981     "__builtin_va_start",
6982     (char*)NULL };
6984 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6986  *  Description of Osf_Namespace_A fix
6987  */
6988 tSCC zOsf_Namespace_AName[] =
6989      "osf_namespace_a";
6992  *  File name selection pattern
6993  */
6994 tSCC zOsf_Namespace_AList[] =
6995   "reg_types.h\0sys/lc_core.h\0";
6997  *  Machine/OS name selection pattern
6998  */
6999 #define apzOsf_Namespace_AMachs (const char**)NULL
7002  *  perform the 'test' shell command - do fix on success
7003  */
7004 tSCC zOsf_Namespace_ATest0[] =
7005        " -r reg_types.h";
7006 tSCC zOsf_Namespace_ATest1[] =
7007        " -r sys/lc_core.h";
7008 tSCC zOsf_Namespace_ATest2[] =
7009        " -n \"`grep '} regex_t;' reg_types.h`\"";
7010 tSCC zOsf_Namespace_ATest3[] =
7011        " -z \"`grep __regex_t regex.h`\"";
7013 #define    OSF_NAMESPACE_A_TEST_CT  4
7014 static tTestDesc aOsf_Namespace_ATests[] = {
7015   { TT_TEST,     zOsf_Namespace_ATest0,   0 /* unused */ },
7016   { TT_TEST,     zOsf_Namespace_ATest1,   0 /* unused */ },
7017   { TT_TEST,     zOsf_Namespace_ATest2,   0 /* unused */ },
7018   { TT_TEST,     zOsf_Namespace_ATest3,   0 /* unused */ }, };
7021  *  Fix Command Arguments for Osf_Namespace_A
7022  */
7023 static const char* apzOsf_Namespace_APatch[] = {
7024     "format",
7025     "__%0",
7026     "reg(ex|off|match)_t",
7027     (char*)NULL };
7029 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7031  *  Description of Osf_Namespace_C fix
7032  */
7033 tSCC zOsf_Namespace_CName[] =
7034      "osf_namespace_c";
7037  *  File name selection pattern
7038  */
7039 tSCC zOsf_Namespace_CList[] =
7040   "regex.h\0";
7042  *  Machine/OS name selection pattern
7043  */
7044 #define apzOsf_Namespace_CMachs (const char**)NULL
7047  *  content selection pattern - do fix if pattern found
7048  */
7049 tSCC zOsf_Namespace_CSelect0[] =
7050        "#include <reg_types.h>.*";
7053  *  perform the 'test' shell command - do fix on success
7054  */
7055 tSCC zOsf_Namespace_CTest0[] =
7056        " -r reg_types.h";
7057 tSCC zOsf_Namespace_CTest1[] =
7058        " -r sys/lc_core.h";
7059 tSCC zOsf_Namespace_CTest2[] =
7060        " -n \"`grep '} regex_t;' reg_types.h`\"";
7061 tSCC zOsf_Namespace_CTest3[] =
7062        " -z \"`grep __regex_t regex.h`\"";
7064 #define    OSF_NAMESPACE_C_TEST_CT  5
7065 static tTestDesc aOsf_Namespace_CTests[] = {
7066   { TT_TEST,     zOsf_Namespace_CTest0,   0 /* unused */ },
7067   { TT_TEST,     zOsf_Namespace_CTest1,   0 /* unused */ },
7068   { TT_TEST,     zOsf_Namespace_CTest2,   0 /* unused */ },
7069   { TT_TEST,     zOsf_Namespace_CTest3,   0 /* unused */ },
7070   { TT_EGREP,    zOsf_Namespace_CSelect0, (regex_t*)NULL }, };
7073  *  Fix Command Arguments for Osf_Namespace_C
7074  */
7075 static const char* apzOsf_Namespace_CPatch[] = {
7076     "format",
7077     "%0\n\
7078 typedef __regex_t\tregex_t;\n\
7079 typedef __regoff_t\tregoff_t;\n\
7080 typedef __regmatch_t\tregmatch_t;",
7081     (char*)NULL };
7083 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7085  *  Description of Pthread_Incomplete_Struct_Argument fix
7086  */
7087 tSCC zPthread_Incomplete_Struct_ArgumentName[] =
7088      "pthread_incomplete_struct_argument";
7091  *  File name selection pattern
7092  */
7093 tSCC zPthread_Incomplete_Struct_ArgumentList[] =
7094   "pthread.h\0";
7096  *  Machine/OS name selection pattern
7097  */
7098 #define apzPthread_Incomplete_Struct_ArgumentMachs (const char**)NULL
7101  *  content selection pattern - do fix if pattern found
7102  */
7103 tSCC zPthread_Incomplete_Struct_ArgumentSelect0[] =
7104        "struct __jmp_buf_tag";
7106 #define    PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT  1
7107 static tTestDesc aPthread_Incomplete_Struct_ArgumentTests[] = {
7108   { TT_EGREP,    zPthread_Incomplete_Struct_ArgumentSelect0, (regex_t*)NULL }, };
7111  *  Fix Command Arguments for Pthread_Incomplete_Struct_Argument
7112  */
7113 static const char* apzPthread_Incomplete_Struct_ArgumentPatch[] = {
7114     "format",
7115     "%1 *%2%3",
7116     "^(extern int __sigsetjmp \\(struct __jmp_buf_tag) (__env)\\[1\\](.*)$",
7117     (char*)NULL };
7119 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7121  *  Description of Read_Ret_Type fix
7122  */
7123 tSCC zRead_Ret_TypeName[] =
7124      "read_ret_type";
7127  *  File name selection pattern
7128  */
7129 tSCC zRead_Ret_TypeList[] =
7130   "stdio.h\0";
7132  *  Machine/OS name selection pattern
7133  */
7134 #define apzRead_Ret_TypeMachs (const char**)NULL
7137  *  content selection pattern - do fix if pattern found
7138  */
7139 tSCC zRead_Ret_TypeSelect0[] =
7140        "extern int\t.*, fread\\(\\), fwrite\\(\\)";
7142 #define    READ_RET_TYPE_TEST_CT  1
7143 static tTestDesc aRead_Ret_TypeTests[] = {
7144   { TT_EGREP,    zRead_Ret_TypeSelect0, (regex_t*)NULL }, };
7147  *  Fix Command Arguments for Read_Ret_Type
7148  */
7149 static const char* apzRead_Ret_TypePatch[] = {
7150     "format",
7151     "extern unsigned int fread(), fwrite();\n\
7152 %1%2",
7153     "(extern int\t.*), fread\\(\\), fwrite\\(\\)(.*)",
7154     (char*)NULL };
7156 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7158  *  Description of Rpc_Xdr_Lvalue_Cast_A fix
7159  */
7160 tSCC zRpc_Xdr_Lvalue_Cast_AName[] =
7161      "rpc_xdr_lvalue_cast_a";
7164  *  File name selection pattern
7165  */
7166 tSCC zRpc_Xdr_Lvalue_Cast_AList[] =
7167   "rpc/xdr.h\0";
7169  *  Machine/OS name selection pattern
7170  */
7171 #define apzRpc_Xdr_Lvalue_Cast_AMachs (const char**)NULL
7174  *  content selection pattern - do fix if pattern found
7175  */
7176 tSCC zRpc_Xdr_Lvalue_Cast_ASelect0[] =
7177        "#define[ \t]*IXDR_GET_LONG.*\\\\\n\
7178 .*__extension__.*";
7180 #define    RPC_XDR_LVALUE_CAST_A_TEST_CT  1
7181 static tTestDesc aRpc_Xdr_Lvalue_Cast_ATests[] = {
7182   { TT_EGREP,    zRpc_Xdr_Lvalue_Cast_ASelect0, (regex_t*)NULL }, };
7185  *  Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_A
7186  */
7187 static const char* apzRpc_Xdr_Lvalue_Cast_APatch[] = {
7188     "format",
7189     "#define IXDR_GET_LONG(buf) ((long)IXDR_GET_U_INT32(buf))",
7190     (char*)NULL };
7192 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7194  *  Description of Rpc_Xdr_Lvalue_Cast_B fix
7195  */
7196 tSCC zRpc_Xdr_Lvalue_Cast_BName[] =
7197      "rpc_xdr_lvalue_cast_b";
7200  *  File name selection pattern
7201  */
7202 tSCC zRpc_Xdr_Lvalue_Cast_BList[] =
7203   "rpc/xdr.h\0";
7205  *  Machine/OS name selection pattern
7206  */
7207 #define apzRpc_Xdr_Lvalue_Cast_BMachs (const char**)NULL
7210  *  content selection pattern - do fix if pattern found
7211  */
7212 tSCC zRpc_Xdr_Lvalue_Cast_BSelect0[] =
7213        "#define[ \t]*IXDR_PUT_LONG.*\\\\\n\
7214 .*__extension__.*";
7216 #define    RPC_XDR_LVALUE_CAST_B_TEST_CT  1
7217 static tTestDesc aRpc_Xdr_Lvalue_Cast_BTests[] = {
7218   { TT_EGREP,    zRpc_Xdr_Lvalue_Cast_BSelect0, (regex_t*)NULL }, };
7221  *  Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_B
7222  */
7223 static const char* apzRpc_Xdr_Lvalue_Cast_BPatch[] = {
7224     "format",
7225     "#define IXDR_PUT_LONG(buf, v) ((long)IXDR_PUT_INT32(buf, (long)(v)))",
7226     (char*)NULL };
7228 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7230  *  Description of Rs6000_Double fix
7231  */
7232 tSCC zRs6000_DoubleName[] =
7233      "rs6000_double";
7236  *  File name selection pattern
7237  */
7238 tSCC zRs6000_DoubleList[] =
7239   "math.h\0";
7241  *  Machine/OS name selection pattern
7242  */
7243 #define apzRs6000_DoubleMachs (const char**)NULL
7246  *  content selection pattern - do fix if pattern found
7247  */
7248 tSCC zRs6000_DoubleSelect0[] =
7249        "[^a-zA-Z_]class\\(";
7251 #define    RS6000_DOUBLE_TEST_CT  1
7252 static tTestDesc aRs6000_DoubleTests[] = {
7253   { TT_EGREP,    zRs6000_DoubleSelect0, (regex_t*)NULL }, };
7256  *  Fix Command Arguments for Rs6000_Double
7257  */
7258 static const char* apzRs6000_DoublePatch[] = {
7259     "format",
7260     "#ifndef __cplusplus\n\
7261 %0\n\
7262 #endif",
7263     "^.*[^a-zA-Z_]class\\(.*",
7264     (char*)NULL };
7266 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7268  *  Description of Rs6000_Fchmod fix
7269  */
7270 tSCC zRs6000_FchmodName[] =
7271      "rs6000_fchmod";
7274  *  File name selection pattern
7275  */
7276 tSCC zRs6000_FchmodList[] =
7277   "sys/stat.h\0";
7279  *  Machine/OS name selection pattern
7280  */
7281 #define apzRs6000_FchmodMachs (const char**)NULL
7284  *  content selection pattern - do fix if pattern found
7285  */
7286 tSCC zRs6000_FchmodSelect0[] =
7287        "fchmod\\(char \\*";
7289 #define    RS6000_FCHMOD_TEST_CT  1
7290 static tTestDesc aRs6000_FchmodTests[] = {
7291   { TT_EGREP,    zRs6000_FchmodSelect0, (regex_t*)NULL }, };
7294  *  Fix Command Arguments for Rs6000_Fchmod
7295  */
7296 static const char* apzRs6000_FchmodPatch[] = {
7297     "format",
7298     "fchmod(int",
7299     (char*)NULL };
7301 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7303  *  Description of Rs6000_Param fix
7304  */
7305 tSCC zRs6000_ParamName[] =
7306      "rs6000_param";
7309  *  File name selection pattern
7310  */
7311 tSCC zRs6000_ParamList[] =
7312   "stdio.h\0unistd.h\0";
7314  *  Machine/OS name selection pattern
7315  */
7316 #define apzRs6000_ParamMachs (const char**)NULL
7319  *  content selection pattern - do fix if pattern found
7320  */
7321 tSCC zRs6000_ParamSelect0[] =
7322        "rename\\(const char \\*old, const char \\*new\\)";
7324 #define    RS6000_PARAM_TEST_CT  1
7325 static tTestDesc aRs6000_ParamTests[] = {
7326   { TT_EGREP,    zRs6000_ParamSelect0, (regex_t*)NULL }, };
7329  *  Fix Command Arguments for Rs6000_Param
7330  */
7331 static const char* apzRs6000_ParamPatch[] = {
7332     "format",
7333     "rename(const char *_old, const char *_new)",
7334     (char*)NULL };
7336 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7338  *  Description of Solaris___Restrict fix
7339  */
7340 tSCC zSolaris___RestrictName[] =
7341      "solaris___restrict";
7344  *  File name selection pattern
7345  */
7346 tSCC zSolaris___RestrictList[] =
7347   "sys/feature_tests.h\0";
7349  *  Machine/OS name selection pattern
7350  */
7351 tSCC* apzSolaris___RestrictMachs[] = {
7352         "*-*-solaris2*",
7353         (const char*)NULL };
7356  *  content selection pattern - do fix if pattern found
7357  */
7358 tSCC zSolaris___RestrictSelect0[] =
7359        "#define[ \t]*_RESTRICT_KYWD[ \t]*restrict";
7361 #define    SOLARIS___RESTRICT_TEST_CT  1
7362 static tTestDesc aSolaris___RestrictTests[] = {
7363   { TT_EGREP,    zSolaris___RestrictSelect0, (regex_t*)NULL }, };
7366  *  Fix Command Arguments for Solaris___Restrict
7367  */
7368 static const char* apzSolaris___RestrictPatch[] = {
7369     "format",
7370     "#ifdef __cplusplus\n\
7371 #define\t_RESTRICT_KYWD\t__restrict\n\
7372 #else\n\
7373 %0\n\
7374 #endif",
7375     (char*)NULL };
7377 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7379  *  Description of Solaris_Complex fix
7380  */
7381 tSCC zSolaris_ComplexName[] =
7382      "solaris_complex";
7385  *  File name selection pattern
7386  */
7387 tSCC zSolaris_ComplexList[] =
7388   "complex.h\0";
7390  *  Machine/OS name selection pattern
7391  */
7392 tSCC* apzSolaris_ComplexMachs[] = {
7393         "*-*-solaris2.*",
7394         (const char*)NULL };
7397  *  content selection pattern - do fix if pattern found
7398  */
7399 tSCC zSolaris_ComplexSelect0[] =
7400        "#define[ \t]_Complex_I[ \t]_Complex_I";
7402 #define    SOLARIS_COMPLEX_TEST_CT  1
7403 static tTestDesc aSolaris_ComplexTests[] = {
7404   { TT_EGREP,    zSolaris_ComplexSelect0, (regex_t*)NULL }, };
7407  *  Fix Command Arguments for Solaris_Complex
7408  */
7409 static const char* apzSolaris_ComplexPatch[] = { sed_cmd_z,
7410     "-e", "s/#define[ \t]_Complex_I[ \t]_Complex_I/#define\t_Complex_I\t(__extension__ 1.0iF)/",
7411     "-e", "/#define[ \t]_Imaginary_I[ \t]_Imaginary_I/d",
7412     "-e", "/#define[ \t]imaginary[ \t]_Imaginary/d",
7413     "-e", "s/#define[ \t]I[ \t]\\{1,\\}_Imaginary_I/#define\tI\t\t_Complex_I/",
7414     (char*)NULL };
7416 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7418  *  Description of Solaris_Complex_Cxx fix
7419  */
7420 tSCC zSolaris_Complex_CxxName[] =
7421      "solaris_complex_cxx";
7424  *  File name selection pattern
7425  */
7426 tSCC zSolaris_Complex_CxxList[] =
7427   "complex.h\0";
7429  *  Machine/OS name selection pattern
7430  */
7431 tSCC* apzSolaris_Complex_CxxMachs[] = {
7432         "*-*-solaris2.*",
7433         (const char*)NULL };
7434 #define SOLARIS_COMPLEX_CXX_TEST_CT  0
7435 #define aSolaris_Complex_CxxTests   (tTestDesc*)NULL
7438  *  Fix Command Arguments for Solaris_Complex_Cxx
7439  */
7440 static const char* apzSolaris_Complex_CxxPatch[] = { sed_cmd_z,
7441     "-e", "/#if[ \t]*!defined(__cplusplus)/c\\\n\
7442 #ifdef\t__cplusplus\\\n\
7443 extern \"C\" {\\\n\
7444 #endif",
7445     "-e", "/#endif[ \t]*\\/\\* !defined(__cplusplus) \\*\\//c\\\n\
7446 #ifdef\t__cplusplus\\\n\
7447 }\\\n\
7448 #endif",
7449     (char*)NULL };
7451 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7453  *  Description of Solaris_Cxx_Linkage fix
7454  */
7455 tSCC zSolaris_Cxx_LinkageName[] =
7456      "solaris_cxx_linkage";
7459  *  File name selection pattern
7460  */
7461 tSCC zSolaris_Cxx_LinkageList[] =
7462   "iso/stdlib_iso.h\0";
7464  *  Machine/OS name selection pattern
7465  */
7466 tSCC* apzSolaris_Cxx_LinkageMachs[] = {
7467         "*-*-solaris2*",
7468         (const char*)NULL };
7471  *  content selection pattern - do fix if pattern found
7472  */
7473 tSCC zSolaris_Cxx_LinkageSelect0[] =
7474        "(#if __cplusplus >= 199711L)\n\
7475 (extern \"C\\+\\+\" \\{\n\
7476 )(.*(bsearch|qsort).*)";
7478 #define    SOLARIS_CXX_LINKAGE_TEST_CT  1
7479 static tTestDesc aSolaris_Cxx_LinkageTests[] = {
7480   { TT_EGREP,    zSolaris_Cxx_LinkageSelect0, (regex_t*)NULL }, };
7483  *  Fix Command Arguments for Solaris_Cxx_Linkage
7484  */
7485 static const char* apzSolaris_Cxx_LinkagePatch[] = {
7486     "format",
7487     "%1 && !__GNUG__\n\
7488 %2%3",
7489     (char*)NULL };
7491 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7493  *  Description of Solaris_Getc_Strict_Stdc fix
7494  */
7495 tSCC zSolaris_Getc_Strict_StdcName[] =
7496      "solaris_getc_strict_stdc";
7499  *  File name selection pattern
7500  */
7501 tSCC zSolaris_Getc_Strict_StdcList[] =
7502   "iso/stdio_iso.h\0";
7504  *  Machine/OS name selection pattern
7505  */
7506 tSCC* apzSolaris_Getc_Strict_StdcMachs[] = {
7507         "*-*-solaris2*",
7508         (const char*)NULL };
7511  *  content selection pattern - do fix if pattern found
7512  */
7513 tSCC zSolaris_Getc_Strict_StdcSelect0[] =
7514        "(.*&& )!defined\\(_STRICT_STDC\\)(.*)";
7516 #define    SOLARIS_GETC_STRICT_STDC_TEST_CT  1
7517 static tTestDesc aSolaris_Getc_Strict_StdcTests[] = {
7518   { TT_EGREP,    zSolaris_Getc_Strict_StdcSelect0, (regex_t*)NULL }, };
7521  *  Fix Command Arguments for Solaris_Getc_Strict_Stdc
7522  */
7523 static const char* apzSolaris_Getc_Strict_StdcPatch[] = {
7524     "format",
7525     "%1(!defined(_STRICT_STDC) || (__cplusplus >= 199711L))%2",
7526     (char*)NULL };
7528 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7530  *  Description of Solaris_Gets_C11 fix
7531  */
7532 tSCC zSolaris_Gets_C11Name[] =
7533      "solaris_gets_c11";
7536  *  File name selection pattern
7537  */
7538 tSCC zSolaris_Gets_C11List[] =
7539   "iso/stdio_iso.h\0";
7541  *  Machine/OS name selection pattern
7542  */
7543 tSCC* apzSolaris_Gets_C11Machs[] = {
7544         "*-*-solaris2*",
7545         (const char*)NULL };
7548  *  content selection pattern - do fix if pattern found
7549  */
7550 tSCC zSolaris_Gets_C11Select0[] =
7551        "(extern char[ \t]*\\*gets\\(char \\*\\));";
7553 #define    SOLARIS_GETS_C11_TEST_CT  1
7554 static tTestDesc aSolaris_Gets_C11Tests[] = {
7555   { TT_EGREP,    zSolaris_Gets_C11Select0, (regex_t*)NULL }, };
7558  *  Fix Command Arguments for Solaris_Gets_C11
7559  */
7560 static const char* apzSolaris_Gets_C11Patch[] = {
7561     "format",
7562     "#if __STDC_VERSION__ < 201112L && __cplusplus < 201402L\n\
7563 %1 __attribute__((__deprecated__));\n\
7564 #endif",
7565     (char*)NULL };
7567 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7569  *  Description of Solaris_Gets_Cxx14 fix
7570  */
7571 tSCC zSolaris_Gets_Cxx14Name[] =
7572      "solaris_gets_cxx14";
7575  *  File name selection pattern
7576  */
7577 tSCC zSolaris_Gets_Cxx14List[] =
7578   "iso/stdio_iso.h\0";
7580  *  Machine/OS name selection pattern
7581  */
7582 tSCC* apzSolaris_Gets_Cxx14Machs[] = {
7583         "*-*-solaris2*",
7584         (const char*)NULL };
7587  *  content selection pattern - do fix if pattern found
7588  */
7589 tSCC zSolaris_Gets_Cxx14Select0[] =
7590        "(#if __STDC_VERSION__ < 201112L)\n\
7591 (extern char\t\\*gets\\(char \\*\\) __ATTR_DEPRECATED;)";
7593 #define    SOLARIS_GETS_CXX14_TEST_CT  1
7594 static tTestDesc aSolaris_Gets_Cxx14Tests[] = {
7595   { TT_EGREP,    zSolaris_Gets_Cxx14Select0, (regex_t*)NULL }, };
7598  *  Fix Command Arguments for Solaris_Gets_Cxx14
7599  */
7600 static const char* apzSolaris_Gets_Cxx14Patch[] = {
7601     "format",
7602     "%1 && __cplusplus < 201402L\n\
7603 %2",
7604     (char*)NULL };
7606 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7608  *  Description of Solaris_Int_Const fix
7609  */
7610 tSCC zSolaris_Int_ConstName[] =
7611      "solaris_int_const";
7614  *  File name selection pattern
7615  */
7616 tSCC zSolaris_Int_ConstList[] =
7617   "sys/int_const.h\0";
7619  *  Machine/OS name selection pattern
7620  */
7621 tSCC* apzSolaris_Int_ConstMachs[] = {
7622         "*-*-solaris2*",
7623         (const char*)NULL };
7626  *  content selection pattern - do fix if pattern found
7627  */
7628 tSCC zSolaris_Int_ConstSelect0[] =
7629        "^#define[ \t]+UINT8_C\\(c\\)[ \t]+__CONCAT__.*\n\
7630 (/*.**/)\n\
7631 #define[ \t]+UINT16_C\\(c\\)[ \t]+__CONCAT__.*";
7633 #define    SOLARIS_INT_CONST_TEST_CT  1
7634 static tTestDesc aSolaris_Int_ConstTests[] = {
7635   { TT_EGREP,    zSolaris_Int_ConstSelect0, (regex_t*)NULL }, };
7638  *  Fix Command Arguments for Solaris_Int_Const
7639  */
7640 static const char* apzSolaris_Int_ConstPatch[] = {
7641     "format",
7642     "#define\tUINT8_C(c)\t(c)\n\
7643 %1\n\
7644 #define\tUINT16_C(c)\t(c)",
7645     (char*)NULL };
7647 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7649  *  Description of Solaris_Int_Limits_1 fix
7650  */
7651 tSCC zSolaris_Int_Limits_1Name[] =
7652      "solaris_int_limits_1";
7655  *  File name selection pattern
7656  */
7657 tSCC zSolaris_Int_Limits_1List[] =
7658   "sys/int_limits.h\0";
7660  *  Machine/OS name selection pattern
7661  */
7662 tSCC* apzSolaris_Int_Limits_1Machs[] = {
7663         "*-*-solaris2*",
7664         (const char*)NULL };
7667  *  content selection pattern - do fix if pattern found
7668  */
7669 tSCC zSolaris_Int_Limits_1Select0[] =
7670        "^#define[ \t]+UINT8_MAX[ \t]+\\(255U\\)\n\
7671 #define[ \t]+UINT16_MAX[ \t]+\\(65535U\\)";
7673 #define    SOLARIS_INT_LIMITS_1_TEST_CT  1
7674 static tTestDesc aSolaris_Int_Limits_1Tests[] = {
7675   { TT_EGREP,    zSolaris_Int_Limits_1Select0, (regex_t*)NULL }, };
7678  *  Fix Command Arguments for Solaris_Int_Limits_1
7679  */
7680 static const char* apzSolaris_Int_Limits_1Patch[] = {
7681     "format",
7682     "#define\tUINT8_MAX\t(255)\n\
7683 #define\tUINT16_MAX\t(65535)",
7684     (char*)NULL };
7686 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7688  *  Description of Solaris_Int_Limits_2 fix
7689  */
7690 tSCC zSolaris_Int_Limits_2Name[] =
7691      "solaris_int_limits_2";
7694  *  File name selection pattern
7695  */
7696 tSCC zSolaris_Int_Limits_2List[] =
7697   "sys/int_limits.h\0";
7699  *  Machine/OS name selection pattern
7700  */
7701 tSCC* apzSolaris_Int_Limits_2Machs[] = {
7702         "*-*-solaris2*",
7703         (const char*)NULL };
7706  *  content selection pattern - do fix if pattern found
7707  */
7708 tSCC zSolaris_Int_Limits_2Select0[] =
7709        "^#define[ \t]+(INT|UINT)_FAST16_(MAX|MIN)[ \t](INT|UINT)16.*";
7711 #define    SOLARIS_INT_LIMITS_2_TEST_CT  1
7712 static tTestDesc aSolaris_Int_Limits_2Tests[] = {
7713   { TT_EGREP,    zSolaris_Int_Limits_2Select0, (regex_t*)NULL }, };
7716  *  Fix Command Arguments for Solaris_Int_Limits_2
7717  */
7718 static const char* apzSolaris_Int_Limits_2Patch[] = {
7719     "format",
7720     "#define\t%1_FAST16_%2 %132_%2",
7721     (char*)NULL };
7723 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7725  *  Description of Solaris_Int_Limits_3 fix
7726  */
7727 tSCC zSolaris_Int_Limits_3Name[] =
7728      "solaris_int_limits_3";
7731  *  File name selection pattern
7732  */
7733 tSCC zSolaris_Int_Limits_3List[] =
7734   "sys/int_limits.h\0";
7736  *  Machine/OS name selection pattern
7737  */
7738 tSCC* apzSolaris_Int_Limits_3Machs[] = {
7739         "*-*-solaris2*",
7740         (const char*)NULL };
7743  *  content selection pattern - do fix if pattern found
7744  */
7745 tSCC zSolaris_Int_Limits_3Select0[] =
7746        "^#define[ \t]+SIZE_MAX[ \t]+4294967295UL";
7748 #define    SOLARIS_INT_LIMITS_3_TEST_CT  1
7749 static tTestDesc aSolaris_Int_Limits_3Tests[] = {
7750   { TT_EGREP,    zSolaris_Int_Limits_3Select0, (regex_t*)NULL }, };
7753  *  Fix Command Arguments for Solaris_Int_Limits_3
7754  */
7755 static const char* apzSolaris_Int_Limits_3Patch[] = {
7756     "format",
7757     "#define\tSIZE_MAX\t4294967295U",
7758     (char*)NULL };
7760 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7762  *  Description of Solaris_Math_1 fix
7763  */
7764 tSCC zSolaris_Math_1Name[] =
7765      "solaris_math_1";
7768  *  File name selection pattern
7769  */
7770 tSCC zSolaris_Math_1List[] =
7771   "iso/math_c99.h\0";
7773  *  Machine/OS name selection pattern
7774  */
7775 #define apzSolaris_Math_1Machs (const char**)NULL
7778  *  content selection pattern - do fix if pattern found
7779  */
7780 tSCC zSolaris_Math_1Select0[] =
7781        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
7784  *  content bypass pattern - skip fix if pattern found
7785  */
7786 tSCC zSolaris_Math_1Bypass0[] =
7787        "__GNUC__";
7789 #define    SOLARIS_MATH_1_TEST_CT  2
7790 static tTestDesc aSolaris_Math_1Tests[] = {
7791   { TT_NEGREP,   zSolaris_Math_1Bypass0, (regex_t*)NULL },
7792   { TT_EGREP,    zSolaris_Math_1Select0, (regex_t*)NULL }, };
7795  *  Fix Command Arguments for Solaris_Math_1
7796  */
7797 static const char* apzSolaris_Math_1Patch[] = {
7798     "format",
7799     "#define\tHUGE_VA%1\t(__builtin_huge_va%2())",
7800     "^#define[ \t]+HUGE_VA([LF]+)[ \t]+__builtin_huge_va([lf]+)",
7801     (char*)NULL };
7803 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7805  *  Description of Solaris_Math_10 fix
7806  */
7807 tSCC zSolaris_Math_10Name[] =
7808      "solaris_math_10";
7811  *  File name selection pattern
7812  */
7813 tSCC zSolaris_Math_10List[] =
7814   "iso/math_c99.h\0";
7816  *  Machine/OS name selection pattern
7817  */
7818 #define apzSolaris_Math_10Machs (const char**)NULL
7821  *  content selection pattern - do fix if pattern found
7822  */
7823 tSCC zSolaris_Math_10Select0[] =
7824        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
7826 #define    SOLARIS_MATH_10_TEST_CT  1
7827 static tTestDesc aSolaris_Math_10Tests[] = {
7828   { TT_EGREP,    zSolaris_Math_10Select0, (regex_t*)NULL }, };
7831  *  Fix Command Arguments for Solaris_Math_10
7832  */
7833 static const char* apzSolaris_Math_10Patch[] = {
7834     "format",
7835     "#define\tisinf(x) __builtin_isinf(x)",
7836     "^#define[ \t]+isinf\\(x\\)[ \t]+__extension__\\([ \t]*\\\\\n\
7837 [ \t]*\\{[ \t]*__typeof\\(x\\)[ \t]*__x_i[ \t]*=[ \t]*\\(x\\);[ \t]*\\\\\n\
7838 [ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*INFINITY[ \t]*\\|\\|[ \t]*\\\\\n\
7839 [ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*\\(-INFINITY\\);[ \t]*\\}\\)",
7840     (char*)NULL };
7842 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7844  *  Description of Solaris_Math_2 fix
7845  */
7846 tSCC zSolaris_Math_2Name[] =
7847      "solaris_math_2";
7850  *  File name selection pattern
7851  */
7852 tSCC zSolaris_Math_2List[] =
7853   "iso/math_c99.h\0";
7855  *  Machine/OS name selection pattern
7856  */
7857 #define apzSolaris_Math_2Machs (const char**)NULL
7860  *  content selection pattern - do fix if pattern found
7861  */
7862 tSCC zSolaris_Math_2Select0[] =
7863        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
7866  *  content bypass pattern - skip fix if pattern found
7867  */
7868 tSCC zSolaris_Math_2Bypass0[] =
7869        "__GNUC__";
7871 #define    SOLARIS_MATH_2_TEST_CT  2
7872 static tTestDesc aSolaris_Math_2Tests[] = {
7873   { TT_NEGREP,   zSolaris_Math_2Bypass0, (regex_t*)NULL },
7874   { TT_EGREP,    zSolaris_Math_2Select0, (regex_t*)NULL }, };
7877  *  Fix Command Arguments for Solaris_Math_2
7878  */
7879 static const char* apzSolaris_Math_2Patch[] = {
7880     "format",
7881     "#define\tINFINITY\t(__builtin_inff())",
7882     "^#define[ \t]+INFINITY[ \t]+__builtin_infinity",
7883     (char*)NULL };
7885 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7887  *  Description of Solaris_Math_3 fix
7888  */
7889 tSCC zSolaris_Math_3Name[] =
7890      "solaris_math_3";
7893  *  File name selection pattern
7894  */
7895 tSCC zSolaris_Math_3List[] =
7896   "iso/math_c99.h\0";
7898  *  Machine/OS name selection pattern
7899  */
7900 #define apzSolaris_Math_3Machs (const char**)NULL
7903  *  content selection pattern - do fix if pattern found
7904  */
7905 tSCC zSolaris_Math_3Select0[] =
7906        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
7909  *  content bypass pattern - skip fix if pattern found
7910  */
7911 tSCC zSolaris_Math_3Bypass0[] =
7912        "__GNUC__";
7914 #define    SOLARIS_MATH_3_TEST_CT  2
7915 static tTestDesc aSolaris_Math_3Tests[] = {
7916   { TT_NEGREP,   zSolaris_Math_3Bypass0, (regex_t*)NULL },
7917   { TT_EGREP,    zSolaris_Math_3Select0, (regex_t*)NULL }, };
7920  *  Fix Command Arguments for Solaris_Math_3
7921  */
7922 static const char* apzSolaris_Math_3Patch[] = {
7923     "format",
7924     "#define\tNAN\t\t(__builtin_nanf(\"\"))",
7925     "^#define[ \t]+NAN[ \t]+__builtin_nan",
7926     (char*)NULL };
7928 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7930  *  Description of Solaris_Math_4 fix
7931  */
7932 tSCC zSolaris_Math_4Name[] =
7933      "solaris_math_4";
7936  *  File name selection pattern
7937  */
7938 tSCC zSolaris_Math_4List[] =
7939   "iso/math_c99.h\0";
7941  *  Machine/OS name selection pattern
7942  */
7943 #define apzSolaris_Math_4Machs (const char**)NULL
7946  *  content selection pattern - do fix if pattern found
7947  */
7948 tSCC zSolaris_Math_4Select0[] =
7949        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
7952  *  content bypass pattern - skip fix if pattern found
7953  */
7954 tSCC zSolaris_Math_4Bypass0[] =
7955        "__GNUC__";
7957 #define    SOLARIS_MATH_4_TEST_CT  2
7958 static tTestDesc aSolaris_Math_4Tests[] = {
7959   { TT_NEGREP,   zSolaris_Math_4Bypass0, (regex_t*)NULL },
7960   { TT_EGREP,    zSolaris_Math_4Select0, (regex_t*)NULL }, };
7963  *  Fix Command Arguments for Solaris_Math_4
7964  */
7965 static const char* apzSolaris_Math_4Patch[] = {
7966     "format",
7967     "#define\tfpclassify(x) \\\n\
7968   __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, (x))",
7969     "^#define[ \t]+fpclassify\\(x\\)[ \t]+__builtin_fpclassify\\(x\\)",
7970     (char*)NULL };
7972 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7974  *  Description of Solaris_Math_8 fix
7975  */
7976 tSCC zSolaris_Math_8Name[] =
7977      "solaris_math_8";
7980  *  File name selection pattern
7981  */
7982 tSCC zSolaris_Math_8List[] =
7983   "iso/math_c99.h\0";
7985  *  Machine/OS name selection pattern
7986  */
7987 #define apzSolaris_Math_8Machs (const char**)NULL
7990  *  content selection pattern - do fix if pattern found
7991  */
7992 tSCC zSolaris_Math_8Select0[] =
7993        "@\\(#\\)math_c99\\.h[ \t]+1\\.[0-9]+[ \t]+[0-9/]+ SMI";
7996  *  content bypass pattern - skip fix if pattern found
7997  */
7998 tSCC zSolaris_Math_8Bypass0[] =
7999        "__GNUC__";
8001 #define    SOLARIS_MATH_8_TEST_CT  2
8002 static tTestDesc aSolaris_Math_8Tests[] = {
8003   { TT_NEGREP,   zSolaris_Math_8Bypass0, (regex_t*)NULL },
8004   { TT_EGREP,    zSolaris_Math_8Select0, (regex_t*)NULL }, };
8007  *  Fix Command Arguments for Solaris_Math_8
8008  */
8009 static const char* apzSolaris_Math_8Patch[] = {
8010     "format",
8011     "#define\tsignbit(x)\t(sizeof(x) == sizeof(float) \\\n\
8012 \t\t\t   ? __builtin_signbitf(x) \\\n\
8013 \t\t\t   : sizeof(x) == sizeof(long double) \\\n\
8014 \t\t\t     ? __builtin_signbitl(x) \\\n\
8015 \t\t\t     : __builtin_signbit(x))",
8016     "^#define[ \t]+signbit\\(x\\)[ \t]+__builtin_signbit\\(x\\)",
8017     (char*)NULL };
8019 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8021  *  Description of Solaris_Math_9 fix
8022  */
8023 tSCC zSolaris_Math_9Name[] =
8024      "solaris_math_9";
8027  *  File name selection pattern
8028  */
8029 tSCC zSolaris_Math_9List[] =
8030   "iso/math_c99.h\0";
8032  *  Machine/OS name selection pattern
8033  */
8034 #define apzSolaris_Math_9Machs (const char**)NULL
8037  *  content selection pattern - do fix if pattern found
8038  */
8039 tSCC zSolaris_Math_9Select0[] =
8040        "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
8043  *  content bypass pattern - skip fix if pattern found
8044  */
8045 tSCC zSolaris_Math_9Bypass0[] =
8046        "__GNUC__";
8048 #define    SOLARIS_MATH_9_TEST_CT  2
8049 static tTestDesc aSolaris_Math_9Tests[] = {
8050   { TT_NEGREP,   zSolaris_Math_9Bypass0, (regex_t*)NULL },
8051   { TT_EGREP,    zSolaris_Math_9Select0, (regex_t*)NULL }, };
8054  *  Fix Command Arguments for Solaris_Math_9
8055  */
8056 static const char* apzSolaris_Math_9Patch[] = {
8057     "format",
8058     "#define\t%1(x, y)%2__builtin_%1(x, y)",
8059     "^#define[ \t]+([a-z]+)\\(x, y\\)([ \t]+)\\(\\(x\\) __builtin_[a-z]+\\(y\\)\\)",
8060     (char*)NULL };
8062 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8064  *  Description of Solaris_Math_11 fix
8065  */
8066 tSCC zSolaris_Math_11Name[] =
8067      "solaris_math_11";
8070  *  File name selection pattern
8071  */
8072 tSCC zSolaris_Math_11List[] =
8073   "iso/math_c99.h\0";
8075  *  Machine/OS name selection pattern
8076  */
8077 #define apzSolaris_Math_11Machs (const char**)NULL
8080  *  content selection pattern - do fix if pattern found
8081  */
8082 tSCC zSolaris_Math_11Select0[] =
8083        "@\\(#\\)math_c99\\.h[ \t]+1\\.[0-9]+[ \t]+[0-9/]+ ";
8085 #define    SOLARIS_MATH_11_TEST_CT  1
8086 static tTestDesc aSolaris_Math_11Tests[] = {
8087   { TT_EGREP,    zSolaris_Math_11Select0, (regex_t*)NULL }, };
8090  *  Fix Command Arguments for Solaris_Math_11
8091  */
8092 static const char* apzSolaris_Math_11Patch[] = {
8093     "format",
8094     "#undef\tsignbit\n\
8095 #define\tsignbit(x)\t(sizeof(x) == sizeof(float) \\\n\
8096 \t\t\t   ? __builtin_signbitf(x) \\\n\
8097 \t\t\t   : sizeof(x) == sizeof(long double) \\\n\
8098 \t\t\t     ? __builtin_signbitl(x) \\\n\
8099 \t\t\t     : __builtin_signbit(x))",
8100     "^#undef[ \t]+signbit\n\
8101 #if defined\\(__sparc\\)\n\
8102 #define[ \t]+signbit\\(x\\)[ \t]+__extension__\\( \\\\\n\
8103 [ \t]+\\{[ \t]*__typeof\\(x\\)[ \t]*__x_s[ \t]*=[ \t]*\\(x\\);[ \t]*\\\\\n\
8104 [ \t]+\\(int\\)[ \t]*\\(\\*\\(unsigned[ \t]*\\*\\)[ \t]*\\&__x_s[ \t]*>>[ \t]*31\\);[ \t]*\\}\\)\n\
8105 #elif defined\\(__i386\\) \\|\\| defined\\(__amd64\\)\n\
8106 #define[ \t]+signbit\\(x\\)[ \t]+__extension__\\( \\\\\n\
8107 [ \t]+\\{ __typeof\\(x\\) __x_s = \\(x\\); \\\\\n\
8108 [ \t]+\\(sizeof \\(__x_s\\) == sizeof \\(float\\) \\? \\\\\n\
8109 [ \t]+\\(int\\) \\(\\*\\(unsigned \\*\\) \\&__x_s >> 31\\) : \\\\\n\
8110 [ \t]+sizeof \\(__x_s\\) == sizeof \\(double\\) \\? \\\\\n\
8111 [ \t]+\\(int\\) \\(\\(\\(unsigned \\*\\) \\&__x_s\\)\\[1\\] >> 31\\) : \\\\\n\
8112 [ \t]+\\(int\\) \\(\\(\\(unsigned short \\*\\) \\&__x_s\\)\\[4\\] >> 15\\)\\); \\}\\)\n\
8113 #endif",
8114     (char*)NULL };
8116 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8118  *  Description of Solaris_Math_12 fix
8119  */
8120 tSCC zSolaris_Math_12Name[] =
8121      "solaris_math_12";
8124  *  File name selection pattern
8125  */
8126 tSCC zSolaris_Math_12List[] =
8127   "math.h\0";
8129  *  Machine/OS name selection pattern
8130  */
8131 tSCC* apzSolaris_Math_12Machs[] = {
8132         "*-*-solaris2*",
8133         (const char*)NULL };
8136  *  content selection pattern - do fix if pattern found
8137  */
8138 tSCC zSolaris_Math_12Select0[] =
8139        "#undef.*_GLIBCXX_USE_C99_MATH";
8141 #define    SOLARIS_MATH_12_TEST_CT  1
8142 static tTestDesc aSolaris_Math_12Tests[] = {
8143   { TT_EGREP,    zSolaris_Math_12Select0, (regex_t*)NULL }, };
8146  *  Fix Command Arguments for Solaris_Math_12
8147  */
8148 static const char* apzSolaris_Math_12Patch[] = { sed_cmd_z,
8149     "-e", "/#undef[ \t]*_GLIBCXX_USE_C99_MATH/d",
8150     (char*)NULL };
8152 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8154  *  Description of Solaris_Once_Init_1 fix
8155  */
8156 tSCC zSolaris_Once_Init_1Name[] =
8157      "solaris_once_init_1";
8160  *  File name selection pattern
8161  */
8162 tSCC zSolaris_Once_Init_1List[] =
8163   "pthread.h\0";
8165  *  Machine/OS name selection pattern
8166  */
8167 tSCC* apzSolaris_Once_Init_1Machs[] = {
8168         "*-*-solaris*",
8169         (const char*)NULL };
8172  *  content selection pattern - do fix if pattern found
8173  */
8174 tSCC zSolaris_Once_Init_1Select0[] =
8175        "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
8177 #define    SOLARIS_ONCE_INIT_1_TEST_CT  1
8178 static tTestDesc aSolaris_Once_Init_1Tests[] = {
8179   { TT_EGREP,    zSolaris_Once_Init_1Select0, (regex_t*)NULL }, };
8182  *  Fix Command Arguments for Solaris_Once_Init_1
8183  */
8184 static const char* apzSolaris_Once_Init_1Patch[] = {
8185     "format",
8186     "%1{%2}%3",
8187     "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{)([^}]+)(\\})[ \t]*$",
8188     (char*)NULL };
8190 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8192  *  Description of Solaris_Posix_Spawn_Restrict fix
8193  */
8194 tSCC zSolaris_Posix_Spawn_RestrictName[] =
8195      "solaris_posix_spawn_restrict";
8198  *  File name selection pattern
8199  */
8200 tSCC zSolaris_Posix_Spawn_RestrictList[] =
8201   "spawn.h\0";
8203  *  Machine/OS name selection pattern
8204  */
8205 tSCC* apzSolaris_Posix_Spawn_RestrictMachs[] = {
8206         "*-*-solaris2*",
8207         (const char*)NULL };
8210  *  content selection pattern - do fix if pattern found
8211  */
8212 tSCC zSolaris_Posix_Spawn_RestrictSelect0[] =
8213        "(.*[ \t]+)([a-z]+)\\[_RESTRICT_KYWD\\](.*)";
8215 #define    SOLARIS_POSIX_SPAWN_RESTRICT_TEST_CT  1
8216 static tTestDesc aSolaris_Posix_Spawn_RestrictTests[] = {
8217   { TT_EGREP,    zSolaris_Posix_Spawn_RestrictSelect0, (regex_t*)NULL }, };
8220  *  Fix Command Arguments for Solaris_Posix_Spawn_Restrict
8221  */
8222 static const char* apzSolaris_Posix_Spawn_RestrictPatch[] = {
8223     "format",
8224     "%1*_RESTRICT_KYWD %2%3",
8225     (char*)NULL };
8227 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8229  *  Description of Solaris_Pow_Int_Overload fix
8230  */
8231 tSCC zSolaris_Pow_Int_OverloadName[] =
8232      "solaris_pow_int_overload";
8235  *  File name selection pattern
8236  */
8237 tSCC zSolaris_Pow_Int_OverloadList[] =
8238   "iso/math_iso.h\0";
8240  *  Machine/OS name selection pattern
8241  */
8242 tSCC* apzSolaris_Pow_Int_OverloadMachs[] = {
8243         "*-*-solaris2*",
8244         (const char*)NULL };
8247  *  content selection pattern - do fix if pattern found
8248  */
8249 tSCC zSolaris_Pow_Int_OverloadSelect0[] =
8250        "^[ \t]*inline [a-z ]* pow\\([^()]*, int [^()]*\\) *\\{[^{}]*\n\
8251 [^{}]*\\}";
8253 #define    SOLARIS_POW_INT_OVERLOAD_TEST_CT  1
8254 static tTestDesc aSolaris_Pow_Int_OverloadTests[] = {
8255   { TT_EGREP,    zSolaris_Pow_Int_OverloadSelect0, (regex_t*)NULL }, };
8258  *  Fix Command Arguments for Solaris_Pow_Int_Overload
8259  */
8260 static const char* apzSolaris_Pow_Int_OverloadPatch[] = {
8261     "format",
8262     "#if __cplusplus < 201103L\n\
8263 %0\n\
8264 #endif",
8265     (char*)NULL };
8267 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8269  *  Description of Solaris_Rwlock_Init_1 fix
8270  */
8271 tSCC zSolaris_Rwlock_Init_1Name[] =
8272      "solaris_rwlock_init_1";
8275  *  File name selection pattern
8276  */
8277 tSCC zSolaris_Rwlock_Init_1List[] =
8278   "pthread.h\0";
8280  *  Machine/OS name selection pattern
8281  */
8282 tSCC* apzSolaris_Rwlock_Init_1Machs[] = {
8283         "*-*-solaris*",
8284         (const char*)NULL };
8287  *  content selection pattern - do fix if pattern found
8288  */
8289 tSCC zSolaris_Rwlock_Init_1Select0[] =
8290        "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
8292 #define    SOLARIS_RWLOCK_INIT_1_TEST_CT  1
8293 static tTestDesc aSolaris_Rwlock_Init_1Tests[] = {
8294   { TT_EGREP,    zSolaris_Rwlock_Init_1Select0, (regex_t*)NULL }, };
8297  *  Fix Command Arguments for Solaris_Rwlock_Init_1
8298  */
8299 static const char* apzSolaris_Rwlock_Init_1Patch[] = {
8300     "format",
8301     "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
8302 %0\n\
8303 #else\n\
8304 %1{0, 0, 0, {{0}, {0}, {0}}, {{0}, {0}}, {{0}, {0}}}\n\
8305 #endif",
8306     "(^#define[ \t]+PTHREAD_RWLOCK_INITIALIZER[ \t]+)\\{0, 0, 0, \\{0, 0, 0\\}, \\{0, 0\\}, \\{0, 0\\}\\}[ \t]*$",
8307     (char*)NULL };
8309 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8311  *  Description of Solaris_Std___Filbuf fix
8312  */
8313 tSCC zSolaris_Std___FilbufName[] =
8314      "solaris_std___filbuf";
8317  *  File name selection pattern
8318  */
8319 tSCC zSolaris_Std___FilbufList[] =
8320   "stdio.h\0";
8322  *  Machine/OS name selection pattern
8323  */
8324 tSCC* apzSolaris_Std___FilbufMachs[] = {
8325         "*-*-solaris2*",
8326         (const char*)NULL };
8329  *  content selection pattern - do fix if pattern found
8330  */
8331 tSCC zSolaris_Std___FilbufSelect0[] =
8332        "(using std::perror;\n\
8333 )(#endif)";
8336  *  content bypass pattern - skip fix if pattern found
8337  */
8338 tSCC zSolaris_Std___FilbufBypass0[] =
8339        "using std::__filbuf";
8341 #define    SOLARIS_STD___FILBUF_TEST_CT  2
8342 static tTestDesc aSolaris_Std___FilbufTests[] = {
8343   { TT_NEGREP,   zSolaris_Std___FilbufBypass0, (regex_t*)NULL },
8344   { TT_EGREP,    zSolaris_Std___FilbufSelect0, (regex_t*)NULL }, };
8347  *  Fix Command Arguments for Solaris_Std___Filbuf
8348  */
8349 static const char* apzSolaris_Std___FilbufPatch[] = {
8350     "format",
8351     "%1#ifndef _LP64\n\
8352 using std::__filbuf;\n\
8353 using std::__flsbuf;\n\
8354 #endif\n\
8355 %2",
8356     (char*)NULL };
8358 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8360  *  Description of Solaris_Std_Gets_Cxx14 fix
8361  */
8362 tSCC zSolaris_Std_Gets_Cxx14Name[] =
8363      "solaris_std_gets_cxx14";
8366  *  File name selection pattern
8367  */
8368 tSCC zSolaris_Std_Gets_Cxx14List[] =
8369   "stdio.h\0";
8371  *  Machine/OS name selection pattern
8372  */
8373 tSCC* apzSolaris_Std_Gets_Cxx14Machs[] = {
8374         "*-*-solaris2*",
8375         (const char*)NULL };
8378  *  content selection pattern - do fix if pattern found
8379  */
8380 tSCC zSolaris_Std_Gets_Cxx14Select0[] =
8381        "using std::gets;";
8383 #define    SOLARIS_STD_GETS_CXX14_TEST_CT  1
8384 static tTestDesc aSolaris_Std_Gets_Cxx14Tests[] = {
8385   { TT_EGREP,    zSolaris_Std_Gets_Cxx14Select0, (regex_t*)NULL }, };
8388  *  Fix Command Arguments for Solaris_Std_Gets_Cxx14
8389  */
8390 static const char* apzSolaris_Std_Gets_Cxx14Patch[] = {
8391     "format",
8392     "#if __cplusplus < 201402L\n\
8393 %0\n\
8394 #endif",
8395     (char*)NULL };
8397 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8399  *  Description of Solaris_Stdio_Tag fix
8400  */
8401 tSCC zSolaris_Stdio_TagName[] =
8402      "solaris_stdio_tag";
8405  *  File name selection pattern
8406  */
8407 tSCC zSolaris_Stdio_TagList[] =
8408   "stdio_tag.h\0";
8410  *  Machine/OS name selection pattern
8411  */
8412 #define apzSolaris_Stdio_TagMachs (const char**)NULL
8415  *  content selection pattern - do fix if pattern found
8416  */
8417 tSCC zSolaris_Stdio_TagSelect0[] =
8418        "__cplusplus < 54321L";
8421  *  content bypass pattern - skip fix if pattern found
8422  */
8423 tSCC zSolaris_Stdio_TagBypass0[] =
8424        "__GNUC__";
8426 #define    SOLARIS_STDIO_TAG_TEST_CT  2
8427 static tTestDesc aSolaris_Stdio_TagTests[] = {
8428   { TT_NEGREP,   zSolaris_Stdio_TagBypass0, (regex_t*)NULL },
8429   { TT_EGREP,    zSolaris_Stdio_TagSelect0, (regex_t*)NULL }, };
8432  *  Fix Command Arguments for Solaris_Stdio_Tag
8433  */
8434 static const char* apzSolaris_Stdio_TagPatch[] = { sed_cmd_z,
8435     "-e", "s/defined(__cplusplus) && (__cplusplus < 54321L)/0/",
8436     (char*)NULL };
8438 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8440  *  Description of Solaris_Stdlib_Noreturn fix
8441  */
8442 tSCC zSolaris_Stdlib_NoreturnName[] =
8443      "solaris_stdlib_noreturn";
8446  *  File name selection pattern
8447  */
8448 tSCC zSolaris_Stdlib_NoreturnList[] =
8449   "iso/stdlib_c99.h\0";
8451  *  Machine/OS name selection pattern
8452  */
8453 tSCC* apzSolaris_Stdlib_NoreturnMachs[] = {
8454         "*-*-solaris2*",
8455         (const char*)NULL };
8458  *  content selection pattern - do fix if pattern found
8459  */
8460 tSCC zSolaris_Stdlib_NoreturnSelect0[] =
8461        "(extern) _Noreturn (void quick_exit\\(int\\));";
8463 #define    SOLARIS_STDLIB_NORETURN_TEST_CT  1
8464 static tTestDesc aSolaris_Stdlib_NoreturnTests[] = {
8465   { TT_EGREP,    zSolaris_Stdlib_NoreturnSelect0, (regex_t*)NULL }, };
8468  *  Fix Command Arguments for Solaris_Stdlib_Noreturn
8469  */
8470 static const char* apzSolaris_Stdlib_NoreturnPatch[] = {
8471     "format",
8472     "%1 %2 __attribute__((__noreturn__));",
8473     (char*)NULL };
8475 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8477  *  Description of Statsswtch fix
8478  */
8479 tSCC zStatsswtchName[] =
8480      "statsswtch";
8483  *  File name selection pattern
8484  */
8485 tSCC zStatsswtchList[] =
8486   "rpcsvc/rstat.h\0";
8488  *  Machine/OS name selection pattern
8489  */
8490 #define apzStatsswtchMachs (const char**)NULL
8493  *  content selection pattern - do fix if pattern found
8494  */
8495 tSCC zStatsswtchSelect0[] =
8496        "boottime$";
8498 #define    STATSSWTCH_TEST_CT  1
8499 static tTestDesc aStatsswtchTests[] = {
8500   { TT_EGREP,    zStatsswtchSelect0, (regex_t*)NULL }, };
8503  *  Fix Command Arguments for Statsswtch
8504  */
8505 static const char* apzStatsswtchPatch[] = {
8506     "format",
8507     "boottime;",
8508     (char*)NULL };
8510 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8512  *  Description of Stdio_Stdarg_H fix
8513  */
8514 tSCC zStdio_Stdarg_HName[] =
8515      "stdio_stdarg_h";
8518  *  File name selection pattern
8519  */
8520 tSCC zStdio_Stdarg_HList[] =
8521   "stdio.h\0";
8523  *  Machine/OS name selection pattern
8524  */
8525 tSCC* apzStdio_Stdarg_HMachs[] = {
8526         "*-*-solaris2.1[0-9]*",
8527         (const char*)NULL };
8530  *  content bypass pattern - skip fix if pattern found
8531  */
8532 tSCC zStdio_Stdarg_HBypass0[] =
8533        "include.*(stdarg.h|machine/ansi.h)";
8535 #define    STDIO_STDARG_H_TEST_CT  1
8536 static tTestDesc aStdio_Stdarg_HTests[] = {
8537   { TT_NEGREP,   zStdio_Stdarg_HBypass0, (regex_t*)NULL }, };
8540  *  Fix Command Arguments for Stdio_Stdarg_H
8541  */
8542 static const char* apzStdio_Stdarg_HPatch[] = {
8543     "wrap",
8544     "#define __need___va_list\n\
8545 #include <stdarg.h>\n",
8546     (char*)NULL };
8548 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8550  *  Description of Stdio_Va_List fix
8551  */
8552 tSCC zStdio_Va_ListName[] =
8553      "stdio_va_list";
8556  *  File name selection pattern
8557  */
8558 tSCC zStdio_Va_ListList[] =
8559   "stdio.h\0";
8561  *  Machine/OS name selection pattern
8562  */
8563 tSCC* apzStdio_Va_ListMachs[] = {
8564         "*-*-solaris2.1[0-9]*",
8565         (const char*)NULL };
8568  *  content bypass pattern - skip fix if pattern found
8569  */
8570 tSCC zStdio_Va_ListBypass0[] =
8571        "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
8573 #define    STDIO_VA_LIST_TEST_CT  1
8574 static tTestDesc aStdio_Va_ListTests[] = {
8575   { TT_NEGREP,   zStdio_Va_ListBypass0, (regex_t*)NULL }, };
8578  *  Fix Command Arguments for Stdio_Va_List
8579  */
8580 static const char* apzStdio_Va_ListPatch[] = { sed_cmd_z,
8581     "-e", "s@[ \t]va_list\\([ \t)]\\)@ __gnuc_va_list\\1@\n\
8582 s@(va_list)&@(__gnuc_va_list)\\&@\n\
8583 s@ _VA_LIST_));@ __gnuc_va_list));@\n\
8584 s@ __VA_LIST__));@ __gnuc_va_list));@\n\
8585 s@ va_list@ __not_va_list__@\n\
8586 s@\\*va_list@*__not_va_list__@\n\
8587 s@ __va_list)@ __gnuc_va_list)@\n\
8588 s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
8589 s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
8590 s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
8591 s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
8592 s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
8593 s@VA_LIST@DUMMY_VA_LIST@\n\
8594 s@_Va_LIST@_VA_LIST@",
8595     (char*)NULL };
8597 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8599  *  Description of Stdio_Va_List_Clients fix
8600  */
8601 tSCC zStdio_Va_List_ClientsName[] =
8602      "stdio_va_list_clients";
8605  *  File name selection pattern
8606  */
8607 tSCC zStdio_Va_List_ClientsList[] =
8608   "com_err.h\0cps.h\0curses.h\0krb5.h\0lc_core.h\0pfmt.h\0wchar.h\0curses_colr/curses.h\0";
8610  *  Machine/OS name selection pattern
8611  */
8612 #define apzStdio_Va_List_ClientsMachs (const char**)NULL
8615  *  content bypass pattern - skip fix if pattern found
8616  */
8617 tSCC zStdio_Va_List_ClientsBypass0[] =
8618        "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
8619 tSCC zStdio_Va_List_ClientsBypass1[] =
8620        "include <stdarg\\.h>|#ifdef va_start";
8622 #define    STDIO_VA_LIST_CLIENTS_TEST_CT  2
8623 static tTestDesc aStdio_Va_List_ClientsTests[] = {
8624   { TT_NEGREP,   zStdio_Va_List_ClientsBypass0, (regex_t*)NULL },
8625   { TT_NEGREP,   zStdio_Va_List_ClientsBypass1, (regex_t*)NULL }, };
8628  *  Fix Command Arguments for Stdio_Va_List_Clients
8629  */
8630 static const char* apzStdio_Va_List_ClientsPatch[] = { sed_cmd_z,
8631     "-e", "s@[ \t]va_list\\([ \t)]\\)@ __gnuc_va_list\\1@\n\
8632 s@(va_list)&@(__gnuc_va_list)\\&@\n\
8633 s@ _VA_LIST_));@ __gnuc_va_list));@\n\
8634 s@ __VA_LIST__));@ __gnuc_va_list));@\n\
8635 s@ va_list@ __not_va_list__@\n\
8636 s@\\*va_list@*__not_va_list__@\n\
8637 s@ __va_list)@ __gnuc_va_list)@\n\
8638 s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
8639 s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
8640 s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
8641 s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
8642 s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
8643 s@VA_LIST@DUMMY_VA_LIST@\n\
8644 s@_Va_LIST@_VA_LIST@",
8645     (char*)NULL };
8647 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8649  *  Description of Strict_Ansi_Not fix
8650  */
8651 tSCC zStrict_Ansi_NotName[] =
8652      "strict_ansi_not";
8655  *  File name selection pattern
8656  */
8657 #define zStrict_Ansi_NotList (char*)NULL
8659  *  Machine/OS name selection pattern
8660  */
8661 #define apzStrict_Ansi_NotMachs (const char**)NULL
8664  *  content selection pattern - do fix if pattern found
8665  */
8666 tSCC zStrict_Ansi_NotSelect0[] =
8667        "^([ \t]*#[ \t]*if.*)(!__STDC__|__STDC__[ \t]*==[ \t]*0|__STDC__[ \t]*!=[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*0)";
8670  *  content bypass pattern - skip fix if pattern found
8671  */
8672 tSCC zStrict_Ansi_NotBypass0[] =
8673        "GNU and MIPS C compilers define __STDC__ differently";
8674 tSCC zStrict_Ansi_NotBypass1[] =
8675        "__SCO_VERSION__.*__STDC__ != 1";
8678  *  perform the C function call test
8679  */
8680 tSCC zStrict_Ansi_NotFTst0[] = "stdc_0_in_system_headers";
8682 #define    STRICT_ANSI_NOT_TEST_CT  4
8683 static tTestDesc aStrict_Ansi_NotTests[] = {
8684   { TT_FUNCTION, zStrict_Ansi_NotFTst0,   0 /* unused */ },
8685   { TT_NEGREP,   zStrict_Ansi_NotBypass0, (regex_t*)NULL },
8686   { TT_NEGREP,   zStrict_Ansi_NotBypass1, (regex_t*)NULL },
8687   { TT_EGREP,    zStrict_Ansi_NotSelect0, (regex_t*)NULL }, };
8690  *  Fix Command Arguments for Strict_Ansi_Not
8691  */
8692 static const char* apzStrict_Ansi_NotPatch[] = {
8693     "format",
8694     "%1 !defined(__STRICT_ANSI__)",
8695     (char*)NULL };
8697 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8699  *  Description of Strict_Ansi_Not_Ctd fix
8700  */
8701 tSCC zStrict_Ansi_Not_CtdName[] =
8702      "strict_ansi_not_ctd";
8705  *  File name selection pattern
8706  */
8707 tSCC zStrict_Ansi_Not_CtdList[] =
8708   "math.h\0limits.h\0stdio.h\0signal.h\0stdlib.h\0sys/signal.h\0time.h\0";
8710  *  Machine/OS name selection pattern
8711  */
8712 #define apzStrict_Ansi_Not_CtdMachs (const char**)NULL
8715  *  content selection pattern - do fix if pattern found
8716  */
8717 tSCC zStrict_Ansi_Not_CtdSelect0[] =
8718        "^([ \t]*(\\(|&&|\\|\\|)([ \t(]*!*[ \t]*defined\\([a-zA-Z_0-9]+\\)[ \t]*[|&][|&])*[ \t(]*)(__STDC__[ \t]*(|-[ \t]*0[ \t]*)==[ \t]*0)";
8721  *  perform the C function call test
8722  */
8723 tSCC zStrict_Ansi_Not_CtdFTst0[] = "stdc_0_in_system_headers";
8725 #define    STRICT_ANSI_NOT_CTD_TEST_CT  2
8726 static tTestDesc aStrict_Ansi_Not_CtdTests[] = {
8727   { TT_FUNCTION, zStrict_Ansi_Not_CtdFTst0,   0 /* unused */ },
8728   { TT_EGREP,    zStrict_Ansi_Not_CtdSelect0, (regex_t*)NULL }, };
8731  *  Fix Command Arguments for Strict_Ansi_Not_Ctd
8732  */
8733 static const char* apzStrict_Ansi_Not_CtdPatch[] = {
8734     "format",
8735     "%1 !defined(__STRICT_ANSI__)",
8736     (char*)NULL };
8738 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8740  *  Description of Strict_Ansi_Only fix
8741  */
8742 tSCC zStrict_Ansi_OnlyName[] =
8743      "strict_ansi_only";
8746  *  File name selection pattern
8747  */
8748 #define zStrict_Ansi_OnlyList (char*)NULL
8750  *  Machine/OS name selection pattern
8751  */
8752 #define apzStrict_Ansi_OnlyMachs (const char**)NULL
8755  *  content selection pattern - do fix if pattern found
8756  */
8757 tSCC zStrict_Ansi_OnlySelect0[] =
8758        "^([ \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)";
8761  *  perform the C function call test
8762  */
8763 tSCC zStrict_Ansi_OnlyFTst0[] = "stdc_0_in_system_headers";
8765 #define    STRICT_ANSI_ONLY_TEST_CT  2
8766 static tTestDesc aStrict_Ansi_OnlyTests[] = {
8767   { TT_FUNCTION, zStrict_Ansi_OnlyFTst0,   0 /* unused */ },
8768   { TT_EGREP,    zStrict_Ansi_OnlySelect0, (regex_t*)NULL }, };
8771  *  Fix Command Arguments for Strict_Ansi_Only
8772  */
8773 static const char* apzStrict_Ansi_OnlyPatch[] = {
8774     "format",
8775     "%1 defined(__STRICT_ANSI__)",
8776     (char*)NULL };
8778 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8780  *  Description of Struct_File fix
8781  */
8782 tSCC zStruct_FileName[] =
8783      "struct_file";
8786  *  File name selection pattern
8787  */
8788 tSCC zStruct_FileList[] =
8789   "rpc/xdr.h\0";
8791  *  Machine/OS name selection pattern
8792  */
8793 #define apzStruct_FileMachs (const char**)NULL
8796  *  content selection pattern - do fix if pattern found
8797  */
8798 tSCC zStruct_FileSelect0[] =
8799        "^.*xdrstdio_create.*struct __file_s";
8801 #define    STRUCT_FILE_TEST_CT  1
8802 static tTestDesc aStruct_FileTests[] = {
8803   { TT_EGREP,    zStruct_FileSelect0, (regex_t*)NULL }, };
8806  *  Fix Command Arguments for Struct_File
8807  */
8808 static const char* apzStruct_FilePatch[] = {
8809     "format",
8810     "struct __file_s;\n\
8811 %0",
8812     (char*)NULL };
8814 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8816  *  Description of Struct_Sockaddr fix
8817  */
8818 tSCC zStruct_SockaddrName[] =
8819      "struct_sockaddr";
8822  *  File name selection pattern
8823  */
8824 tSCC zStruct_SockaddrList[] =
8825   "rpc/auth.h\0";
8827  *  Machine/OS name selection pattern
8828  */
8829 #define apzStruct_SockaddrMachs (const char**)NULL
8832  *  content selection pattern - do fix if pattern found
8833  */
8834 tSCC zStruct_SockaddrSelect0[] =
8835        "^.*authdes_create.*struct sockaddr[^_]";
8838  *  content bypass pattern - skip fix if pattern found
8839  */
8840 tSCC zStruct_SockaddrBypass0[] =
8841        "<sys/socket.h>";
8842 tSCC zStruct_SockaddrBypass1[] =
8843        "struct sockaddr;\n";
8845 #define    STRUCT_SOCKADDR_TEST_CT  3
8846 static tTestDesc aStruct_SockaddrTests[] = {
8847   { TT_NEGREP,   zStruct_SockaddrBypass0, (regex_t*)NULL },
8848   { TT_NEGREP,   zStruct_SockaddrBypass1, (regex_t*)NULL },
8849   { TT_EGREP,    zStruct_SockaddrSelect0, (regex_t*)NULL }, };
8852  *  Fix Command Arguments for Struct_Sockaddr
8853  */
8854 static const char* apzStruct_SockaddrPatch[] = {
8855     "format",
8856     "struct sockaddr;\n\
8857 %0",
8858     (char*)NULL };
8860 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8862  *  Description of Sun_Auth_Proto fix
8863  */
8864 tSCC zSun_Auth_ProtoName[] =
8865      "sun_auth_proto";
8868  *  File name selection pattern
8869  */
8870 tSCC zSun_Auth_ProtoList[] =
8871   "rpc/auth.h\0rpc/clnt.h\0rpc/svc.h\0rpc/xdr.h\0";
8873  *  Machine/OS name selection pattern
8874  */
8875 #define apzSun_Auth_ProtoMachs (const char**)NULL
8878  *  content selection pattern - do fix if pattern found
8879  */
8880 tSCC zSun_Auth_ProtoSelect0[] =
8881        "\\(\\*[a-z][a-z_]*\\)\\(\\)";
8884  *  content bypass pattern - skip fix if pattern found
8885  */
8886 tSCC zSun_Auth_ProtoBypass0[] =
8887        "__cplusplus";
8889 #define    SUN_AUTH_PROTO_TEST_CT  2
8890 static tTestDesc aSun_Auth_ProtoTests[] = {
8891   { TT_NEGREP,   zSun_Auth_ProtoBypass0, (regex_t*)NULL },
8892   { TT_EGREP,    zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };
8895  *  Fix Command Arguments for Sun_Auth_Proto
8896  */
8897 static const char* apzSun_Auth_ProtoPatch[] = {
8898     "format",
8899     "#ifdef __cplusplus\n\
8900 %1(...);%2\n\
8901 #else\n\
8902 %1();%2\n\
8903 #endif",
8904     "(.*\\(\\*[a-z][a-z_]*\\))\\(\\);(.*)",
8905     (char*)NULL };
8907 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8909  *  Description of Sun_Bogus_Ifdef fix
8910  */
8911 tSCC zSun_Bogus_IfdefName[] =
8912      "sun_bogus_ifdef";
8915  *  File name selection pattern
8916  */
8917 tSCC zSun_Bogus_IfdefList[] =
8918   "hsfs/hsfs_spec.h\0hsfs/iso_spec.h\0";
8920  *  Machine/OS name selection pattern
8921  */
8922 #define apzSun_Bogus_IfdefMachs (const char**)NULL
8925  *  content selection pattern - do fix if pattern found
8926  */
8927 tSCC zSun_Bogus_IfdefSelect0[] =
8928        "#ifdef(.*\\|\\|.*)";
8930 #define    SUN_BOGUS_IFDEF_TEST_CT  1
8931 static tTestDesc aSun_Bogus_IfdefTests[] = {
8932   { TT_EGREP,    zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };
8935  *  Fix Command Arguments for Sun_Bogus_Ifdef
8936  */
8937 static const char* apzSun_Bogus_IfdefPatch[] = {
8938     "format",
8939     "#if%1",
8940     (char*)NULL };
8942 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8944  *  Description of Sun_Catmacro fix
8945  */
8946 tSCC zSun_CatmacroName[] =
8947      "sun_catmacro";
8950  *  File name selection pattern
8951  */
8952 tSCC zSun_CatmacroList[] =
8953   "pixrect/memvar.h\0";
8955  *  Machine/OS name selection pattern
8956  */
8957 #define apzSun_CatmacroMachs (const char**)NULL
8960  *  content selection pattern - do fix if pattern found
8961  */
8962 tSCC zSun_CatmacroSelect0[] =
8963        "^#define[ \t]+CAT\\(a,b\\).*";
8965 #define    SUN_CATMACRO_TEST_CT  1
8966 static tTestDesc aSun_CatmacroTests[] = {
8967   { TT_EGREP,    zSun_CatmacroSelect0, (regex_t*)NULL }, };
8970  *  Fix Command Arguments for Sun_Catmacro
8971  */
8972 static const char* apzSun_CatmacroPatch[] = {
8973     "format",
8974     "#ifdef __STDC__\n\
8975 #  define CAT(a,b) a##b\n\
8976 #else\n\
8977 %0\n\
8978 #endif",
8979     (char*)NULL };
8981 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8983  *  Description of Sun_Malloc fix
8984  */
8985 tSCC zSun_MallocName[] =
8986      "sun_malloc";
8989  *  File name selection pattern
8990  */
8991 tSCC zSun_MallocList[] =
8992   "malloc.h\0";
8994  *  Machine/OS name selection pattern
8995  */
8996 #define apzSun_MallocMachs (const char**)NULL
8999  *  content bypass pattern - skip fix if pattern found
9000  */
9001 tSCC zSun_MallocBypass0[] =
9002        "_CLASSIC_ANSI_TYPES";
9004 #define    SUN_MALLOC_TEST_CT  1
9005 static tTestDesc aSun_MallocTests[] = {
9006   { TT_NEGREP,   zSun_MallocBypass0, (regex_t*)NULL }, };
9009  *  Fix Command Arguments for Sun_Malloc
9010  */
9011 static const char* apzSun_MallocPatch[] = { sed_cmd_z,
9012     "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
9013     "-e", "s/int[ \t][ \t]*free/void\tfree/g",
9014     "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
9015     "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
9016     "-e", "s/char\\([ \t]*\\*[ \t]*calloc\\)/void\\1/g",
9017     (char*)NULL };
9019 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9021  *  Description of Sun_Rusers_Semi fix
9022  */
9023 tSCC zSun_Rusers_SemiName[] =
9024      "sun_rusers_semi";
9027  *  File name selection pattern
9028  */
9029 tSCC zSun_Rusers_SemiList[] =
9030   "rpcsvc/rusers.h\0";
9032  *  Machine/OS name selection pattern
9033  */
9034 #define apzSun_Rusers_SemiMachs (const char**)NULL
9037  *  content selection pattern - do fix if pattern found
9038  */
9039 tSCC zSun_Rusers_SemiSelect0[] =
9040        "_cnt$";
9042 #define    SUN_RUSERS_SEMI_TEST_CT  1
9043 static tTestDesc aSun_Rusers_SemiTests[] = {
9044   { TT_EGREP,    zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };
9047  *  Fix Command Arguments for Sun_Rusers_Semi
9048  */
9049 static const char* apzSun_Rusers_SemiPatch[] = { sed_cmd_z,
9050     "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
9051     (char*)NULL };
9053 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9055  *  Description of Sun_Signal fix
9056  */
9057 tSCC zSun_SignalName[] =
9058      "sun_signal";
9061  *  File name selection pattern
9062  */
9063 tSCC zSun_SignalList[] =
9064   "sys/signal.h\0signal.h\0";
9066  *  Machine/OS name selection pattern
9067  */
9068 #define apzSun_SignalMachs (const char**)NULL
9071  *  content selection pattern - do fix if pattern found
9072  */
9073 tSCC zSun_SignalSelect0[] =
9074        "^void\t\\(\\*signal\\(\\)\\)\\(\\);.*";
9076 #define    SUN_SIGNAL_TEST_CT  1
9077 static tTestDesc aSun_SignalTests[] = {
9078   { TT_EGREP,    zSun_SignalSelect0, (regex_t*)NULL }, };
9081  *  Fix Command Arguments for Sun_Signal
9082  */
9083 static const char* apzSun_SignalPatch[] = {
9084     "format",
9085     "#ifdef __cplusplus\n\
9086 void\t(*signal(...))(...);\n\
9087 #else\n\
9088 %0\n\
9089 #endif",
9090     (char*)NULL };
9092 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9094  *  Description of Sunos_Strlen fix
9095  */
9096 tSCC zSunos_StrlenName[] =
9097      "sunos_strlen";
9100  *  File name selection pattern
9101  */
9102 tSCC zSunos_StrlenList[] =
9103   "strings.h\0";
9105  *  Machine/OS name selection pattern
9106  */
9107 #define apzSunos_StrlenMachs (const char**)NULL
9110  *  content selection pattern - do fix if pattern found
9111  */
9112 tSCC zSunos_StrlenSelect0[] =
9113        "int[ \t]*strlen\\(\\);(.*)";
9115 #define    SUNOS_STRLEN_TEST_CT  1
9116 static tTestDesc aSunos_StrlenTests[] = {
9117   { TT_EGREP,    zSunos_StrlenSelect0, (regex_t*)NULL }, };
9120  *  Fix Command Arguments for Sunos_Strlen
9121  */
9122 static const char* apzSunos_StrlenPatch[] = {
9123     "format",
9124     "__SIZE_TYPE__ strlen();%1",
9125     (char*)NULL };
9127 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9129  *  Description of Suse_Linux_Vt_Cxx fix
9130  */
9131 tSCC zSuse_Linux_Vt_CxxName[] =
9132      "suse_linux_vt_cxx";
9135  *  File name selection pattern
9136  */
9137 tSCC zSuse_Linux_Vt_CxxList[] =
9138   "linux/vt.h\0";
9140  *  Machine/OS name selection pattern
9141  */
9142 #define apzSuse_Linux_Vt_CxxMachs (const char**)NULL
9145  *  content selection pattern - do fix if pattern found
9146  */
9147 tSCC zSuse_Linux_Vt_CxxSelect0[] =
9148        "^[ \t]*unsigned int new;";
9150 #define    SUSE_LINUX_VT_CXX_TEST_CT  1
9151 static tTestDesc aSuse_Linux_Vt_CxxTests[] = {
9152   { TT_EGREP,    zSuse_Linux_Vt_CxxSelect0, (regex_t*)NULL }, };
9155  *  Fix Command Arguments for Suse_Linux_Vt_Cxx
9156  */
9157 static const char* apzSuse_Linux_Vt_CxxPatch[] = {
9158     "format",
9159     "unsigned int newev;",
9160     (char*)NULL };
9162 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9164  *  Description of Svr4_Disable_Opt fix
9165  */
9166 tSCC zSvr4_Disable_OptName[] =
9167      "svr4_disable_opt";
9170  *  File name selection pattern
9171  */
9172 tSCC zSvr4_Disable_OptList[] =
9173   "string.h\0";
9175  *  Machine/OS name selection pattern
9176  */
9177 #define apzSvr4_Disable_OptMachs (const char**)NULL
9180  *  content selection pattern - do fix if pattern found
9181  */
9182 tSCC zSvr4_Disable_OptSelect0[] =
9183        "#define.*__std_hdr_";
9185 #define    SVR4_DISABLE_OPT_TEST_CT  1
9186 static tTestDesc aSvr4_Disable_OptTests[] = {
9187   { TT_EGREP,    zSvr4_Disable_OptSelect0, (regex_t*)NULL }, };
9190  *  Fix Command Arguments for Svr4_Disable_Opt
9191  */
9192 static const char* apzSvr4_Disable_OptPatch[] = { sed_cmd_z,
9193     "-e", "/#define.*__std_hdr_/d",
9194     (char*)NULL };
9196 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9198  *  Description of Svr4_Getcwd fix
9199  */
9200 tSCC zSvr4_GetcwdName[] =
9201      "svr4_getcwd";
9204  *  File name selection pattern
9205  */
9206 tSCC zSvr4_GetcwdList[] =
9207   "stdlib.h\0unistd.h\0prototypes.h\0";
9209  *  Machine/OS name selection pattern
9210  */
9211 #define apzSvr4_GetcwdMachs (const char**)NULL
9214  *  content selection pattern - do fix if pattern found
9215  */
9216 tSCC zSvr4_GetcwdSelect0[] =
9217        "getcwd\\(char \\*, int\\)";
9219 #define    SVR4_GETCWD_TEST_CT  1
9220 static tTestDesc aSvr4_GetcwdTests[] = {
9221   { TT_EGREP,    zSvr4_GetcwdSelect0, (regex_t*)NULL }, };
9224  *  Fix Command Arguments for Svr4_Getcwd
9225  */
9226 static const char* apzSvr4_GetcwdPatch[] = {
9227     "format",
9228     "getcwd(char *, size_t)",
9229     (char*)NULL };
9231 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9233  *  Description of Svr4_Profil fix
9234  */
9235 tSCC zSvr4_ProfilName[] =
9236      "svr4_profil";
9239  *  File name selection pattern
9240  */
9241 tSCC zSvr4_ProfilList[] =
9242   "stdlib.h\0unistd.h\0";
9244  *  Machine/OS name selection pattern
9245  */
9246 #define apzSvr4_ProfilMachs (const char**)NULL
9249  *  content selection pattern - do fix if pattern found
9250  */
9251 tSCC zSvr4_ProfilSelect0[] =
9252        "profil\\(unsigned short \\*, unsigned int, unsigned int, unsigned int\\)";
9254 #define    SVR4_PROFIL_TEST_CT  1
9255 static tTestDesc aSvr4_ProfilTests[] = {
9256   { TT_EGREP,    zSvr4_ProfilSelect0, (regex_t*)NULL }, };
9259  *  Fix Command Arguments for Svr4_Profil
9260  */
9261 static const char* apzSvr4_ProfilPatch[] = {
9262     "format",
9263     "profil(unsigned short *, size_t, int, unsigned int)",
9264     (char*)NULL };
9266 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9268  *  Description of Svr4_Sighandler_Type fix
9269  */
9270 tSCC zSvr4_Sighandler_TypeName[] =
9271      "svr4_sighandler_type";
9274  *  File name selection pattern
9275  */
9276 tSCC zSvr4_Sighandler_TypeList[] =
9277   "sys/signal.h\0";
9279  *  Machine/OS name selection pattern
9280  */
9281 #define apzSvr4_Sighandler_TypeMachs (const char**)NULL
9284  *  content selection pattern - do fix if pattern found
9285  */
9286 tSCC zSvr4_Sighandler_TypeSelect0[] =
9287        "void *\\(\\*\\)\\(\\)";
9289 #define    SVR4_SIGHANDLER_TYPE_TEST_CT  1
9290 static tTestDesc aSvr4_Sighandler_TypeTests[] = {
9291   { TT_EGREP,    zSvr4_Sighandler_TypeSelect0, (regex_t*)NULL }, };
9294  *  Fix Command Arguments for Svr4_Sighandler_Type
9295  */
9296 static const char* apzSvr4_Sighandler_TypePatch[] = {
9297     "format",
9298     "void (*)(int)",
9299     (char*)NULL };
9301 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9303  *  Description of Svr4_Undeclared_Getrnge fix
9304  */
9305 tSCC zSvr4_Undeclared_GetrngeName[] =
9306      "svr4_undeclared_getrnge";
9309  *  File name selection pattern
9310  */
9311 tSCC zSvr4_Undeclared_GetrngeList[] =
9312   "regexp.h\0";
9314  *  Machine/OS name selection pattern
9315  */
9316 #define apzSvr4_Undeclared_GetrngeMachs (const char**)NULL
9319  *  content selection pattern - do fix if pattern found
9320  */
9321 tSCC zSvr4_Undeclared_GetrngeSelect0[] =
9322        "getrnge";
9325  *  content bypass pattern - skip fix if pattern found
9326  */
9327 tSCC zSvr4_Undeclared_GetrngeBypass0[] =
9328        "static void getrnge";
9330 #define    SVR4_UNDECLARED_GETRNGE_TEST_CT  2
9331 static tTestDesc aSvr4_Undeclared_GetrngeTests[] = {
9332   { TT_NEGREP,   zSvr4_Undeclared_GetrngeBypass0, (regex_t*)NULL },
9333   { TT_EGREP,    zSvr4_Undeclared_GetrngeSelect0, (regex_t*)NULL }, };
9336  *  Fix Command Arguments for Svr4_Undeclared_Getrnge
9337  */
9338 static const char* apzSvr4_Undeclared_GetrngePatch[] = {
9339     "format",
9340     "%0\n\
9341 static int getrnge ();",
9342     "^static int[ \t]+size;",
9343     (char*)NULL };
9345 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9347  *  Description of Sysv68_String fix
9348  */
9349 tSCC zSysv68_StringName[] =
9350      "sysv68_string";
9353  *  File name selection pattern
9354  */
9355 tSCC zSysv68_StringList[] =
9356   "testing.h\0string.h\0";
9358  *  Machine/OS name selection pattern
9359  */
9360 #define apzSysv68_StringMachs (const char**)NULL
9363  *  content bypass pattern - skip fix if pattern found
9364  */
9365 tSCC zSysv68_StringBypass0[] =
9366        "_CLASSIC_ANSI_TYPES";
9368 #define    SYSV68_STRING_TEST_CT  1
9369 static tTestDesc aSysv68_StringTests[] = {
9370   { TT_NEGREP,   zSysv68_StringBypass0, (regex_t*)NULL }, };
9373  *  Fix Command Arguments for Sysv68_String
9374  */
9375 static const char* apzSysv68_StringPatch[] = { sed_cmd_z,
9376     "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
9377     "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
9378     "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
9379     "-e", "/^extern char$/N",
9380     "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
9381     "-e", "/^extern int$/N",
9382     "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
9383     "-e", "/^\tstrncmp(),$/N",
9384     "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
9385 extern unsigned int\\\n\
9386 \\2/",
9387     (char*)NULL };
9389 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9391  *  Description of Sysz_Stdlib_For_Sun fix
9392  */
9393 tSCC zSysz_Stdlib_For_SunName[] =
9394      "sysz_stdlib_for_sun";
9397  *  File name selection pattern
9398  */
9399 tSCC zSysz_Stdlib_For_SunList[] =
9400   "stdlib.h\0";
9402  *  Machine/OS name selection pattern
9403  */
9404 #define apzSysz_Stdlib_For_SunMachs (const char**)NULL
9407  *  content selection pattern - do fix if pattern found
9408  */
9409 tSCC zSysz_Stdlib_For_SunSelect0[] =
9410        "char[ \t]*\\*[ \t]*(calloc|malloc|realloc|bsearch)[ \t]*\\(";
9413  *  content bypass pattern - skip fix if pattern found
9414  */
9415 tSCC zSysz_Stdlib_For_SunBypass0[] =
9416        "_CLASSIC_ANSI_TYPES";
9418 #define    SYSZ_STDLIB_FOR_SUN_TEST_CT  2
9419 static tTestDesc aSysz_Stdlib_For_SunTests[] = {
9420   { TT_NEGREP,   zSysz_Stdlib_For_SunBypass0, (regex_t*)NULL },
9421   { TT_EGREP,    zSysz_Stdlib_For_SunSelect0, (regex_t*)NULL }, };
9424  *  Fix Command Arguments for Sysz_Stdlib_For_Sun
9425  */
9426 static const char* apzSysz_Stdlib_For_SunPatch[] = {
9427     "format",
9428     "void *\t%1(",
9429     (char*)NULL };
9431 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9433  *  Description of Thread_Keyword fix
9434  */
9435 tSCC zThread_KeywordName[] =
9436      "thread_keyword";
9439  *  File name selection pattern
9440  */
9441 tSCC zThread_KeywordList[] =
9442   "pthread.h\0bits/sigthread.h\0*/bits/sigthread.h\0";
9444  *  Machine/OS name selection pattern
9445  */
9446 #define apzThread_KeywordMachs (const char**)NULL
9449  *  content selection pattern - do fix if pattern found
9450  */
9451 tSCC zThread_KeywordSelect0[] =
9452        "([* ])__thread([,)])";
9454 #define    THREAD_KEYWORD_TEST_CT  1
9455 static tTestDesc aThread_KeywordTests[] = {
9456   { TT_EGREP,    zThread_KeywordSelect0, (regex_t*)NULL }, };
9459  *  Fix Command Arguments for Thread_Keyword
9460  */
9461 static const char* apzThread_KeywordPatch[] = {
9462     "format",
9463     "%1__thr%2",
9464     (char*)NULL };
9466 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9468  *  Description of Tinfo_Cplusplus fix
9469  */
9470 tSCC zTinfo_CplusplusName[] =
9471      "tinfo_cplusplus";
9474  *  File name selection pattern
9475  */
9476 tSCC zTinfo_CplusplusList[] =
9477   "tinfo.h\0";
9479  *  Machine/OS name selection pattern
9480  */
9481 #define apzTinfo_CplusplusMachs (const char**)NULL
9484  *  content selection pattern - do fix if pattern found
9485  */
9486 tSCC zTinfo_CplusplusSelect0[] =
9487        "[ \t]_cplusplus";
9489 #define    TINFO_CPLUSPLUS_TEST_CT  1
9490 static tTestDesc aTinfo_CplusplusTests[] = {
9491   { TT_EGREP,    zTinfo_CplusplusSelect0, (regex_t*)NULL }, };
9494  *  Fix Command Arguments for Tinfo_Cplusplus
9495  */
9496 static const char* apzTinfo_CplusplusPatch[] = {
9497     "format",
9498     " __cplusplus",
9499     (char*)NULL };
9501 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9503  *  Description of Ultrix_Const fix
9504  */
9505 tSCC zUltrix_ConstName[] =
9506      "ultrix_const";
9509  *  File name selection pattern
9510  */
9511 tSCC zUltrix_ConstList[] =
9512   "stdio.h\0";
9514  *  Machine/OS name selection pattern
9515  */
9516 #define apzUltrix_ConstMachs (const char**)NULL
9519  *  content selection pattern - do fix if pattern found
9520  */
9521 tSCC zUltrix_ConstSelect0[] =
9522        "perror\\( char \\*";
9524 #define    ULTRIX_CONST_TEST_CT  1
9525 static tTestDesc aUltrix_ConstTests[] = {
9526   { TT_EGREP,    zUltrix_ConstSelect0, (regex_t*)NULL }, };
9529  *  Fix Command Arguments for Ultrix_Const
9530  */
9531 static const char* apzUltrix_ConstPatch[] = {
9532     "format",
9533     "%1 const %3 *__",
9534     "([ \t*](perror|fputs|fwrite|scanf|fscanf)\\(.*)[ \t]+(char|void) \\*__",
9535     (char*)NULL };
9537 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9539  *  Description of Ultrix_Const2 fix
9540  */
9541 tSCC zUltrix_Const2Name[] =
9542      "ultrix_const2";
9545  *  File name selection pattern
9546  */
9547 tSCC zUltrix_Const2List[] =
9548   "stdio.h\0";
9550  *  Machine/OS name selection pattern
9551  */
9552 #define apzUltrix_Const2Machs (const char**)NULL
9555  *  content selection pattern - do fix if pattern found
9556  */
9557 tSCC zUltrix_Const2Select0[] =
9558        "\\*fopen\\( char \\*";
9560 #define    ULTRIX_CONST2_TEST_CT  1
9561 static tTestDesc aUltrix_Const2Tests[] = {
9562   { TT_EGREP,    zUltrix_Const2Select0, (regex_t*)NULL }, };
9565  *  Fix Command Arguments for Ultrix_Const2
9566  */
9567 static const char* apzUltrix_Const2Patch[] = {
9568     "format",
9569     "%1( const char *%3, const char *",
9570     "([ \t*](fopen|sscanf|popen|tempnam))\\([ \t]*char[ \t]*\\*([^,]*),[ \t]*char[ \t]*\\*[ \t]*",
9571     (char*)NULL };
9573 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9575  *  Description of Va_I960_Macro fix
9576  */
9577 tSCC zVa_I960_MacroName[] =
9578      "va_i960_macro";
9581  *  File name selection pattern
9582  */
9583 tSCC zVa_I960_MacroList[] =
9584   "arch/i960/archI960.h\0";
9586  *  Machine/OS name selection pattern
9587  */
9588 #define apzVa_I960_MacroMachs (const char**)NULL
9591  *  content selection pattern - do fix if pattern found
9592  */
9593 tSCC zVa_I960_MacroSelect0[] =
9594        "__(vsiz|vali|vpad|alignof__)";
9596 #define    VA_I960_MACRO_TEST_CT  1
9597 static tTestDesc aVa_I960_MacroTests[] = {
9598   { TT_EGREP,    zVa_I960_MacroSelect0, (regex_t*)NULL }, };
9601  *  Fix Command Arguments for Va_I960_Macro
9602  */
9603 static const char* apzVa_I960_MacroPatch[] = {
9604     "format",
9605     "__vx%1",
9606     (char*)NULL };
9608 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9610  *  Description of Vms_Add_Missing_Braces fix
9611  */
9612 tSCC zVms_Add_Missing_BracesName[] =
9613      "vms_add_missing_braces";
9616  *  File name selection pattern
9617  */
9618 tSCC zVms_Add_Missing_BracesList[] =
9619   "rtldef/signal.h\0";
9621  *  Machine/OS name selection pattern
9622  */
9623 tSCC* apzVms_Add_Missing_BracesMachs[] = {
9624         "*-*-*vms*",
9625         (const char*)NULL };
9628  *  content selection pattern - do fix if pattern found
9629  */
9630 tSCC zVms_Add_Missing_BracesSelect0[] =
9631        "(_SIG_[A-Z]+_SET[ \t]+= \\{)(0x[0F]+, 0x[0F]+)";
9633 #define    VMS_ADD_MISSING_BRACES_TEST_CT  1
9634 static tTestDesc aVms_Add_Missing_BracesTests[] = {
9635   { TT_EGREP,    zVms_Add_Missing_BracesSelect0, (regex_t*)NULL }, };
9638  *  Fix Command Arguments for Vms_Add_Missing_Braces
9639  */
9640 static const char* apzVms_Add_Missing_BracesPatch[] = {
9641     "format",
9642     "%1 {%2} ",
9643     (char*)NULL };
9645 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9647  *  Description of Vms_Decc_Builtin fix
9648  */
9649 tSCC zVms_Decc_BuiltinName[] =
9650      "vms_decc_builtin";
9653  *  File name selection pattern
9654  */
9655 tSCC zVms_Decc_BuiltinList[] =
9656   "rtldef/string.h\0rtldef/time.h\0rtldef/strings.h\0rtldef/socket.h\0";
9658  *  Machine/OS name selection pattern
9659  */
9660 tSCC* apzVms_Decc_BuiltinMachs[] = {
9661         "*-*-*vms*",
9662         (const char*)NULL };
9665  *  content selection pattern - do fix if pattern found
9666  */
9667 tSCC zVms_Decc_BuiltinSelect0[] =
9668        "(__MEMSET|__MEMMOVE|__MEMCPY|__STRLEN|__STRCPY)";
9670 #define    VMS_DECC_BUILTIN_TEST_CT  1
9671 static tTestDesc aVms_Decc_BuiltinTests[] = {
9672   { TT_EGREP,    zVms_Decc_BuiltinSelect0, (regex_t*)NULL }, };
9675  *  Fix Command Arguments for Vms_Decc_Builtin
9676  */
9677 static const char* apzVms_Decc_BuiltinPatch[] = { sed_cmd_z,
9678     "-e", "s@__MEMSET@memset@",
9679     "-e", "s@__MEMMOVE@memmove@",
9680     "-e", "s@__MEMCPY@memcpy@",
9681     "-e", "s@__STRLEN@strlen@",
9682     "-e", "s@__STRCPY@strcpy@",
9683     (char*)NULL };
9685 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9687  *  Description of Vms_Define_Can_Use_Extern_Prefix fix
9688  */
9689 tSCC zVms_Define_Can_Use_Extern_PrefixName[] =
9690      "vms_define_can_use_extern_prefix";
9693  *  File name selection pattern
9694  */
9695 tSCC zVms_Define_Can_Use_Extern_PrefixList[] =
9696   "rtldef/decc$types.h\0";
9698  *  Machine/OS name selection pattern
9699  */
9700 tSCC* apzVms_Define_Can_Use_Extern_PrefixMachs[] = {
9701         "*-*-*vms*",
9702         (const char*)NULL };
9705  *  content selection pattern - do fix if pattern found
9706  */
9707 tSCC zVms_Define_Can_Use_Extern_PrefixSelect0[] =
9708        "#[ \t]*else\n\
9709 #[ \t]*if defined\\(__DECCXX\\)\n\
9710 #[ \t]*define __CAN_USE_EXTERN_PREFIX 1\n";
9712 #define    VMS_DEFINE_CAN_USE_EXTERN_PREFIX_TEST_CT  1
9713 static tTestDesc aVms_Define_Can_Use_Extern_PrefixTests[] = {
9714   { TT_EGREP,    zVms_Define_Can_Use_Extern_PrefixSelect0, (regex_t*)NULL }, };
9717  *  Fix Command Arguments for Vms_Define_Can_Use_Extern_Prefix
9718  */
9719 static const char* apzVms_Define_Can_Use_Extern_PrefixPatch[] = {
9720     "format",
9721     "%0#    elif defined (__GNUC__)\n\
9722 #\tdefine __CAN_USE_EXTERN_PREFIX 1\n",
9723     (char*)NULL };
9725 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9727  *  Description of Vms_Disable_Decc_String_Builtins fix
9728  */
9729 tSCC zVms_Disable_Decc_String_BuiltinsName[] =
9730      "vms_disable_decc_string_builtins";
9733  *  File name selection pattern
9734  */
9735 tSCC zVms_Disable_Decc_String_BuiltinsList[] =
9736   "rtldef/string.h\0";
9738  *  Machine/OS name selection pattern
9739  */
9740 tSCC* apzVms_Disable_Decc_String_BuiltinsMachs[] = {
9741         "*-*-*vms*",
9742         (const char*)NULL };
9745  *  content selection pattern - do fix if pattern found
9746  */
9747 tSCC zVms_Disable_Decc_String_BuiltinsSelect0[] =
9748        "#if !defined\\(__VAX\\)\n";
9750 #define    VMS_DISABLE_DECC_STRING_BUILTINS_TEST_CT  1
9751 static tTestDesc aVms_Disable_Decc_String_BuiltinsTests[] = {
9752   { TT_EGREP,    zVms_Disable_Decc_String_BuiltinsSelect0, (regex_t*)NULL }, };
9755  *  Fix Command Arguments for Vms_Disable_Decc_String_Builtins
9756  */
9757 static const char* apzVms_Disable_Decc_String_BuiltinsPatch[] = {
9758     "format",
9759     "#if !defined(__VAX) && !defined(__GNUC__)\n",
9760     (char*)NULL };
9762 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9764  *  Description of Vms_Do_Not_Redeclare_Hostalias fix
9765  */
9766 tSCC zVms_Do_Not_Redeclare_HostaliasName[] =
9767      "vms_do_not_redeclare_hostalias";
9770  *  File name selection pattern
9771  */
9772 tSCC zVms_Do_Not_Redeclare_HostaliasList[] =
9773   "rtldef/resolv.h\0";
9775  *  Machine/OS name selection pattern
9776  */
9777 tSCC* apzVms_Do_Not_Redeclare_HostaliasMachs[] = {
9778         "*-*-*vms*",
9779         (const char*)NULL };
9782  *  content selection pattern - do fix if pattern found
9783  */
9784 tSCC zVms_Do_Not_Redeclare_HostaliasSelect0[] =
9785        "(void[ \t]+fp_nquery \\(const u_char \\*, int, FILE \\*\\);)\n\
9786 (__char_ptr32[ \t]+hostalias \\(const char \\*\\);)";
9788 #define    VMS_DO_NOT_REDECLARE_HOSTALIAS_TEST_CT  1
9789 static tTestDesc aVms_Do_Not_Redeclare_HostaliasTests[] = {
9790   { TT_EGREP,    zVms_Do_Not_Redeclare_HostaliasSelect0, (regex_t*)NULL }, };
9793  *  Fix Command Arguments for Vms_Do_Not_Redeclare_Hostalias
9794  */
9795 static const char* apzVms_Do_Not_Redeclare_HostaliasPatch[] = {
9796     "format",
9797     "%1\n\
9798 /* %2 */",
9799     (char*)NULL };
9801 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9803  *  Description of Vms_Forward_Declare_Struct fix
9804  */
9805 tSCC zVms_Forward_Declare_StructName[] =
9806      "vms_forward_declare_struct";
9809  *  File name selection pattern
9810  */
9811 tSCC zVms_Forward_Declare_StructList[] =
9812   "rtldef/if.h\0";
9814  *  Machine/OS name selection pattern
9815  */
9816 tSCC* apzVms_Forward_Declare_StructMachs[] = {
9817         "*-*-*vms*",
9818         (const char*)NULL };
9821  *  content selection pattern - do fix if pattern found
9822  */
9823 tSCC zVms_Forward_Declare_StructSelect0[] =
9824        "(/\\* forward decls for C\\+\\+ \\*/\n\
9825 )#ifdef __cplusplus\n";
9827 #define    VMS_FORWARD_DECLARE_STRUCT_TEST_CT  1
9828 static tTestDesc aVms_Forward_Declare_StructTests[] = {
9829   { TT_EGREP,    zVms_Forward_Declare_StructSelect0, (regex_t*)NULL }, };
9832  *  Fix Command Arguments for Vms_Forward_Declare_Struct
9833  */
9834 static const char* apzVms_Forward_Declare_StructPatch[] = {
9835     "format",
9836     "%1#if defined (__cplusplus) || defined (__GNUC__)\n",
9837     (char*)NULL };
9839 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9841  *  Description of Vms_No_64bit_Getopt fix
9842  */
9843 tSCC zVms_No_64bit_GetoptName[] =
9844      "vms_no_64bit_getopt";
9847  *  File name selection pattern
9848  */
9849 tSCC zVms_No_64bit_GetoptList[] =
9850   "rtldef/stdio.h\0rtldef/unistd.h\0";
9852  *  Machine/OS name selection pattern
9853  */
9854 tSCC* apzVms_No_64bit_GetoptMachs[] = {
9855         "*-*-*vms*",
9856         (const char*)NULL };
9859  *  content selection pattern - do fix if pattern found
9860  */
9861 tSCC zVms_No_64bit_GetoptSelect0[] =
9862        "^[ \t]*(extern[ \t]*)?(int[ \t]*(getopt|optind|opterr|optopt)|(char \\*optarg))([ \t]*\\(.*\\))?;\n";
9864 #define    VMS_NO_64BIT_GETOPT_TEST_CT  1
9865 static tTestDesc aVms_No_64bit_GetoptTests[] = {
9866   { TT_EGREP,    zVms_No_64bit_GetoptSelect0, (regex_t*)NULL }, };
9869  *  Fix Command Arguments for Vms_No_64bit_Getopt
9870  */
9871 static const char* apzVms_No_64bit_GetoptPatch[] = {
9872     "format",
9873     "#if __INITIAL_POINTER_SIZE != 64 /* getopt is short ptr only.  */\n\
9874 %0#endif\n",
9875     (char*)NULL };
9877 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9879  *  Description of Vms_Use_Fast_Setjmp fix
9880  */
9881 tSCC zVms_Use_Fast_SetjmpName[] =
9882      "vms_use_fast_setjmp";
9885  *  File name selection pattern
9886  */
9887 tSCC zVms_Use_Fast_SetjmpList[] =
9888   "rtldef/setjmp.h\0";
9890  *  Machine/OS name selection pattern
9891  */
9892 tSCC* apzVms_Use_Fast_SetjmpMachs[] = {
9893         "*-*-*vms*",
9894         (const char*)NULL };
9897  *  content selection pattern - do fix if pattern found
9898  */
9899 tSCC zVms_Use_Fast_SetjmpSelect0[] =
9900        "(#[ \t]*if[ \t]*defined\\(__FAST_SETJMP\\)[ \t]*\\|\\|)";
9902 #define    VMS_USE_FAST_SETJMP_TEST_CT  1
9903 static tTestDesc aVms_Use_Fast_SetjmpTests[] = {
9904   { TT_EGREP,    zVms_Use_Fast_SetjmpSelect0, (regex_t*)NULL }, };
9907  *  Fix Command Arguments for Vms_Use_Fast_Setjmp
9908  */
9909 static const char* apzVms_Use_Fast_SetjmpPatch[] = {
9910     "format",
9911     "%0 defined (__GNUC__) ||",
9912     (char*)NULL };
9914 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9916  *  Description of Vms_Use_Pragma_Extern_Model fix
9917  */
9918 tSCC zVms_Use_Pragma_Extern_ModelName[] =
9919      "vms_use_pragma_extern_model";
9922  *  File name selection pattern
9923  */
9924 #define zVms_Use_Pragma_Extern_ModelList (char*)NULL
9926  *  Machine/OS name selection pattern
9927  */
9928 tSCC* apzVms_Use_Pragma_Extern_ModelMachs[] = {
9929         "*-*-*vms*",
9930         (const char*)NULL };
9933  *  content selection pattern - do fix if pattern found
9934  */
9935 tSCC zVms_Use_Pragma_Extern_ModelSelect0[] =
9936        "#if defined\\(__DECC\\) \\|\\| defined\\(__DECCXX\\)\n\
9937 # pragma extern_model __save\n";
9939 #define    VMS_USE_PRAGMA_EXTERN_MODEL_TEST_CT  1
9940 static tTestDesc aVms_Use_Pragma_Extern_ModelTests[] = {
9941   { TT_EGREP,    zVms_Use_Pragma_Extern_ModelSelect0, (regex_t*)NULL }, };
9944  *  Fix Command Arguments for Vms_Use_Pragma_Extern_Model
9945  */
9946 static const char* apzVms_Use_Pragma_Extern_ModelPatch[] = {
9947     "format",
9948     "#if defined(__DECC) || defined(__DECCXX) || defined(__GNUC__)\n\
9949 # pragma extern_model __save\n",
9950     (char*)NULL };
9952 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9954  *  Description of Vms_Use_Quoted_Include fix
9955  */
9956 tSCC zVms_Use_Quoted_IncludeName[] =
9957      "vms_use_quoted_include";
9960  *  File name selection pattern
9961  */
9962 tSCC zVms_Use_Quoted_IncludeList[] =
9963   "rtldef/wait.h\0starlet_c/pthread.h\0";
9965  *  Machine/OS name selection pattern
9966  */
9967 tSCC* apzVms_Use_Quoted_IncludeMachs[] = {
9968         "*-*-*vms*",
9969         (const char*)NULL };
9972  *  content selection pattern - do fix if pattern found
9973  */
9974 tSCC zVms_Use_Quoted_IncludeSelect0[] =
9975        "(#[ \t]*include[ \t]+)<(resource|builtins)\\.h>";
9977 #define    VMS_USE_QUOTED_INCLUDE_TEST_CT  1
9978 static tTestDesc aVms_Use_Quoted_IncludeTests[] = {
9979   { TT_EGREP,    zVms_Use_Quoted_IncludeSelect0, (regex_t*)NULL }, };
9982  *  Fix Command Arguments for Vms_Use_Quoted_Include
9983  */
9984 static const char* apzVms_Use_Quoted_IncludePatch[] = {
9985     "format",
9986     "%1<sys/%2.h>",
9987     (char*)NULL };
9989 /* * * * * * * * * * * * * * * * * * * * * * * * * *
9991  *  Description of Void_Null fix
9992  */
9993 tSCC zVoid_NullName[] =
9994      "void_null";
9997  *  File name selection pattern
9998  */
9999 tSCC zVoid_NullList[] =
10000   "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";
10002  *  Machine/OS name selection pattern
10003  */
10004 #define apzVoid_NullMachs (const char**)NULL
10007  *  content selection pattern - do fix if pattern found
10008  */
10009 tSCC zVoid_NullSelect0[] =
10010        "^#[ \t]*define[ \t]+NULL[ \t]+\\(\\(void[ \t]*\\*\\)0\\)";
10013  *  content bypass pattern - skip fix if pattern found
10014  */
10015 tSCC zVoid_NullBypass0[] =
10016        "__cplusplus";
10017 tSCC zVoid_NullBypass1[] =
10018        "__null";
10020 #define    VOID_NULL_TEST_CT  3
10021 static tTestDesc aVoid_NullTests[] = {
10022   { TT_NEGREP,   zVoid_NullBypass0, (regex_t*)NULL },
10023   { TT_NEGREP,   zVoid_NullBypass1, (regex_t*)NULL },
10024   { TT_EGREP,    zVoid_NullSelect0, (regex_t*)NULL }, };
10027  *  Fix Command Arguments for Void_Null
10028  */
10029 static const char* apzVoid_NullPatch[] = {
10030     "format",
10031     "#ifndef NULL\n\
10032 #ifdef __cplusplus\n\
10033 #ifdef __GNUG__\n\
10034 #define NULL __null\n\
10035 #else /* ! __GNUG__  */\n\
10036 #define NULL 0L\n\
10037 #endif /* __GNUG__  */\n\
10038 #else /* ! __cplusplus  */\n\
10039 #define NULL ((void *)0)\n\
10040 #endif /* __cplusplus  */\n\
10041 #endif /* !NULL  */",
10042     (char*)NULL };
10044 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10046  *  Description of Vxworks_Gcc_Problem fix
10047  */
10048 tSCC zVxworks_Gcc_ProblemName[] =
10049      "vxworks_gcc_problem";
10052  *  File name selection pattern
10053  */
10054 tSCC zVxworks_Gcc_ProblemList[] =
10055   "types/vxTypesBase.h\0";
10057  *  Machine/OS name selection pattern
10058  */
10059 #define apzVxworks_Gcc_ProblemMachs (const char**)NULL
10062  *  content selection pattern - do fix if pattern found
10063  */
10064 tSCC zVxworks_Gcc_ProblemSelect0[] =
10065        "__GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__";
10067 #define    VXWORKS_GCC_PROBLEM_TEST_CT  1
10068 static tTestDesc aVxworks_Gcc_ProblemTests[] = {
10069   { TT_EGREP,    zVxworks_Gcc_ProblemSelect0, (regex_t*)NULL }, };
10072  *  Fix Command Arguments for Vxworks_Gcc_Problem
10073  */
10074 static const char* apzVxworks_Gcc_ProblemPatch[] = { sed_cmd_z,
10075     "-e", "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
10076     "-e", "/[ \t]size_t/i\\\n\
10077 #ifndef _GCC_SIZE_T\\\n\
10078 #define _GCC_SIZE_T\n",
10079     "-e", "/[ \t]size_t/a\\\n\
10080 #endif\n",
10081     "-e", "/[ \t]ptrdiff_t/i\\\n\
10082 #ifndef _GCC_PTRDIFF_T\\\n\
10083 #define _GCC_PTRDIFF_T\n",
10084     "-e", "/[ \t]ptrdiff_t/a\\\n\
10085 #endif\n",
10086     "-e", "/[ \t]wchar_t/i\\\n\
10087 #ifndef _GCC_WCHAR_T\\\n\
10088 #define _GCC_WCHAR_T\n",
10089     "-e", "/[ \t]wchar_t/a\\\n\
10090 #endif\n",
10091     (char*)NULL };
10093 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10095  *  Description of Vxworks_Ioctl_Macro fix
10096  */
10097 tSCC zVxworks_Ioctl_MacroName[] =
10098      "vxworks_ioctl_macro";
10101  *  File name selection pattern
10102  */
10103 tSCC zVxworks_Ioctl_MacroList[] =
10104   "ioLib.h\0";
10106  *  Machine/OS name selection pattern
10107  */
10108 tSCC* apzVxworks_Ioctl_MacroMachs[] = {
10109         "*-*-vxworks*",
10110         (const char*)NULL };
10111 #define VXWORKS_IOCTL_MACRO_TEST_CT  0
10112 #define aVxworks_Ioctl_MacroTests   (tTestDesc*)NULL
10115  *  Fix Command Arguments for Vxworks_Ioctl_Macro
10116  */
10117 static const char* apzVxworks_Ioctl_MacroPatch[] = {
10118     "format",
10119     "%0\n\
10120 #define ioctl(fd, func, arg) ioctl(fd, func, (int)(arg))\n",
10121     "extern[\t ]+int[\t ]+ioctl[\t ]*\\([\t ,[:alnum:]]*\\);",
10122     (char*)NULL };
10124 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10126  *  Description of Vxworks_Mkdir_Macro fix
10127  */
10128 tSCC zVxworks_Mkdir_MacroName[] =
10129      "vxworks_mkdir_macro";
10132  *  File name selection pattern
10133  */
10134 tSCC zVxworks_Mkdir_MacroList[] =
10135   "sys/stat.h\0";
10137  *  Machine/OS name selection pattern
10138  */
10139 tSCC* apzVxworks_Mkdir_MacroMachs[] = {
10140         "*-*-vxworks*",
10141         (const char*)NULL };
10142 #define VXWORKS_MKDIR_MACRO_TEST_CT  0
10143 #define aVxworks_Mkdir_MacroTests   (tTestDesc*)NULL
10146  *  Fix Command Arguments for Vxworks_Mkdir_Macro
10147  */
10148 static const char* apzVxworks_Mkdir_MacroPatch[] = {
10149     "format",
10150     "%0\n\
10151 #define mkdir(dir, ...) ((void)0, ##__VA_ARGS__, (mkdir)(dir))\n",
10152     "extern[\t ]+STATUS[\t ]+mkdir[\t ]*\\([\t ]*const[\t ]+char[\t ]*\\*[\t ]*(|[_[:alpha:]][_[:alnum:]]*)\\)[\t ]*;",
10153     (char*)NULL };
10155 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10157  *  Description of Vxworks_Needs_Vxtypes fix
10158  */
10159 tSCC zVxworks_Needs_VxtypesName[] =
10160      "vxworks_needs_vxtypes";
10163  *  File name selection pattern
10164  */
10165 tSCC zVxworks_Needs_VxtypesList[] =
10166   "time.h\0";
10168  *  Machine/OS name selection pattern
10169  */
10170 #define apzVxworks_Needs_VxtypesMachs (const char**)NULL
10173  *  content selection pattern - do fix if pattern found
10174  */
10175 tSCC zVxworks_Needs_VxtypesSelect0[] =
10176        "uint_t([ \t]+_clocks_per_sec)";
10178 #define    VXWORKS_NEEDS_VXTYPES_TEST_CT  1
10179 static tTestDesc aVxworks_Needs_VxtypesTests[] = {
10180   { TT_EGREP,    zVxworks_Needs_VxtypesSelect0, (regex_t*)NULL }, };
10183  *  Fix Command Arguments for Vxworks_Needs_Vxtypes
10184  */
10185 static const char* apzVxworks_Needs_VxtypesPatch[] = {
10186     "format",
10187     "unsigned int%1",
10188     (char*)NULL };
10190 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10192  *  Description of Vxworks_Needs_Vxworks fix
10193  */
10194 tSCC zVxworks_Needs_VxworksName[] =
10195      "vxworks_needs_vxworks";
10198  *  File name selection pattern
10199  */
10200 tSCC zVxworks_Needs_VxworksList[] =
10201   "sys/stat.h\0";
10203  *  Machine/OS name selection pattern
10204  */
10205 #define apzVxworks_Needs_VxworksMachs (const char**)NULL
10208  *  content selection pattern - do fix if pattern found
10209  */
10210 tSCC zVxworks_Needs_VxworksSelect0[] =
10211        "#[ \t]define[ \t]+__INCstath";
10214  *  perform the 'test' shell command - do fix on success
10215  */
10216 tSCC zVxworks_Needs_VxworksTest0[] =
10217        " -r types/vxTypesOld.h";
10218 tSCC zVxworks_Needs_VxworksTest1[] =
10219        " -n \"`egrep '#include' $file`\"";
10220 tSCC zVxworks_Needs_VxworksTest2[] =
10221        " -n \"`egrep ULONG $file`\"";
10223 #define    VXWORKS_NEEDS_VXWORKS_TEST_CT  4
10224 static tTestDesc aVxworks_Needs_VxworksTests[] = {
10225   { TT_TEST,     zVxworks_Needs_VxworksTest0,   0 /* unused */ },
10226   { TT_TEST,     zVxworks_Needs_VxworksTest1,   0 /* unused */ },
10227   { TT_TEST,     zVxworks_Needs_VxworksTest2,   0 /* unused */ },
10228   { TT_EGREP,    zVxworks_Needs_VxworksSelect0, (regex_t*)NULL }, };
10231  *  Fix Command Arguments for Vxworks_Needs_Vxworks
10232  */
10233 static const char* apzVxworks_Needs_VxworksPatch[] = { sed_cmd_z,
10234     "-e", "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n\
10235 #include <types/vxTypesOld.h>\n",
10236     (char*)NULL };
10238 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10240  *  Description of Vxworks_Regs fix
10241  */
10242 tSCC zVxworks_RegsName[] =
10243      "vxworks_regs";
10246  *  File name selection pattern
10247  */
10248 #define zVxworks_RegsList (char*)NULL
10250  *  Machine/OS name selection pattern
10251  */
10252 tSCC* apzVxworks_RegsMachs[] = {
10253         "*-*-vxworks*",
10254         (const char*)NULL };
10257  *  content selection pattern - do fix if pattern found
10258  */
10259 tSCC zVxworks_RegsSelect0[] =
10260        "#[\t ]*include[\t ]+[<\"]regs.h[>\"]";
10262 #define    VXWORKS_REGS_TEST_CT  1
10263 static tTestDesc aVxworks_RegsTests[] = {
10264   { TT_EGREP,    zVxworks_RegsSelect0, (regex_t*)NULL }, };
10267  *  Fix Command Arguments for Vxworks_Regs
10268  */
10269 static const char* apzVxworks_RegsPatch[] = {
10270     "format",
10271     "#include <arch/../regs.h>",
10272     (char*)NULL };
10274 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10276  *  Description of Vxworks_Time fix
10277  */
10278 tSCC zVxworks_TimeName[] =
10279      "vxworks_time";
10282  *  File name selection pattern
10283  */
10284 tSCC zVxworks_TimeList[] =
10285   "time.h\0";
10287  *  Machine/OS name selection pattern
10288  */
10289 #define apzVxworks_TimeMachs (const char**)NULL
10292  *  content selection pattern - do fix if pattern found
10293  */
10294 tSCC zVxworks_TimeSelect0[] =
10295        "#[ \t]*define[ \t]+VOIDFUNCPTR[ \t].*";
10298  *  perform the 'test' shell command - do fix on success
10299  */
10300 tSCC zVxworks_TimeTest0[] =
10301        " -r vxWorks.h";
10303 #define    VXWORKS_TIME_TEST_CT  2
10304 static tTestDesc aVxworks_TimeTests[] = {
10305   { TT_TEST,     zVxworks_TimeTest0,   0 /* unused */ },
10306   { TT_EGREP,    zVxworks_TimeSelect0, (regex_t*)NULL }, };
10309  *  Fix Command Arguments for Vxworks_Time
10310  */
10311 static const char* apzVxworks_TimePatch[] = {
10312     "format",
10313     "#ifndef __gcc_VOIDFUNCPTR_defined\n\
10314 #ifdef __cplusplus\n\
10315 typedef void (*__gcc_VOIDFUNCPTR) (...);\n\
10316 #else\n\
10317 typedef void (*__gcc_VOIDFUNCPTR) ();\n\
10318 #endif\n\
10319 #define __gcc_VOIDFUNCPTR_defined\n\
10320 #endif\n\
10321 #define VOIDFUNCPTR __gcc_VOIDFUNCPTR",
10322     (char*)NULL };
10324 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10326  *  Description of Vxworks_Write_Const fix
10327  */
10328 tSCC zVxworks_Write_ConstName[] =
10329      "vxworks_write_const";
10332  *  File name selection pattern
10333  */
10334 tSCC zVxworks_Write_ConstList[] =
10335   "ioLib.h\0";
10337  *  Machine/OS name selection pattern
10338  */
10339 tSCC* apzVxworks_Write_ConstMachs[] = {
10340         "*-*-vxworks*",
10341         (const char*)NULL };
10342 #define VXWORKS_WRITE_CONST_TEST_CT  0
10343 #define aVxworks_Write_ConstTests   (tTestDesc*)NULL
10346  *  Fix Command Arguments for Vxworks_Write_Const
10347  */
10348 static const char* apzVxworks_Write_ConstPatch[] = {
10349     "format",
10350     "extern int  write (int, const char*, size_t);",
10351     "extern[\t ]+int[\t ]+write[\t ]*\\([\t ]*int[\t ]*,[\t ]*char[\t ]*\\*[\t ]*,[\t ]*size_t[\t ]*\\)[\t ]*;",
10352     (char*)NULL };
10354 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10356  *  Description of Vxworks_Iolib_Include_Unistd fix
10357  */
10358 tSCC zVxworks_Iolib_Include_UnistdName[] =
10359      "vxworks_iolib_include_unistd";
10362  *  File name selection pattern
10363  */
10364 tSCC zVxworks_Iolib_Include_UnistdList[] =
10365   "ioLib.h\0";
10367  *  Machine/OS name selection pattern
10368  */
10369 tSCC* apzVxworks_Iolib_Include_UnistdMachs[] = {
10370         "*-*-vxworks*",
10371         (const char*)NULL };
10374  *  content selection pattern - do fix if pattern found
10375  */
10376 tSCC zVxworks_Iolib_Include_UnistdSelect0[] =
10377        "#include \"unistd.h\"";
10379 #define    VXWORKS_IOLIB_INCLUDE_UNISTD_TEST_CT  1
10380 static tTestDesc aVxworks_Iolib_Include_UnistdTests[] = {
10381   { TT_EGREP,    zVxworks_Iolib_Include_UnistdSelect0, (regex_t*)NULL }, };
10384  *  Fix Command Arguments for Vxworks_Iolib_Include_Unistd
10385  */
10386 static const char* apzVxworks_Iolib_Include_UnistdPatch[] = {
10387     "format",
10388     "#include <unistd.h>",
10389     (char*)NULL };
10391 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10393  *  Description of X11_Class fix
10394  */
10395 tSCC zX11_ClassName[] =
10396      "x11_class";
10399  *  File name selection pattern
10400  */
10401 tSCC zX11_ClassList[] =
10402   "X11/ShellP.h\0";
10404  *  Machine/OS name selection pattern
10405  */
10406 #define apzX11_ClassMachs (const char**)NULL
10409  *  content selection pattern - do fix if pattern found
10410  */
10411 tSCC zX11_ClassSelect0[] =
10412        "^([ \t]*char \\*)class;(.*)";
10415  *  content bypass pattern - skip fix if pattern found
10416  */
10417 tSCC zX11_ClassBypass0[] =
10418        "__cplusplus";
10420 #define    X11_CLASS_TEST_CT  2
10421 static tTestDesc aX11_ClassTests[] = {
10422   { TT_NEGREP,   zX11_ClassBypass0, (regex_t*)NULL },
10423   { TT_EGREP,    zX11_ClassSelect0, (regex_t*)NULL }, };
10426  *  Fix Command Arguments for X11_Class
10427  */
10428 static const char* apzX11_ClassPatch[] = {
10429     "format",
10430     "#ifdef __cplusplus\n\
10431 %1c_class;%2\n\
10432 #else\n\
10433 %1class;%2\n\
10434 #endif",
10435     (char*)NULL };
10437 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10439  *  Description of X11_Class_Usage fix
10440  */
10441 tSCC zX11_Class_UsageName[] =
10442      "x11_class_usage";
10445  *  File name selection pattern
10446  */
10447 tSCC zX11_Class_UsageList[] =
10448   "Xm/BaseClassI.h\0";
10450  *  Machine/OS name selection pattern
10451  */
10452 #define apzX11_Class_UsageMachs (const char**)NULL
10455  *  content selection pattern - do fix if pattern found
10456  */
10457 tSCC zX11_Class_UsageSelect0[] =
10458        " class\\)";
10461  *  content bypass pattern - skip fix if pattern found
10462  */
10463 tSCC zX11_Class_UsageBypass0[] =
10464        "__cplusplus";
10466 #define    X11_CLASS_USAGE_TEST_CT  2
10467 static tTestDesc aX11_Class_UsageTests[] = {
10468   { TT_NEGREP,   zX11_Class_UsageBypass0, (regex_t*)NULL },
10469   { TT_EGREP,    zX11_Class_UsageSelect0, (regex_t*)NULL }, };
10472  *  Fix Command Arguments for X11_Class_Usage
10473  */
10474 static const char* apzX11_Class_UsagePatch[] = {
10475     "format",
10476     " c_class)",
10477     (char*)NULL };
10479 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10481  *  Description of X11_New fix
10482  */
10483 tSCC zX11_NewName[] =
10484      "x11_new";
10487  *  File name selection pattern
10488  */
10489 tSCC zX11_NewList[] =
10490   "Xm/Traversal.h\0";
10492  *  Machine/OS name selection pattern
10493  */
10494 #define apzX11_NewMachs (const char**)NULL
10497  *  content bypass pattern - skip fix if pattern found
10498  */
10499 tSCC zX11_NewBypass0[] =
10500        "__cplusplus";
10502 #define    X11_NEW_TEST_CT  1
10503 static tTestDesc aX11_NewTests[] = {
10504   { TT_NEGREP,   zX11_NewBypass0, (regex_t*)NULL }, };
10507  *  Fix Command Arguments for X11_New
10508  */
10509 static const char* apzX11_NewPatch[] = { sed_cmd_z,
10510     "-e", "/Widget\told, new;/i\\\n\
10511 #ifdef __cplusplus\\\n\
10512 \\\tWidget\told, c_new;\\\n\
10513 #else\n",
10514     "-e", "/Widget\told, new;/a\\\n\
10515 #endif\n",
10516     "-e", "s/Widget new,/Widget c_new,/g",
10517     (char*)NULL };
10519 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10521  *  Description of X11_Sprintf fix
10522  */
10523 tSCC zX11_SprintfName[] =
10524      "x11_sprintf";
10527  *  File name selection pattern
10528  */
10529 tSCC zX11_SprintfList[] =
10530   "X11/Xmu.h\0X11/Xmu/Xmu.h\0";
10532  *  Machine/OS name selection pattern
10533  */
10534 #define apzX11_SprintfMachs (const char**)NULL
10537  *  content selection pattern - do fix if pattern found
10538  */
10539 tSCC zX11_SprintfSelect0[] =
10540        "^extern char \\*\tsprintf\\(\\);$";
10542 #define    X11_SPRINTF_TEST_CT  1
10543 static tTestDesc aX11_SprintfTests[] = {
10544   { TT_EGREP,    zX11_SprintfSelect0, (regex_t*)NULL }, };
10547  *  Fix Command Arguments for X11_Sprintf
10548  */
10549 static const char* apzX11_SprintfPatch[] = {
10550     "format",
10551     "#ifndef __STDC__\n\
10552 %0\n\
10553 #endif /* !defined __STDC__ */",
10554     (char*)NULL };
10557 /* * * * * * * * * * * * * * * * * * * * * * * * * *
10559  *  List of all fixes
10560  */
10561 #define REGEX_COUNT          298
10562 #define MACH_LIST_SIZE_LIMIT 187
10563 #define FIX_COUNT            260
10566  *  Enumerate the fixes
10567  */
10568 typedef enum {
10569     AAB_AIX_STDIO_FIXIDX,
10570     AAB_AIX_FCNTL_FIXIDX,
10571     AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_FIXIDX,
10572     DARWIN_API_AVAILABILITY_FIXIDX,
10573     AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
10574     AAB_FD_ZERO_GNU_TYPES_H_FIXIDX,
10575     AAB_FD_ZERO_SELECTBITS_H_FIXIDX,
10576     AAB_SOLARIS_SYS_VARARGS_H_FIXIDX,
10577     AAB_SUN_MEMCPY_FIXIDX,
10578     AAB_VXWORKS_ASSERT_FIXIDX,
10579     AAB_VXWORKS_REGS_VXTYPES_FIXIDX,
10580     AAB_VXWORKS_UNISTD_FIXIDX,
10581     AIX_ASSERT_FIXIDX,
10582     AIX_COMPLEX_FIXIDX,
10583     AIX_EXTERNC_FIXIDX,
10584     AIX_EXTERNCPP1_FIXIDX,
10585     AIX_EXTERNCPP2_FIXIDX,
10586     AIX_INTTYPES_FIXIDX,
10587     AIX_MALLOC_FIXIDX,
10588     AIX_NET_IF_ARP_FIXIDX,
10589     AIX_NULL_FIXIDX,
10590     AIX_ONCE_INIT_1_FIXIDX,
10591     AIX_ONCE_INIT_2_FIXIDX,
10592     AIX_MUTEX_INITIALIZER_1_FIXIDX,
10593     AIX_COND_INITIALIZER_1_FIXIDX,
10594     AIX_RWLOCK_INITIALIZER_1_FIXIDX,
10595     AIX_PHYSADR_T_FIXIDX,
10596     AIX_PTHREAD_FIXIDX,
10597     AIX_STDINT_1_FIXIDX,
10598     AIX_STDINT_2_FIXIDX,
10599     AIX_STDINT_3_FIXIDX,
10600     AIX_STDINT_4_FIXIDX,
10601     AIX_STDINT_5_FIXIDX,
10602     AIX_STDIO_INLINE_FIXIDX,
10603     AIX_STDLIB_MALLOC_FIXIDX,
10604     AIX_STDLIB_REALLOC_FIXIDX,
10605     AIX_STDLIB_CALLOC_FIXIDX,
10606     AIX_STDLIB_VALLOC_FIXIDX,
10607     AIX_STDLIB_VEC_MALLOC_FIXIDX,
10608     AIX_STDLIB_VEC_CALLOC_FIXIDX,
10609     AIX_STRTOF_CONST_FIXIDX,
10610     AIX_SYSMACHINE_FIXIDX,
10611     AIX_SYSWAIT_2_FIXIDX,
10612     AIX_VOLATILE_FIXIDX,
10613     AIX_UNISTD_FIXIDX,
10614     ALPHA___ASSERT_FIXIDX,
10615     ALPHA_ASSERT_FIXIDX,
10616     ALPHA_GETOPT_FIXIDX,
10617     ALPHA_IF_SEMICOLON_FIXIDX,
10618     ALPHA_PARENS_FIXIDX,
10619     ALPHA_SBRK_FIXIDX,
10620     AVOID_BOOL_DEFINE_FIXIDX,
10621     AVOID_BOOL_TYPE_FIXIDX,
10622     AVOID_WCHAR_T_TYPE_FIXIDX,
10623     BAD_STRUCT_TERM_FIXIDX,
10624     BADQUOTE_FIXIDX,
10625     BROKEN_ASSERT_STDIO_FIXIDX,
10626     BROKEN_ASSERT_STDLIB_FIXIDX,
10627     BROKEN_CABS_FIXIDX,
10628     BROKEN_NAN_FIXIDX,
10629     BSD_STDIO_ATTRS_CONFLICT_FIXIDX,
10630     CTRL_QUOTES_DEF_FIXIDX,
10631     CTRL_QUOTES_USE_FIXIDX,
10632     CXX_UNREADY_FIXIDX,
10633     DARWIN_AVAILABILITYINTERNAL_FIXIDX,
10634     DARWIN_9_LONG_DOUBLE_FUNCS_2_FIXIDX,
10635     DARWIN_EXTERNC_FIXIDX,
10636     DARWIN_GCC4_BREAKAGE_FIXIDX,
10637     DARWIN_LL_FUNCS_AVAIL_FIXIDX,
10638     DARWIN_LONGJMP_NORETURN_FIXIDX,
10639     DARWIN_OS_TRACE_1_FIXIDX,
10640     DARWIN_OS_TRACE_2_FIXIDX,
10641     DARWIN_OS_TRACE_3_FIXIDX,
10642     DARWIN_OS_BASE_1_FIXIDX,
10643     DARWIN_DISPATCH_OBJECT_1_FIXIDX,
10644     DARWIN_PRIVATE_EXTERN_FIXIDX,
10645     DARWIN_STDINT_1_FIXIDX,
10646     DARWIN_STDINT_2_FIXIDX,
10647     DARWIN_STDINT_3_FIXIDX,
10648     DARWIN_STDINT_4_FIXIDX,
10649     DARWIN_STDINT_5_FIXIDX,
10650     DARWIN_STDINT_6_FIXIDX,
10651     DARWIN_STDINT_7_FIXIDX,
10652     DARWIN_UCRED__ATOMIC_FIXIDX,
10653     DEC_INTERN_ASM_FIXIDX,
10654     DJGPP_WCHAR_H_FIXIDX,
10655     ECD_CURSOR_FIXIDX,
10656     FERAISEEXCEPT_NOSSE_DIVBYZERO_FIXIDX,
10657     FERAISEEXCEPT_NOSSE_INVALID_FIXIDX,
10658     FREEBSD_GCC3_BREAKAGE_FIXIDX,
10659     FREEBSD_GCC4_BREAKAGE_FIXIDX,
10660     GLIBC_C99_INLINE_1_FIXIDX,
10661     GLIBC_C99_INLINE_1A_FIXIDX,
10662     GLIBC_C99_INLINE_2_FIXIDX,
10663     GLIBC_C99_INLINE_3_FIXIDX,
10664     GLIBC_C99_INLINE_4_FIXIDX,
10665     GLIBC_MUTEX_INIT_FIXIDX,
10666     GLIBC_STDINT_FIXIDX,
10667     GLIBC_STRNCPY_FIXIDX,
10668     GLIBC_TGMATH_FIXIDX,
10669     GNU_TYPES_FIXIDX,
10670     HP_INLINE_FIXIDX,
10671     HP_SYSFILE_FIXIDX,
10672     HPPA_HPUX_FP_MACROS_FIXIDX,
10673     HPUX10_CPP_POW_INLINE_FIXIDX,
10674     HPUX11_CPP_POW_INLINE_FIXIDX,
10675     HPUX10_CTYPE_DECLARATIONS1_FIXIDX,
10676     HPUX10_CTYPE_DECLARATIONS2_FIXIDX,
10677     HPUX10_STDIO_DECLARATIONS_FIXIDX,
10678     HPPA_HPUX11_ALLOCA_FIXIDX,
10679     HPUX11_ABS_FIXIDX,
10680     HPUX11_LWP_RWLOCK_VALID_FIXIDX,
10681     HPUX11_EXTERN_SENDFILE_FIXIDX,
10682     HPUX11_EXTERN_SENDPATH_FIXIDX,
10683     HPUX11_FABSF_FIXIDX,
10684     HPUX11_PTHREAD_POINTER_FIXIDX,
10685     HPUX11_PTHREAD_CONST_FIXIDX,
10686     HPUX11_SIZE_T_FIXIDX,
10687     HPUX11_SNPRINTF_FIXIDX,
10688     HPUX11_VSNPRINTF_FIXIDX,
10689     HPUX_VSSCANF_FIXIDX,
10690     HPUX8_BOGUS_INLINES_FIXIDX,
10691     HPUX_C99_INTPTR_FIXIDX,
10692     HPUX_C99_INTTYPES_FIXIDX,
10693     HPUX_C99_INTTYPES2_FIXIDX,
10694     HPUX_C99_INTTYPES3_FIXIDX,
10695     HPUX_C99_INTTYPES4_FIXIDX,
10696     HPUX_CTYPE_MACROS_FIXIDX,
10697     HPUX_EXTERN_ERRNO_FIXIDX,
10698     HPUX_HTONL_FIXIDX,
10699     HPUX_IMAGINARY_I_FIXIDX,
10700     HPUX_INTTYPE_INT8_T_FIXIDX,
10701     HPUX_LONG_DOUBLE_FIXIDX,
10702     HPUX_LONG_DOUBLE_2_FIXIDX,
10703     HPUX_PTHREAD_INITIALIZERS_FIXIDX,
10704     HPUX_SPU_INFO_FIXIDX,
10705     HPUX_STDINT_LEAST_FAST_FIXIDX,
10706     HPUX_LONGJMP_FIXIDX,
10707     HPUX_SYSTIME_FIXIDX,
10708     HUGE_VAL_HEX_FIXIDX,
10709     HUGE_VALF_HEX_FIXIDX,
10710     HUGE_VALL_HEX_FIXIDX,
10711     INT_ABORT_FREE_AND_EXIT_FIXIDX,
10712     IO_QUOTES_DEF_FIXIDX,
10713     IO_QUOTES_USE_FIXIDX,
10714     IP_MISSING_SEMI_FIXIDX,
10715     IRIX_LIMITS_CONST_FIXIDX,
10716     IRIX_STDIO_VA_LIST_FIXIDX,
10717     KANDR_CONCAT_FIXIDX,
10718     LINUX_IA64_UCONTEXT_FIXIDX,
10719     LYNXOS_NO_WARNING_IN_SYS_TIME_H_FIXIDX,
10720     LYNXOS_MISSING_PUTENV_FIXIDX,
10721     MACHINE_ANSI_H_VA_LIST_FIXIDX,
10722     MACHINE_NAME_FIXIDX,
10723     MATH_EXCEPTION_FIXIDX,
10724     MATH_HUGE_VAL_FROM_DBL_MAX_FIXIDX,
10725     NESTED_AUTH_DES_FIXIDX,
10726     NETBSD_C99_INLINE_1_FIXIDX,
10727     NETBSD_C99_INLINE_2_FIXIDX,
10728     NETBSD_EXTRA_SEMICOLON_FIXIDX,
10729     NEWLIB_STDINT_1_FIXIDX,
10730     NEWLIB_STDINT_2_FIXIDX,
10731     NEXT_MATH_PREFIX_FIXIDX,
10732     NEXT_TEMPLATE_FIXIDX,
10733     NEXT_VOLITILE_FIXIDX,
10734     NEXT_WAIT_UNION_FIXIDX,
10735     NODEENT_SYNTAX_FIXIDX,
10736     OPENBSD_NULL_DEFINITION_FIXIDX,
10737     OBSTACK_LVALUE_CAST_FIXIDX,
10738     OPENBSD_VA_START_FIXIDX,
10739     OSF_NAMESPACE_A_FIXIDX,
10740     OSF_NAMESPACE_C_FIXIDX,
10741     PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_FIXIDX,
10742     READ_RET_TYPE_FIXIDX,
10743     RPC_XDR_LVALUE_CAST_A_FIXIDX,
10744     RPC_XDR_LVALUE_CAST_B_FIXIDX,
10745     RS6000_DOUBLE_FIXIDX,
10746     RS6000_FCHMOD_FIXIDX,
10747     RS6000_PARAM_FIXIDX,
10748     SOLARIS___RESTRICT_FIXIDX,
10749     SOLARIS_COMPLEX_FIXIDX,
10750     SOLARIS_COMPLEX_CXX_FIXIDX,
10751     SOLARIS_CXX_LINKAGE_FIXIDX,
10752     SOLARIS_GETC_STRICT_STDC_FIXIDX,
10753     SOLARIS_GETS_C11_FIXIDX,
10754     SOLARIS_GETS_CXX14_FIXIDX,
10755     SOLARIS_INT_CONST_FIXIDX,
10756     SOLARIS_INT_LIMITS_1_FIXIDX,
10757     SOLARIS_INT_LIMITS_2_FIXIDX,
10758     SOLARIS_INT_LIMITS_3_FIXIDX,
10759     SOLARIS_MATH_1_FIXIDX,
10760     SOLARIS_MATH_10_FIXIDX,
10761     SOLARIS_MATH_2_FIXIDX,
10762     SOLARIS_MATH_3_FIXIDX,
10763     SOLARIS_MATH_4_FIXIDX,
10764     SOLARIS_MATH_8_FIXIDX,
10765     SOLARIS_MATH_9_FIXIDX,
10766     SOLARIS_MATH_11_FIXIDX,
10767     SOLARIS_MATH_12_FIXIDX,
10768     SOLARIS_ONCE_INIT_1_FIXIDX,
10769     SOLARIS_POSIX_SPAWN_RESTRICT_FIXIDX,
10770     SOLARIS_POW_INT_OVERLOAD_FIXIDX,
10771     SOLARIS_RWLOCK_INIT_1_FIXIDX,
10772     SOLARIS_STD___FILBUF_FIXIDX,
10773     SOLARIS_STD_GETS_CXX14_FIXIDX,
10774     SOLARIS_STDIO_TAG_FIXIDX,
10775     SOLARIS_STDLIB_NORETURN_FIXIDX,
10776     STATSSWTCH_FIXIDX,
10777     STDIO_STDARG_H_FIXIDX,
10778     STDIO_VA_LIST_FIXIDX,
10779     STDIO_VA_LIST_CLIENTS_FIXIDX,
10780     STRICT_ANSI_NOT_FIXIDX,
10781     STRICT_ANSI_NOT_CTD_FIXIDX,
10782     STRICT_ANSI_ONLY_FIXIDX,
10783     STRUCT_FILE_FIXIDX,
10784     STRUCT_SOCKADDR_FIXIDX,
10785     SUN_AUTH_PROTO_FIXIDX,
10786     SUN_BOGUS_IFDEF_FIXIDX,
10787     SUN_CATMACRO_FIXIDX,
10788     SUN_MALLOC_FIXIDX,
10789     SUN_RUSERS_SEMI_FIXIDX,
10790     SUN_SIGNAL_FIXIDX,
10791     SUNOS_STRLEN_FIXIDX,
10792     SUSE_LINUX_VT_CXX_FIXIDX,
10793     SVR4_DISABLE_OPT_FIXIDX,
10794     SVR4_GETCWD_FIXIDX,
10795     SVR4_PROFIL_FIXIDX,
10796     SVR4_SIGHANDLER_TYPE_FIXIDX,
10797     SVR4_UNDECLARED_GETRNGE_FIXIDX,
10798     SYSV68_STRING_FIXIDX,
10799     SYSZ_STDLIB_FOR_SUN_FIXIDX,
10800     THREAD_KEYWORD_FIXIDX,
10801     TINFO_CPLUSPLUS_FIXIDX,
10802     ULTRIX_CONST_FIXIDX,
10803     ULTRIX_CONST2_FIXIDX,
10804     VA_I960_MACRO_FIXIDX,
10805     VMS_ADD_MISSING_BRACES_FIXIDX,
10806     VMS_DECC_BUILTIN_FIXIDX,
10807     VMS_DEFINE_CAN_USE_EXTERN_PREFIX_FIXIDX,
10808     VMS_DISABLE_DECC_STRING_BUILTINS_FIXIDX,
10809     VMS_DO_NOT_REDECLARE_HOSTALIAS_FIXIDX,
10810     VMS_FORWARD_DECLARE_STRUCT_FIXIDX,
10811     VMS_NO_64BIT_GETOPT_FIXIDX,
10812     VMS_USE_FAST_SETJMP_FIXIDX,
10813     VMS_USE_PRAGMA_EXTERN_MODEL_FIXIDX,
10814     VMS_USE_QUOTED_INCLUDE_FIXIDX,
10815     VOID_NULL_FIXIDX,
10816     VXWORKS_GCC_PROBLEM_FIXIDX,
10817     VXWORKS_IOCTL_MACRO_FIXIDX,
10818     VXWORKS_MKDIR_MACRO_FIXIDX,
10819     VXWORKS_NEEDS_VXTYPES_FIXIDX,
10820     VXWORKS_NEEDS_VXWORKS_FIXIDX,
10821     VXWORKS_REGS_FIXIDX,
10822     VXWORKS_TIME_FIXIDX,
10823     VXWORKS_WRITE_CONST_FIXIDX,
10824     VXWORKS_IOLIB_INCLUDE_UNISTD_FIXIDX,
10825     X11_CLASS_FIXIDX,
10826     X11_CLASS_USAGE_FIXIDX,
10827     X11_NEW_FIXIDX,
10828     X11_SPRINTF_FIXIDX
10829 } t_fixinc_idx;
10831 tFixDesc fixDescList[ FIX_COUNT ] = {
10832   {  zAab_Aix_StdioName,    zAab_Aix_StdioList,
10833      apzAab_Aix_StdioMachs,
10834      AAB_AIX_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10835      aAab_Aix_StdioTests,   apzAab_Aix_StdioPatch, 0 },
10837   {  zAab_Aix_FcntlName,    zAab_Aix_FcntlList,
10838      apzAab_Aix_FcntlMachs,
10839      AAB_AIX_FCNTL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10840      aAab_Aix_FcntlTests,   apzAab_Aix_FcntlPatch, 0 },
10842   {  zAab_Darwin7_9_Long_Double_FuncsName,    zAab_Darwin7_9_Long_Double_FuncsList,
10843      apzAab_Darwin7_9_Long_Double_FuncsMachs,
10844      AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
10845      aAab_Darwin7_9_Long_Double_FuncsTests,   apzAab_Darwin7_9_Long_Double_FuncsPatch, 0 },
10847   {  zDarwin_Api_AvailabilityName,    zDarwin_Api_AvailabilityList,
10848      apzDarwin_Api_AvailabilityMachs,
10849      DARWIN_API_AVAILABILITY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10850      aDarwin_Api_AvailabilityTests,   apzDarwin_Api_AvailabilityPatch, 0 },
10852   {  zAab_Fd_Zero_Asm_Posix_Types_HName,    zAab_Fd_Zero_Asm_Posix_Types_HList,
10853      apzAab_Fd_Zero_Asm_Posix_Types_HMachs,
10854      AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
10855      aAab_Fd_Zero_Asm_Posix_Types_HTests,   apzAab_Fd_Zero_Asm_Posix_Types_HPatch, 0 },
10857   {  zAab_Fd_Zero_Gnu_Types_HName,    zAab_Fd_Zero_Gnu_Types_HList,
10858      apzAab_Fd_Zero_Gnu_Types_HMachs,
10859      AAB_FD_ZERO_GNU_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
10860      aAab_Fd_Zero_Gnu_Types_HTests,   apzAab_Fd_Zero_Gnu_Types_HPatch, 0 },
10862   {  zAab_Fd_Zero_Selectbits_HName,    zAab_Fd_Zero_Selectbits_HList,
10863      apzAab_Fd_Zero_Selectbits_HMachs,
10864      AAB_FD_ZERO_SELECTBITS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
10865      aAab_Fd_Zero_Selectbits_HTests,   apzAab_Fd_Zero_Selectbits_HPatch, 0 },
10867   {  zAab_Solaris_Sys_Varargs_HName,    zAab_Solaris_Sys_Varargs_HList,
10868      apzAab_Solaris_Sys_Varargs_HMachs,
10869      AAB_SOLARIS_SYS_VARARGS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
10870      aAab_Solaris_Sys_Varargs_HTests,   apzAab_Solaris_Sys_Varargs_HPatch, 0 },
10872   {  zAab_Sun_MemcpyName,    zAab_Sun_MemcpyList,
10873      apzAab_Sun_MemcpyMachs,
10874      AAB_SUN_MEMCPY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
10875      aAab_Sun_MemcpyTests,   apzAab_Sun_MemcpyPatch, 0 },
10877   {  zAab_Vxworks_AssertName,    zAab_Vxworks_AssertList,
10878      apzAab_Vxworks_AssertMachs,
10879      AAB_VXWORKS_ASSERT_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
10880      aAab_Vxworks_AssertTests,   apzAab_Vxworks_AssertPatch, 0 },
10882   {  zAab_Vxworks_Regs_VxtypesName,    zAab_Vxworks_Regs_VxtypesList,
10883      apzAab_Vxworks_Regs_VxtypesMachs,
10884      AAB_VXWORKS_REGS_VXTYPES_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
10885      aAab_Vxworks_Regs_VxtypesTests,   apzAab_Vxworks_Regs_VxtypesPatch, 0 },
10887   {  zAab_Vxworks_UnistdName,    zAab_Vxworks_UnistdList,
10888      apzAab_Vxworks_UnistdMachs,
10889      AAB_VXWORKS_UNISTD_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
10890      aAab_Vxworks_UnistdTests,   apzAab_Vxworks_UnistdPatch, 0 },
10892   {  zAix_AssertName,    zAix_AssertList,
10893      apzAix_AssertMachs,
10894      AIX_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10895      aAix_AssertTests,   apzAix_AssertPatch, 0 },
10897   {  zAix_ComplexName,    zAix_ComplexList,
10898      apzAix_ComplexMachs,
10899      AIX_COMPLEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10900      aAix_ComplexTests,   apzAix_ComplexPatch, 0 },
10902   {  zAix_ExterncName,    zAix_ExterncList,
10903      apzAix_ExterncMachs,
10904      AIX_EXTERNC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10905      aAix_ExterncTests,   apzAix_ExterncPatch, 0 },
10907   {  zAix_Externcpp1Name,    zAix_Externcpp1List,
10908      apzAix_Externcpp1Machs,
10909      AIX_EXTERNCPP1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10910      aAix_Externcpp1Tests,   apzAix_Externcpp1Patch, 0 },
10912   {  zAix_Externcpp2Name,    zAix_Externcpp2List,
10913      apzAix_Externcpp2Machs,
10914      AIX_EXTERNCPP2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10915      aAix_Externcpp2Tests,   apzAix_Externcpp2Patch, 0 },
10917   {  zAix_InttypesName,    zAix_InttypesList,
10918      apzAix_InttypesMachs,
10919      AIX_INTTYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10920      aAix_InttypesTests,   apzAix_InttypesPatch, 0 },
10922   {  zAix_MallocName,    zAix_MallocList,
10923      apzAix_MallocMachs,
10924      AIX_MALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10925      aAix_MallocTests,   apzAix_MallocPatch, 0 },
10927   {  zAix_Net_If_ArpName,    zAix_Net_If_ArpList,
10928      apzAix_Net_If_ArpMachs,
10929      AIX_NET_IF_ARP_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10930      aAix_Net_If_ArpTests,   apzAix_Net_If_ArpPatch, 0 },
10932   {  zAix_NullName,    zAix_NullList,
10933      apzAix_NullMachs,
10934      AIX_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10935      aAix_NullTests,   apzAix_NullPatch, 0 },
10937   {  zAix_Once_Init_1Name,    zAix_Once_Init_1List,
10938      apzAix_Once_Init_1Machs,
10939      AIX_ONCE_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10940      aAix_Once_Init_1Tests,   apzAix_Once_Init_1Patch, 0 },
10942   {  zAix_Once_Init_2Name,    zAix_Once_Init_2List,
10943      apzAix_Once_Init_2Machs,
10944      AIX_ONCE_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10945      aAix_Once_Init_2Tests,   apzAix_Once_Init_2Patch, 0 },
10947   {  zAix_Mutex_Initializer_1Name,    zAix_Mutex_Initializer_1List,
10948      apzAix_Mutex_Initializer_1Machs,
10949      AIX_MUTEX_INITIALIZER_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10950      aAix_Mutex_Initializer_1Tests,   apzAix_Mutex_Initializer_1Patch, 0 },
10952   {  zAix_Cond_Initializer_1Name,    zAix_Cond_Initializer_1List,
10953      apzAix_Cond_Initializer_1Machs,
10954      AIX_COND_INITIALIZER_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10955      aAix_Cond_Initializer_1Tests,   apzAix_Cond_Initializer_1Patch, 0 },
10957   {  zAix_Rwlock_Initializer_1Name,    zAix_Rwlock_Initializer_1List,
10958      apzAix_Rwlock_Initializer_1Machs,
10959      AIX_RWLOCK_INITIALIZER_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10960      aAix_Rwlock_Initializer_1Tests,   apzAix_Rwlock_Initializer_1Patch, 0 },
10962   {  zAix_Physadr_TName,    zAix_Physadr_TList,
10963      apzAix_Physadr_TMachs,
10964      AIX_PHYSADR_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10965      aAix_Physadr_TTests,   apzAix_Physadr_TPatch, 0 },
10967   {  zAix_PthreadName,    zAix_PthreadList,
10968      apzAix_PthreadMachs,
10969      AIX_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10970      aAix_PthreadTests,   apzAix_PthreadPatch, 0 },
10972   {  zAix_Stdint_1Name,    zAix_Stdint_1List,
10973      apzAix_Stdint_1Machs,
10974      AIX_STDINT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10975      aAix_Stdint_1Tests,   apzAix_Stdint_1Patch, 0 },
10977   {  zAix_Stdint_2Name,    zAix_Stdint_2List,
10978      apzAix_Stdint_2Machs,
10979      AIX_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10980      aAix_Stdint_2Tests,   apzAix_Stdint_2Patch, 0 },
10982   {  zAix_Stdint_3Name,    zAix_Stdint_3List,
10983      apzAix_Stdint_3Machs,
10984      AIX_STDINT_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10985      aAix_Stdint_3Tests,   apzAix_Stdint_3Patch, 0 },
10987   {  zAix_Stdint_4Name,    zAix_Stdint_4List,
10988      apzAix_Stdint_4Machs,
10989      AIX_STDINT_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10990      aAix_Stdint_4Tests,   apzAix_Stdint_4Patch, 0 },
10992   {  zAix_Stdint_5Name,    zAix_Stdint_5List,
10993      apzAix_Stdint_5Machs,
10994      AIX_STDINT_5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
10995      aAix_Stdint_5Tests,   apzAix_Stdint_5Patch, 0 },
10997   {  zAix_Stdio_InlineName,    zAix_Stdio_InlineList,
10998      apzAix_Stdio_InlineMachs,
10999      AIX_STDIO_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11000      aAix_Stdio_InlineTests,   apzAix_Stdio_InlinePatch, 0 },
11002   {  zAix_Stdlib_MallocName,    zAix_Stdlib_MallocList,
11003      apzAix_Stdlib_MallocMachs,
11004      AIX_STDLIB_MALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11005      aAix_Stdlib_MallocTests,   apzAix_Stdlib_MallocPatch, 0 },
11007   {  zAix_Stdlib_ReallocName,    zAix_Stdlib_ReallocList,
11008      apzAix_Stdlib_ReallocMachs,
11009      AIX_STDLIB_REALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11010      aAix_Stdlib_ReallocTests,   apzAix_Stdlib_ReallocPatch, 0 },
11012   {  zAix_Stdlib_CallocName,    zAix_Stdlib_CallocList,
11013      apzAix_Stdlib_CallocMachs,
11014      AIX_STDLIB_CALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11015      aAix_Stdlib_CallocTests,   apzAix_Stdlib_CallocPatch, 0 },
11017   {  zAix_Stdlib_VallocName,    zAix_Stdlib_VallocList,
11018      apzAix_Stdlib_VallocMachs,
11019      AIX_STDLIB_VALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11020      aAix_Stdlib_VallocTests,   apzAix_Stdlib_VallocPatch, 0 },
11022   {  zAix_Stdlib_Vec_MallocName,    zAix_Stdlib_Vec_MallocList,
11023      apzAix_Stdlib_Vec_MallocMachs,
11024      AIX_STDLIB_VEC_MALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11025      aAix_Stdlib_Vec_MallocTests,   apzAix_Stdlib_Vec_MallocPatch, 0 },
11027   {  zAix_Stdlib_Vec_CallocName,    zAix_Stdlib_Vec_CallocList,
11028      apzAix_Stdlib_Vec_CallocMachs,
11029      AIX_STDLIB_VEC_CALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11030      aAix_Stdlib_Vec_CallocTests,   apzAix_Stdlib_Vec_CallocPatch, 0 },
11032   {  zAix_Strtof_ConstName,    zAix_Strtof_ConstList,
11033      apzAix_Strtof_ConstMachs,
11034      AIX_STRTOF_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11035      aAix_Strtof_ConstTests,   apzAix_Strtof_ConstPatch, 0 },
11037   {  zAix_SysmachineName,    zAix_SysmachineList,
11038      apzAix_SysmachineMachs,
11039      AIX_SYSMACHINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11040      aAix_SysmachineTests,   apzAix_SysmachinePatch, 0 },
11042   {  zAix_Syswait_2Name,    zAix_Syswait_2List,
11043      apzAix_Syswait_2Machs,
11044      AIX_SYSWAIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11045      aAix_Syswait_2Tests,   apzAix_Syswait_2Patch, 0 },
11047   {  zAix_VolatileName,    zAix_VolatileList,
11048      apzAix_VolatileMachs,
11049      AIX_VOLATILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11050      aAix_VolatileTests,   apzAix_VolatilePatch, 0 },
11052   {  zAix_UnistdName,    zAix_UnistdList,
11053      apzAix_UnistdMachs,
11054      AIX_UNISTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11055      aAix_UnistdTests,   apzAix_UnistdPatch, 0 },
11057   {  zAlpha___AssertName,    zAlpha___AssertList,
11058      apzAlpha___AssertMachs,
11059      ALPHA___ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11060      aAlpha___AssertTests,   apzAlpha___AssertPatch, 0 },
11062   {  zAlpha_AssertName,    zAlpha_AssertList,
11063      apzAlpha_AssertMachs,
11064      ALPHA_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11065      aAlpha_AssertTests,   apzAlpha_AssertPatch, 0 },
11067   {  zAlpha_GetoptName,    zAlpha_GetoptList,
11068      apzAlpha_GetoptMachs,
11069      ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11070      aAlpha_GetoptTests,   apzAlpha_GetoptPatch, 0 },
11072   {  zAlpha_If_SemicolonName,    zAlpha_If_SemicolonList,
11073      apzAlpha_If_SemicolonMachs,
11074      ALPHA_IF_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11075      aAlpha_If_SemicolonTests,   apzAlpha_If_SemicolonPatch, 0 },
11077   {  zAlpha_ParensName,    zAlpha_ParensList,
11078      apzAlpha_ParensMachs,
11079      ALPHA_PARENS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11080      aAlpha_ParensTests,   apzAlpha_ParensPatch, 0 },
11082   {  zAlpha_SbrkName,    zAlpha_SbrkList,
11083      apzAlpha_SbrkMachs,
11084      ALPHA_SBRK_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11085      aAlpha_SbrkTests,   apzAlpha_SbrkPatch, 0 },
11087   {  zAvoid_Bool_DefineName,    zAvoid_Bool_DefineList,
11088      apzAvoid_Bool_DefineMachs,
11089      AVOID_BOOL_DEFINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11090      aAvoid_Bool_DefineTests,   apzAvoid_Bool_DefinePatch, 0 },
11092   {  zAvoid_Bool_TypeName,    zAvoid_Bool_TypeList,
11093      apzAvoid_Bool_TypeMachs,
11094      AVOID_BOOL_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11095      aAvoid_Bool_TypeTests,   apzAvoid_Bool_TypePatch, 0 },
11097   {  zAvoid_Wchar_T_TypeName,    zAvoid_Wchar_T_TypeList,
11098      apzAvoid_Wchar_T_TypeMachs,
11099      AVOID_WCHAR_T_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11100      aAvoid_Wchar_T_TypeTests,   apzAvoid_Wchar_T_TypePatch, 0 },
11102   {  zBad_Struct_TermName,    zBad_Struct_TermList,
11103      apzBad_Struct_TermMachs,
11104      BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11105      aBad_Struct_TermTests,   apzBad_Struct_TermPatch, 0 },
11107   {  zBadquoteName,    zBadquoteList,
11108      apzBadquoteMachs,
11109      BADQUOTE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11110      aBadquoteTests,   apzBadquotePatch, 0 },
11112   {  zBroken_Assert_StdioName,    zBroken_Assert_StdioList,
11113      apzBroken_Assert_StdioMachs,
11114      BROKEN_ASSERT_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11115      aBroken_Assert_StdioTests,   apzBroken_Assert_StdioPatch, 0 },
11117   {  zBroken_Assert_StdlibName,    zBroken_Assert_StdlibList,
11118      apzBroken_Assert_StdlibMachs,
11119      BROKEN_ASSERT_STDLIB_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11120      aBroken_Assert_StdlibTests,   apzBroken_Assert_StdlibPatch, 0 },
11122   {  zBroken_CabsName,    zBroken_CabsList,
11123      apzBroken_CabsMachs,
11124      BROKEN_CABS_TEST_CT, FD_MACH_ONLY,
11125      aBroken_CabsTests,   apzBroken_CabsPatch, 0 },
11127   {  zBroken_NanName,    zBroken_NanList,
11128      apzBroken_NanMachs,
11129      BROKEN_NAN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11130      aBroken_NanTests,   apzBroken_NanPatch, 0 },
11132   {  zBsd_Stdio_Attrs_ConflictName,    zBsd_Stdio_Attrs_ConflictList,
11133      apzBsd_Stdio_Attrs_ConflictMachs,
11134      BSD_STDIO_ATTRS_CONFLICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11135      aBsd_Stdio_Attrs_ConflictTests,   apzBsd_Stdio_Attrs_ConflictPatch, 0 },
11137   {  zCtrl_Quotes_DefName,    zCtrl_Quotes_DefList,
11138      apzCtrl_Quotes_DefMachs,
11139      CTRL_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11140      aCtrl_Quotes_DefTests,   apzCtrl_Quotes_DefPatch, 0 },
11142   {  zCtrl_Quotes_UseName,    zCtrl_Quotes_UseList,
11143      apzCtrl_Quotes_UseMachs,
11144      CTRL_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11145      aCtrl_Quotes_UseTests,   apzCtrl_Quotes_UsePatch, 0 },
11147   {  zCxx_UnreadyName,    zCxx_UnreadyList,
11148      apzCxx_UnreadyMachs,
11149      CXX_UNREADY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11150      aCxx_UnreadyTests,   apzCxx_UnreadyPatch, 0 },
11152   {  zDarwin_AvailabilityinternalName,    zDarwin_AvailabilityinternalList,
11153      apzDarwin_AvailabilityinternalMachs,
11154      DARWIN_AVAILABILITYINTERNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11155      aDarwin_AvailabilityinternalTests,   apzDarwin_AvailabilityinternalPatch, 0 },
11157   {  zDarwin_9_Long_Double_Funcs_2Name,    zDarwin_9_Long_Double_Funcs_2List,
11158      apzDarwin_9_Long_Double_Funcs_2Machs,
11159      DARWIN_9_LONG_DOUBLE_FUNCS_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11160      aDarwin_9_Long_Double_Funcs_2Tests,   apzDarwin_9_Long_Double_Funcs_2Patch, 0 },
11162   {  zDarwin_ExterncName,    zDarwin_ExterncList,
11163      apzDarwin_ExterncMachs,
11164      DARWIN_EXTERNC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11165      aDarwin_ExterncTests,   apzDarwin_ExterncPatch, 0 },
11167   {  zDarwin_Gcc4_BreakageName,    zDarwin_Gcc4_BreakageList,
11168      apzDarwin_Gcc4_BreakageMachs,
11169      DARWIN_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11170      aDarwin_Gcc4_BreakageTests,   apzDarwin_Gcc4_BreakagePatch, 0 },
11172   {  zDarwin_Ll_Funcs_AvailName,    zDarwin_Ll_Funcs_AvailList,
11173      apzDarwin_Ll_Funcs_AvailMachs,
11174      DARWIN_LL_FUNCS_AVAIL_TEST_CT, FD_MACH_ONLY,
11175      aDarwin_Ll_Funcs_AvailTests,   apzDarwin_Ll_Funcs_AvailPatch, 0 },
11177   {  zDarwin_Longjmp_NoreturnName,    zDarwin_Longjmp_NoreturnList,
11178      apzDarwin_Longjmp_NoreturnMachs,
11179      DARWIN_LONGJMP_NORETURN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11180      aDarwin_Longjmp_NoreturnTests,   apzDarwin_Longjmp_NoreturnPatch, 0 },
11182   {  zDarwin_Os_Trace_1Name,    zDarwin_Os_Trace_1List,
11183      apzDarwin_Os_Trace_1Machs,
11184      DARWIN_OS_TRACE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11185      aDarwin_Os_Trace_1Tests,   apzDarwin_Os_Trace_1Patch, 0 },
11187   {  zDarwin_Os_Trace_2Name,    zDarwin_Os_Trace_2List,
11188      apzDarwin_Os_Trace_2Machs,
11189      DARWIN_OS_TRACE_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11190      aDarwin_Os_Trace_2Tests,   apzDarwin_Os_Trace_2Patch, 0 },
11192   {  zDarwin_Os_Trace_3Name,    zDarwin_Os_Trace_3List,
11193      apzDarwin_Os_Trace_3Machs,
11194      DARWIN_OS_TRACE_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11195      aDarwin_Os_Trace_3Tests,   apzDarwin_Os_Trace_3Patch, 0 },
11197   {  zDarwin_Os_Base_1Name,    zDarwin_Os_Base_1List,
11198      apzDarwin_Os_Base_1Machs,
11199      DARWIN_OS_BASE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11200      aDarwin_Os_Base_1Tests,   apzDarwin_Os_Base_1Patch, 0 },
11202   {  zDarwin_Dispatch_Object_1Name,    zDarwin_Dispatch_Object_1List,
11203      apzDarwin_Dispatch_Object_1Machs,
11204      DARWIN_DISPATCH_OBJECT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11205      aDarwin_Dispatch_Object_1Tests,   apzDarwin_Dispatch_Object_1Patch, 0 },
11207   {  zDarwin_Private_ExternName,    zDarwin_Private_ExternList,
11208      apzDarwin_Private_ExternMachs,
11209      DARWIN_PRIVATE_EXTERN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11210      aDarwin_Private_ExternTests,   apzDarwin_Private_ExternPatch, 0 },
11212   {  zDarwin_Stdint_1Name,    zDarwin_Stdint_1List,
11213      apzDarwin_Stdint_1Machs,
11214      DARWIN_STDINT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11215      aDarwin_Stdint_1Tests,   apzDarwin_Stdint_1Patch, 0 },
11217   {  zDarwin_Stdint_2Name,    zDarwin_Stdint_2List,
11218      apzDarwin_Stdint_2Machs,
11219      DARWIN_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11220      aDarwin_Stdint_2Tests,   apzDarwin_Stdint_2Patch, 0 },
11222   {  zDarwin_Stdint_3Name,    zDarwin_Stdint_3List,
11223      apzDarwin_Stdint_3Machs,
11224      DARWIN_STDINT_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11225      aDarwin_Stdint_3Tests,   apzDarwin_Stdint_3Patch, 0 },
11227   {  zDarwin_Stdint_4Name,    zDarwin_Stdint_4List,
11228      apzDarwin_Stdint_4Machs,
11229      DARWIN_STDINT_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11230      aDarwin_Stdint_4Tests,   apzDarwin_Stdint_4Patch, 0 },
11232   {  zDarwin_Stdint_5Name,    zDarwin_Stdint_5List,
11233      apzDarwin_Stdint_5Machs,
11234      DARWIN_STDINT_5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11235      aDarwin_Stdint_5Tests,   apzDarwin_Stdint_5Patch, 0 },
11237   {  zDarwin_Stdint_6Name,    zDarwin_Stdint_6List,
11238      apzDarwin_Stdint_6Machs,
11239      DARWIN_STDINT_6_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11240      aDarwin_Stdint_6Tests,   apzDarwin_Stdint_6Patch, 0 },
11242   {  zDarwin_Stdint_7Name,    zDarwin_Stdint_7List,
11243      apzDarwin_Stdint_7Machs,
11244      DARWIN_STDINT_7_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11245      aDarwin_Stdint_7Tests,   apzDarwin_Stdint_7Patch, 0 },
11247   {  zDarwin_Ucred__AtomicName,    zDarwin_Ucred__AtomicList,
11248      apzDarwin_Ucred__AtomicMachs,
11249      DARWIN_UCRED__ATOMIC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11250      aDarwin_Ucred__AtomicTests,   apzDarwin_Ucred__AtomicPatch, 0 },
11252   {  zDec_Intern_AsmName,    zDec_Intern_AsmList,
11253      apzDec_Intern_AsmMachs,
11254      DEC_INTERN_ASM_TEST_CT, FD_MACH_ONLY,
11255      aDec_Intern_AsmTests,   apzDec_Intern_AsmPatch, 0 },
11257   {  zDjgpp_Wchar_HName,    zDjgpp_Wchar_HList,
11258      apzDjgpp_Wchar_HMachs,
11259      DJGPP_WCHAR_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11260      aDjgpp_Wchar_HTests,   apzDjgpp_Wchar_HPatch, 0 },
11262   {  zEcd_CursorName,    zEcd_CursorList,
11263      apzEcd_CursorMachs,
11264      ECD_CURSOR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11265      aEcd_CursorTests,   apzEcd_CursorPatch, 0 },
11267   {  zFeraiseexcept_Nosse_DivbyzeroName,    zFeraiseexcept_Nosse_DivbyzeroList,
11268      apzFeraiseexcept_Nosse_DivbyzeroMachs,
11269      FERAISEEXCEPT_NOSSE_DIVBYZERO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11270      aFeraiseexcept_Nosse_DivbyzeroTests,   apzFeraiseexcept_Nosse_DivbyzeroPatch, 0 },
11272   {  zFeraiseexcept_Nosse_InvalidName,    zFeraiseexcept_Nosse_InvalidList,
11273      apzFeraiseexcept_Nosse_InvalidMachs,
11274      FERAISEEXCEPT_NOSSE_INVALID_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11275      aFeraiseexcept_Nosse_InvalidTests,   apzFeraiseexcept_Nosse_InvalidPatch, 0 },
11277   {  zFreebsd_Gcc3_BreakageName,    zFreebsd_Gcc3_BreakageList,
11278      apzFreebsd_Gcc3_BreakageMachs,
11279      FREEBSD_GCC3_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11280      aFreebsd_Gcc3_BreakageTests,   apzFreebsd_Gcc3_BreakagePatch, 0 },
11282   {  zFreebsd_Gcc4_BreakageName,    zFreebsd_Gcc4_BreakageList,
11283      apzFreebsd_Gcc4_BreakageMachs,
11284      FREEBSD_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11285      aFreebsd_Gcc4_BreakageTests,   apzFreebsd_Gcc4_BreakagePatch, 0 },
11287   {  zGlibc_C99_Inline_1Name,    zGlibc_C99_Inline_1List,
11288      apzGlibc_C99_Inline_1Machs,
11289      GLIBC_C99_INLINE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11290      aGlibc_C99_Inline_1Tests,   apzGlibc_C99_Inline_1Patch, 0 },
11292   {  zGlibc_C99_Inline_1aName,    zGlibc_C99_Inline_1aList,
11293      apzGlibc_C99_Inline_1aMachs,
11294      GLIBC_C99_INLINE_1A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11295      aGlibc_C99_Inline_1aTests,   apzGlibc_C99_Inline_1aPatch, 0 },
11297   {  zGlibc_C99_Inline_2Name,    zGlibc_C99_Inline_2List,
11298      apzGlibc_C99_Inline_2Machs,
11299      GLIBC_C99_INLINE_2_TEST_CT, FD_MACH_ONLY,
11300      aGlibc_C99_Inline_2Tests,   apzGlibc_C99_Inline_2Patch, 0 },
11302   {  zGlibc_C99_Inline_3Name,    zGlibc_C99_Inline_3List,
11303      apzGlibc_C99_Inline_3Machs,
11304      GLIBC_C99_INLINE_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11305      aGlibc_C99_Inline_3Tests,   apzGlibc_C99_Inline_3Patch, 0 },
11307   {  zGlibc_C99_Inline_4Name,    zGlibc_C99_Inline_4List,
11308      apzGlibc_C99_Inline_4Machs,
11309      GLIBC_C99_INLINE_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11310      aGlibc_C99_Inline_4Tests,   apzGlibc_C99_Inline_4Patch, 0 },
11312   {  zGlibc_Mutex_InitName,    zGlibc_Mutex_InitList,
11313      apzGlibc_Mutex_InitMachs,
11314      GLIBC_MUTEX_INIT_TEST_CT, FD_MACH_ONLY,
11315      aGlibc_Mutex_InitTests,   apzGlibc_Mutex_InitPatch, 0 },
11317   {  zGlibc_StdintName,    zGlibc_StdintList,
11318      apzGlibc_StdintMachs,
11319      GLIBC_STDINT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11320      aGlibc_StdintTests,   apzGlibc_StdintPatch, 0 },
11322   {  zGlibc_StrncpyName,    zGlibc_StrncpyList,
11323      apzGlibc_StrncpyMachs,
11324      GLIBC_STRNCPY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11325      aGlibc_StrncpyTests,   apzGlibc_StrncpyPatch, 0 },
11327   {  zGlibc_TgmathName,    zGlibc_TgmathList,
11328      apzGlibc_TgmathMachs,
11329      GLIBC_TGMATH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11330      aGlibc_TgmathTests,   apzGlibc_TgmathPatch, 0 },
11332   {  zGnu_TypesName,    zGnu_TypesList,
11333      apzGnu_TypesMachs,
11334      GNU_TYPES_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
11335      aGnu_TypesTests,   apzGnu_TypesPatch, 0 },
11337   {  zHp_InlineName,    zHp_InlineList,
11338      apzHp_InlineMachs,
11339      HP_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11340      aHp_InlineTests,   apzHp_InlinePatch, 0 },
11342   {  zHp_SysfileName,    zHp_SysfileList,
11343      apzHp_SysfileMachs,
11344      HP_SYSFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11345      aHp_SysfileTests,   apzHp_SysfilePatch, 0 },
11347   {  zHppa_Hpux_Fp_MacrosName,    zHppa_Hpux_Fp_MacrosList,
11348      apzHppa_Hpux_Fp_MacrosMachs,
11349      HPPA_HPUX_FP_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11350      aHppa_Hpux_Fp_MacrosTests,   apzHppa_Hpux_Fp_MacrosPatch, 0 },
11352   {  zHpux10_Cpp_Pow_InlineName,    zHpux10_Cpp_Pow_InlineList,
11353      apzHpux10_Cpp_Pow_InlineMachs,
11354      HPUX10_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11355      aHpux10_Cpp_Pow_InlineTests,   apzHpux10_Cpp_Pow_InlinePatch, 0 },
11357   {  zHpux11_Cpp_Pow_InlineName,    zHpux11_Cpp_Pow_InlineList,
11358      apzHpux11_Cpp_Pow_InlineMachs,
11359      HPUX11_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11360      aHpux11_Cpp_Pow_InlineTests,   apzHpux11_Cpp_Pow_InlinePatch, 0 },
11362   {  zHpux10_Ctype_Declarations1Name,    zHpux10_Ctype_Declarations1List,
11363      apzHpux10_Ctype_Declarations1Machs,
11364      HPUX10_CTYPE_DECLARATIONS1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11365      aHpux10_Ctype_Declarations1Tests,   apzHpux10_Ctype_Declarations1Patch, 0 },
11367   {  zHpux10_Ctype_Declarations2Name,    zHpux10_Ctype_Declarations2List,
11368      apzHpux10_Ctype_Declarations2Machs,
11369      HPUX10_CTYPE_DECLARATIONS2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11370      aHpux10_Ctype_Declarations2Tests,   apzHpux10_Ctype_Declarations2Patch, 0 },
11372   {  zHpux10_Stdio_DeclarationsName,    zHpux10_Stdio_DeclarationsList,
11373      apzHpux10_Stdio_DeclarationsMachs,
11374      HPUX10_STDIO_DECLARATIONS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11375      aHpux10_Stdio_DeclarationsTests,   apzHpux10_Stdio_DeclarationsPatch, 0 },
11377   {  zHppa_Hpux11_AllocaName,    zHppa_Hpux11_AllocaList,
11378      apzHppa_Hpux11_AllocaMachs,
11379      HPPA_HPUX11_ALLOCA_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11380      aHppa_Hpux11_AllocaTests,   apzHppa_Hpux11_AllocaPatch, 0 },
11382   {  zHpux11_AbsName,    zHpux11_AbsList,
11383      apzHpux11_AbsMachs,
11384      HPUX11_ABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11385      aHpux11_AbsTests,   apzHpux11_AbsPatch, 0 },
11387   {  zHpux11_Lwp_Rwlock_ValidName,    zHpux11_Lwp_Rwlock_ValidList,
11388      apzHpux11_Lwp_Rwlock_ValidMachs,
11389      HPUX11_LWP_RWLOCK_VALID_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11390      aHpux11_Lwp_Rwlock_ValidTests,   apzHpux11_Lwp_Rwlock_ValidPatch, 0 },
11392   {  zHpux11_Extern_SendfileName,    zHpux11_Extern_SendfileList,
11393      apzHpux11_Extern_SendfileMachs,
11394      HPUX11_EXTERN_SENDFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11395      aHpux11_Extern_SendfileTests,   apzHpux11_Extern_SendfilePatch, 0 },
11397   {  zHpux11_Extern_SendpathName,    zHpux11_Extern_SendpathList,
11398      apzHpux11_Extern_SendpathMachs,
11399      HPUX11_EXTERN_SENDPATH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11400      aHpux11_Extern_SendpathTests,   apzHpux11_Extern_SendpathPatch, 0 },
11402   {  zHpux11_FabsfName,    zHpux11_FabsfList,
11403      apzHpux11_FabsfMachs,
11404      HPUX11_FABSF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11405      aHpux11_FabsfTests,   apzHpux11_FabsfPatch, 0 },
11407   {  zHpux11_Pthread_PointerName,    zHpux11_Pthread_PointerList,
11408      apzHpux11_Pthread_PointerMachs,
11409      HPUX11_PTHREAD_POINTER_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11410      aHpux11_Pthread_PointerTests,   apzHpux11_Pthread_PointerPatch, 0 },
11412   {  zHpux11_Pthread_ConstName,    zHpux11_Pthread_ConstList,
11413      apzHpux11_Pthread_ConstMachs,
11414      HPUX11_PTHREAD_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11415      aHpux11_Pthread_ConstTests,   apzHpux11_Pthread_ConstPatch, 0 },
11417   {  zHpux11_Size_TName,    zHpux11_Size_TList,
11418      apzHpux11_Size_TMachs,
11419      HPUX11_SIZE_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11420      aHpux11_Size_TTests,   apzHpux11_Size_TPatch, 0 },
11422   {  zHpux11_SnprintfName,    zHpux11_SnprintfList,
11423      apzHpux11_SnprintfMachs,
11424      HPUX11_SNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11425      aHpux11_SnprintfTests,   apzHpux11_SnprintfPatch, 0 },
11427   {  zHpux11_VsnprintfName,    zHpux11_VsnprintfList,
11428      apzHpux11_VsnprintfMachs,
11429      HPUX11_VSNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11430      aHpux11_VsnprintfTests,   apzHpux11_VsnprintfPatch, 0 },
11432   {  zHpux_VsscanfName,    zHpux_VsscanfList,
11433      apzHpux_VsscanfMachs,
11434      HPUX_VSSCANF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11435      aHpux_VsscanfTests,   apzHpux_VsscanfPatch, 0 },
11437   {  zHpux8_Bogus_InlinesName,    zHpux8_Bogus_InlinesList,
11438      apzHpux8_Bogus_InlinesMachs,
11439      HPUX8_BOGUS_INLINES_TEST_CT, FD_MACH_ONLY,
11440      aHpux8_Bogus_InlinesTests,   apzHpux8_Bogus_InlinesPatch, 0 },
11442   {  zHpux_C99_IntptrName,    zHpux_C99_IntptrList,
11443      apzHpux_C99_IntptrMachs,
11444      HPUX_C99_INTPTR_TEST_CT, FD_MACH_ONLY,
11445      aHpux_C99_IntptrTests,   apzHpux_C99_IntptrPatch, 0 },
11447   {  zHpux_C99_InttypesName,    zHpux_C99_InttypesList,
11448      apzHpux_C99_InttypesMachs,
11449      HPUX_C99_INTTYPES_TEST_CT, FD_MACH_ONLY,
11450      aHpux_C99_InttypesTests,   apzHpux_C99_InttypesPatch, 0 },
11452   {  zHpux_C99_Inttypes2Name,    zHpux_C99_Inttypes2List,
11453      apzHpux_C99_Inttypes2Machs,
11454      HPUX_C99_INTTYPES2_TEST_CT, FD_MACH_ONLY,
11455      aHpux_C99_Inttypes2Tests,   apzHpux_C99_Inttypes2Patch, 0 },
11457   {  zHpux_C99_Inttypes3Name,    zHpux_C99_Inttypes3List,
11458      apzHpux_C99_Inttypes3Machs,
11459      HPUX_C99_INTTYPES3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11460      aHpux_C99_Inttypes3Tests,   apzHpux_C99_Inttypes3Patch, 0 },
11462   {  zHpux_C99_Inttypes4Name,    zHpux_C99_Inttypes4List,
11463      apzHpux_C99_Inttypes4Machs,
11464      HPUX_C99_INTTYPES4_TEST_CT, FD_MACH_ONLY,
11465      aHpux_C99_Inttypes4Tests,   apzHpux_C99_Inttypes4Patch, 0 },
11467   {  zHpux_Ctype_MacrosName,    zHpux_Ctype_MacrosList,
11468      apzHpux_Ctype_MacrosMachs,
11469      HPUX_CTYPE_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11470      aHpux_Ctype_MacrosTests,   apzHpux_Ctype_MacrosPatch, 0 },
11472   {  zHpux_Extern_ErrnoName,    zHpux_Extern_ErrnoList,
11473      apzHpux_Extern_ErrnoMachs,
11474      HPUX_EXTERN_ERRNO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11475      aHpux_Extern_ErrnoTests,   apzHpux_Extern_ErrnoPatch, 0 },
11477   {  zHpux_HtonlName,    zHpux_HtonlList,
11478      apzHpux_HtonlMachs,
11479      HPUX_HTONL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11480      aHpux_HtonlTests,   apzHpux_HtonlPatch, 0 },
11482   {  zHpux_Imaginary_IName,    zHpux_Imaginary_IList,
11483      apzHpux_Imaginary_IMachs,
11484      HPUX_IMAGINARY_I_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11485      aHpux_Imaginary_ITests,   apzHpux_Imaginary_IPatch, 0 },
11487   {  zHpux_Inttype_Int8_TName,    zHpux_Inttype_Int8_TList,
11488      apzHpux_Inttype_Int8_TMachs,
11489      HPUX_INTTYPE_INT8_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11490      aHpux_Inttype_Int8_TTests,   apzHpux_Inttype_Int8_TPatch, 0 },
11492   {  zHpux_Long_DoubleName,    zHpux_Long_DoubleList,
11493      apzHpux_Long_DoubleMachs,
11494      HPUX_LONG_DOUBLE_TEST_CT, FD_MACH_ONLY,
11495      aHpux_Long_DoubleTests,   apzHpux_Long_DoublePatch, 0 },
11497   {  zHpux_Long_Double_2Name,    zHpux_Long_Double_2List,
11498      apzHpux_Long_Double_2Machs,
11499      HPUX_LONG_DOUBLE_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11500      aHpux_Long_Double_2Tests,   apzHpux_Long_Double_2Patch, 0 },
11502   {  zHpux_Pthread_InitializersName,    zHpux_Pthread_InitializersList,
11503      apzHpux_Pthread_InitializersMachs,
11504      HPUX_PTHREAD_INITIALIZERS_TEST_CT, FD_MACH_ONLY,
11505      aHpux_Pthread_InitializersTests,   apzHpux_Pthread_InitializersPatch, 0 },
11507   {  zHpux_Spu_InfoName,    zHpux_Spu_InfoList,
11508      apzHpux_Spu_InfoMachs,
11509      HPUX_SPU_INFO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11510      aHpux_Spu_InfoTests,   apzHpux_Spu_InfoPatch, 0 },
11512   {  zHpux_Stdint_Least_FastName,    zHpux_Stdint_Least_FastList,
11513      apzHpux_Stdint_Least_FastMachs,
11514      HPUX_STDINT_LEAST_FAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11515      aHpux_Stdint_Least_FastTests,   apzHpux_Stdint_Least_FastPatch, 0 },
11517   {  zHpux_LongjmpName,    zHpux_LongjmpList,
11518      apzHpux_LongjmpMachs,
11519      HPUX_LONGJMP_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11520      aHpux_LongjmpTests,   apzHpux_LongjmpPatch, 0 },
11522   {  zHpux_SystimeName,    zHpux_SystimeList,
11523      apzHpux_SystimeMachs,
11524      HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11525      aHpux_SystimeTests,   apzHpux_SystimePatch, 0 },
11527   {  zHuge_Val_HexName,    zHuge_Val_HexList,
11528      apzHuge_Val_HexMachs,
11529      HUGE_VAL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11530      aHuge_Val_HexTests,   apzHuge_Val_HexPatch, 0 },
11532   {  zHuge_Valf_HexName,    zHuge_Valf_HexList,
11533      apzHuge_Valf_HexMachs,
11534      HUGE_VALF_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11535      aHuge_Valf_HexTests,   apzHuge_Valf_HexPatch, 0 },
11537   {  zHuge_Vall_HexName,    zHuge_Vall_HexList,
11538      apzHuge_Vall_HexMachs,
11539      HUGE_VALL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11540      aHuge_Vall_HexTests,   apzHuge_Vall_HexPatch, 0 },
11542   {  zInt_Abort_Free_And_ExitName,    zInt_Abort_Free_And_ExitList,
11543      apzInt_Abort_Free_And_ExitMachs,
11544      INT_ABORT_FREE_AND_EXIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11545      aInt_Abort_Free_And_ExitTests,   apzInt_Abort_Free_And_ExitPatch, 0 },
11547   {  zIo_Quotes_DefName,    zIo_Quotes_DefList,
11548      apzIo_Quotes_DefMachs,
11549      IO_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11550      aIo_Quotes_DefTests,   apzIo_Quotes_DefPatch, 0 },
11552   {  zIo_Quotes_UseName,    zIo_Quotes_UseList,
11553      apzIo_Quotes_UseMachs,
11554      IO_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11555      aIo_Quotes_UseTests,   apzIo_Quotes_UsePatch, 0 },
11557   {  zIp_Missing_SemiName,    zIp_Missing_SemiList,
11558      apzIp_Missing_SemiMachs,
11559      IP_MISSING_SEMI_TEST_CT, FD_MACH_ONLY,
11560      aIp_Missing_SemiTests,   apzIp_Missing_SemiPatch, 0 },
11562   {  zIrix_Limits_ConstName,    zIrix_Limits_ConstList,
11563      apzIrix_Limits_ConstMachs,
11564      IRIX_LIMITS_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11565      aIrix_Limits_ConstTests,   apzIrix_Limits_ConstPatch, 0 },
11567   {  zIrix_Stdio_Va_ListName,    zIrix_Stdio_Va_ListList,
11568      apzIrix_Stdio_Va_ListMachs,
11569      IRIX_STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11570      aIrix_Stdio_Va_ListTests,   apzIrix_Stdio_Va_ListPatch, 0 },
11572   {  zKandr_ConcatName,    zKandr_ConcatList,
11573      apzKandr_ConcatMachs,
11574      KANDR_CONCAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11575      aKandr_ConcatTests,   apzKandr_ConcatPatch, 0 },
11577   {  zLinux_Ia64_UcontextName,    zLinux_Ia64_UcontextList,
11578      apzLinux_Ia64_UcontextMachs,
11579      LINUX_IA64_UCONTEXT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11580      aLinux_Ia64_UcontextTests,   apzLinux_Ia64_UcontextPatch, 0 },
11582   {  zLynxos_No_Warning_In_Sys_Time_HName,    zLynxos_No_Warning_In_Sys_Time_HList,
11583      apzLynxos_No_Warning_In_Sys_Time_HMachs,
11584      LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11585      aLynxos_No_Warning_In_Sys_Time_HTests,   apzLynxos_No_Warning_In_Sys_Time_HPatch, 0 },
11587   {  zLynxos_Missing_PutenvName,    zLynxos_Missing_PutenvList,
11588      apzLynxos_Missing_PutenvMachs,
11589      LYNXOS_MISSING_PUTENV_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11590      aLynxos_Missing_PutenvTests,   apzLynxos_Missing_PutenvPatch, 0 },
11592   {  zMachine_Ansi_H_Va_ListName,    zMachine_Ansi_H_Va_ListList,
11593      apzMachine_Ansi_H_Va_ListMachs,
11594      MACHINE_ANSI_H_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11595      aMachine_Ansi_H_Va_ListTests,   apzMachine_Ansi_H_Va_ListPatch, 0 },
11597   {  zMachine_NameName,    zMachine_NameList,
11598      apzMachine_NameMachs,
11599      MACHINE_NAME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11600      aMachine_NameTests,   apzMachine_NamePatch, 0 },
11602   {  zMath_ExceptionName,    zMath_ExceptionList,
11603      apzMath_ExceptionMachs,
11604      MATH_EXCEPTION_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
11605      aMath_ExceptionTests,   apzMath_ExceptionPatch, 0 },
11607   {  zMath_Huge_Val_From_Dbl_MaxName,    zMath_Huge_Val_From_Dbl_MaxList,
11608      apzMath_Huge_Val_From_Dbl_MaxMachs,
11609      MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
11610      aMath_Huge_Val_From_Dbl_MaxTests,   apzMath_Huge_Val_From_Dbl_MaxPatch, 0 },
11612   {  zNested_Auth_DesName,    zNested_Auth_DesList,
11613      apzNested_Auth_DesMachs,
11614      NESTED_AUTH_DES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11615      aNested_Auth_DesTests,   apzNested_Auth_DesPatch, 0 },
11617   {  zNetbsd_C99_Inline_1Name,    zNetbsd_C99_Inline_1List,
11618      apzNetbsd_C99_Inline_1Machs,
11619      NETBSD_C99_INLINE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11620      aNetbsd_C99_Inline_1Tests,   apzNetbsd_C99_Inline_1Patch, 0 },
11622   {  zNetbsd_C99_Inline_2Name,    zNetbsd_C99_Inline_2List,
11623      apzNetbsd_C99_Inline_2Machs,
11624      NETBSD_C99_INLINE_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11625      aNetbsd_C99_Inline_2Tests,   apzNetbsd_C99_Inline_2Patch, 0 },
11627   {  zNetbsd_Extra_SemicolonName,    zNetbsd_Extra_SemicolonList,
11628      apzNetbsd_Extra_SemicolonMachs,
11629      NETBSD_EXTRA_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11630      aNetbsd_Extra_SemicolonTests,   apzNetbsd_Extra_SemicolonPatch, 0 },
11632   {  zNewlib_Stdint_1Name,    zNewlib_Stdint_1List,
11633      apzNewlib_Stdint_1Machs,
11634      NEWLIB_STDINT_1_TEST_CT, FD_MACH_ONLY,
11635      aNewlib_Stdint_1Tests,   apzNewlib_Stdint_1Patch, 0 },
11637   {  zNewlib_Stdint_2Name,    zNewlib_Stdint_2List,
11638      apzNewlib_Stdint_2Machs,
11639      NEWLIB_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11640      aNewlib_Stdint_2Tests,   apzNewlib_Stdint_2Patch, 0 },
11642   {  zNext_Math_PrefixName,    zNext_Math_PrefixList,
11643      apzNext_Math_PrefixMachs,
11644      NEXT_MATH_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11645      aNext_Math_PrefixTests,   apzNext_Math_PrefixPatch, 0 },
11647   {  zNext_TemplateName,    zNext_TemplateList,
11648      apzNext_TemplateMachs,
11649      NEXT_TEMPLATE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11650      aNext_TemplateTests,   apzNext_TemplatePatch, 0 },
11652   {  zNext_VolitileName,    zNext_VolitileList,
11653      apzNext_VolitileMachs,
11654      NEXT_VOLITILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11655      aNext_VolitileTests,   apzNext_VolitilePatch, 0 },
11657   {  zNext_Wait_UnionName,    zNext_Wait_UnionList,
11658      apzNext_Wait_UnionMachs,
11659      NEXT_WAIT_UNION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11660      aNext_Wait_UnionTests,   apzNext_Wait_UnionPatch, 0 },
11662   {  zNodeent_SyntaxName,    zNodeent_SyntaxList,
11663      apzNodeent_SyntaxMachs,
11664      NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11665      aNodeent_SyntaxTests,   apzNodeent_SyntaxPatch, 0 },
11667   {  zOpenbsd_Null_DefinitionName,    zOpenbsd_Null_DefinitionList,
11668      apzOpenbsd_Null_DefinitionMachs,
11669      OPENBSD_NULL_DEFINITION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11670      aOpenbsd_Null_DefinitionTests,   apzOpenbsd_Null_DefinitionPatch, 0 },
11672   {  zObstack_Lvalue_CastName,    zObstack_Lvalue_CastList,
11673      apzObstack_Lvalue_CastMachs,
11674      OBSTACK_LVALUE_CAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11675      aObstack_Lvalue_CastTests,   apzObstack_Lvalue_CastPatch, 0 },
11677   {  zOpenbsd_Va_StartName,    zOpenbsd_Va_StartList,
11678      apzOpenbsd_Va_StartMachs,
11679      OPENBSD_VA_START_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11680      aOpenbsd_Va_StartTests,   apzOpenbsd_Va_StartPatch, 0 },
11682   {  zOsf_Namespace_AName,    zOsf_Namespace_AList,
11683      apzOsf_Namespace_AMachs,
11684      OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11685      aOsf_Namespace_ATests,   apzOsf_Namespace_APatch, 0 },
11687   {  zOsf_Namespace_CName,    zOsf_Namespace_CList,
11688      apzOsf_Namespace_CMachs,
11689      OSF_NAMESPACE_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11690      aOsf_Namespace_CTests,   apzOsf_Namespace_CPatch, 0 },
11692   {  zPthread_Incomplete_Struct_ArgumentName,    zPthread_Incomplete_Struct_ArgumentList,
11693      apzPthread_Incomplete_Struct_ArgumentMachs,
11694      PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11695      aPthread_Incomplete_Struct_ArgumentTests,   apzPthread_Incomplete_Struct_ArgumentPatch, 0 },
11697   {  zRead_Ret_TypeName,    zRead_Ret_TypeList,
11698      apzRead_Ret_TypeMachs,
11699      READ_RET_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11700      aRead_Ret_TypeTests,   apzRead_Ret_TypePatch, 0 },
11702   {  zRpc_Xdr_Lvalue_Cast_AName,    zRpc_Xdr_Lvalue_Cast_AList,
11703      apzRpc_Xdr_Lvalue_Cast_AMachs,
11704      RPC_XDR_LVALUE_CAST_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11705      aRpc_Xdr_Lvalue_Cast_ATests,   apzRpc_Xdr_Lvalue_Cast_APatch, 0 },
11707   {  zRpc_Xdr_Lvalue_Cast_BName,    zRpc_Xdr_Lvalue_Cast_BList,
11708      apzRpc_Xdr_Lvalue_Cast_BMachs,
11709      RPC_XDR_LVALUE_CAST_B_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11710      aRpc_Xdr_Lvalue_Cast_BTests,   apzRpc_Xdr_Lvalue_Cast_BPatch, 0 },
11712   {  zRs6000_DoubleName,    zRs6000_DoubleList,
11713      apzRs6000_DoubleMachs,
11714      RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11715      aRs6000_DoubleTests,   apzRs6000_DoublePatch, 0 },
11717   {  zRs6000_FchmodName,    zRs6000_FchmodList,
11718      apzRs6000_FchmodMachs,
11719      RS6000_FCHMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11720      aRs6000_FchmodTests,   apzRs6000_FchmodPatch, 0 },
11722   {  zRs6000_ParamName,    zRs6000_ParamList,
11723      apzRs6000_ParamMachs,
11724      RS6000_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11725      aRs6000_ParamTests,   apzRs6000_ParamPatch, 0 },
11727   {  zSolaris___RestrictName,    zSolaris___RestrictList,
11728      apzSolaris___RestrictMachs,
11729      SOLARIS___RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11730      aSolaris___RestrictTests,   apzSolaris___RestrictPatch, 0 },
11732   {  zSolaris_ComplexName,    zSolaris_ComplexList,
11733      apzSolaris_ComplexMachs,
11734      SOLARIS_COMPLEX_TEST_CT, FD_MACH_ONLY,
11735      aSolaris_ComplexTests,   apzSolaris_ComplexPatch, 0 },
11737   {  zSolaris_Complex_CxxName,    zSolaris_Complex_CxxList,
11738      apzSolaris_Complex_CxxMachs,
11739      SOLARIS_COMPLEX_CXX_TEST_CT, FD_MACH_ONLY,
11740      aSolaris_Complex_CxxTests,   apzSolaris_Complex_CxxPatch, 0 },
11742   {  zSolaris_Cxx_LinkageName,    zSolaris_Cxx_LinkageList,
11743      apzSolaris_Cxx_LinkageMachs,
11744      SOLARIS_CXX_LINKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11745      aSolaris_Cxx_LinkageTests,   apzSolaris_Cxx_LinkagePatch, 0 },
11747   {  zSolaris_Getc_Strict_StdcName,    zSolaris_Getc_Strict_StdcList,
11748      apzSolaris_Getc_Strict_StdcMachs,
11749      SOLARIS_GETC_STRICT_STDC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11750      aSolaris_Getc_Strict_StdcTests,   apzSolaris_Getc_Strict_StdcPatch, 0 },
11752   {  zSolaris_Gets_C11Name,    zSolaris_Gets_C11List,
11753      apzSolaris_Gets_C11Machs,
11754      SOLARIS_GETS_C11_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11755      aSolaris_Gets_C11Tests,   apzSolaris_Gets_C11Patch, 0 },
11757   {  zSolaris_Gets_Cxx14Name,    zSolaris_Gets_Cxx14List,
11758      apzSolaris_Gets_Cxx14Machs,
11759      SOLARIS_GETS_CXX14_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11760      aSolaris_Gets_Cxx14Tests,   apzSolaris_Gets_Cxx14Patch, 0 },
11762   {  zSolaris_Int_ConstName,    zSolaris_Int_ConstList,
11763      apzSolaris_Int_ConstMachs,
11764      SOLARIS_INT_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11765      aSolaris_Int_ConstTests,   apzSolaris_Int_ConstPatch, 0 },
11767   {  zSolaris_Int_Limits_1Name,    zSolaris_Int_Limits_1List,
11768      apzSolaris_Int_Limits_1Machs,
11769      SOLARIS_INT_LIMITS_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11770      aSolaris_Int_Limits_1Tests,   apzSolaris_Int_Limits_1Patch, 0 },
11772   {  zSolaris_Int_Limits_2Name,    zSolaris_Int_Limits_2List,
11773      apzSolaris_Int_Limits_2Machs,
11774      SOLARIS_INT_LIMITS_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11775      aSolaris_Int_Limits_2Tests,   apzSolaris_Int_Limits_2Patch, 0 },
11777   {  zSolaris_Int_Limits_3Name,    zSolaris_Int_Limits_3List,
11778      apzSolaris_Int_Limits_3Machs,
11779      SOLARIS_INT_LIMITS_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11780      aSolaris_Int_Limits_3Tests,   apzSolaris_Int_Limits_3Patch, 0 },
11782   {  zSolaris_Math_1Name,    zSolaris_Math_1List,
11783      apzSolaris_Math_1Machs,
11784      SOLARIS_MATH_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11785      aSolaris_Math_1Tests,   apzSolaris_Math_1Patch, 0 },
11787   {  zSolaris_Math_10Name,    zSolaris_Math_10List,
11788      apzSolaris_Math_10Machs,
11789      SOLARIS_MATH_10_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11790      aSolaris_Math_10Tests,   apzSolaris_Math_10Patch, 0 },
11792   {  zSolaris_Math_2Name,    zSolaris_Math_2List,
11793      apzSolaris_Math_2Machs,
11794      SOLARIS_MATH_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11795      aSolaris_Math_2Tests,   apzSolaris_Math_2Patch, 0 },
11797   {  zSolaris_Math_3Name,    zSolaris_Math_3List,
11798      apzSolaris_Math_3Machs,
11799      SOLARIS_MATH_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11800      aSolaris_Math_3Tests,   apzSolaris_Math_3Patch, 0 },
11802   {  zSolaris_Math_4Name,    zSolaris_Math_4List,
11803      apzSolaris_Math_4Machs,
11804      SOLARIS_MATH_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11805      aSolaris_Math_4Tests,   apzSolaris_Math_4Patch, 0 },
11807   {  zSolaris_Math_8Name,    zSolaris_Math_8List,
11808      apzSolaris_Math_8Machs,
11809      SOLARIS_MATH_8_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11810      aSolaris_Math_8Tests,   apzSolaris_Math_8Patch, 0 },
11812   {  zSolaris_Math_9Name,    zSolaris_Math_9List,
11813      apzSolaris_Math_9Machs,
11814      SOLARIS_MATH_9_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11815      aSolaris_Math_9Tests,   apzSolaris_Math_9Patch, 0 },
11817   {  zSolaris_Math_11Name,    zSolaris_Math_11List,
11818      apzSolaris_Math_11Machs,
11819      SOLARIS_MATH_11_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11820      aSolaris_Math_11Tests,   apzSolaris_Math_11Patch, 0 },
11822   {  zSolaris_Math_12Name,    zSolaris_Math_12List,
11823      apzSolaris_Math_12Machs,
11824      SOLARIS_MATH_12_TEST_CT, FD_MACH_ONLY,
11825      aSolaris_Math_12Tests,   apzSolaris_Math_12Patch, 0 },
11827   {  zSolaris_Once_Init_1Name,    zSolaris_Once_Init_1List,
11828      apzSolaris_Once_Init_1Machs,
11829      SOLARIS_ONCE_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11830      aSolaris_Once_Init_1Tests,   apzSolaris_Once_Init_1Patch, 0 },
11832   {  zSolaris_Posix_Spawn_RestrictName,    zSolaris_Posix_Spawn_RestrictList,
11833      apzSolaris_Posix_Spawn_RestrictMachs,
11834      SOLARIS_POSIX_SPAWN_RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11835      aSolaris_Posix_Spawn_RestrictTests,   apzSolaris_Posix_Spawn_RestrictPatch, 0 },
11837   {  zSolaris_Pow_Int_OverloadName,    zSolaris_Pow_Int_OverloadList,
11838      apzSolaris_Pow_Int_OverloadMachs,
11839      SOLARIS_POW_INT_OVERLOAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11840      aSolaris_Pow_Int_OverloadTests,   apzSolaris_Pow_Int_OverloadPatch, 0 },
11842   {  zSolaris_Rwlock_Init_1Name,    zSolaris_Rwlock_Init_1List,
11843      apzSolaris_Rwlock_Init_1Machs,
11844      SOLARIS_RWLOCK_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11845      aSolaris_Rwlock_Init_1Tests,   apzSolaris_Rwlock_Init_1Patch, 0 },
11847   {  zSolaris_Std___FilbufName,    zSolaris_Std___FilbufList,
11848      apzSolaris_Std___FilbufMachs,
11849      SOLARIS_STD___FILBUF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11850      aSolaris_Std___FilbufTests,   apzSolaris_Std___FilbufPatch, 0 },
11852   {  zSolaris_Std_Gets_Cxx14Name,    zSolaris_Std_Gets_Cxx14List,
11853      apzSolaris_Std_Gets_Cxx14Machs,
11854      SOLARIS_STD_GETS_CXX14_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11855      aSolaris_Std_Gets_Cxx14Tests,   apzSolaris_Std_Gets_Cxx14Patch, 0 },
11857   {  zSolaris_Stdio_TagName,    zSolaris_Stdio_TagList,
11858      apzSolaris_Stdio_TagMachs,
11859      SOLARIS_STDIO_TAG_TEST_CT, FD_MACH_ONLY,
11860      aSolaris_Stdio_TagTests,   apzSolaris_Stdio_TagPatch, 0 },
11862   {  zSolaris_Stdlib_NoreturnName,    zSolaris_Stdlib_NoreturnList,
11863      apzSolaris_Stdlib_NoreturnMachs,
11864      SOLARIS_STDLIB_NORETURN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11865      aSolaris_Stdlib_NoreturnTests,   apzSolaris_Stdlib_NoreturnPatch, 0 },
11867   {  zStatsswtchName,    zStatsswtchList,
11868      apzStatsswtchMachs,
11869      STATSSWTCH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11870      aStatsswtchTests,   apzStatsswtchPatch, 0 },
11872   {  zStdio_Stdarg_HName,    zStdio_Stdarg_HList,
11873      apzStdio_Stdarg_HMachs,
11874      STDIO_STDARG_H_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
11875      aStdio_Stdarg_HTests,   apzStdio_Stdarg_HPatch, 0 },
11877   {  zStdio_Va_ListName,    zStdio_Va_ListList,
11878      apzStdio_Va_ListMachs,
11879      STDIO_VA_LIST_TEST_CT, FD_MACH_IFNOT,
11880      aStdio_Va_ListTests,   apzStdio_Va_ListPatch, 0 },
11882   {  zStdio_Va_List_ClientsName,    zStdio_Va_List_ClientsList,
11883      apzStdio_Va_List_ClientsMachs,
11884      STDIO_VA_LIST_CLIENTS_TEST_CT, FD_MACH_ONLY,
11885      aStdio_Va_List_ClientsTests,   apzStdio_Va_List_ClientsPatch, 0 },
11887   {  zStrict_Ansi_NotName,    zStrict_Ansi_NotList,
11888      apzStrict_Ansi_NotMachs,
11889      STRICT_ANSI_NOT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11890      aStrict_Ansi_NotTests,   apzStrict_Ansi_NotPatch, 0 },
11892   {  zStrict_Ansi_Not_CtdName,    zStrict_Ansi_Not_CtdList,
11893      apzStrict_Ansi_Not_CtdMachs,
11894      STRICT_ANSI_NOT_CTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11895      aStrict_Ansi_Not_CtdTests,   apzStrict_Ansi_Not_CtdPatch, 0 },
11897   {  zStrict_Ansi_OnlyName,    zStrict_Ansi_OnlyList,
11898      apzStrict_Ansi_OnlyMachs,
11899      STRICT_ANSI_ONLY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11900      aStrict_Ansi_OnlyTests,   apzStrict_Ansi_OnlyPatch, 0 },
11902   {  zStruct_FileName,    zStruct_FileList,
11903      apzStruct_FileMachs,
11904      STRUCT_FILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11905      aStruct_FileTests,   apzStruct_FilePatch, 0 },
11907   {  zStruct_SockaddrName,    zStruct_SockaddrList,
11908      apzStruct_SockaddrMachs,
11909      STRUCT_SOCKADDR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11910      aStruct_SockaddrTests,   apzStruct_SockaddrPatch, 0 },
11912   {  zSun_Auth_ProtoName,    zSun_Auth_ProtoList,
11913      apzSun_Auth_ProtoMachs,
11914      SUN_AUTH_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11915      aSun_Auth_ProtoTests,   apzSun_Auth_ProtoPatch, 0 },
11917   {  zSun_Bogus_IfdefName,    zSun_Bogus_IfdefList,
11918      apzSun_Bogus_IfdefMachs,
11919      SUN_BOGUS_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11920      aSun_Bogus_IfdefTests,   apzSun_Bogus_IfdefPatch, 0 },
11922   {  zSun_CatmacroName,    zSun_CatmacroList,
11923      apzSun_CatmacroMachs,
11924      SUN_CATMACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11925      aSun_CatmacroTests,   apzSun_CatmacroPatch, 0 },
11927   {  zSun_MallocName,    zSun_MallocList,
11928      apzSun_MallocMachs,
11929      SUN_MALLOC_TEST_CT, FD_MACH_ONLY,
11930      aSun_MallocTests,   apzSun_MallocPatch, 0 },
11932   {  zSun_Rusers_SemiName,    zSun_Rusers_SemiList,
11933      apzSun_Rusers_SemiMachs,
11934      SUN_RUSERS_SEMI_TEST_CT, FD_MACH_ONLY,
11935      aSun_Rusers_SemiTests,   apzSun_Rusers_SemiPatch, 0 },
11937   {  zSun_SignalName,    zSun_SignalList,
11938      apzSun_SignalMachs,
11939      SUN_SIGNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11940      aSun_SignalTests,   apzSun_SignalPatch, 0 },
11942   {  zSunos_StrlenName,    zSunos_StrlenList,
11943      apzSunos_StrlenMachs,
11944      SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11945      aSunos_StrlenTests,   apzSunos_StrlenPatch, 0 },
11947   {  zSuse_Linux_Vt_CxxName,    zSuse_Linux_Vt_CxxList,
11948      apzSuse_Linux_Vt_CxxMachs,
11949      SUSE_LINUX_VT_CXX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11950      aSuse_Linux_Vt_CxxTests,   apzSuse_Linux_Vt_CxxPatch, 0 },
11952   {  zSvr4_Disable_OptName,    zSvr4_Disable_OptList,
11953      apzSvr4_Disable_OptMachs,
11954      SVR4_DISABLE_OPT_TEST_CT, FD_MACH_ONLY,
11955      aSvr4_Disable_OptTests,   apzSvr4_Disable_OptPatch, 0 },
11957   {  zSvr4_GetcwdName,    zSvr4_GetcwdList,
11958      apzSvr4_GetcwdMachs,
11959      SVR4_GETCWD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11960      aSvr4_GetcwdTests,   apzSvr4_GetcwdPatch, 0 },
11962   {  zSvr4_ProfilName,    zSvr4_ProfilList,
11963      apzSvr4_ProfilMachs,
11964      SVR4_PROFIL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11965      aSvr4_ProfilTests,   apzSvr4_ProfilPatch, 0 },
11967   {  zSvr4_Sighandler_TypeName,    zSvr4_Sighandler_TypeList,
11968      apzSvr4_Sighandler_TypeMachs,
11969      SVR4_SIGHANDLER_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11970      aSvr4_Sighandler_TypeTests,   apzSvr4_Sighandler_TypePatch, 0 },
11972   {  zSvr4_Undeclared_GetrngeName,    zSvr4_Undeclared_GetrngeList,
11973      apzSvr4_Undeclared_GetrngeMachs,
11974      SVR4_UNDECLARED_GETRNGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11975      aSvr4_Undeclared_GetrngeTests,   apzSvr4_Undeclared_GetrngePatch, 0 },
11977   {  zSysv68_StringName,    zSysv68_StringList,
11978      apzSysv68_StringMachs,
11979      SYSV68_STRING_TEST_CT, FD_MACH_ONLY,
11980      aSysv68_StringTests,   apzSysv68_StringPatch, 0 },
11982   {  zSysz_Stdlib_For_SunName,    zSysz_Stdlib_For_SunList,
11983      apzSysz_Stdlib_For_SunMachs,
11984      SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11985      aSysz_Stdlib_For_SunTests,   apzSysz_Stdlib_For_SunPatch, 0 },
11987   {  zThread_KeywordName,    zThread_KeywordList,
11988      apzThread_KeywordMachs,
11989      THREAD_KEYWORD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11990      aThread_KeywordTests,   apzThread_KeywordPatch, 0 },
11992   {  zTinfo_CplusplusName,    zTinfo_CplusplusList,
11993      apzTinfo_CplusplusMachs,
11994      TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
11995      aTinfo_CplusplusTests,   apzTinfo_CplusplusPatch, 0 },
11997   {  zUltrix_ConstName,    zUltrix_ConstList,
11998      apzUltrix_ConstMachs,
11999      ULTRIX_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12000      aUltrix_ConstTests,   apzUltrix_ConstPatch, 0 },
12002   {  zUltrix_Const2Name,    zUltrix_Const2List,
12003      apzUltrix_Const2Machs,
12004      ULTRIX_CONST2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12005      aUltrix_Const2Tests,   apzUltrix_Const2Patch, 0 },
12007   {  zVa_I960_MacroName,    zVa_I960_MacroList,
12008      apzVa_I960_MacroMachs,
12009      VA_I960_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12010      aVa_I960_MacroTests,   apzVa_I960_MacroPatch, 0 },
12012   {  zVms_Add_Missing_BracesName,    zVms_Add_Missing_BracesList,
12013      apzVms_Add_Missing_BracesMachs,
12014      VMS_ADD_MISSING_BRACES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12015      aVms_Add_Missing_BracesTests,   apzVms_Add_Missing_BracesPatch, 0 },
12017   {  zVms_Decc_BuiltinName,    zVms_Decc_BuiltinList,
12018      apzVms_Decc_BuiltinMachs,
12019      VMS_DECC_BUILTIN_TEST_CT, FD_MACH_ONLY,
12020      aVms_Decc_BuiltinTests,   apzVms_Decc_BuiltinPatch, 0 },
12022   {  zVms_Define_Can_Use_Extern_PrefixName,    zVms_Define_Can_Use_Extern_PrefixList,
12023      apzVms_Define_Can_Use_Extern_PrefixMachs,
12024      VMS_DEFINE_CAN_USE_EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12025      aVms_Define_Can_Use_Extern_PrefixTests,   apzVms_Define_Can_Use_Extern_PrefixPatch, 0 },
12027   {  zVms_Disable_Decc_String_BuiltinsName,    zVms_Disable_Decc_String_BuiltinsList,
12028      apzVms_Disable_Decc_String_BuiltinsMachs,
12029      VMS_DISABLE_DECC_STRING_BUILTINS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12030      aVms_Disable_Decc_String_BuiltinsTests,   apzVms_Disable_Decc_String_BuiltinsPatch, 0 },
12032   {  zVms_Do_Not_Redeclare_HostaliasName,    zVms_Do_Not_Redeclare_HostaliasList,
12033      apzVms_Do_Not_Redeclare_HostaliasMachs,
12034      VMS_DO_NOT_REDECLARE_HOSTALIAS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12035      aVms_Do_Not_Redeclare_HostaliasTests,   apzVms_Do_Not_Redeclare_HostaliasPatch, 0 },
12037   {  zVms_Forward_Declare_StructName,    zVms_Forward_Declare_StructList,
12038      apzVms_Forward_Declare_StructMachs,
12039      VMS_FORWARD_DECLARE_STRUCT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12040      aVms_Forward_Declare_StructTests,   apzVms_Forward_Declare_StructPatch, 0 },
12042   {  zVms_No_64bit_GetoptName,    zVms_No_64bit_GetoptList,
12043      apzVms_No_64bit_GetoptMachs,
12044      VMS_NO_64BIT_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12045      aVms_No_64bit_GetoptTests,   apzVms_No_64bit_GetoptPatch, 0 },
12047   {  zVms_Use_Fast_SetjmpName,    zVms_Use_Fast_SetjmpList,
12048      apzVms_Use_Fast_SetjmpMachs,
12049      VMS_USE_FAST_SETJMP_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12050      aVms_Use_Fast_SetjmpTests,   apzVms_Use_Fast_SetjmpPatch, 0 },
12052   {  zVms_Use_Pragma_Extern_ModelName,    zVms_Use_Pragma_Extern_ModelList,
12053      apzVms_Use_Pragma_Extern_ModelMachs,
12054      VMS_USE_PRAGMA_EXTERN_MODEL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12055      aVms_Use_Pragma_Extern_ModelTests,   apzVms_Use_Pragma_Extern_ModelPatch, 0 },
12057   {  zVms_Use_Quoted_IncludeName,    zVms_Use_Quoted_IncludeList,
12058      apzVms_Use_Quoted_IncludeMachs,
12059      VMS_USE_QUOTED_INCLUDE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12060      aVms_Use_Quoted_IncludeTests,   apzVms_Use_Quoted_IncludePatch, 0 },
12062   {  zVoid_NullName,    zVoid_NullList,
12063      apzVoid_NullMachs,
12064      VOID_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12065      aVoid_NullTests,   apzVoid_NullPatch, 0 },
12067   {  zVxworks_Gcc_ProblemName,    zVxworks_Gcc_ProblemList,
12068      apzVxworks_Gcc_ProblemMachs,
12069      VXWORKS_GCC_PROBLEM_TEST_CT, FD_MACH_ONLY,
12070      aVxworks_Gcc_ProblemTests,   apzVxworks_Gcc_ProblemPatch, 0 },
12072   {  zVxworks_Ioctl_MacroName,    zVxworks_Ioctl_MacroList,
12073      apzVxworks_Ioctl_MacroMachs,
12074      VXWORKS_IOCTL_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12075      aVxworks_Ioctl_MacroTests,   apzVxworks_Ioctl_MacroPatch, 0 },
12077   {  zVxworks_Mkdir_MacroName,    zVxworks_Mkdir_MacroList,
12078      apzVxworks_Mkdir_MacroMachs,
12079      VXWORKS_MKDIR_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12080      aVxworks_Mkdir_MacroTests,   apzVxworks_Mkdir_MacroPatch, 0 },
12082   {  zVxworks_Needs_VxtypesName,    zVxworks_Needs_VxtypesList,
12083      apzVxworks_Needs_VxtypesMachs,
12084      VXWORKS_NEEDS_VXTYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12085      aVxworks_Needs_VxtypesTests,   apzVxworks_Needs_VxtypesPatch, 0 },
12087   {  zVxworks_Needs_VxworksName,    zVxworks_Needs_VxworksList,
12088      apzVxworks_Needs_VxworksMachs,
12089      VXWORKS_NEEDS_VXWORKS_TEST_CT, FD_MACH_ONLY,
12090      aVxworks_Needs_VxworksTests,   apzVxworks_Needs_VxworksPatch, 0 },
12092   {  zVxworks_RegsName,    zVxworks_RegsList,
12093      apzVxworks_RegsMachs,
12094      VXWORKS_REGS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12095      aVxworks_RegsTests,   apzVxworks_RegsPatch, 0 },
12097   {  zVxworks_TimeName,    zVxworks_TimeList,
12098      apzVxworks_TimeMachs,
12099      VXWORKS_TIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12100      aVxworks_TimeTests,   apzVxworks_TimePatch, 0 },
12102   {  zVxworks_Write_ConstName,    zVxworks_Write_ConstList,
12103      apzVxworks_Write_ConstMachs,
12104      VXWORKS_WRITE_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12105      aVxworks_Write_ConstTests,   apzVxworks_Write_ConstPatch, 0 },
12107   {  zVxworks_Iolib_Include_UnistdName,    zVxworks_Iolib_Include_UnistdList,
12108      apzVxworks_Iolib_Include_UnistdMachs,
12109      VXWORKS_IOLIB_INCLUDE_UNISTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12110      aVxworks_Iolib_Include_UnistdTests,   apzVxworks_Iolib_Include_UnistdPatch, 0 },
12112   {  zX11_ClassName,    zX11_ClassList,
12113      apzX11_ClassMachs,
12114      X11_CLASS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12115      aX11_ClassTests,   apzX11_ClassPatch, 0 },
12117   {  zX11_Class_UsageName,    zX11_Class_UsageList,
12118      apzX11_Class_UsageMachs,
12119      X11_CLASS_USAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12120      aX11_Class_UsageTests,   apzX11_Class_UsagePatch, 0 },
12122   {  zX11_NewName,    zX11_NewList,
12123      apzX11_NewMachs,
12124      X11_NEW_TEST_CT, FD_MACH_ONLY,
12125      aX11_NewTests,   apzX11_NewPatch, 0 },
12127   {  zX11_SprintfName,    zX11_SprintfList,
12128      apzX11_SprintfMachs,
12129      X11_SPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
12130      aX11_SprintfTests,   apzX11_SprintfPatch, 0 }