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