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