]> git.ipfire.org Git - thirdparty/gcc.git/blob - fixincludes/fixincl.x
2009-10-21 Steve Ellcey <sje@cup.hp.com>
[thirdparty/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 October 20, 2009 at 04:21:49 PM PDT
6 * From the definitions inclhack.def
7 * and the template file fixincl
8 */
9 /* DO NOT SVN-MERGE THIS FILE, EITHER Tue Oct 20 16:21:49 PDT 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 "# define\tUINT_%164_MAX\t__UINT64_MAX__",
4086 (char*)NULL };
4087
4088 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4089 *
4090 * Description of Hpux_Inttype_Int8_T fix
4091 */
4092 tSCC zHpux_Inttype_Int8_TName[] =
4093 "hpux_inttype_int8_t";
4094
4095 /*
4096 * File name selection pattern
4097 */
4098 tSCC zHpux_Inttype_Int8_TList[] =
4099 "sys/_inttypes.h\0";
4100 /*
4101 * Machine/OS name selection pattern
4102 */
4103 tSCC* apzHpux_Inttype_Int8_TMachs[] = {
4104 "*-hp-hpux1[01].*",
4105 (const char*)NULL };
4106
4107 /*
4108 * content selection pattern - do fix if pattern found
4109 */
4110 tSCC zHpux_Inttype_Int8_TSelect0[] =
4111 "^[ \t]*typedef[ \t]*char[ \t]*int(_least){0,1}8_t.*";
4112
4113 #define HPUX_INTTYPE_INT8_T_TEST_CT 1
4114 static tTestDesc aHpux_Inttype_Int8_TTests[] = {
4115 { TT_EGREP, zHpux_Inttype_Int8_TSelect0, (regex_t*)NULL }, };
4116
4117 /*
4118 * Fix Command Arguments for Hpux_Inttype_Int8_T
4119 */
4120 static const char* apzHpux_Inttype_Int8_TPatch[] = {
4121 "format",
4122 "typedef signed char int%18_t;",
4123 (char*)NULL };
4124
4125 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4126 *
4127 * Description of Hpux_Imaginary_I fix
4128 */
4129 tSCC zHpux_Imaginary_IName[] =
4130 "hpux_imaginary_i";
4131
4132 /*
4133 * File name selection pattern
4134 */
4135 tSCC zHpux_Imaginary_IList[] =
4136 "complex.h\0";
4137 /*
4138 * Machine/OS name selection pattern
4139 */
4140 tSCC* apzHpux_Imaginary_IMachs[] = {
4141 "ia64-hp-hpux11.*",
4142 (const char*)NULL };
4143
4144 /*
4145 * content selection pattern - do fix if pattern found
4146 */
4147 tSCC zHpux_Imaginary_ISelect0[] =
4148 "^[ \t]*#[ \t]*define[ \t]*_Complex_I.*";
4149
4150 #define HPUX_IMAGINARY_I_TEST_CT 1
4151 static tTestDesc aHpux_Imaginary_ITests[] = {
4152 { TT_EGREP, zHpux_Imaginary_ISelect0, (regex_t*)NULL }, };
4153
4154 /*
4155 * Fix Command Arguments for Hpux_Imaginary_I
4156 */
4157 static const char* apzHpux_Imaginary_IPatch[] = {
4158 "format",
4159 "#define _Complex_I (__extension__ 1.0iF)",
4160 (char*)NULL };
4161
4162 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4163 *
4164 * Description of Huge_Val_Hex fix
4165 */
4166 tSCC zHuge_Val_HexName[] =
4167 "huge_val_hex";
4168
4169 /*
4170 * File name selection pattern
4171 */
4172 tSCC zHuge_Val_HexList[] =
4173 "bits/huge_val.h\0";
4174 /*
4175 * Machine/OS name selection pattern
4176 */
4177 #define apzHuge_Val_HexMachs (const char**)NULL
4178
4179 /*
4180 * content selection pattern - do fix if pattern found
4181 */
4182 tSCC zHuge_Val_HexSelect0[] =
4183 "^#[ \t]*define[ \t]*HUGE_VAL[ \t].*0x1\\.0p.*";
4184
4185 /*
4186 * content bypass pattern - skip fix if pattern found
4187 */
4188 tSCC zHuge_Val_HexBypass0[] =
4189 "__builtin_huge_val";
4190
4191 #define HUGE_VAL_HEX_TEST_CT 2
4192 static tTestDesc aHuge_Val_HexTests[] = {
4193 { TT_NEGREP, zHuge_Val_HexBypass0, (regex_t*)NULL },
4194 { TT_EGREP, zHuge_Val_HexSelect0, (regex_t*)NULL }, };
4195
4196 /*
4197 * Fix Command Arguments for Huge_Val_Hex
4198 */
4199 static const char* apzHuge_Val_HexPatch[] = {
4200 "format",
4201 "#define HUGE_VAL (__builtin_huge_val())\n",
4202 (char*)NULL };
4203
4204 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4205 *
4206 * Description of Huge_Valf_Hex fix
4207 */
4208 tSCC zHuge_Valf_HexName[] =
4209 "huge_valf_hex";
4210
4211 /*
4212 * File name selection pattern
4213 */
4214 tSCC zHuge_Valf_HexList[] =
4215 "bits/huge_val.h\0";
4216 /*
4217 * Machine/OS name selection pattern
4218 */
4219 #define apzHuge_Valf_HexMachs (const char**)NULL
4220
4221 /*
4222 * content selection pattern - do fix if pattern found
4223 */
4224 tSCC zHuge_Valf_HexSelect0[] =
4225 "^#[ \t]*define[ \t]*HUGE_VALF[ \t].*0x1\\.0p.*";
4226
4227 /*
4228 * content bypass pattern - skip fix if pattern found
4229 */
4230 tSCC zHuge_Valf_HexBypass0[] =
4231 "__builtin_huge_valf";
4232
4233 #define HUGE_VALF_HEX_TEST_CT 2
4234 static tTestDesc aHuge_Valf_HexTests[] = {
4235 { TT_NEGREP, zHuge_Valf_HexBypass0, (regex_t*)NULL },
4236 { TT_EGREP, zHuge_Valf_HexSelect0, (regex_t*)NULL }, };
4237
4238 /*
4239 * Fix Command Arguments for Huge_Valf_Hex
4240 */
4241 static const char* apzHuge_Valf_HexPatch[] = {
4242 "format",
4243 "#define HUGE_VALF (__builtin_huge_valf())\n",
4244 (char*)NULL };
4245
4246 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4247 *
4248 * Description of Huge_Vall_Hex fix
4249 */
4250 tSCC zHuge_Vall_HexName[] =
4251 "huge_vall_hex";
4252
4253 /*
4254 * File name selection pattern
4255 */
4256 tSCC zHuge_Vall_HexList[] =
4257 "bits/huge_val.h\0";
4258 /*
4259 * Machine/OS name selection pattern
4260 */
4261 #define apzHuge_Vall_HexMachs (const char**)NULL
4262
4263 /*
4264 * content selection pattern - do fix if pattern found
4265 */
4266 tSCC zHuge_Vall_HexSelect0[] =
4267 "^#[ \t]*define[ \t]*HUGE_VALL[ \t].*0x1\\.0p.*";
4268
4269 /*
4270 * content bypass pattern - skip fix if pattern found
4271 */
4272 tSCC zHuge_Vall_HexBypass0[] =
4273 "__builtin_huge_vall";
4274
4275 #define HUGE_VALL_HEX_TEST_CT 2
4276 static tTestDesc aHuge_Vall_HexTests[] = {
4277 { TT_NEGREP, zHuge_Vall_HexBypass0, (regex_t*)NULL },
4278 { TT_EGREP, zHuge_Vall_HexSelect0, (regex_t*)NULL }, };
4279
4280 /*
4281 * Fix Command Arguments for Huge_Vall_Hex
4282 */
4283 static const char* apzHuge_Vall_HexPatch[] = {
4284 "format",
4285 "#define HUGE_VALL (__builtin_huge_vall())\n",
4286 (char*)NULL };
4287
4288 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4289 *
4290 * Description of Int_Abort_Free_And_Exit fix
4291 */
4292 tSCC zInt_Abort_Free_And_ExitName[] =
4293 "int_abort_free_and_exit";
4294
4295 /*
4296 * File name selection pattern
4297 */
4298 tSCC zInt_Abort_Free_And_ExitList[] =
4299 "stdlib.h\0";
4300 /*
4301 * Machine/OS name selection pattern
4302 */
4303 #define apzInt_Abort_Free_And_ExitMachs (const char**)NULL
4304
4305 /*
4306 * content selection pattern - do fix if pattern found
4307 */
4308 tSCC zInt_Abort_Free_And_ExitSelect0[] =
4309 "int[ \t]+(abort|free|exit)[ \t]*\\(";
4310
4311 /*
4312 * content bypass pattern - skip fix if pattern found
4313 */
4314 tSCC zInt_Abort_Free_And_ExitBypass0[] =
4315 "_CLASSIC_ANSI_TYPES";
4316
4317 #define INT_ABORT_FREE_AND_EXIT_TEST_CT 2
4318 static tTestDesc aInt_Abort_Free_And_ExitTests[] = {
4319 { TT_NEGREP, zInt_Abort_Free_And_ExitBypass0, (regex_t*)NULL },
4320 { TT_EGREP, zInt_Abort_Free_And_ExitSelect0, (regex_t*)NULL }, };
4321
4322 /*
4323 * Fix Command Arguments for Int_Abort_Free_And_Exit
4324 */
4325 static const char* apzInt_Abort_Free_And_ExitPatch[] = {
4326 "format",
4327 "void\t%1(",
4328 (char*)NULL };
4329
4330 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4331 *
4332 * Description of Io_Quotes_Def fix
4333 */
4334 tSCC zIo_Quotes_DefName[] =
4335 "io_quotes_def";
4336
4337 /*
4338 * File name selection pattern
4339 */
4340 #define zIo_Quotes_DefList (char*)NULL
4341 /*
4342 * Machine/OS name selection pattern
4343 */
4344 #define apzIo_Quotes_DefMachs (const char**)NULL
4345
4346 /*
4347 * content selection pattern - do fix if pattern found
4348 */
4349 tSCC zIo_Quotes_DefSelect0[] =
4350 "define[ \t]+[A-Z0-9_]+IO[A-Z]*\\([a-zA-Z][,)]";
4351
4352 #define IO_QUOTES_DEF_TEST_CT 1
4353 static tTestDesc aIo_Quotes_DefTests[] = {
4354 { TT_EGREP, zIo_Quotes_DefSelect0, (regex_t*)NULL }, };
4355
4356 /*
4357 * Fix Command Arguments for Io_Quotes_Def
4358 */
4359 static const char* apzIo_Quotes_DefPatch[] = {
4360 "char_macro_def",
4361 "IO",
4362 (char*)NULL };
4363
4364 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4365 *
4366 * Description of Io_Quotes_Use fix
4367 */
4368 tSCC zIo_Quotes_UseName[] =
4369 "io_quotes_use";
4370
4371 /*
4372 * File name selection pattern
4373 */
4374 #define zIo_Quotes_UseList (char*)NULL
4375 /*
4376 * Machine/OS name selection pattern
4377 */
4378 #define apzIo_Quotes_UseMachs (const char**)NULL
4379
4380 /*
4381 * content selection pattern - do fix if pattern found
4382 */
4383 tSCC zIo_Quotes_UseSelect0[] =
4384 "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+IO[A-Z]*[ \t]*\\( *[^,']";
4385
4386 #define IO_QUOTES_USE_TEST_CT 1
4387 static tTestDesc aIo_Quotes_UseTests[] = {
4388 { TT_EGREP, zIo_Quotes_UseSelect0, (regex_t*)NULL }, };
4389
4390 /*
4391 * Fix Command Arguments for Io_Quotes_Use
4392 */
4393 static const char* apzIo_Quotes_UsePatch[] = {
4394 "char_macro_use",
4395 "IO",
4396 (char*)NULL };
4397
4398 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4399 *
4400 * Description of Ip_Missing_Semi fix
4401 */
4402 tSCC zIp_Missing_SemiName[] =
4403 "ip_missing_semi";
4404
4405 /*
4406 * File name selection pattern
4407 */
4408 tSCC zIp_Missing_SemiList[] =
4409 "netinet/ip.h\0";
4410 /*
4411 * Machine/OS name selection pattern
4412 */
4413 #define apzIp_Missing_SemiMachs (const char**)NULL
4414
4415 /*
4416 * content selection pattern - do fix if pattern found
4417 */
4418 tSCC zIp_Missing_SemiSelect0[] =
4419 "}$";
4420
4421 #define IP_MISSING_SEMI_TEST_CT 1
4422 static tTestDesc aIp_Missing_SemiTests[] = {
4423 { TT_EGREP, zIp_Missing_SemiSelect0, (regex_t*)NULL }, };
4424
4425 /*
4426 * Fix Command Arguments for Ip_Missing_Semi
4427 */
4428 static const char* apzIp_Missing_SemiPatch[] = { sed_cmd_z,
4429 "-e", "/^struct/,/^};/s/}$/};/",
4430 (char*)NULL };
4431
4432 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4433 *
4434 * Description of Irix___Restrict fix
4435 */
4436 tSCC zIrix___RestrictName[] =
4437 "irix___restrict";
4438
4439 /*
4440 * File name selection pattern
4441 */
4442 tSCC zIrix___RestrictList[] =
4443 "internal/sgimacros.h\0";
4444 /*
4445 * Machine/OS name selection pattern
4446 */
4447 tSCC* apzIrix___RestrictMachs[] = {
4448 "mips-sgi-irix6.5",
4449 (const char*)NULL };
4450
4451 /*
4452 * content selection pattern - do fix if pattern found
4453 */
4454 tSCC zIrix___RestrictSelect0[] =
4455 "(#ifdef __c99\n\
4456 )(#[ \t]*define __restrict restrict)";
4457
4458 #define IRIX___RESTRICT_TEST_CT 1
4459 static tTestDesc aIrix___RestrictTests[] = {
4460 { TT_EGREP, zIrix___RestrictSelect0, (regex_t*)NULL }, };
4461
4462 /*
4463 * Fix Command Arguments for Irix___Restrict
4464 */
4465 static const char* apzIrix___RestrictPatch[] = {
4466 "format",
4467 "%1# ifndef __cplusplus\n\
4468 %2\n\
4469 # endif",
4470 (char*)NULL };
4471
4472 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4473 *
4474 * Description of Irix___Generic1 fix
4475 */
4476 tSCC zIrix___Generic1Name[] =
4477 "irix___generic1";
4478
4479 /*
4480 * File name selection pattern
4481 */
4482 tSCC zIrix___Generic1List[] =
4483 "internal/math_core.h\0";
4484 /*
4485 * Machine/OS name selection pattern
4486 */
4487 tSCC* apzIrix___Generic1Machs[] = {
4488 "mips-sgi-irix6.5",
4489 (const char*)NULL };
4490
4491 /*
4492 * content selection pattern - do fix if pattern found
4493 */
4494 tSCC zIrix___Generic1Select0[] =
4495 "#define ([a-z]+)\\(x\\) *__generic.*";
4496
4497 #define IRIX___GENERIC1_TEST_CT 1
4498 static tTestDesc aIrix___Generic1Tests[] = {
4499 { TT_EGREP, zIrix___Generic1Select0, (regex_t*)NULL }, };
4500
4501 /*
4502 * Fix Command Arguments for Irix___Generic1
4503 */
4504 static const char* apzIrix___Generic1Patch[] = {
4505 "format",
4506 "extern int %1(double);\n\
4507 extern int %1f(float);\n\
4508 extern int %1l(long double);\n\
4509 #define %1(x) (sizeof(x) == sizeof(double) ? _%1(x) \\\n\
4510 : sizeof(x) == sizeof(float) ? _%1f(x) \\\n\
4511 : _%1l(x))\n",
4512 (char*)NULL };
4513
4514 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4515 *
4516 * Description of Irix___Generic2 fix
4517 */
4518 tSCC zIrix___Generic2Name[] =
4519 "irix___generic2";
4520
4521 /*
4522 * File name selection pattern
4523 */
4524 tSCC zIrix___Generic2List[] =
4525 "internal/math_core.h\0";
4526 /*
4527 * Machine/OS name selection pattern
4528 */
4529 tSCC* apzIrix___Generic2Machs[] = {
4530 "mips-sgi-irix6.5",
4531 (const char*)NULL };
4532
4533 /*
4534 * content selection pattern - do fix if pattern found
4535 */
4536 tSCC zIrix___Generic2Select0[] =
4537 "#define ([a-z]+)\\(x,y\\) *__generic.*";
4538
4539 #define IRIX___GENERIC2_TEST_CT 1
4540 static tTestDesc aIrix___Generic2Tests[] = {
4541 { TT_EGREP, zIrix___Generic2Select0, (regex_t*)NULL }, };
4542
4543 /*
4544 * Fix Command Arguments for Irix___Generic2
4545 */
4546 static const char* apzIrix___Generic2Patch[] = {
4547 "format",
4548 "#define %1(x,y) \\\n\
4549 ((sizeof(x)<=4 && sizeof(y)<=4) ? _%1f(x,y) \\\n\
4550 : (sizeof(x)<=8 && sizeof(y)<=8) ? _%1(x,y) \\\n\
4551 : _%1l(x,y))\n",
4552 (char*)NULL };
4553
4554 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4555 *
4556 * Description of Irix_Asm_Apostrophe fix
4557 */
4558 tSCC zIrix_Asm_ApostropheName[] =
4559 "irix_asm_apostrophe";
4560
4561 /*
4562 * File name selection pattern
4563 */
4564 tSCC zIrix_Asm_ApostropheList[] =
4565 "sys/asm.h\0";
4566 /*
4567 * Machine/OS name selection pattern
4568 */
4569 #define apzIrix_Asm_ApostropheMachs (const char**)NULL
4570
4571 /*
4572 * content selection pattern - do fix if pattern found
4573 */
4574 tSCC zIrix_Asm_ApostropheSelect0[] =
4575 "^[ \t]*#.*[Ww]e're";
4576
4577 #define IRIX_ASM_APOSTROPHE_TEST_CT 1
4578 static tTestDesc aIrix_Asm_ApostropheTests[] = {
4579 { TT_EGREP, zIrix_Asm_ApostropheSelect0, (regex_t*)NULL }, };
4580
4581 /*
4582 * Fix Command Arguments for Irix_Asm_Apostrophe
4583 */
4584 static const char* apzIrix_Asm_ApostrophePatch[] = {
4585 "format",
4586 "%1 are",
4587 "^([ \t]*#.*[Ww]e)'re",
4588 (char*)NULL };
4589
4590 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4591 *
4592 * Description of Irix_Complex fix
4593 */
4594 tSCC zIrix_ComplexName[] =
4595 "irix_complex";
4596
4597 /*
4598 * File name selection pattern
4599 */
4600 tSCC zIrix_ComplexList[] =
4601 "complex.h\0";
4602 /*
4603 * Machine/OS name selection pattern
4604 */
4605 tSCC* apzIrix_ComplexMachs[] = {
4606 "mips-sgi-irix6.5",
4607 (const char*)NULL };
4608
4609 /*
4610 * content selection pattern - do fix if pattern found
4611 */
4612 tSCC zIrix_ComplexSelect0[] =
4613 "#define[ \t]_Complex_I[ \t]\\(\\(float[ \t]_Complex\\)[ \t]\\(__I__\\)\\)";
4614
4615 #define IRIX_COMPLEX_TEST_CT 1
4616 static tTestDesc aIrix_ComplexTests[] = {
4617 { TT_EGREP, zIrix_ComplexSelect0, (regex_t*)NULL }, };
4618
4619 /*
4620 * Fix Command Arguments for Irix_Complex
4621 */
4622 static const char* apzIrix_ComplexPatch[] = { sed_cmd_z,
4623 "-e", "s/#define[ \t]_Complex_I[ \t]((float[ \t]_Complex)[ \t](__I__))/#define _Complex_I (__extension__ 1.0iF)/",
4624 "-e", "/#define[ \t]imaginary[ \t]_Imaginary/d",
4625 "-e", "/#define[ \t]_Imaginary_I/d",
4626 "-e", "s/#define[ \t]I[ \t]_Imaginary_I/#define I _Complex_I/",
4627 (char*)NULL };
4628
4629 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4630 *
4631 * Description of Irix_Limits_Const fix
4632 */
4633 tSCC zIrix_Limits_ConstName[] =
4634 "irix_limits_const";
4635
4636 /*
4637 * File name selection pattern
4638 */
4639 tSCC zIrix_Limits_ConstList[] =
4640 "fixinc-test-limits.h\0limits.h\0";
4641 /*
4642 * Machine/OS name selection pattern
4643 */
4644 #define apzIrix_Limits_ConstMachs (const char**)NULL
4645
4646 /*
4647 * content selection pattern - do fix if pattern found
4648 */
4649 tSCC zIrix_Limits_ConstSelect0[] =
4650 "^extern const ";
4651
4652 #define IRIX_LIMITS_CONST_TEST_CT 1
4653 static tTestDesc aIrix_Limits_ConstTests[] = {
4654 { TT_EGREP, zIrix_Limits_ConstSelect0, (regex_t*)NULL }, };
4655
4656 /*
4657 * Fix Command Arguments for Irix_Limits_Const
4658 */
4659 static const char* apzIrix_Limits_ConstPatch[] = {
4660 "format",
4661 "extern __const ",
4662 (char*)NULL };
4663
4664 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4665 *
4666 * Description of Irix_Socklen_T fix
4667 */
4668 tSCC zIrix_Socklen_TName[] =
4669 "irix_socklen_t";
4670
4671 /*
4672 * File name selection pattern
4673 */
4674 tSCC zIrix_Socklen_TList[] =
4675 "sys/socket.h\0";
4676 /*
4677 * Machine/OS name selection pattern
4678 */
4679 tSCC* apzIrix_Socklen_TMachs[] = {
4680 "mips-sgi-irix6.5",
4681 (const char*)NULL };
4682
4683 /*
4684 * content selection pattern - do fix if pattern found
4685 */
4686 tSCC zIrix_Socklen_TSelect0[] =
4687 "(#define _SOCKLEN_T\n\
4688 )(typedef u_int32_t socklen_t;)";
4689
4690 #define IRIX_SOCKLEN_T_TEST_CT 1
4691 static tTestDesc aIrix_Socklen_TTests[] = {
4692 { TT_EGREP, zIrix_Socklen_TSelect0, (regex_t*)NULL }, };
4693
4694 /*
4695 * Fix Command Arguments for Irix_Socklen_T
4696 */
4697 static const char* apzIrix_Socklen_TPatch[] = {
4698 "format",
4699 "%1#if _NO_XOPEN4 && _NO_XOPEN5\n\
4700 typedef int socklen_t;\n\
4701 #else\n\
4702 %2\n\
4703 #endif /* _NO_XOPEN4 && _NO_XOPEN5 */",
4704 (char*)NULL };
4705
4706 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4707 *
4708 * Description of Irix_Stdint_C99 fix
4709 */
4710 tSCC zIrix_Stdint_C99Name[] =
4711 "irix_stdint_c99";
4712
4713 /*
4714 * File name selection pattern
4715 */
4716 tSCC zIrix_Stdint_C99List[] =
4717 "stdint.h\0";
4718 /*
4719 * Machine/OS name selection pattern
4720 */
4721 tSCC* apzIrix_Stdint_C99Machs[] = {
4722 "mips-sgi-irix6.5",
4723 (const char*)NULL };
4724
4725 /*
4726 * content selection pattern - do fix if pattern found
4727 */
4728 tSCC zIrix_Stdint_C99Select0[] =
4729 "(#ifndef __c99\n\
4730 )(#error This header file is to be used only for c99 mode compilations)";
4731
4732 #define IRIX_STDINT_C99_TEST_CT 1
4733 static tTestDesc aIrix_Stdint_C99Tests[] = {
4734 { TT_EGREP, zIrix_Stdint_C99Select0, (regex_t*)NULL }, };
4735
4736 /*
4737 * Fix Command Arguments for Irix_Stdint_C99
4738 */
4739 static const char* apzIrix_Stdint_C99Patch[] = {
4740 "format",
4741 "#if 0\n\
4742 %2",
4743 (char*)NULL };
4744
4745 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4746 *
4747 * Description of Irix_Stdio_Va_List fix
4748 */
4749 tSCC zIrix_Stdio_Va_ListName[] =
4750 "irix_stdio_va_list";
4751
4752 /*
4753 * File name selection pattern
4754 */
4755 tSCC zIrix_Stdio_Va_ListList[] =
4756 "stdio.h\0internal/stdio_core.h\0";
4757 /*
4758 * Machine/OS name selection pattern
4759 */
4760 #define apzIrix_Stdio_Va_ListMachs (const char**)NULL
4761
4762 /*
4763 * content selection pattern - do fix if pattern found
4764 */
4765 tSCC zIrix_Stdio_Va_ListSelect0[] =
4766 "/\\* va_list \\*/ char \\*";
4767
4768 #define IRIX_STDIO_VA_LIST_TEST_CT 1
4769 static tTestDesc aIrix_Stdio_Va_ListTests[] = {
4770 { TT_EGREP, zIrix_Stdio_Va_ListSelect0, (regex_t*)NULL }, };
4771
4772 /*
4773 * Fix Command Arguments for Irix_Stdio_Va_List
4774 */
4775 static const char* apzIrix_Stdio_Va_ListPatch[] = {
4776 "format",
4777 "__gnuc_va_list",
4778 (char*)NULL };
4779
4780 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4781 *
4782 * Description of Irix_Wcsftime fix
4783 */
4784 tSCC zIrix_WcsftimeName[] =
4785 "irix_wcsftime";
4786
4787 /*
4788 * File name selection pattern
4789 */
4790 tSCC zIrix_WcsftimeList[] =
4791 "internal/wchar_core.h\0";
4792 /*
4793 * Machine/OS name selection pattern
4794 */
4795 tSCC* apzIrix_WcsftimeMachs[] = {
4796 "mips-sgi-irix6.5",
4797 (const char*)NULL };
4798
4799 /*
4800 * content selection pattern - do fix if pattern found
4801 */
4802 tSCC zIrix_WcsftimeSelect0[] =
4803 "#if _NO_XOPEN5\n\
4804 (extern size_t[ \t]+wcsftime.*const char *.*)";
4805
4806 #define IRIX_WCSFTIME_TEST_CT 1
4807 static tTestDesc aIrix_WcsftimeTests[] = {
4808 { TT_EGREP, zIrix_WcsftimeSelect0, (regex_t*)NULL }, };
4809
4810 /*
4811 * Fix Command Arguments for Irix_Wcsftime
4812 */
4813 static const char* apzIrix_WcsftimePatch[] = {
4814 "format",
4815 "#if _NO_XOPEN5 && !defined(__c99)\n\
4816 %1",
4817 (char*)NULL };
4818
4819 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4820 *
4821 * Description of Kandr_Concat fix
4822 */
4823 tSCC zKandr_ConcatName[] =
4824 "kandr_concat";
4825
4826 /*
4827 * File name selection pattern
4828 */
4829 tSCC zKandr_ConcatList[] =
4830 "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";
4831 /*
4832 * Machine/OS name selection pattern
4833 */
4834 #define apzKandr_ConcatMachs (const char**)NULL
4835
4836 /*
4837 * content selection pattern - do fix if pattern found
4838 */
4839 tSCC zKandr_ConcatSelect0[] =
4840 "/\\*\\*/";
4841
4842 #define KANDR_CONCAT_TEST_CT 1
4843 static tTestDesc aKandr_ConcatTests[] = {
4844 { TT_EGREP, zKandr_ConcatSelect0, (regex_t*)NULL }, };
4845
4846 /*
4847 * Fix Command Arguments for Kandr_Concat
4848 */
4849 static const char* apzKandr_ConcatPatch[] = {
4850 "format",
4851 "##",
4852 (char*)NULL };
4853
4854 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4855 *
4856 * Description of Linux_Ia64_Ucontext fix
4857 */
4858 tSCC zLinux_Ia64_UcontextName[] =
4859 "linux_ia64_ucontext";
4860
4861 /*
4862 * File name selection pattern
4863 */
4864 tSCC zLinux_Ia64_UcontextList[] =
4865 "sys/ucontext.h\0";
4866 /*
4867 * Machine/OS name selection pattern
4868 */
4869 tSCC* apzLinux_Ia64_UcontextMachs[] = {
4870 "ia64-*-linux*",
4871 (const char*)NULL };
4872
4873 /*
4874 * content selection pattern - do fix if pattern found
4875 */
4876 tSCC zLinux_Ia64_UcontextSelect0[] =
4877 "\\(\\(\\(char \\*\\) &\\(\\(struct sigcontext \\*\\) 0\\)->sc_gr\\[0\\]\\) - \\(char \\*\\) 0\\)";
4878
4879 #define LINUX_IA64_UCONTEXT_TEST_CT 1
4880 static tTestDesc aLinux_Ia64_UcontextTests[] = {
4881 { TT_EGREP, zLinux_Ia64_UcontextSelect0, (regex_t*)NULL }, };
4882
4883 /*
4884 * Fix Command Arguments for Linux_Ia64_Ucontext
4885 */
4886 static const char* apzLinux_Ia64_UcontextPatch[] = {
4887 "format",
4888 "__builtin_offsetof (struct sigcontext, sc_gr[0])",
4889 (char*)NULL };
4890
4891 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4892 *
4893 * Description of Lynxos_No_Warning_In_Sys_Time_H fix
4894 */
4895 tSCC zLynxos_No_Warning_In_Sys_Time_HName[] =
4896 "lynxos_no_warning_in_sys_time_h";
4897
4898 /*
4899 * File name selection pattern
4900 */
4901 tSCC zLynxos_No_Warning_In_Sys_Time_HList[] =
4902 "sys/time.h\0";
4903 /*
4904 * Machine/OS name selection pattern
4905 */
4906 #define apzLynxos_No_Warning_In_Sys_Time_HMachs (const char**)NULL
4907
4908 /*
4909 * content selection pattern - do fix if pattern found
4910 */
4911 tSCC zLynxos_No_Warning_In_Sys_Time_HSelect0[] =
4912 "#warning[ \t]+Using <time.h> instead of <sys/time.h>";
4913
4914 #define LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT 1
4915 static tTestDesc aLynxos_No_Warning_In_Sys_Time_HTests[] = {
4916 { TT_EGREP, zLynxos_No_Warning_In_Sys_Time_HSelect0, (regex_t*)NULL }, };
4917
4918 /*
4919 * Fix Command Arguments for Lynxos_No_Warning_In_Sys_Time_H
4920 */
4921 static const char* apzLynxos_No_Warning_In_Sys_Time_HPatch[] = {
4922 "format",
4923 "",
4924 (char*)NULL };
4925
4926 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4927 *
4928 * Description of Lynxos_Missing_Putenv fix
4929 */
4930 tSCC zLynxos_Missing_PutenvName[] =
4931 "lynxos_missing_putenv";
4932
4933 /*
4934 * File name selection pattern
4935 */
4936 tSCC zLynxos_Missing_PutenvList[] =
4937 "stdlib.h\0";
4938 /*
4939 * Machine/OS name selection pattern
4940 */
4941 tSCC* apzLynxos_Missing_PutenvMachs[] = {
4942 "*-*-lynxos*",
4943 (const char*)NULL };
4944
4945 /*
4946 * content selection pattern - do fix if pattern found
4947 */
4948 tSCC zLynxos_Missing_PutenvSelect0[] =
4949 "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);";
4950
4951 /*
4952 * content bypass pattern - skip fix if pattern found
4953 */
4954 tSCC zLynxos_Missing_PutenvBypass0[] =
4955 "putenv[ \\t]*\\(";
4956
4957 #define LYNXOS_MISSING_PUTENV_TEST_CT 2
4958 static tTestDesc aLynxos_Missing_PutenvTests[] = {
4959 { TT_NEGREP, zLynxos_Missing_PutenvBypass0, (regex_t*)NULL },
4960 { TT_EGREP, zLynxos_Missing_PutenvSelect0, (regex_t*)NULL }, };
4961
4962 /*
4963 * Fix Command Arguments for Lynxos_Missing_Putenv
4964 */
4965 static const char* apzLynxos_Missing_PutenvPatch[] = {
4966 "format",
4967 "%0\n\
4968 extern int putenv\t\t\t\t_AP((char *));",
4969 "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);",
4970 (char*)NULL };
4971
4972 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4973 *
4974 * Description of Machine_Ansi_H_Va_List fix
4975 */
4976 tSCC zMachine_Ansi_H_Va_ListName[] =
4977 "machine_ansi_h_va_list";
4978
4979 /*
4980 * File name selection pattern
4981 */
4982 #define zMachine_Ansi_H_Va_ListList (char*)NULL
4983 /*
4984 * Machine/OS name selection pattern
4985 */
4986 #define apzMachine_Ansi_H_Va_ListMachs (const char**)NULL
4987
4988 /*
4989 * content selection pattern - do fix if pattern found
4990 */
4991 tSCC zMachine_Ansi_H_Va_ListSelect0[] =
4992 "define[ \t]+_BSD_VA_LIST_[ \t]";
4993
4994 /*
4995 * content bypass pattern - skip fix if pattern found
4996 */
4997 tSCC zMachine_Ansi_H_Va_ListBypass0[] =
4998 "__builtin_va_list";
4999
5000 #define MACHINE_ANSI_H_VA_LIST_TEST_CT 2
5001 static tTestDesc aMachine_Ansi_H_Va_ListTests[] = {
5002 { TT_NEGREP, zMachine_Ansi_H_Va_ListBypass0, (regex_t*)NULL },
5003 { TT_EGREP, zMachine_Ansi_H_Va_ListSelect0, (regex_t*)NULL }, };
5004
5005 /*
5006 * Fix Command Arguments for Machine_Ansi_H_Va_List
5007 */
5008 static const char* apzMachine_Ansi_H_Va_ListPatch[] = {
5009 "format",
5010 "%1__builtin_va_list",
5011 "(define[ \t]+_BSD_VA_LIST_[ \t]+).*",
5012 (char*)NULL };
5013
5014 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5015 *
5016 * Description of Machine_Name fix
5017 */
5018 tSCC zMachine_NameName[] =
5019 "machine_name";
5020
5021 /*
5022 * File name selection pattern
5023 */
5024 #define zMachine_NameList (char*)NULL
5025 /*
5026 * Machine/OS name selection pattern
5027 */
5028 #define apzMachine_NameMachs (const char**)NULL
5029
5030 /*
5031 * perform the C function call test
5032 */
5033 tSCC zMachine_NameFTst0[] = "machine_name";
5034
5035 #define MACHINE_NAME_TEST_CT 1
5036 static tTestDesc aMachine_NameTests[] = {
5037 { TT_FUNCTION, zMachine_NameFTst0, 0 /* unused */ }, };
5038
5039 /*
5040 * Fix Command Arguments for Machine_Name
5041 */
5042 static const char* apzMachine_NamePatch[] = {
5043 "machine_name",
5044 (char*)NULL };
5045
5046 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5047 *
5048 * Description of Math_Exception fix
5049 */
5050 tSCC zMath_ExceptionName[] =
5051 "math_exception";
5052
5053 /*
5054 * File name selection pattern
5055 */
5056 tSCC zMath_ExceptionList[] =
5057 "math.h\0";
5058 /*
5059 * Machine/OS name selection pattern
5060 */
5061 #define apzMath_ExceptionMachs (const char**)NULL
5062
5063 /*
5064 * content selection pattern - do fix if pattern found
5065 */
5066 tSCC zMath_ExceptionSelect0[] =
5067 "struct exception";
5068
5069 /*
5070 * content bypass pattern - skip fix if pattern found
5071 */
5072 tSCC zMath_ExceptionBypass0[] =
5073 "We have a problem when using C\\+\\+|for C\\+\\+, _[a-z0-9A-Z_]+_exception; for C, exception";
5074
5075 #define MATH_EXCEPTION_TEST_CT 2
5076 static tTestDesc aMath_ExceptionTests[] = {
5077 { TT_NEGREP, zMath_ExceptionBypass0, (regex_t*)NULL },
5078 { TT_EGREP, zMath_ExceptionSelect0, (regex_t*)NULL }, };
5079
5080 /*
5081 * Fix Command Arguments for Math_Exception
5082 */
5083 static const char* apzMath_ExceptionPatch[] = {
5084 "wrap",
5085 "#ifdef __cplusplus\n\
5086 #define exception __math_exception\n\
5087 #endif\n",
5088 "#ifdef __cplusplus\n\
5089 #undef exception\n\
5090 #endif\n",
5091 (char*)NULL };
5092
5093 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5094 *
5095 * Description of Math_Huge_Val_From_Dbl_Max fix
5096 */
5097 tSCC zMath_Huge_Val_From_Dbl_MaxName[] =
5098 "math_huge_val_from_dbl_max";
5099
5100 /*
5101 * File name selection pattern
5102 */
5103 tSCC zMath_Huge_Val_From_Dbl_MaxList[] =
5104 "math.h\0";
5105 /*
5106 * Machine/OS name selection pattern
5107 */
5108 #define apzMath_Huge_Val_From_Dbl_MaxMachs (const char**)NULL
5109
5110 /*
5111 * content selection pattern - do fix if pattern found
5112 */
5113 tSCC zMath_Huge_Val_From_Dbl_MaxSelect0[] =
5114 "define[ \t]+HUGE_VAL[ \t]+DBL_MAX";
5115
5116 /*
5117 * content bypass pattern - skip fix if pattern found
5118 */
5119 tSCC zMath_Huge_Val_From_Dbl_MaxBypass0[] =
5120 "define[ \t]+DBL_MAX";
5121
5122 #define MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT 2
5123 static tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = {
5124 { TT_NEGREP, zMath_Huge_Val_From_Dbl_MaxBypass0, (regex_t*)NULL },
5125 { TT_EGREP, zMath_Huge_Val_From_Dbl_MaxSelect0, (regex_t*)NULL }, };
5126
5127 /*
5128 * Fix Command Arguments for Math_Huge_Val_From_Dbl_Max
5129 */
5130 static const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c",
5131 "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h | sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n\
5132 \tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\
5133 \tthen sed -e '/define[ \t]*HUGE_VAL[ \t]*DBL_MAX/s@DBL_MAX@'\"$dbl_max_def@\"\n\
5134 \telse cat\n\
5135 \tfi",
5136 (char*)NULL };
5137
5138 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5139 *
5140 * Description of Nested_Auth_Des fix
5141 */
5142 tSCC zNested_Auth_DesName[] =
5143 "nested_auth_des";
5144
5145 /*
5146 * File name selection pattern
5147 */
5148 tSCC zNested_Auth_DesList[] =
5149 "rpc/rpc.h\0";
5150 /*
5151 * Machine/OS name selection pattern
5152 */
5153 #define apzNested_Auth_DesMachs (const char**)NULL
5154
5155 /*
5156 * content selection pattern - do fix if pattern found
5157 */
5158 tSCC zNested_Auth_DesSelect0[] =
5159 "(/\\*.*rpc/auth_des\\.h>.*)/\\*";
5160
5161 #define NESTED_AUTH_DES_TEST_CT 1
5162 static tTestDesc aNested_Auth_DesTests[] = {
5163 { TT_EGREP, zNested_Auth_DesSelect0, (regex_t*)NULL }, };
5164
5165 /*
5166 * Fix Command Arguments for Nested_Auth_Des
5167 */
5168 static const char* apzNested_Auth_DesPatch[] = {
5169 "format",
5170 "%1*/ /*",
5171 (char*)NULL };
5172
5173 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5174 *
5175 * Description of Netbsd_C99_Inline_1 fix
5176 */
5177 tSCC zNetbsd_C99_Inline_1Name[] =
5178 "netbsd_c99_inline_1";
5179
5180 /*
5181 * File name selection pattern
5182 */
5183 tSCC zNetbsd_C99_Inline_1List[] =
5184 "signal.h\0";
5185 /*
5186 * Machine/OS name selection pattern
5187 */
5188 tSCC* apzNetbsd_C99_Inline_1Machs[] = {
5189 "*-*-netbsd*",
5190 (const char*)NULL };
5191
5192 /*
5193 * content selection pattern - do fix if pattern found
5194 */
5195 tSCC zNetbsd_C99_Inline_1Select0[] =
5196 "extern __inline int";
5197
5198 #define NETBSD_C99_INLINE_1_TEST_CT 1
5199 static tTestDesc aNetbsd_C99_Inline_1Tests[] = {
5200 { TT_EGREP, zNetbsd_C99_Inline_1Select0, (regex_t*)NULL }, };
5201
5202 /*
5203 * Fix Command Arguments for Netbsd_C99_Inline_1
5204 */
5205 static const char* apzNetbsd_C99_Inline_1Patch[] = {
5206 "format",
5207 "extern\n\
5208 #ifdef __GNUC_STDC_INLINE__\n\
5209 __attribute__((__gnu_inline__))\n\
5210 #endif\n\
5211 __inline int",
5212 (char*)NULL };
5213
5214 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5215 *
5216 * Description of Netbsd_C99_Inline_2 fix
5217 */
5218 tSCC zNetbsd_C99_Inline_2Name[] =
5219 "netbsd_c99_inline_2";
5220
5221 /*
5222 * File name selection pattern
5223 */
5224 tSCC zNetbsd_C99_Inline_2List[] =
5225 "signal.h\0";
5226 /*
5227 * Machine/OS name selection pattern
5228 */
5229 tSCC* apzNetbsd_C99_Inline_2Machs[] = {
5230 "*-*-netbsd*",
5231 (const char*)NULL };
5232
5233 /*
5234 * content selection pattern - do fix if pattern found
5235 */
5236 tSCC zNetbsd_C99_Inline_2Select0[] =
5237 "#define _SIGINLINE extern __inline";
5238
5239 #define NETBSD_C99_INLINE_2_TEST_CT 1
5240 static tTestDesc aNetbsd_C99_Inline_2Tests[] = {
5241 { TT_EGREP, zNetbsd_C99_Inline_2Select0, (regex_t*)NULL }, };
5242
5243 /*
5244 * Fix Command Arguments for Netbsd_C99_Inline_2
5245 */
5246 static const char* apzNetbsd_C99_Inline_2Patch[] = {
5247 "format",
5248 "#ifdef __GNUC_STDC_INLINE__\n\
5249 #define _SIGINLINE extern __attribute__((__gnu_inline__)) __inline\n\
5250 #else\n\
5251 %0\n\
5252 #endif",
5253 (char*)NULL };
5254
5255 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5256 *
5257 * Description of Netbsd_Extra_Semicolon fix
5258 */
5259 tSCC zNetbsd_Extra_SemicolonName[] =
5260 "netbsd_extra_semicolon";
5261
5262 /*
5263 * File name selection pattern
5264 */
5265 tSCC zNetbsd_Extra_SemicolonList[] =
5266 "sys/cdefs.h\0";
5267 /*
5268 * Machine/OS name selection pattern
5269 */
5270 tSCC* apzNetbsd_Extra_SemicolonMachs[] = {
5271 "*-*-netbsd*",
5272 (const char*)NULL };
5273
5274 /*
5275 * content selection pattern - do fix if pattern found
5276 */
5277 tSCC zNetbsd_Extra_SemicolonSelect0[] =
5278 "#define[ \t]*__END_DECLS[ \t]*};";
5279
5280 #define NETBSD_EXTRA_SEMICOLON_TEST_CT 1
5281 static tTestDesc aNetbsd_Extra_SemicolonTests[] = {
5282 { TT_EGREP, zNetbsd_Extra_SemicolonSelect0, (regex_t*)NULL }, };
5283
5284 /*
5285 * Fix Command Arguments for Netbsd_Extra_Semicolon
5286 */
5287 static const char* apzNetbsd_Extra_SemicolonPatch[] = {
5288 "format",
5289 "#define __END_DECLS }",
5290 (char*)NULL };
5291
5292 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5293 *
5294 * Description of Newlib_Stdint_1 fix
5295 */
5296 tSCC zNewlib_Stdint_1Name[] =
5297 "newlib_stdint_1";
5298
5299 /*
5300 * File name selection pattern
5301 */
5302 tSCC zNewlib_Stdint_1List[] =
5303 "stdint.h\0";
5304 /*
5305 * Machine/OS name selection pattern
5306 */
5307 #define apzNewlib_Stdint_1Machs (const char**)NULL
5308
5309 /*
5310 * content selection pattern - do fix if pattern found
5311 */
5312 tSCC zNewlib_Stdint_1Select0[] =
5313 "@todo - Add support for wint_t types";
5314
5315 #define NEWLIB_STDINT_1_TEST_CT 1
5316 static tTestDesc aNewlib_Stdint_1Tests[] = {
5317 { TT_EGREP, zNewlib_Stdint_1Select0, (regex_t*)NULL }, };
5318
5319 /*
5320 * Fix Command Arguments for Newlib_Stdint_1
5321 */
5322 static const char* apzNewlib_Stdint_1Patch[] = { sed_cmd_z,
5323 "-e", "s@#define INT32_MIN.*@#define INT32_MIN (-INT32_MAX - 1)@",
5324 "-e", "s@#define INT32_MAX.*@#define INT32_MAX __INT32_MAX__@",
5325 "-e", "s@#define UINT32_MAX.*@#define UINT32_MAX __UINT32_MAX__@",
5326 "-e", "s@#define INT_LEAST32_MIN.*@#define INT_LEAST32_MIN (-INT_LEAST32_MAX - 1)@",
5327 "-e", "s@#define INT_LEAST32_MAX.*@#define INT_LEAST32_MAX __INT_LEAST32_MAX__@",
5328 "-e", "s@#define UINT_LEAST32_MAX.*@#define UINT_LEAST32_MAX __UINT_LEAST32_MAX__@",
5329 "-e", "s@#define INT_FAST\\([0-9]*\\)_MIN.*@#define INT_FAST\\1_MIN (-INT_FAST\\1_MAX - 1)@",
5330 "-e", "s@#define INT_FAST\\([0-9]*\\)_MAX.*@#define INT_FAST\\1_MAX __INT_FAST\\1_MAX__@",
5331 "-e", "s@#define UINT_FAST\\([0-9]*\\)_MAX.*@#define UINT_FAST\\1_MAX __UINT_FAST\\1_MAX__@",
5332 "-e", "s@#define SIZE_MAX.*@#define SIZE_MAX __SIZE_MAX__@",
5333 "-e", "s@#define PTRDIFF_MIN.*@#define PTRDIFF_MIN (-PTRDIFF_MAX - 1)@",
5334 "-e", "s@#define PTRDIFF_MAX.*@#define PTRDIFF_MAX __PTRDIFF_MAX__@",
5335 "-e", "s@#define UINT8_C.*@#define UINT8_C(c) __UINT8_C(c)@",
5336 "-e", "s@#define UINT16_C.*@#define UINT16_C(c) __UINT16_C(c)@",
5337 (char*)NULL };
5338
5339 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5340 *
5341 * Description of Newlib_Stdint_2 fix
5342 */
5343 tSCC zNewlib_Stdint_2Name[] =
5344 "newlib_stdint_2";
5345
5346 /*
5347 * File name selection pattern
5348 */
5349 tSCC zNewlib_Stdint_2List[] =
5350 "stdint.h\0";
5351 /*
5352 * Machine/OS name selection pattern
5353 */
5354 #define apzNewlib_Stdint_2Machs (const char**)NULL
5355
5356 /*
5357 * content selection pattern - do fix if pattern found
5358 */
5359 tSCC zNewlib_Stdint_2Select0[] =
5360 "@todo - Add support for wint_t types";
5361
5362 #define NEWLIB_STDINT_2_TEST_CT 1
5363 static tTestDesc aNewlib_Stdint_2Tests[] = {
5364 { TT_EGREP, zNewlib_Stdint_2Select0, (regex_t*)NULL }, };
5365
5366 /*
5367 * Fix Command Arguments for Newlib_Stdint_2
5368 */
5369 static const char* apzNewlib_Stdint_2Patch[] = {
5370 "format",
5371 "#define INTMAX_MAX __INTMAX_MAX__\n\
5372 #define INTMAX_MIN (-INTMAX_MAX - 1)\n\
5373 #define UINTMAX_MAX __UINTMAX_MAX__\n\
5374 #define WCHAR_MAX __WCHAR_MAX__\n\
5375 #define WCHAR_MIN __WCHAR_MIN__\n\
5376 #define WINT_MAX __WINT_MAX__\n\
5377 #define WINT_MIN __WINT_MIN__\n\n\
5378 %0",
5379 "/\\*\\* Macros for minimum-width integer constant expressions \\*/",
5380 (char*)NULL };
5381
5382 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5383 *
5384 * Description of Next_Math_Prefix fix
5385 */
5386 tSCC zNext_Math_PrefixName[] =
5387 "next_math_prefix";
5388
5389 /*
5390 * File name selection pattern
5391 */
5392 tSCC zNext_Math_PrefixList[] =
5393 "ansi/math.h\0";
5394 /*
5395 * Machine/OS name selection pattern
5396 */
5397 #define apzNext_Math_PrefixMachs (const char**)NULL
5398
5399 /*
5400 * content selection pattern - do fix if pattern found
5401 */
5402 tSCC zNext_Math_PrefixSelect0[] =
5403 "^extern[ \t]+double[ \t]+__const__[ \t]";
5404
5405 #define NEXT_MATH_PREFIX_TEST_CT 1
5406 static tTestDesc aNext_Math_PrefixTests[] = {
5407 { TT_EGREP, zNext_Math_PrefixSelect0, (regex_t*)NULL }, };
5408
5409 /*
5410 * Fix Command Arguments for Next_Math_Prefix
5411 */
5412 static const char* apzNext_Math_PrefixPatch[] = {
5413 "format",
5414 "extern double %1(",
5415 "^extern[ \t]+double[ \t]+__const__[ \t]+([a-z]+)\\(",
5416 (char*)NULL };
5417
5418 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5419 *
5420 * Description of Next_Template fix
5421 */
5422 tSCC zNext_TemplateName[] =
5423 "next_template";
5424
5425 /*
5426 * File name selection pattern
5427 */
5428 tSCC zNext_TemplateList[] =
5429 "bsd/libc.h\0";
5430 /*
5431 * Machine/OS name selection pattern
5432 */
5433 #define apzNext_TemplateMachs (const char**)NULL
5434
5435 /*
5436 * content selection pattern - do fix if pattern found
5437 */
5438 tSCC zNext_TemplateSelect0[] =
5439 "[ \t]template\\)";
5440
5441 #define NEXT_TEMPLATE_TEST_CT 1
5442 static tTestDesc aNext_TemplateTests[] = {
5443 { TT_EGREP, zNext_TemplateSelect0, (regex_t*)NULL }, };
5444
5445 /*
5446 * Fix Command Arguments for Next_Template
5447 */
5448 static const char* apzNext_TemplatePatch[] = {
5449 "format",
5450 "(%1)",
5451 "\\(([^)]*)[ \t]template\\)",
5452 (char*)NULL };
5453
5454 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5455 *
5456 * Description of Next_Volitile fix
5457 */
5458 tSCC zNext_VolitileName[] =
5459 "next_volitile";
5460
5461 /*
5462 * File name selection pattern
5463 */
5464 tSCC zNext_VolitileList[] =
5465 "ansi/stdlib.h\0";
5466 /*
5467 * Machine/OS name selection pattern
5468 */
5469 #define apzNext_VolitileMachs (const char**)NULL
5470
5471 /*
5472 * content selection pattern - do fix if pattern found
5473 */
5474 tSCC zNext_VolitileSelect0[] =
5475 "^extern[ \t]+volatile[ \t]+void[ \t]";
5476
5477 #define NEXT_VOLITILE_TEST_CT 1
5478 static tTestDesc aNext_VolitileTests[] = {
5479 { TT_EGREP, zNext_VolitileSelect0, (regex_t*)NULL }, };
5480
5481 /*
5482 * Fix Command Arguments for Next_Volitile
5483 */
5484 static const char* apzNext_VolitilePatch[] = {
5485 "format",
5486 "extern void %1(",
5487 "^extern[ \t]+volatile[ \t]+void[ \t]+(exit|abort)\\(",
5488 (char*)NULL };
5489
5490 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5491 *
5492 * Description of Next_Wait_Union fix
5493 */
5494 tSCC zNext_Wait_UnionName[] =
5495 "next_wait_union";
5496
5497 /*
5498 * File name selection pattern
5499 */
5500 tSCC zNext_Wait_UnionList[] =
5501 "sys/wait.h\0";
5502 /*
5503 * Machine/OS name selection pattern
5504 */
5505 #define apzNext_Wait_UnionMachs (const char**)NULL
5506
5507 /*
5508 * content selection pattern - do fix if pattern found
5509 */
5510 tSCC zNext_Wait_UnionSelect0[] =
5511 "wait\\(union wait";
5512
5513 #define NEXT_WAIT_UNION_TEST_CT 1
5514 static tTestDesc aNext_Wait_UnionTests[] = {
5515 { TT_EGREP, zNext_Wait_UnionSelect0, (regex_t*)NULL }, };
5516
5517 /*
5518 * Fix Command Arguments for Next_Wait_Union
5519 */
5520 static const char* apzNext_Wait_UnionPatch[] = {
5521 "format",
5522 "wait(void",
5523 (char*)NULL };
5524
5525 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5526 *
5527 * Description of Nodeent_Syntax fix
5528 */
5529 tSCC zNodeent_SyntaxName[] =
5530 "nodeent_syntax";
5531
5532 /*
5533 * File name selection pattern
5534 */
5535 tSCC zNodeent_SyntaxList[] =
5536 "netdnet/dnetdb.h\0";
5537 /*
5538 * Machine/OS name selection pattern
5539 */
5540 #define apzNodeent_SyntaxMachs (const char**)NULL
5541
5542 /*
5543 * content selection pattern - do fix if pattern found
5544 */
5545 tSCC zNodeent_SyntaxSelect0[] =
5546 "char[ \t]*\\*na_addr[ \t]*$";
5547
5548 #define NODEENT_SYNTAX_TEST_CT 1
5549 static tTestDesc aNodeent_SyntaxTests[] = {
5550 { TT_EGREP, zNodeent_SyntaxSelect0, (regex_t*)NULL }, };
5551
5552 /*
5553 * Fix Command Arguments for Nodeent_Syntax
5554 */
5555 static const char* apzNodeent_SyntaxPatch[] = {
5556 "format",
5557 "%0;",
5558 (char*)NULL };
5559
5560 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5561 *
5562 * Description of Openbsd_Null_Definition fix
5563 */
5564 tSCC zOpenbsd_Null_DefinitionName[] =
5565 "openbsd_null_definition";
5566
5567 /*
5568 * File name selection pattern
5569 */
5570 tSCC zOpenbsd_Null_DefinitionList[] =
5571 "locale.h\0stddef.h\0stdio.h\0string.h\0time.h\0unistd.h\0wchar.h\0sys/param.h\0";
5572 /*
5573 * Machine/OS name selection pattern
5574 */
5575 tSCC* apzOpenbsd_Null_DefinitionMachs[] = {
5576 "*-*-openbsd*",
5577 (const char*)NULL };
5578
5579 /*
5580 * content selection pattern - do fix if pattern found
5581 */
5582 tSCC zOpenbsd_Null_DefinitionSelect0[] =
5583 "__GNUG__";
5584
5585 #define OPENBSD_NULL_DEFINITION_TEST_CT 1
5586 static tTestDesc aOpenbsd_Null_DefinitionTests[] = {
5587 { TT_EGREP, zOpenbsd_Null_DefinitionSelect0, (regex_t*)NULL }, };
5588
5589 /*
5590 * Fix Command Arguments for Openbsd_Null_Definition
5591 */
5592 static const char* apzOpenbsd_Null_DefinitionPatch[] = {
5593 "format",
5594 "#ifndef NULL\n\
5595 #ifdef __cplusplus\n\
5596 #ifdef __GNUG__\n\
5597 #define NULL\t__null\n\
5598 #else\t /* ! __GNUG__ */\n\
5599 #define NULL\t0L\n\
5600 #endif\t /* __GNUG__ */\n\
5601 #else\t /* ! __cplusplus */\n\
5602 #define NULL\t((void *)0)\n\
5603 #endif\t /* __cplusplus */\n\
5604 #endif\t /* !NULL */",
5605 "^#ifndef[ \t]*NULL\n\
5606 ^#ifdef[ \t]*__GNUG__\n\
5607 ^#define[ \t]*NULL[ \t]*__null\n\
5608 ^#else\n\
5609 ^#define[ \t]*NULL[ \t]*0L\n\
5610 ^#endif\n\
5611 ^#endif",
5612 (char*)NULL };
5613
5614 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5615 *
5616 * Description of Obstack_Lvalue_Cast fix
5617 */
5618 tSCC zObstack_Lvalue_CastName[] =
5619 "obstack_lvalue_cast";
5620
5621 /*
5622 * File name selection pattern
5623 */
5624 tSCC zObstack_Lvalue_CastList[] =
5625 "obstack.h\0";
5626 /*
5627 * Machine/OS name selection pattern
5628 */
5629 #define apzObstack_Lvalue_CastMachs (const char**)NULL
5630
5631 /*
5632 * content selection pattern - do fix if pattern found
5633 */
5634 tSCC zObstack_Lvalue_CastSelect0[] =
5635 "\\*\\(\\(([^()]*)\\*\\)(.*)\\)\\+\\+ = \\(([^()]*)\\)";
5636
5637 #define OBSTACK_LVALUE_CAST_TEST_CT 1
5638 static tTestDesc aObstack_Lvalue_CastTests[] = {
5639 { TT_EGREP, zObstack_Lvalue_CastSelect0, (regex_t*)NULL }, };
5640
5641 /*
5642 * Fix Command Arguments for Obstack_Lvalue_Cast
5643 */
5644 static const char* apzObstack_Lvalue_CastPatch[] = {
5645 "format",
5646 "((*((%1*)%2) = (%3)), (%2 += sizeof (%1)))",
5647 (char*)NULL };
5648
5649 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5650 *
5651 * Description of Openbsd_Va_Start fix
5652 */
5653 tSCC zOpenbsd_Va_StartName[] =
5654 "openbsd_va_start";
5655
5656 /*
5657 * File name selection pattern
5658 */
5659 tSCC zOpenbsd_Va_StartList[] =
5660 "stdarg.h\0";
5661 /*
5662 * Machine/OS name selection pattern
5663 */
5664 tSCC* apzOpenbsd_Va_StartMachs[] = {
5665 "*-*-openbsd*",
5666 (const char*)NULL };
5667
5668 /*
5669 * content selection pattern - do fix if pattern found
5670 */
5671 tSCC zOpenbsd_Va_StartSelect0[] =
5672 "__builtin_stdarg_start";
5673
5674 #define OPENBSD_VA_START_TEST_CT 1
5675 static tTestDesc aOpenbsd_Va_StartTests[] = {
5676 { TT_EGREP, zOpenbsd_Va_StartSelect0, (regex_t*)NULL }, };
5677
5678 /*
5679 * Fix Command Arguments for Openbsd_Va_Start
5680 */
5681 static const char* apzOpenbsd_Va_StartPatch[] = {
5682 "format",
5683 "__builtin_va_start",
5684 (char*)NULL };
5685
5686 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5687 *
5688 * Description of Osf_Namespace_A fix
5689 */
5690 tSCC zOsf_Namespace_AName[] =
5691 "osf_namespace_a";
5692
5693 /*
5694 * File name selection pattern
5695 */
5696 tSCC zOsf_Namespace_AList[] =
5697 "reg_types.h\0sys/lc_core.h\0";
5698 /*
5699 * Machine/OS name selection pattern
5700 */
5701 #define apzOsf_Namespace_AMachs (const char**)NULL
5702
5703 /*
5704 * perform the 'test' shell command - do fix on success
5705 */
5706 tSCC zOsf_Namespace_ATest0[] =
5707 " -r reg_types.h";
5708 tSCC zOsf_Namespace_ATest1[] =
5709 " -r sys/lc_core.h";
5710 tSCC zOsf_Namespace_ATest2[] =
5711 " -n \"`grep '} regex_t;' reg_types.h`\"";
5712 tSCC zOsf_Namespace_ATest3[] =
5713 " -z \"`grep __regex_t regex.h`\"";
5714
5715 #define OSF_NAMESPACE_A_TEST_CT 4
5716 static tTestDesc aOsf_Namespace_ATests[] = {
5717 { TT_TEST, zOsf_Namespace_ATest0, 0 /* unused */ },
5718 { TT_TEST, zOsf_Namespace_ATest1, 0 /* unused */ },
5719 { TT_TEST, zOsf_Namespace_ATest2, 0 /* unused */ },
5720 { TT_TEST, zOsf_Namespace_ATest3, 0 /* unused */ }, };
5721
5722 /*
5723 * Fix Command Arguments for Osf_Namespace_A
5724 */
5725 static const char* apzOsf_Namespace_APatch[] = {
5726 "format",
5727 "__%0",
5728 "reg(ex|off|match)_t",
5729 (char*)NULL };
5730
5731 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5732 *
5733 * Description of Osf_Namespace_C fix
5734 */
5735 tSCC zOsf_Namespace_CName[] =
5736 "osf_namespace_c";
5737
5738 /*
5739 * File name selection pattern
5740 */
5741 tSCC zOsf_Namespace_CList[] =
5742 "regex.h\0";
5743 /*
5744 * Machine/OS name selection pattern
5745 */
5746 #define apzOsf_Namespace_CMachs (const char**)NULL
5747
5748 /*
5749 * content selection pattern - do fix if pattern found
5750 */
5751 tSCC zOsf_Namespace_CSelect0[] =
5752 "#include <reg_types.h>.*";
5753
5754 /*
5755 * perform the 'test' shell command - do fix on success
5756 */
5757 tSCC zOsf_Namespace_CTest0[] =
5758 " -r reg_types.h";
5759 tSCC zOsf_Namespace_CTest1[] =
5760 " -r sys/lc_core.h";
5761 tSCC zOsf_Namespace_CTest2[] =
5762 " -n \"`grep '} regex_t;' reg_types.h`\"";
5763 tSCC zOsf_Namespace_CTest3[] =
5764 " -z \"`grep __regex_t regex.h`\"";
5765
5766 #define OSF_NAMESPACE_C_TEST_CT 5
5767 static tTestDesc aOsf_Namespace_CTests[] = {
5768 { TT_TEST, zOsf_Namespace_CTest0, 0 /* unused */ },
5769 { TT_TEST, zOsf_Namespace_CTest1, 0 /* unused */ },
5770 { TT_TEST, zOsf_Namespace_CTest2, 0 /* unused */ },
5771 { TT_TEST, zOsf_Namespace_CTest3, 0 /* unused */ },
5772 { TT_EGREP, zOsf_Namespace_CSelect0, (regex_t*)NULL }, };
5773
5774 /*
5775 * Fix Command Arguments for Osf_Namespace_C
5776 */
5777 static const char* apzOsf_Namespace_CPatch[] = {
5778 "format",
5779 "%0\n\
5780 typedef __regex_t\tregex_t;\n\
5781 typedef __regoff_t\tregoff_t;\n\
5782 typedef __regmatch_t\tregmatch_t;",
5783 (char*)NULL };
5784
5785 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5786 *
5787 * Description of Pthread_Incomplete_Struct_Argument fix
5788 */
5789 tSCC zPthread_Incomplete_Struct_ArgumentName[] =
5790 "pthread_incomplete_struct_argument";
5791
5792 /*
5793 * File name selection pattern
5794 */
5795 tSCC zPthread_Incomplete_Struct_ArgumentList[] =
5796 "pthread.h\0";
5797 /*
5798 * Machine/OS name selection pattern
5799 */
5800 #define apzPthread_Incomplete_Struct_ArgumentMachs (const char**)NULL
5801
5802 /*
5803 * content selection pattern - do fix if pattern found
5804 */
5805 tSCC zPthread_Incomplete_Struct_ArgumentSelect0[] =
5806 "struct __jmp_buf_tag";
5807
5808 #define PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT 1
5809 static tTestDesc aPthread_Incomplete_Struct_ArgumentTests[] = {
5810 { TT_EGREP, zPthread_Incomplete_Struct_ArgumentSelect0, (regex_t*)NULL }, };
5811
5812 /*
5813 * Fix Command Arguments for Pthread_Incomplete_Struct_Argument
5814 */
5815 static const char* apzPthread_Incomplete_Struct_ArgumentPatch[] = {
5816 "format",
5817 "%1 *%2%3",
5818 "^(extern int __sigsetjmp \\(struct __jmp_buf_tag) (__env)\\[1\\](.*)$",
5819 (char*)NULL };
5820
5821 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5822 *
5823 * Description of Read_Ret_Type fix
5824 */
5825 tSCC zRead_Ret_TypeName[] =
5826 "read_ret_type";
5827
5828 /*
5829 * File name selection pattern
5830 */
5831 tSCC zRead_Ret_TypeList[] =
5832 "stdio.h\0";
5833 /*
5834 * Machine/OS name selection pattern
5835 */
5836 #define apzRead_Ret_TypeMachs (const char**)NULL
5837
5838 /*
5839 * content selection pattern - do fix if pattern found
5840 */
5841 tSCC zRead_Ret_TypeSelect0[] =
5842 "extern int\t.*, fread\\(\\), fwrite\\(\\)";
5843
5844 #define READ_RET_TYPE_TEST_CT 1
5845 static tTestDesc aRead_Ret_TypeTests[] = {
5846 { TT_EGREP, zRead_Ret_TypeSelect0, (regex_t*)NULL }, };
5847
5848 /*
5849 * Fix Command Arguments for Read_Ret_Type
5850 */
5851 static const char* apzRead_Ret_TypePatch[] = {
5852 "format",
5853 "extern unsigned int fread(), fwrite();\n\
5854 %1%2",
5855 "(extern int\t.*), fread\\(\\), fwrite\\(\\)(.*)",
5856 (char*)NULL };
5857
5858 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5859 *
5860 * Description of Rpc_Xdr_Lvalue_Cast_A fix
5861 */
5862 tSCC zRpc_Xdr_Lvalue_Cast_AName[] =
5863 "rpc_xdr_lvalue_cast_a";
5864
5865 /*
5866 * File name selection pattern
5867 */
5868 tSCC zRpc_Xdr_Lvalue_Cast_AList[] =
5869 "rpc/xdr.h\0";
5870 /*
5871 * Machine/OS name selection pattern
5872 */
5873 #define apzRpc_Xdr_Lvalue_Cast_AMachs (const char**)NULL
5874
5875 /*
5876 * content selection pattern - do fix if pattern found
5877 */
5878 tSCC zRpc_Xdr_Lvalue_Cast_ASelect0[] =
5879 "#define[ \t]*IXDR_GET_LONG.*\\\\\n\
5880 .*__extension__.*";
5881
5882 #define RPC_XDR_LVALUE_CAST_A_TEST_CT 1
5883 static tTestDesc aRpc_Xdr_Lvalue_Cast_ATests[] = {
5884 { TT_EGREP, zRpc_Xdr_Lvalue_Cast_ASelect0, (regex_t*)NULL }, };
5885
5886 /*
5887 * Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_A
5888 */
5889 static const char* apzRpc_Xdr_Lvalue_Cast_APatch[] = {
5890 "format",
5891 "#define IXDR_GET_LONG(buf) ((long)IXDR_GET_U_INT32(buf))",
5892 (char*)NULL };
5893
5894 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5895 *
5896 * Description of Rpc_Xdr_Lvalue_Cast_B fix
5897 */
5898 tSCC zRpc_Xdr_Lvalue_Cast_BName[] =
5899 "rpc_xdr_lvalue_cast_b";
5900
5901 /*
5902 * File name selection pattern
5903 */
5904 tSCC zRpc_Xdr_Lvalue_Cast_BList[] =
5905 "rpc/xdr.h\0";
5906 /*
5907 * Machine/OS name selection pattern
5908 */
5909 #define apzRpc_Xdr_Lvalue_Cast_BMachs (const char**)NULL
5910
5911 /*
5912 * content selection pattern - do fix if pattern found
5913 */
5914 tSCC zRpc_Xdr_Lvalue_Cast_BSelect0[] =
5915 "#define[ \t]*IXDR_PUT_LONG.*\\\\\n\
5916 .*__extension__.*";
5917
5918 #define RPC_XDR_LVALUE_CAST_B_TEST_CT 1
5919 static tTestDesc aRpc_Xdr_Lvalue_Cast_BTests[] = {
5920 { TT_EGREP, zRpc_Xdr_Lvalue_Cast_BSelect0, (regex_t*)NULL }, };
5921
5922 /*
5923 * Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_B
5924 */
5925 static const char* apzRpc_Xdr_Lvalue_Cast_BPatch[] = {
5926 "format",
5927 "#define IXDR_PUT_LONG(buf, v) ((long)IXDR_PUT_INT32(buf, (long)(v)))",
5928 (char*)NULL };
5929
5930 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5931 *
5932 * Description of Rs6000_Double fix
5933 */
5934 tSCC zRs6000_DoubleName[] =
5935 "rs6000_double";
5936
5937 /*
5938 * File name selection pattern
5939 */
5940 tSCC zRs6000_DoubleList[] =
5941 "math.h\0";
5942 /*
5943 * Machine/OS name selection pattern
5944 */
5945 #define apzRs6000_DoubleMachs (const char**)NULL
5946
5947 /*
5948 * content selection pattern - do fix if pattern found
5949 */
5950 tSCC zRs6000_DoubleSelect0[] =
5951 "[^a-zA-Z_]class\\(";
5952
5953 #define RS6000_DOUBLE_TEST_CT 1
5954 static tTestDesc aRs6000_DoubleTests[] = {
5955 { TT_EGREP, zRs6000_DoubleSelect0, (regex_t*)NULL }, };
5956
5957 /*
5958 * Fix Command Arguments for Rs6000_Double
5959 */
5960 static const char* apzRs6000_DoublePatch[] = {
5961 "format",
5962 "#ifndef __cplusplus\n\
5963 %0\n\
5964 #endif",
5965 "^.*[^a-zA-Z_]class\\(.*",
5966 (char*)NULL };
5967
5968 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5969 *
5970 * Description of Rs6000_Fchmod fix
5971 */
5972 tSCC zRs6000_FchmodName[] =
5973 "rs6000_fchmod";
5974
5975 /*
5976 * File name selection pattern
5977 */
5978 tSCC zRs6000_FchmodList[] =
5979 "sys/stat.h\0";
5980 /*
5981 * Machine/OS name selection pattern
5982 */
5983 #define apzRs6000_FchmodMachs (const char**)NULL
5984
5985 /*
5986 * content selection pattern - do fix if pattern found
5987 */
5988 tSCC zRs6000_FchmodSelect0[] =
5989 "fchmod\\(char \\*";
5990
5991 #define RS6000_FCHMOD_TEST_CT 1
5992 static tTestDesc aRs6000_FchmodTests[] = {
5993 { TT_EGREP, zRs6000_FchmodSelect0, (regex_t*)NULL }, };
5994
5995 /*
5996 * Fix Command Arguments for Rs6000_Fchmod
5997 */
5998 static const char* apzRs6000_FchmodPatch[] = {
5999 "format",
6000 "fchmod(int",
6001 (char*)NULL };
6002
6003 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6004 *
6005 * Description of Rs6000_Param fix
6006 */
6007 tSCC zRs6000_ParamName[] =
6008 "rs6000_param";
6009
6010 /*
6011 * File name selection pattern
6012 */
6013 tSCC zRs6000_ParamList[] =
6014 "stdio.h\0unistd.h\0";
6015 /*
6016 * Machine/OS name selection pattern
6017 */
6018 #define apzRs6000_ParamMachs (const char**)NULL
6019
6020 /*
6021 * content selection pattern - do fix if pattern found
6022 */
6023 tSCC zRs6000_ParamSelect0[] =
6024 "rename\\(const char \\*old, const char \\*new\\)";
6025
6026 #define RS6000_PARAM_TEST_CT 1
6027 static tTestDesc aRs6000_ParamTests[] = {
6028 { TT_EGREP, zRs6000_ParamSelect0, (regex_t*)NULL }, };
6029
6030 /*
6031 * Fix Command Arguments for Rs6000_Param
6032 */
6033 static const char* apzRs6000_ParamPatch[] = {
6034 "format",
6035 "rename(const char *_old, const char *_new)",
6036 (char*)NULL };
6037
6038 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6039 *
6040 * Description of Solaris_Complex fix
6041 */
6042 tSCC zSolaris_ComplexName[] =
6043 "solaris_complex";
6044
6045 /*
6046 * File name selection pattern
6047 */
6048 tSCC zSolaris_ComplexList[] =
6049 "complex.h\0";
6050 /*
6051 * Machine/OS name selection pattern
6052 */
6053 tSCC* apzSolaris_ComplexMachs[] = {
6054 "*-*-solaris2.*",
6055 (const char*)NULL };
6056
6057 /*
6058 * content selection pattern - do fix if pattern found
6059 */
6060 tSCC zSolaris_ComplexSelect0[] =
6061 "#define[ \t]_Complex_I[ \t]_Complex_I";
6062
6063 #define SOLARIS_COMPLEX_TEST_CT 1
6064 static tTestDesc aSolaris_ComplexTests[] = {
6065 { TT_EGREP, zSolaris_ComplexSelect0, (regex_t*)NULL }, };
6066
6067 /*
6068 * Fix Command Arguments for Solaris_Complex
6069 */
6070 static const char* apzSolaris_ComplexPatch[] = { sed_cmd_z,
6071 "-e", "s/#define[ \t]_Complex_I[ \t]_Complex_I/#define\t_Complex_I\t(__extension__ 1.0iF)/",
6072 "-e", "/#define[ \t]_Imaginary_I[ \t]_Imaginary_I/d",
6073 "-e", "/#define[ \t]imaginary[ \t]_Imaginary/d",
6074 "-e", "s/#define[ \t]I[ \t]\\{1,\\}_Imaginary_I/#define\tI\t\t_Complex_I/",
6075 (char*)NULL };
6076
6077 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6078 *
6079 * Description of Solaris_Math_1 fix
6080 */
6081 tSCC zSolaris_Math_1Name[] =
6082 "solaris_math_1";
6083
6084 /*
6085 * File name selection pattern
6086 */
6087 tSCC zSolaris_Math_1List[] =
6088 "iso/math_c99.h\0";
6089 /*
6090 * Machine/OS name selection pattern
6091 */
6092 #define apzSolaris_Math_1Machs (const char**)NULL
6093
6094 /*
6095 * content selection pattern - do fix if pattern found
6096 */
6097 tSCC zSolaris_Math_1Select0[] =
6098 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6099
6100 /*
6101 * content bypass pattern - skip fix if pattern found
6102 */
6103 tSCC zSolaris_Math_1Bypass0[] =
6104 "__GNUC__";
6105
6106 #define SOLARIS_MATH_1_TEST_CT 2
6107 static tTestDesc aSolaris_Math_1Tests[] = {
6108 { TT_NEGREP, zSolaris_Math_1Bypass0, (regex_t*)NULL },
6109 { TT_EGREP, zSolaris_Math_1Select0, (regex_t*)NULL }, };
6110
6111 /*
6112 * Fix Command Arguments for Solaris_Math_1
6113 */
6114 static const char* apzSolaris_Math_1Patch[] = {
6115 "format",
6116 "#define\tHUGE_VA%1\t(__builtin_huge_va%2())",
6117 "^#define[ \t]+HUGE_VA([LF]+)[ \t]+__builtin_huge_va([lf]+)",
6118 (char*)NULL };
6119
6120 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6121 *
6122 * Description of Solaris_Math_2 fix
6123 */
6124 tSCC zSolaris_Math_2Name[] =
6125 "solaris_math_2";
6126
6127 /*
6128 * File name selection pattern
6129 */
6130 tSCC zSolaris_Math_2List[] =
6131 "iso/math_c99.h\0";
6132 /*
6133 * Machine/OS name selection pattern
6134 */
6135 #define apzSolaris_Math_2Machs (const char**)NULL
6136
6137 /*
6138 * content selection pattern - do fix if pattern found
6139 */
6140 tSCC zSolaris_Math_2Select0[] =
6141 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6142
6143 /*
6144 * content bypass pattern - skip fix if pattern found
6145 */
6146 tSCC zSolaris_Math_2Bypass0[] =
6147 "__GNUC__";
6148
6149 #define SOLARIS_MATH_2_TEST_CT 2
6150 static tTestDesc aSolaris_Math_2Tests[] = {
6151 { TT_NEGREP, zSolaris_Math_2Bypass0, (regex_t*)NULL },
6152 { TT_EGREP, zSolaris_Math_2Select0, (regex_t*)NULL }, };
6153
6154 /*
6155 * Fix Command Arguments for Solaris_Math_2
6156 */
6157 static const char* apzSolaris_Math_2Patch[] = {
6158 "format",
6159 "#define\tINFINITY\t(__builtin_inff())",
6160 "^#define[ \t]+INFINITY[ \t]+__builtin_infinity",
6161 (char*)NULL };
6162
6163 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6164 *
6165 * Description of Solaris_Math_3 fix
6166 */
6167 tSCC zSolaris_Math_3Name[] =
6168 "solaris_math_3";
6169
6170 /*
6171 * File name selection pattern
6172 */
6173 tSCC zSolaris_Math_3List[] =
6174 "iso/math_c99.h\0";
6175 /*
6176 * Machine/OS name selection pattern
6177 */
6178 #define apzSolaris_Math_3Machs (const char**)NULL
6179
6180 /*
6181 * content selection pattern - do fix if pattern found
6182 */
6183 tSCC zSolaris_Math_3Select0[] =
6184 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6185
6186 /*
6187 * content bypass pattern - skip fix if pattern found
6188 */
6189 tSCC zSolaris_Math_3Bypass0[] =
6190 "__GNUC__";
6191
6192 #define SOLARIS_MATH_3_TEST_CT 2
6193 static tTestDesc aSolaris_Math_3Tests[] = {
6194 { TT_NEGREP, zSolaris_Math_3Bypass0, (regex_t*)NULL },
6195 { TT_EGREP, zSolaris_Math_3Select0, (regex_t*)NULL }, };
6196
6197 /*
6198 * Fix Command Arguments for Solaris_Math_3
6199 */
6200 static const char* apzSolaris_Math_3Patch[] = {
6201 "format",
6202 "#define\tNAN\t\t(__builtin_nanf(\"\"))",
6203 "^#define[ \t]+NAN[ \t]+__builtin_nan",
6204 (char*)NULL };
6205
6206 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6207 *
6208 * Description of Solaris_Math_4 fix
6209 */
6210 tSCC zSolaris_Math_4Name[] =
6211 "solaris_math_4";
6212
6213 /*
6214 * File name selection pattern
6215 */
6216 tSCC zSolaris_Math_4List[] =
6217 "iso/math_c99.h\0";
6218 /*
6219 * Machine/OS name selection pattern
6220 */
6221 #define apzSolaris_Math_4Machs (const char**)NULL
6222
6223 /*
6224 * content selection pattern - do fix if pattern found
6225 */
6226 tSCC zSolaris_Math_4Select0[] =
6227 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6228
6229 /*
6230 * content bypass pattern - skip fix if pattern found
6231 */
6232 tSCC zSolaris_Math_4Bypass0[] =
6233 "__GNUC__";
6234
6235 #define SOLARIS_MATH_4_TEST_CT 2
6236 static tTestDesc aSolaris_Math_4Tests[] = {
6237 { TT_NEGREP, zSolaris_Math_4Bypass0, (regex_t*)NULL },
6238 { TT_EGREP, zSolaris_Math_4Select0, (regex_t*)NULL }, };
6239
6240 /*
6241 * Fix Command Arguments for Solaris_Math_4
6242 */
6243 static const char* apzSolaris_Math_4Patch[] = {
6244 "format",
6245 "#define\tfpclassify(x) \\\n\
6246 __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, (x))",
6247 "^#define[ \t]+fpclassify\\(x\\)[ \t]+__builtin_fpclassify\\(x\\)",
6248 (char*)NULL };
6249
6250 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6251 *
6252 * Description of Solaris_Math_8 fix
6253 */
6254 tSCC zSolaris_Math_8Name[] =
6255 "solaris_math_8";
6256
6257 /*
6258 * File name selection pattern
6259 */
6260 tSCC zSolaris_Math_8List[] =
6261 "iso/math_c99.h\0";
6262 /*
6263 * Machine/OS name selection pattern
6264 */
6265 #define apzSolaris_Math_8Machs (const char**)NULL
6266
6267 /*
6268 * content selection pattern - do fix if pattern found
6269 */
6270 tSCC zSolaris_Math_8Select0[] =
6271 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6272
6273 /*
6274 * content bypass pattern - skip fix if pattern found
6275 */
6276 tSCC zSolaris_Math_8Bypass0[] =
6277 "__GNUC__";
6278
6279 #define SOLARIS_MATH_8_TEST_CT 2
6280 static tTestDesc aSolaris_Math_8Tests[] = {
6281 { TT_NEGREP, zSolaris_Math_8Bypass0, (regex_t*)NULL },
6282 { TT_EGREP, zSolaris_Math_8Select0, (regex_t*)NULL }, };
6283
6284 /*
6285 * Fix Command Arguments for Solaris_Math_8
6286 */
6287 static const char* apzSolaris_Math_8Patch[] = {
6288 "format",
6289 "#define\tsignbit(x)\t(sizeof(x) == sizeof(float) \\\n\
6290 \t\t\t ? __builtin_signbitf(x) \\\n\
6291 \t\t\t : sizeof(x) == sizeof(long double) \\\n\
6292 \t\t\t ? __builtin_signbitl(x) \\\n\
6293 \t\t\t : __builtin_signbit(x))",
6294 "^#define[ \t]+signbit\\(x\\)[ \t]+__builtin_signbit\\(x\\)",
6295 (char*)NULL };
6296
6297 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6298 *
6299 * Description of Solaris_Math_9 fix
6300 */
6301 tSCC zSolaris_Math_9Name[] =
6302 "solaris_math_9";
6303
6304 /*
6305 * File name selection pattern
6306 */
6307 tSCC zSolaris_Math_9List[] =
6308 "iso/math_c99.h\0";
6309 /*
6310 * Machine/OS name selection pattern
6311 */
6312 #define apzSolaris_Math_9Machs (const char**)NULL
6313
6314 /*
6315 * content selection pattern - do fix if pattern found
6316 */
6317 tSCC zSolaris_Math_9Select0[] =
6318 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6319
6320 /*
6321 * content bypass pattern - skip fix if pattern found
6322 */
6323 tSCC zSolaris_Math_9Bypass0[] =
6324 "__GNUC__";
6325
6326 #define SOLARIS_MATH_9_TEST_CT 2
6327 static tTestDesc aSolaris_Math_9Tests[] = {
6328 { TT_NEGREP, zSolaris_Math_9Bypass0, (regex_t*)NULL },
6329 { TT_EGREP, zSolaris_Math_9Select0, (regex_t*)NULL }, };
6330
6331 /*
6332 * Fix Command Arguments for Solaris_Math_9
6333 */
6334 static const char* apzSolaris_Math_9Patch[] = {
6335 "format",
6336 "#define\t%1(x, y)%2__builtin_%1(x, y)",
6337 "^#define[ \t]+([a-z]+)\\(x, y\\)([ \t]+)\\(\\(x\\) __builtin_[a-z]+\\(y\\)\\)",
6338 (char*)NULL };
6339
6340 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6341 *
6342 * Description of Solaris_Math_10 fix
6343 */
6344 tSCC zSolaris_Math_10Name[] =
6345 "solaris_math_10";
6346
6347 /*
6348 * File name selection pattern
6349 */
6350 tSCC zSolaris_Math_10List[] =
6351 "iso/math_c99.h\0";
6352 /*
6353 * Machine/OS name selection pattern
6354 */
6355 #define apzSolaris_Math_10Machs (const char**)NULL
6356
6357 /*
6358 * content selection pattern - do fix if pattern found
6359 */
6360 tSCC zSolaris_Math_10Select0[] =
6361 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6362
6363 #define SOLARIS_MATH_10_TEST_CT 1
6364 static tTestDesc aSolaris_Math_10Tests[] = {
6365 { TT_EGREP, zSolaris_Math_10Select0, (regex_t*)NULL }, };
6366
6367 /*
6368 * Fix Command Arguments for Solaris_Math_10
6369 */
6370 static const char* apzSolaris_Math_10Patch[] = {
6371 "format",
6372 "#define\tisinf(x) __builtin_isinf(x)",
6373 "^#define[ \t]+isinf\\(x\\)[ \t]+__extension__\\([ \t]*\\\\\n\
6374 [ \t]*\\{[ \t]*__typeof\\(x\\)[ \t]*__x_i[ \t]*=[ \t]*\\(x\\);[ \t]*\\\\\n\
6375 [ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*INFINITY[ \t]*\\|\\|[ \t]*\\\\\n\
6376 [ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*\\(-INFINITY\\);[ \t]*\\}\\)",
6377 (char*)NULL };
6378
6379 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6380 *
6381 * Description of Solaris_Mutex_Init_2 fix
6382 */
6383 tSCC zSolaris_Mutex_Init_2Name[] =
6384 "solaris_mutex_init_2";
6385
6386 /*
6387 * File name selection pattern
6388 */
6389 tSCC zSolaris_Mutex_Init_2List[] =
6390 "pthread.h\0";
6391 /*
6392 * Machine/OS name selection pattern
6393 */
6394 tSCC* apzSolaris_Mutex_Init_2Machs[] = {
6395 "*-*-solaris2.[0-9]",
6396 "*-*-solaris2.[0-9][!0-9]*",
6397 (const char*)NULL };
6398
6399 /*
6400 * content selection pattern - do fix if pattern found
6401 */
6402 tSCC zSolaris_Mutex_Init_2Select0[] =
6403 "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6404
6405 #define SOLARIS_MUTEX_INIT_2_TEST_CT 1
6406 static tTestDesc aSolaris_Mutex_Init_2Tests[] = {
6407 { TT_EGREP, zSolaris_Mutex_Init_2Select0, (regex_t*)NULL }, };
6408
6409 /*
6410 * Fix Command Arguments for Solaris_Mutex_Init_2
6411 */
6412 static const char* apzSolaris_Mutex_Init_2Patch[] = {
6413 "format",
6414 "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
6415 %0\n\
6416 #else\n\
6417 %1, {0}}%4\n\
6418 #endif",
6419 "(^#define[ \t]+PTHREAD_(MUTEX|COND)_INITIALIZER[ \t]+(|/*.**/[ \t]*\\\\\n\
6420 [ \t]*)\\{.*),[ \t]*0\\}(|[ \t].*)$",
6421 (char*)NULL };
6422
6423 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6424 *
6425 * Description of Solaris_Rwlock_Init_1 fix
6426 */
6427 tSCC zSolaris_Rwlock_Init_1Name[] =
6428 "solaris_rwlock_init_1";
6429
6430 /*
6431 * File name selection pattern
6432 */
6433 tSCC zSolaris_Rwlock_Init_1List[] =
6434 "pthread.h\0";
6435 /*
6436 * Machine/OS name selection pattern
6437 */
6438 tSCC* apzSolaris_Rwlock_Init_1Machs[] = {
6439 "*-*-solaris*",
6440 (const char*)NULL };
6441
6442 /*
6443 * content selection pattern - do fix if pattern found
6444 */
6445 tSCC zSolaris_Rwlock_Init_1Select0[] =
6446 "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6447
6448 #define SOLARIS_RWLOCK_INIT_1_TEST_CT 1
6449 static tTestDesc aSolaris_Rwlock_Init_1Tests[] = {
6450 { TT_EGREP, zSolaris_Rwlock_Init_1Select0, (regex_t*)NULL }, };
6451
6452 /*
6453 * Fix Command Arguments for Solaris_Rwlock_Init_1
6454 */
6455 static const char* apzSolaris_Rwlock_Init_1Patch[] = {
6456 "format",
6457 "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
6458 %0\n\
6459 #else\n\
6460 %1{0, 0, 0, {{0}, {0}, {0}}, {{0}, {0}}, {{0}, {0}}}\n\
6461 #endif",
6462 "(^#define[ \t]+PTHREAD_RWLOCK_INITIALIZER[ \t]+)\\{0, 0, 0, \\{0, 0, 0\\}, \\{0, 0\\}, \\{0, 0\\}\\}[ \t]*$",
6463 (char*)NULL };
6464
6465 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6466 *
6467 * Description of Solaris_Once_Init_1 fix
6468 */
6469 tSCC zSolaris_Once_Init_1Name[] =
6470 "solaris_once_init_1";
6471
6472 /*
6473 * File name selection pattern
6474 */
6475 tSCC zSolaris_Once_Init_1List[] =
6476 "pthread.h\0";
6477 /*
6478 * Machine/OS name selection pattern
6479 */
6480 tSCC* apzSolaris_Once_Init_1Machs[] = {
6481 "*-*-solaris*",
6482 (const char*)NULL };
6483
6484 /*
6485 * content selection pattern - do fix if pattern found
6486 */
6487 tSCC zSolaris_Once_Init_1Select0[] =
6488 "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6489
6490 #define SOLARIS_ONCE_INIT_1_TEST_CT 1
6491 static tTestDesc aSolaris_Once_Init_1Tests[] = {
6492 { TT_EGREP, zSolaris_Once_Init_1Select0, (regex_t*)NULL }, };
6493
6494 /*
6495 * Fix Command Arguments for Solaris_Once_Init_1
6496 */
6497 static const char* apzSolaris_Once_Init_1Patch[] = {
6498 "format",
6499 "%1{%2}%3",
6500 "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{)([^}]+)(\\})[ \t]*$",
6501 (char*)NULL };
6502
6503 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6504 *
6505 * Description of Solaris_Once_Init_2 fix
6506 */
6507 tSCC zSolaris_Once_Init_2Name[] =
6508 "solaris_once_init_2";
6509
6510 /*
6511 * File name selection pattern
6512 */
6513 tSCC zSolaris_Once_Init_2List[] =
6514 "pthread.h\0";
6515 /*
6516 * Machine/OS name selection pattern
6517 */
6518 tSCC* apzSolaris_Once_Init_2Machs[] = {
6519 "*-*-solaris2.[0-9]",
6520 "*-*-solaris2.[0-9][!0-9]*",
6521 (const char*)NULL };
6522
6523 /*
6524 * content selection pattern - do fix if pattern found
6525 */
6526 tSCC zSolaris_Once_Init_2Select0[] =
6527 "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6528
6529 #define SOLARIS_ONCE_INIT_2_TEST_CT 1
6530 static tTestDesc aSolaris_Once_Init_2Tests[] = {
6531 { TT_EGREP, zSolaris_Once_Init_2Select0, (regex_t*)NULL }, };
6532
6533 /*
6534 * Fix Command Arguments for Solaris_Once_Init_2
6535 */
6536 static const char* apzSolaris_Once_Init_2Patch[] = {
6537 "format",
6538 "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
6539 %0\n\
6540 #else\n\
6541 %1{0}, {0}, {0}, {%3}%4\n\
6542 #endif",
6543 "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{\\{)(0, 0, 0, )(PTHREAD_[A-Z_]+)(\\}\\})[ \t]*$",
6544 (char*)NULL };
6545
6546 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6547 *
6548 * Description of Solaris_Int_Const fix
6549 */
6550 tSCC zSolaris_Int_ConstName[] =
6551 "solaris_int_const";
6552
6553 /*
6554 * File name selection pattern
6555 */
6556 tSCC zSolaris_Int_ConstList[] =
6557 "sys/int_const.h\0";
6558 /*
6559 * Machine/OS name selection pattern
6560 */
6561 #define apzSolaris_Int_ConstMachs (const char**)NULL
6562
6563 /*
6564 * content selection pattern - do fix if pattern found
6565 */
6566 tSCC zSolaris_Int_ConstSelect0[] =
6567 "@\\(#\\)int_const.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6568
6569 #define SOLARIS_INT_CONST_TEST_CT 1
6570 static tTestDesc aSolaris_Int_ConstTests[] = {
6571 { TT_EGREP, zSolaris_Int_ConstSelect0, (regex_t*)NULL }, };
6572
6573 /*
6574 * Fix Command Arguments for Solaris_Int_Const
6575 */
6576 static const char* apzSolaris_Int_ConstPatch[] = {
6577 "format",
6578 "#define\tUINT8_C(c)\t(c)\n\
6579 %1\n\
6580 #define\tUINT16_C(c)\t(c)",
6581 "^#define[ \t]+UINT8_C\\(c\\)[ \t]+__CONCAT__.*\n\
6582 (/*.**/)\n\
6583 #define[ \t]+UINT16_C\\(c\\)[ \t]+__CONCAT__.*",
6584 (char*)NULL };
6585
6586 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6587 *
6588 * Description of Solaris_Int_Limits_1 fix
6589 */
6590 tSCC zSolaris_Int_Limits_1Name[] =
6591 "solaris_int_limits_1";
6592
6593 /*
6594 * File name selection pattern
6595 */
6596 tSCC zSolaris_Int_Limits_1List[] =
6597 "sys/int_limits.h\0";
6598 /*
6599 * Machine/OS name selection pattern
6600 */
6601 #define apzSolaris_Int_Limits_1Machs (const char**)NULL
6602
6603 /*
6604 * content selection pattern - do fix if pattern found
6605 */
6606 tSCC zSolaris_Int_Limits_1Select0[] =
6607 "@\\(#\\)int_limits.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6608
6609 #define SOLARIS_INT_LIMITS_1_TEST_CT 1
6610 static tTestDesc aSolaris_Int_Limits_1Tests[] = {
6611 { TT_EGREP, zSolaris_Int_Limits_1Select0, (regex_t*)NULL }, };
6612
6613 /*
6614 * Fix Command Arguments for Solaris_Int_Limits_1
6615 */
6616 static const char* apzSolaris_Int_Limits_1Patch[] = {
6617 "format",
6618 "#define\tUINT8_MAX\t(255)\n\
6619 #define\tUINT16_MAX\t(65535)",
6620 "^#define[ \t]+UINT8_MAX[ \t]+\\(255U\\)\n\
6621 #define[ \t]+UINT16_MAX[ \t]+\\(65535U\\)",
6622 (char*)NULL };
6623
6624 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6625 *
6626 * Description of Solaris_Int_Limits_2 fix
6627 */
6628 tSCC zSolaris_Int_Limits_2Name[] =
6629 "solaris_int_limits_2";
6630
6631 /*
6632 * File name selection pattern
6633 */
6634 tSCC zSolaris_Int_Limits_2List[] =
6635 "sys/int_limits.h\0";
6636 /*
6637 * Machine/OS name selection pattern
6638 */
6639 #define apzSolaris_Int_Limits_2Machs (const char**)NULL
6640
6641 /*
6642 * content selection pattern - do fix if pattern found
6643 */
6644 tSCC zSolaris_Int_Limits_2Select0[] =
6645 "@\\(#\\)int_limits.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
6646
6647 #define SOLARIS_INT_LIMITS_2_TEST_CT 1
6648 static tTestDesc aSolaris_Int_Limits_2Tests[] = {
6649 { TT_EGREP, zSolaris_Int_Limits_2Select0, (regex_t*)NULL }, };
6650
6651 /*
6652 * Fix Command Arguments for Solaris_Int_Limits_2
6653 */
6654 static const char* apzSolaris_Int_Limits_2Patch[] = {
6655 "format",
6656 "#define\t%1_FAST16_%2 %132_%2",
6657 "^#define[ \t]+(INT|UINT)_FAST16_(MAX|MIN)[ \t](INT|UINT)16.*",
6658 (char*)NULL };
6659
6660 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6661 *
6662 * Description of Solaris_Int_Types fix
6663 */
6664 tSCC zSolaris_Int_TypesName[] =
6665 "solaris_int_types";
6666
6667 /*
6668 * File name selection pattern
6669 */
6670 tSCC zSolaris_Int_TypesList[] =
6671 "sys/int_types.h\0";
6672 /*
6673 * Machine/OS name selection pattern
6674 */
6675 #define apzSolaris_Int_TypesMachs (const char**)NULL
6676
6677 /*
6678 * content selection pattern - do fix if pattern found
6679 */
6680 tSCC zSolaris_Int_TypesSelect0[] =
6681 "__STDC__ - 0 == 0";
6682
6683 /*
6684 * content bypass pattern - skip fix if pattern found
6685 */
6686 tSCC zSolaris_Int_TypesBypass0[] =
6687 "_LONGLONG_TYPE";
6688
6689 #define SOLARIS_INT_TYPES_TEST_CT 2
6690 static tTestDesc aSolaris_Int_TypesTests[] = {
6691 { TT_NEGREP, zSolaris_Int_TypesBypass0, (regex_t*)NULL },
6692 { TT_EGREP, zSolaris_Int_TypesSelect0, (regex_t*)NULL }, };
6693
6694 /*
6695 * Fix Command Arguments for Solaris_Int_Types
6696 */
6697 static const char* apzSolaris_Int_TypesPatch[] = {
6698 "format",
6699 "(defined(_STDC_C99) || !defined(_STRICT_STDC) || defined(__GNUC__))",
6700 (char*)NULL };
6701
6702 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6703 *
6704 * Description of Solaris_Stdio_Tag fix
6705 */
6706 tSCC zSolaris_Stdio_TagName[] =
6707 "solaris_stdio_tag";
6708
6709 /*
6710 * File name selection pattern
6711 */
6712 tSCC zSolaris_Stdio_TagList[] =
6713 "stdio_tag.h\0";
6714 /*
6715 * Machine/OS name selection pattern
6716 */
6717 #define apzSolaris_Stdio_TagMachs (const char**)NULL
6718
6719 /*
6720 * content selection pattern - do fix if pattern found
6721 */
6722 tSCC zSolaris_Stdio_TagSelect0[] =
6723 "__cplusplus < 54321L";
6724
6725 /*
6726 * content bypass pattern - skip fix if pattern found
6727 */
6728 tSCC zSolaris_Stdio_TagBypass0[] =
6729 "__GNUC__";
6730
6731 #define SOLARIS_STDIO_TAG_TEST_CT 2
6732 static tTestDesc aSolaris_Stdio_TagTests[] = {
6733 { TT_NEGREP, zSolaris_Stdio_TagBypass0, (regex_t*)NULL },
6734 { TT_EGREP, zSolaris_Stdio_TagSelect0, (regex_t*)NULL }, };
6735
6736 /*
6737 * Fix Command Arguments for Solaris_Stdio_Tag
6738 */
6739 static const char* apzSolaris_Stdio_TagPatch[] = { sed_cmd_z,
6740 "-e", "s/defined(__cplusplus) && (__cplusplus < 54321L)/0/",
6741 (char*)NULL };
6742
6743 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6744 *
6745 * Description of Statsswtch fix
6746 */
6747 tSCC zStatsswtchName[] =
6748 "statsswtch";
6749
6750 /*
6751 * File name selection pattern
6752 */
6753 tSCC zStatsswtchList[] =
6754 "rpcsvc/rstat.h\0";
6755 /*
6756 * Machine/OS name selection pattern
6757 */
6758 #define apzStatsswtchMachs (const char**)NULL
6759
6760 /*
6761 * content selection pattern - do fix if pattern found
6762 */
6763 tSCC zStatsswtchSelect0[] =
6764 "boottime$";
6765
6766 #define STATSSWTCH_TEST_CT 1
6767 static tTestDesc aStatsswtchTests[] = {
6768 { TT_EGREP, zStatsswtchSelect0, (regex_t*)NULL }, };
6769
6770 /*
6771 * Fix Command Arguments for Statsswtch
6772 */
6773 static const char* apzStatsswtchPatch[] = {
6774 "format",
6775 "boottime;",
6776 (char*)NULL };
6777
6778 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6779 *
6780 * Description of Stdio_Stdarg_H fix
6781 */
6782 tSCC zStdio_Stdarg_HName[] =
6783 "stdio_stdarg_h";
6784
6785 /*
6786 * File name selection pattern
6787 */
6788 tSCC zStdio_Stdarg_HList[] =
6789 "stdio.h\0";
6790 /*
6791 * Machine/OS name selection pattern
6792 */
6793 tSCC* apzStdio_Stdarg_HMachs[] = {
6794 "*-*-solaris2.1[0-9]*",
6795 (const char*)NULL };
6796
6797 /*
6798 * content bypass pattern - skip fix if pattern found
6799 */
6800 tSCC zStdio_Stdarg_HBypass0[] =
6801 "include.*(stdarg.h|machine/ansi.h)";
6802
6803 #define STDIO_STDARG_H_TEST_CT 1
6804 static tTestDesc aStdio_Stdarg_HTests[] = {
6805 { TT_NEGREP, zStdio_Stdarg_HBypass0, (regex_t*)NULL }, };
6806
6807 /*
6808 * Fix Command Arguments for Stdio_Stdarg_H
6809 */
6810 static const char* apzStdio_Stdarg_HPatch[] = {
6811 "wrap",
6812 "#define __need___va_list\n\
6813 #include <stdarg.h>\n",
6814 (char*)NULL };
6815
6816 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6817 *
6818 * Description of Stdio_Va_List fix
6819 */
6820 tSCC zStdio_Va_ListName[] =
6821 "stdio_va_list";
6822
6823 /*
6824 * File name selection pattern
6825 */
6826 tSCC zStdio_Va_ListList[] =
6827 "stdio.h\0internal/stdio_core.h\0internal/wchar_core.h\0";
6828 /*
6829 * Machine/OS name selection pattern
6830 */
6831 tSCC* apzStdio_Va_ListMachs[] = {
6832 "*-*-solaris2.1[0-9]*",
6833 (const char*)NULL };
6834
6835 /*
6836 * content bypass pattern - skip fix if pattern found
6837 */
6838 tSCC zStdio_Va_ListBypass0[] =
6839 "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
6840
6841 #define STDIO_VA_LIST_TEST_CT 1
6842 static tTestDesc aStdio_Va_ListTests[] = {
6843 { TT_NEGREP, zStdio_Va_ListBypass0, (regex_t*)NULL }, };
6844
6845 /*
6846 * Fix Command Arguments for Stdio_Va_List
6847 */
6848 static const char* apzStdio_Va_ListPatch[] = { sed_cmd_z,
6849 "-e", "s@[ \t]va_list\\([ \t)]\\)@ __gnuc_va_list\\1@\n\
6850 s@(va_list)&@(__gnuc_va_list)\\&@\n\
6851 s@ _VA_LIST_));@ __gnuc_va_list));@\n\
6852 s@ __VA_LIST__));@ __gnuc_va_list));@\n\
6853 s@ va_list@ __not_va_list__@\n\
6854 s@\\*va_list@*__not_va_list__@\n\
6855 s@ __va_list)@ __gnuc_va_list)@\n\
6856 s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
6857 s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
6858 s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
6859 s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
6860 s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
6861 s@VA_LIST@DUMMY_VA_LIST@\n\
6862 s@_Va_LIST@_VA_LIST@",
6863 (char*)NULL };
6864
6865 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6866 *
6867 * Description of Stdio_Va_List_Clients fix
6868 */
6869 tSCC zStdio_Va_List_ClientsName[] =
6870 "stdio_va_list_clients";
6871
6872 /*
6873 * File name selection pattern
6874 */
6875 tSCC zStdio_Va_List_ClientsList[] =
6876 "com_err.h\0cps.h\0curses.h\0krb5.h\0lc_core.h\0pfmt.h\0wchar.h\0curses_colr/curses.h\0";
6877 /*
6878 * Machine/OS name selection pattern
6879 */
6880 #define apzStdio_Va_List_ClientsMachs (const char**)NULL
6881
6882 /*
6883 * content bypass pattern - skip fix if pattern found
6884 */
6885 tSCC zStdio_Va_List_ClientsBypass0[] =
6886 "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
6887 tSCC zStdio_Va_List_ClientsBypass1[] =
6888 "include <stdarg\\.h>|#ifdef va_start";
6889
6890 #define STDIO_VA_LIST_CLIENTS_TEST_CT 2
6891 static tTestDesc aStdio_Va_List_ClientsTests[] = {
6892 { TT_NEGREP, zStdio_Va_List_ClientsBypass0, (regex_t*)NULL },
6893 { TT_NEGREP, zStdio_Va_List_ClientsBypass1, (regex_t*)NULL }, };
6894
6895 /*
6896 * Fix Command Arguments for Stdio_Va_List_Clients
6897 */
6898 static const char* apzStdio_Va_List_ClientsPatch[] = { sed_cmd_z,
6899 "-e", "s@[ \t]va_list\\([ \t)]\\)@ __gnuc_va_list\\1@\n\
6900 s@(va_list)&@(__gnuc_va_list)\\&@\n\
6901 s@ _VA_LIST_));@ __gnuc_va_list));@\n\
6902 s@ __VA_LIST__));@ __gnuc_va_list));@\n\
6903 s@ va_list@ __not_va_list__@\n\
6904 s@\\*va_list@*__not_va_list__@\n\
6905 s@ __va_list)@ __gnuc_va_list)@\n\
6906 s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
6907 s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
6908 s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
6909 s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
6910 s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
6911 s@VA_LIST@DUMMY_VA_LIST@\n\
6912 s@_Va_LIST@_VA_LIST@",
6913 (char*)NULL };
6914
6915 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6916 *
6917 * Description of Strict_Ansi_Not fix
6918 */
6919 tSCC zStrict_Ansi_NotName[] =
6920 "strict_ansi_not";
6921
6922 /*
6923 * File name selection pattern
6924 */
6925 #define zStrict_Ansi_NotList (char*)NULL
6926 /*
6927 * Machine/OS name selection pattern
6928 */
6929 #define apzStrict_Ansi_NotMachs (const char**)NULL
6930
6931 /*
6932 * content selection pattern - do fix if pattern found
6933 */
6934 tSCC zStrict_Ansi_NotSelect0[] =
6935 "^([ \t]*#[ \t]*if.*)(!__STDC__|__STDC__[ \t]*==[ \t]*0|__STDC__[ \t]*!=[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*0)";
6936
6937 /*
6938 * content bypass pattern - skip fix if pattern found
6939 */
6940 tSCC zStrict_Ansi_NotBypass0[] =
6941 "GNU and MIPS C compilers define __STDC__ differently";
6942 tSCC zStrict_Ansi_NotBypass1[] =
6943 "__SCO_VERSION__.*__STDC__ != 1";
6944
6945 /*
6946 * perform the C function call test
6947 */
6948 tSCC zStrict_Ansi_NotFTst0[] = "stdc_0_in_system_headers";
6949
6950 #define STRICT_ANSI_NOT_TEST_CT 4
6951 static tTestDesc aStrict_Ansi_NotTests[] = {
6952 { TT_FUNCTION, zStrict_Ansi_NotFTst0, 0 /* unused */ },
6953 { TT_NEGREP, zStrict_Ansi_NotBypass0, (regex_t*)NULL },
6954 { TT_NEGREP, zStrict_Ansi_NotBypass1, (regex_t*)NULL },
6955 { TT_EGREP, zStrict_Ansi_NotSelect0, (regex_t*)NULL }, };
6956
6957 /*
6958 * Fix Command Arguments for Strict_Ansi_Not
6959 */
6960 static const char* apzStrict_Ansi_NotPatch[] = {
6961 "format",
6962 "%1 !defined(__STRICT_ANSI__)",
6963 (char*)NULL };
6964
6965 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6966 *
6967 * Description of Strict_Ansi_Not_Ctd fix
6968 */
6969 tSCC zStrict_Ansi_Not_CtdName[] =
6970 "strict_ansi_not_ctd";
6971
6972 /*
6973 * File name selection pattern
6974 */
6975 tSCC zStrict_Ansi_Not_CtdList[] =
6976 "math.h\0limits.h\0stdio.h\0signal.h\0stdlib.h\0sys/signal.h\0time.h\0";
6977 /*
6978 * Machine/OS name selection pattern
6979 */
6980 #define apzStrict_Ansi_Not_CtdMachs (const char**)NULL
6981
6982 /*
6983 * content selection pattern - do fix if pattern found
6984 */
6985 tSCC zStrict_Ansi_Not_CtdSelect0[] =
6986 "^([ \t]*(\\(|&&|\\|\\|)([ \t(]*!*[ \t]*defined\\([a-zA-Z_0-9]+\\)[ \t]*[|&][|&])*[ \t(]*)(__STDC__[ \t]*(|-[ \t]*0[ \t]*)==[ \t]*0)";
6987
6988 /*
6989 * perform the C function call test
6990 */
6991 tSCC zStrict_Ansi_Not_CtdFTst0[] = "stdc_0_in_system_headers";
6992
6993 #define STRICT_ANSI_NOT_CTD_TEST_CT 2
6994 static tTestDesc aStrict_Ansi_Not_CtdTests[] = {
6995 { TT_FUNCTION, zStrict_Ansi_Not_CtdFTst0, 0 /* unused */ },
6996 { TT_EGREP, zStrict_Ansi_Not_CtdSelect0, (regex_t*)NULL }, };
6997
6998 /*
6999 * Fix Command Arguments for Strict_Ansi_Not_Ctd
7000 */
7001 static const char* apzStrict_Ansi_Not_CtdPatch[] = {
7002 "format",
7003 "%1 !defined(__STRICT_ANSI__)",
7004 (char*)NULL };
7005
7006 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7007 *
7008 * Description of Strict_Ansi_Only fix
7009 */
7010 tSCC zStrict_Ansi_OnlyName[] =
7011 "strict_ansi_only";
7012
7013 /*
7014 * File name selection pattern
7015 */
7016 #define zStrict_Ansi_OnlyList (char*)NULL
7017 /*
7018 * Machine/OS name selection pattern
7019 */
7020 #define apzStrict_Ansi_OnlyMachs (const char**)NULL
7021
7022 /*
7023 * content selection pattern - do fix if pattern found
7024 */
7025 tSCC zStrict_Ansi_OnlySelect0[] =
7026 "^([ \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)";
7027
7028 /*
7029 * perform the C function call test
7030 */
7031 tSCC zStrict_Ansi_OnlyFTst0[] = "stdc_0_in_system_headers";
7032
7033 #define STRICT_ANSI_ONLY_TEST_CT 2
7034 static tTestDesc aStrict_Ansi_OnlyTests[] = {
7035 { TT_FUNCTION, zStrict_Ansi_OnlyFTst0, 0 /* unused */ },
7036 { TT_EGREP, zStrict_Ansi_OnlySelect0, (regex_t*)NULL }, };
7037
7038 /*
7039 * Fix Command Arguments for Strict_Ansi_Only
7040 */
7041 static const char* apzStrict_Ansi_OnlyPatch[] = {
7042 "format",
7043 "%1 defined(__STRICT_ANSI__)",
7044 (char*)NULL };
7045
7046 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7047 *
7048 * Description of Struct_File fix
7049 */
7050 tSCC zStruct_FileName[] =
7051 "struct_file";
7052
7053 /*
7054 * File name selection pattern
7055 */
7056 tSCC zStruct_FileList[] =
7057 "rpc/xdr.h\0";
7058 /*
7059 * Machine/OS name selection pattern
7060 */
7061 #define apzStruct_FileMachs (const char**)NULL
7062
7063 /*
7064 * content selection pattern - do fix if pattern found
7065 */
7066 tSCC zStruct_FileSelect0[] =
7067 "^.*xdrstdio_create.*struct __file_s";
7068
7069 #define STRUCT_FILE_TEST_CT 1
7070 static tTestDesc aStruct_FileTests[] = {
7071 { TT_EGREP, zStruct_FileSelect0, (regex_t*)NULL }, };
7072
7073 /*
7074 * Fix Command Arguments for Struct_File
7075 */
7076 static const char* apzStruct_FilePatch[] = {
7077 "format",
7078 "struct __file_s;\n\
7079 %0",
7080 (char*)NULL };
7081
7082 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7083 *
7084 * Description of Struct_Sockaddr fix
7085 */
7086 tSCC zStruct_SockaddrName[] =
7087 "struct_sockaddr";
7088
7089 /*
7090 * File name selection pattern
7091 */
7092 tSCC zStruct_SockaddrList[] =
7093 "rpc/auth.h\0";
7094 /*
7095 * Machine/OS name selection pattern
7096 */
7097 #define apzStruct_SockaddrMachs (const char**)NULL
7098
7099 /*
7100 * content selection pattern - do fix if pattern found
7101 */
7102 tSCC zStruct_SockaddrSelect0[] =
7103 "^.*authdes_create.*struct sockaddr[^_]";
7104
7105 /*
7106 * content bypass pattern - skip fix if pattern found
7107 */
7108 tSCC zStruct_SockaddrBypass0[] =
7109 "<sys/socket.h>";
7110 tSCC zStruct_SockaddrBypass1[] =
7111 "struct sockaddr;\n";
7112
7113 #define STRUCT_SOCKADDR_TEST_CT 3
7114 static tTestDesc aStruct_SockaddrTests[] = {
7115 { TT_NEGREP, zStruct_SockaddrBypass0, (regex_t*)NULL },
7116 { TT_NEGREP, zStruct_SockaddrBypass1, (regex_t*)NULL },
7117 { TT_EGREP, zStruct_SockaddrSelect0, (regex_t*)NULL }, };
7118
7119 /*
7120 * Fix Command Arguments for Struct_Sockaddr
7121 */
7122 static const char* apzStruct_SockaddrPatch[] = {
7123 "format",
7124 "struct sockaddr;\n\
7125 %0",
7126 (char*)NULL };
7127
7128 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7129 *
7130 * Description of Sun_Auth_Proto fix
7131 */
7132 tSCC zSun_Auth_ProtoName[] =
7133 "sun_auth_proto";
7134
7135 /*
7136 * File name selection pattern
7137 */
7138 tSCC zSun_Auth_ProtoList[] =
7139 "rpc/auth.h\0rpc/clnt.h\0rpc/svc.h\0rpc/xdr.h\0";
7140 /*
7141 * Machine/OS name selection pattern
7142 */
7143 #define apzSun_Auth_ProtoMachs (const char**)NULL
7144
7145 /*
7146 * content selection pattern - do fix if pattern found
7147 */
7148 tSCC zSun_Auth_ProtoSelect0[] =
7149 "\\(\\*[a-z][a-z_]*\\)\\(\\)";
7150
7151 /*
7152 * content bypass pattern - skip fix if pattern found
7153 */
7154 tSCC zSun_Auth_ProtoBypass0[] =
7155 "__cplusplus";
7156
7157 #define SUN_AUTH_PROTO_TEST_CT 2
7158 static tTestDesc aSun_Auth_ProtoTests[] = {
7159 { TT_NEGREP, zSun_Auth_ProtoBypass0, (regex_t*)NULL },
7160 { TT_EGREP, zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };
7161
7162 /*
7163 * Fix Command Arguments for Sun_Auth_Proto
7164 */
7165 static const char* apzSun_Auth_ProtoPatch[] = {
7166 "format",
7167 "#ifdef __cplusplus\n\
7168 %1(...);%2\n\
7169 #else\n\
7170 %1();%2\n\
7171 #endif",
7172 "(.*\\(\\*[a-z][a-z_]*\\))\\(\\);(.*)",
7173 (char*)NULL };
7174
7175 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7176 *
7177 * Description of Sun_Bogus_Ifdef fix
7178 */
7179 tSCC zSun_Bogus_IfdefName[] =
7180 "sun_bogus_ifdef";
7181
7182 /*
7183 * File name selection pattern
7184 */
7185 tSCC zSun_Bogus_IfdefList[] =
7186 "hsfs/hsfs_spec.h\0hsfs/iso_spec.h\0";
7187 /*
7188 * Machine/OS name selection pattern
7189 */
7190 #define apzSun_Bogus_IfdefMachs (const char**)NULL
7191
7192 /*
7193 * content selection pattern - do fix if pattern found
7194 */
7195 tSCC zSun_Bogus_IfdefSelect0[] =
7196 "#ifdef(.*\\|\\|.*)";
7197
7198 #define SUN_BOGUS_IFDEF_TEST_CT 1
7199 static tTestDesc aSun_Bogus_IfdefTests[] = {
7200 { TT_EGREP, zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };
7201
7202 /*
7203 * Fix Command Arguments for Sun_Bogus_Ifdef
7204 */
7205 static const char* apzSun_Bogus_IfdefPatch[] = {
7206 "format",
7207 "#if%1",
7208 (char*)NULL };
7209
7210 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7211 *
7212 * Description of Sun_Catmacro fix
7213 */
7214 tSCC zSun_CatmacroName[] =
7215 "sun_catmacro";
7216
7217 /*
7218 * File name selection pattern
7219 */
7220 tSCC zSun_CatmacroList[] =
7221 "pixrect/memvar.h\0";
7222 /*
7223 * Machine/OS name selection pattern
7224 */
7225 #define apzSun_CatmacroMachs (const char**)NULL
7226
7227 /*
7228 * content selection pattern - do fix if pattern found
7229 */
7230 tSCC zSun_CatmacroSelect0[] =
7231 "^#define[ \t]+CAT\\(a,b\\).*";
7232
7233 #define SUN_CATMACRO_TEST_CT 1
7234 static tTestDesc aSun_CatmacroTests[] = {
7235 { TT_EGREP, zSun_CatmacroSelect0, (regex_t*)NULL }, };
7236
7237 /*
7238 * Fix Command Arguments for Sun_Catmacro
7239 */
7240 static const char* apzSun_CatmacroPatch[] = {
7241 "format",
7242 "#ifdef __STDC__\n\
7243 # define CAT(a,b) a##b\n\
7244 #else\n\
7245 %0\n\
7246 #endif",
7247 (char*)NULL };
7248
7249 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7250 *
7251 * Description of Sun_Malloc fix
7252 */
7253 tSCC zSun_MallocName[] =
7254 "sun_malloc";
7255
7256 /*
7257 * File name selection pattern
7258 */
7259 tSCC zSun_MallocList[] =
7260 "malloc.h\0";
7261 /*
7262 * Machine/OS name selection pattern
7263 */
7264 #define apzSun_MallocMachs (const char**)NULL
7265
7266 /*
7267 * content bypass pattern - skip fix if pattern found
7268 */
7269 tSCC zSun_MallocBypass0[] =
7270 "_CLASSIC_ANSI_TYPES";
7271
7272 #define SUN_MALLOC_TEST_CT 1
7273 static tTestDesc aSun_MallocTests[] = {
7274 { TT_NEGREP, zSun_MallocBypass0, (regex_t*)NULL }, };
7275
7276 /*
7277 * Fix Command Arguments for Sun_Malloc
7278 */
7279 static const char* apzSun_MallocPatch[] = { sed_cmd_z,
7280 "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
7281 "-e", "s/int[ \t][ \t]*free/void\tfree/g",
7282 "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
7283 "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
7284 "-e", "s/char\\([ \t]*\\*[ \t]*calloc\\)/void\\1/g",
7285 (char*)NULL };
7286
7287 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7288 *
7289 * Description of Sun_Rusers_Semi fix
7290 */
7291 tSCC zSun_Rusers_SemiName[] =
7292 "sun_rusers_semi";
7293
7294 /*
7295 * File name selection pattern
7296 */
7297 tSCC zSun_Rusers_SemiList[] =
7298 "rpcsvc/rusers.h\0";
7299 /*
7300 * Machine/OS name selection pattern
7301 */
7302 #define apzSun_Rusers_SemiMachs (const char**)NULL
7303
7304 /*
7305 * content selection pattern - do fix if pattern found
7306 */
7307 tSCC zSun_Rusers_SemiSelect0[] =
7308 "_cnt$";
7309
7310 #define SUN_RUSERS_SEMI_TEST_CT 1
7311 static tTestDesc aSun_Rusers_SemiTests[] = {
7312 { TT_EGREP, zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };
7313
7314 /*
7315 * Fix Command Arguments for Sun_Rusers_Semi
7316 */
7317 static const char* apzSun_Rusers_SemiPatch[] = { sed_cmd_z,
7318 "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
7319 (char*)NULL };
7320
7321 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7322 *
7323 * Description of Sun_Signal fix
7324 */
7325 tSCC zSun_SignalName[] =
7326 "sun_signal";
7327
7328 /*
7329 * File name selection pattern
7330 */
7331 tSCC zSun_SignalList[] =
7332 "sys/signal.h\0signal.h\0";
7333 /*
7334 * Machine/OS name selection pattern
7335 */
7336 #define apzSun_SignalMachs (const char**)NULL
7337
7338 /*
7339 * content selection pattern - do fix if pattern found
7340 */
7341 tSCC zSun_SignalSelect0[] =
7342 "^void\t\\(\\*signal\\(\\)\\)\\(\\);.*";
7343
7344 #define SUN_SIGNAL_TEST_CT 1
7345 static tTestDesc aSun_SignalTests[] = {
7346 { TT_EGREP, zSun_SignalSelect0, (regex_t*)NULL }, };
7347
7348 /*
7349 * Fix Command Arguments for Sun_Signal
7350 */
7351 static const char* apzSun_SignalPatch[] = {
7352 "format",
7353 "#ifdef __cplusplus\n\
7354 void\t(*signal(...))(...);\n\
7355 #else\n\
7356 %0\n\
7357 #endif",
7358 (char*)NULL };
7359
7360 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7361 *
7362 * Description of Sunos_Strlen fix
7363 */
7364 tSCC zSunos_StrlenName[] =
7365 "sunos_strlen";
7366
7367 /*
7368 * File name selection pattern
7369 */
7370 tSCC zSunos_StrlenList[] =
7371 "strings.h\0";
7372 /*
7373 * Machine/OS name selection pattern
7374 */
7375 #define apzSunos_StrlenMachs (const char**)NULL
7376
7377 /*
7378 * content selection pattern - do fix if pattern found
7379 */
7380 tSCC zSunos_StrlenSelect0[] =
7381 "int[ \t]*strlen\\(\\);(.*)";
7382
7383 #define SUNOS_STRLEN_TEST_CT 1
7384 static tTestDesc aSunos_StrlenTests[] = {
7385 { TT_EGREP, zSunos_StrlenSelect0, (regex_t*)NULL }, };
7386
7387 /*
7388 * Fix Command Arguments for Sunos_Strlen
7389 */
7390 static const char* apzSunos_StrlenPatch[] = {
7391 "format",
7392 "__SIZE_TYPE__ strlen();%1",
7393 (char*)NULL };
7394
7395 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7396 *
7397 * Description of Svr4_Disable_Opt fix
7398 */
7399 tSCC zSvr4_Disable_OptName[] =
7400 "svr4_disable_opt";
7401
7402 /*
7403 * File name selection pattern
7404 */
7405 tSCC zSvr4_Disable_OptList[] =
7406 "string.h\0";
7407 /*
7408 * Machine/OS name selection pattern
7409 */
7410 #define apzSvr4_Disable_OptMachs (const char**)NULL
7411
7412 /*
7413 * content selection pattern - do fix if pattern found
7414 */
7415 tSCC zSvr4_Disable_OptSelect0[] =
7416 "#define.*__std_hdr_";
7417
7418 #define SVR4_DISABLE_OPT_TEST_CT 1
7419 static tTestDesc aSvr4_Disable_OptTests[] = {
7420 { TT_EGREP, zSvr4_Disable_OptSelect0, (regex_t*)NULL }, };
7421
7422 /*
7423 * Fix Command Arguments for Svr4_Disable_Opt
7424 */
7425 static const char* apzSvr4_Disable_OptPatch[] = { sed_cmd_z,
7426 "-e", "/#define.*__std_hdr_/d",
7427 (char*)NULL };
7428
7429 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7430 *
7431 * Description of Svr4_Getcwd fix
7432 */
7433 tSCC zSvr4_GetcwdName[] =
7434 "svr4_getcwd";
7435
7436 /*
7437 * File name selection pattern
7438 */
7439 tSCC zSvr4_GetcwdList[] =
7440 "stdlib.h\0unistd.h\0prototypes.h\0";
7441 /*
7442 * Machine/OS name selection pattern
7443 */
7444 #define apzSvr4_GetcwdMachs (const char**)NULL
7445
7446 /*
7447 * content selection pattern - do fix if pattern found
7448 */
7449 tSCC zSvr4_GetcwdSelect0[] =
7450 "getcwd\\(char \\*, int\\)";
7451
7452 #define SVR4_GETCWD_TEST_CT 1
7453 static tTestDesc aSvr4_GetcwdTests[] = {
7454 { TT_EGREP, zSvr4_GetcwdSelect0, (regex_t*)NULL }, };
7455
7456 /*
7457 * Fix Command Arguments for Svr4_Getcwd
7458 */
7459 static const char* apzSvr4_GetcwdPatch[] = {
7460 "format",
7461 "getcwd(char *, size_t)",
7462 (char*)NULL };
7463
7464 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7465 *
7466 * Description of Svr4_Profil fix
7467 */
7468 tSCC zSvr4_ProfilName[] =
7469 "svr4_profil";
7470
7471 /*
7472 * File name selection pattern
7473 */
7474 tSCC zSvr4_ProfilList[] =
7475 "stdlib.h\0unistd.h\0";
7476 /*
7477 * Machine/OS name selection pattern
7478 */
7479 #define apzSvr4_ProfilMachs (const char**)NULL
7480
7481 /*
7482 * content selection pattern - do fix if pattern found
7483 */
7484 tSCC zSvr4_ProfilSelect0[] =
7485 "profil\\(unsigned short \\*, unsigned int, unsigned int, unsigned int\\)";
7486
7487 /*
7488 * content bypass pattern - skip fix if pattern found
7489 */
7490 tSCC zSvr4_ProfilBypass0[] =
7491 "Silicon Graphics";
7492
7493 #define SVR4_PROFIL_TEST_CT 2
7494 static tTestDesc aSvr4_ProfilTests[] = {
7495 { TT_NEGREP, zSvr4_ProfilBypass0, (regex_t*)NULL },
7496 { TT_EGREP, zSvr4_ProfilSelect0, (regex_t*)NULL }, };
7497
7498 /*
7499 * Fix Command Arguments for Svr4_Profil
7500 */
7501 static const char* apzSvr4_ProfilPatch[] = {
7502 "format",
7503 "profil(unsigned short *, size_t, int, unsigned int)",
7504 (char*)NULL };
7505
7506 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7507 *
7508 * Description of Svr4_Sighandler_Type fix
7509 */
7510 tSCC zSvr4_Sighandler_TypeName[] =
7511 "svr4_sighandler_type";
7512
7513 /*
7514 * File name selection pattern
7515 */
7516 tSCC zSvr4_Sighandler_TypeList[] =
7517 "sys/signal.h\0";
7518 /*
7519 * Machine/OS name selection pattern
7520 */
7521 #define apzSvr4_Sighandler_TypeMachs (const char**)NULL
7522
7523 /*
7524 * content selection pattern - do fix if pattern found
7525 */
7526 tSCC zSvr4_Sighandler_TypeSelect0[] =
7527 "void *\\(\\*\\)\\(\\)";
7528
7529 #define SVR4_SIGHANDLER_TYPE_TEST_CT 1
7530 static tTestDesc aSvr4_Sighandler_TypeTests[] = {
7531 { TT_EGREP, zSvr4_Sighandler_TypeSelect0, (regex_t*)NULL }, };
7532
7533 /*
7534 * Fix Command Arguments for Svr4_Sighandler_Type
7535 */
7536 static const char* apzSvr4_Sighandler_TypePatch[] = {
7537 "format",
7538 "void (*)(int)",
7539 (char*)NULL };
7540
7541 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7542 *
7543 * Description of Svr4_Undeclared_Getrnge fix
7544 */
7545 tSCC zSvr4_Undeclared_GetrngeName[] =
7546 "svr4_undeclared_getrnge";
7547
7548 /*
7549 * File name selection pattern
7550 */
7551 tSCC zSvr4_Undeclared_GetrngeList[] =
7552 "regexp.h\0";
7553 /*
7554 * Machine/OS name selection pattern
7555 */
7556 #define apzSvr4_Undeclared_GetrngeMachs (const char**)NULL
7557
7558 /*
7559 * content selection pattern - do fix if pattern found
7560 */
7561 tSCC zSvr4_Undeclared_GetrngeSelect0[] =
7562 "getrnge";
7563
7564 /*
7565 * content bypass pattern - skip fix if pattern found
7566 */
7567 tSCC zSvr4_Undeclared_GetrngeBypass0[] =
7568 "static void getrnge";
7569
7570 #define SVR4_UNDECLARED_GETRNGE_TEST_CT 2
7571 static tTestDesc aSvr4_Undeclared_GetrngeTests[] = {
7572 { TT_NEGREP, zSvr4_Undeclared_GetrngeBypass0, (regex_t*)NULL },
7573 { TT_EGREP, zSvr4_Undeclared_GetrngeSelect0, (regex_t*)NULL }, };
7574
7575 /*
7576 * Fix Command Arguments for Svr4_Undeclared_Getrnge
7577 */
7578 static const char* apzSvr4_Undeclared_GetrngePatch[] = {
7579 "format",
7580 "%0\n\
7581 static int getrnge ();",
7582 "^static int[ \t]+size;",
7583 (char*)NULL };
7584
7585 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7586 *
7587 * Description of Sysv68_String fix
7588 */
7589 tSCC zSysv68_StringName[] =
7590 "sysv68_string";
7591
7592 /*
7593 * File name selection pattern
7594 */
7595 tSCC zSysv68_StringList[] =
7596 "testing.h\0string.h\0";
7597 /*
7598 * Machine/OS name selection pattern
7599 */
7600 #define apzSysv68_StringMachs (const char**)NULL
7601
7602 /*
7603 * content bypass pattern - skip fix if pattern found
7604 */
7605 tSCC zSysv68_StringBypass0[] =
7606 "_CLASSIC_ANSI_TYPES";
7607
7608 #define SYSV68_STRING_TEST_CT 1
7609 static tTestDesc aSysv68_StringTests[] = {
7610 { TT_NEGREP, zSysv68_StringBypass0, (regex_t*)NULL }, };
7611
7612 /*
7613 * Fix Command Arguments for Sysv68_String
7614 */
7615 static const char* apzSysv68_StringPatch[] = { sed_cmd_z,
7616 "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
7617 "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
7618 "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
7619 "-e", "/^extern char$/N",
7620 "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
7621 "-e", "/^extern int$/N",
7622 "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
7623 "-e", "/^\tstrncmp(),$/N",
7624 "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
7625 extern unsigned int\\\n\
7626 \\2/",
7627 (char*)NULL };
7628
7629 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7630 *
7631 * Description of Sysz_Stdlib_For_Sun fix
7632 */
7633 tSCC zSysz_Stdlib_For_SunName[] =
7634 "sysz_stdlib_for_sun";
7635
7636 /*
7637 * File name selection pattern
7638 */
7639 tSCC zSysz_Stdlib_For_SunList[] =
7640 "stdlib.h\0";
7641 /*
7642 * Machine/OS name selection pattern
7643 */
7644 #define apzSysz_Stdlib_For_SunMachs (const char**)NULL
7645
7646 /*
7647 * content selection pattern - do fix if pattern found
7648 */
7649 tSCC zSysz_Stdlib_For_SunSelect0[] =
7650 "char[ \t]*\\*[ \t]*(calloc|malloc|realloc|bsearch)[ \t]*\\(";
7651
7652 /*
7653 * content bypass pattern - skip fix if pattern found
7654 */
7655 tSCC zSysz_Stdlib_For_SunBypass0[] =
7656 "_CLASSIC_ANSI_TYPES";
7657
7658 #define SYSZ_STDLIB_FOR_SUN_TEST_CT 2
7659 static tTestDesc aSysz_Stdlib_For_SunTests[] = {
7660 { TT_NEGREP, zSysz_Stdlib_For_SunBypass0, (regex_t*)NULL },
7661 { TT_EGREP, zSysz_Stdlib_For_SunSelect0, (regex_t*)NULL }, };
7662
7663 /*
7664 * Fix Command Arguments for Sysz_Stdlib_For_Sun
7665 */
7666 static const char* apzSysz_Stdlib_For_SunPatch[] = {
7667 "format",
7668 "void *\t%1(",
7669 (char*)NULL };
7670
7671 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7672 *
7673 * Description of Thread_Keyword fix
7674 */
7675 tSCC zThread_KeywordName[] =
7676 "thread_keyword";
7677
7678 /*
7679 * File name selection pattern
7680 */
7681 tSCC zThread_KeywordList[] =
7682 "pthread.h\0bits/sigthread.h\0";
7683 /*
7684 * Machine/OS name selection pattern
7685 */
7686 #define apzThread_KeywordMachs (const char**)NULL
7687
7688 /*
7689 * content selection pattern - do fix if pattern found
7690 */
7691 tSCC zThread_KeywordSelect0[] =
7692 "([* ])__thread([,)])";
7693
7694 #define THREAD_KEYWORD_TEST_CT 1
7695 static tTestDesc aThread_KeywordTests[] = {
7696 { TT_EGREP, zThread_KeywordSelect0, (regex_t*)NULL }, };
7697
7698 /*
7699 * Fix Command Arguments for Thread_Keyword
7700 */
7701 static const char* apzThread_KeywordPatch[] = {
7702 "format",
7703 "%1__thr%2",
7704 (char*)NULL };
7705
7706 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7707 *
7708 * Description of Tinfo_Cplusplus fix
7709 */
7710 tSCC zTinfo_CplusplusName[] =
7711 "tinfo_cplusplus";
7712
7713 /*
7714 * File name selection pattern
7715 */
7716 tSCC zTinfo_CplusplusList[] =
7717 "tinfo.h\0";
7718 /*
7719 * Machine/OS name selection pattern
7720 */
7721 #define apzTinfo_CplusplusMachs (const char**)NULL
7722
7723 /*
7724 * content selection pattern - do fix if pattern found
7725 */
7726 tSCC zTinfo_CplusplusSelect0[] =
7727 "[ \t]_cplusplus";
7728
7729 #define TINFO_CPLUSPLUS_TEST_CT 1
7730 static tTestDesc aTinfo_CplusplusTests[] = {
7731 { TT_EGREP, zTinfo_CplusplusSelect0, (regex_t*)NULL }, };
7732
7733 /*
7734 * Fix Command Arguments for Tinfo_Cplusplus
7735 */
7736 static const char* apzTinfo_CplusplusPatch[] = {
7737 "format",
7738 " __cplusplus",
7739 (char*)NULL };
7740
7741 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7742 *
7743 * Description of Ultrix_Const fix
7744 */
7745 tSCC zUltrix_ConstName[] =
7746 "ultrix_const";
7747
7748 /*
7749 * File name selection pattern
7750 */
7751 tSCC zUltrix_ConstList[] =
7752 "stdio.h\0";
7753 /*
7754 * Machine/OS name selection pattern
7755 */
7756 #define apzUltrix_ConstMachs (const char**)NULL
7757
7758 /*
7759 * content selection pattern - do fix if pattern found
7760 */
7761 tSCC zUltrix_ConstSelect0[] =
7762 "perror\\( char \\*";
7763
7764 #define ULTRIX_CONST_TEST_CT 1
7765 static tTestDesc aUltrix_ConstTests[] = {
7766 { TT_EGREP, zUltrix_ConstSelect0, (regex_t*)NULL }, };
7767
7768 /*
7769 * Fix Command Arguments for Ultrix_Const
7770 */
7771 static const char* apzUltrix_ConstPatch[] = {
7772 "format",
7773 "%1 const %3 *__",
7774 "([ \t*](perror|fputs|fwrite|scanf|fscanf)\\(.*)[ \t]+(char|void) \\*__",
7775 (char*)NULL };
7776
7777 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7778 *
7779 * Description of Ultrix_Const2 fix
7780 */
7781 tSCC zUltrix_Const2Name[] =
7782 "ultrix_const2";
7783
7784 /*
7785 * File name selection pattern
7786 */
7787 tSCC zUltrix_Const2List[] =
7788 "stdio.h\0";
7789 /*
7790 * Machine/OS name selection pattern
7791 */
7792 #define apzUltrix_Const2Machs (const char**)NULL
7793
7794 /*
7795 * content selection pattern - do fix if pattern found
7796 */
7797 tSCC zUltrix_Const2Select0[] =
7798 "\\*fopen\\( char \\*";
7799
7800 #define ULTRIX_CONST2_TEST_CT 1
7801 static tTestDesc aUltrix_Const2Tests[] = {
7802 { TT_EGREP, zUltrix_Const2Select0, (regex_t*)NULL }, };
7803
7804 /*
7805 * Fix Command Arguments for Ultrix_Const2
7806 */
7807 static const char* apzUltrix_Const2Patch[] = {
7808 "format",
7809 "%1( const char *%3, const char *",
7810 "([ \t*](fopen|sscanf|popen|tempnam))\\([ \t]*char[ \t]*\\*([^,]*),[ \t]*char[ \t]*\\*[ \t]*",
7811 (char*)NULL };
7812
7813 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7814 *
7815 * Description of Va_I960_Macro fix
7816 */
7817 tSCC zVa_I960_MacroName[] =
7818 "va_i960_macro";
7819
7820 /*
7821 * File name selection pattern
7822 */
7823 tSCC zVa_I960_MacroList[] =
7824 "arch/i960/archI960.h\0";
7825 /*
7826 * Machine/OS name selection pattern
7827 */
7828 #define apzVa_I960_MacroMachs (const char**)NULL
7829
7830 /*
7831 * content selection pattern - do fix if pattern found
7832 */
7833 tSCC zVa_I960_MacroSelect0[] =
7834 "__(vsiz|vali|vpad|alignof__)";
7835
7836 #define VA_I960_MACRO_TEST_CT 1
7837 static tTestDesc aVa_I960_MacroTests[] = {
7838 { TT_EGREP, zVa_I960_MacroSelect0, (regex_t*)NULL }, };
7839
7840 /*
7841 * Fix Command Arguments for Va_I960_Macro
7842 */
7843 static const char* apzVa_I960_MacroPatch[] = {
7844 "format",
7845 "__vx%1",
7846 (char*)NULL };
7847
7848 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7849 *
7850 * Description of Void_Null fix
7851 */
7852 tSCC zVoid_NullName[] =
7853 "void_null";
7854
7855 /*
7856 * File name selection pattern
7857 */
7858 tSCC zVoid_NullList[] =
7859 "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";
7860 /*
7861 * Machine/OS name selection pattern
7862 */
7863 #define apzVoid_NullMachs (const char**)NULL
7864
7865 /*
7866 * content selection pattern - do fix if pattern found
7867 */
7868 tSCC zVoid_NullSelect0[] =
7869 "^#[ \t]*define[ \t]+NULL[ \t]+\\(\\(void[ \t]*\\*\\)0\\)";
7870
7871 /*
7872 * content bypass pattern - skip fix if pattern found
7873 */
7874 tSCC zVoid_NullBypass0[] =
7875 "__cplusplus";
7876
7877 #define VOID_NULL_TEST_CT 2
7878 static tTestDesc aVoid_NullTests[] = {
7879 { TT_NEGREP, zVoid_NullBypass0, (regex_t*)NULL },
7880 { TT_EGREP, zVoid_NullSelect0, (regex_t*)NULL }, };
7881
7882 /*
7883 * Fix Command Arguments for Void_Null
7884 */
7885 static const char* apzVoid_NullPatch[] = {
7886 "format",
7887 "#define NULL 0",
7888 (char*)NULL };
7889
7890 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7891 *
7892 * Description of Vxworks_Gcc_Problem fix
7893 */
7894 tSCC zVxworks_Gcc_ProblemName[] =
7895 "vxworks_gcc_problem";
7896
7897 /*
7898 * File name selection pattern
7899 */
7900 tSCC zVxworks_Gcc_ProblemList[] =
7901 "types/vxTypesBase.h\0";
7902 /*
7903 * Machine/OS name selection pattern
7904 */
7905 #define apzVxworks_Gcc_ProblemMachs (const char**)NULL
7906
7907 /*
7908 * content selection pattern - do fix if pattern found
7909 */
7910 tSCC zVxworks_Gcc_ProblemSelect0[] =
7911 "__GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__";
7912
7913 #define VXWORKS_GCC_PROBLEM_TEST_CT 1
7914 static tTestDesc aVxworks_Gcc_ProblemTests[] = {
7915 { TT_EGREP, zVxworks_Gcc_ProblemSelect0, (regex_t*)NULL }, };
7916
7917 /*
7918 * Fix Command Arguments for Vxworks_Gcc_Problem
7919 */
7920 static const char* apzVxworks_Gcc_ProblemPatch[] = { sed_cmd_z,
7921 "-e", "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
7922 "-e", "/[ \t]size_t/i\\\n\
7923 #ifndef _GCC_SIZE_T\\\n\
7924 #define _GCC_SIZE_T\n",
7925 "-e", "/[ \t]size_t/a\\\n\
7926 #endif\n",
7927 "-e", "/[ \t]ptrdiff_t/i\\\n\
7928 #ifndef _GCC_PTRDIFF_T\\\n\
7929 #define _GCC_PTRDIFF_T\n",
7930 "-e", "/[ \t]ptrdiff_t/a\\\n\
7931 #endif\n",
7932 "-e", "/[ \t]wchar_t/i\\\n\
7933 #ifndef _GCC_WCHAR_T\\\n\
7934 #define _GCC_WCHAR_T\n",
7935 "-e", "/[ \t]wchar_t/a\\\n\
7936 #endif\n",
7937 (char*)NULL };
7938
7939 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7940 *
7941 * Description of Vxworks_Needs_Vxtypes fix
7942 */
7943 tSCC zVxworks_Needs_VxtypesName[] =
7944 "vxworks_needs_vxtypes";
7945
7946 /*
7947 * File name selection pattern
7948 */
7949 tSCC zVxworks_Needs_VxtypesList[] =
7950 "time.h\0";
7951 /*
7952 * Machine/OS name selection pattern
7953 */
7954 #define apzVxworks_Needs_VxtypesMachs (const char**)NULL
7955
7956 /*
7957 * content selection pattern - do fix if pattern found
7958 */
7959 tSCC zVxworks_Needs_VxtypesSelect0[] =
7960 "uint_t([ \t]+_clocks_per_sec)";
7961
7962 #define VXWORKS_NEEDS_VXTYPES_TEST_CT 1
7963 static tTestDesc aVxworks_Needs_VxtypesTests[] = {
7964 { TT_EGREP, zVxworks_Needs_VxtypesSelect0, (regex_t*)NULL }, };
7965
7966 /*
7967 * Fix Command Arguments for Vxworks_Needs_Vxtypes
7968 */
7969 static const char* apzVxworks_Needs_VxtypesPatch[] = {
7970 "format",
7971 "unsigned int%1",
7972 (char*)NULL };
7973
7974 /* * * * * * * * * * * * * * * * * * * * * * * * * *
7975 *
7976 * Description of Vxworks_Needs_Vxworks fix
7977 */
7978 tSCC zVxworks_Needs_VxworksName[] =
7979 "vxworks_needs_vxworks";
7980
7981 /*
7982 * File name selection pattern
7983 */
7984 tSCC zVxworks_Needs_VxworksList[] =
7985 "sys/stat.h\0";
7986 /*
7987 * Machine/OS name selection pattern
7988 */
7989 #define apzVxworks_Needs_VxworksMachs (const char**)NULL
7990
7991 /*
7992 * content selection pattern - do fix if pattern found
7993 */
7994 tSCC zVxworks_Needs_VxworksSelect0[] =
7995 "#[ \t]define[ \t]+__INCstath";
7996
7997 /*
7998 * perform the 'test' shell command - do fix on success
7999 */
8000 tSCC zVxworks_Needs_VxworksTest0[] =
8001 " -r types/vxTypesOld.h";
8002 tSCC zVxworks_Needs_VxworksTest1[] =
8003 " -n \"`egrep '#include' $file`\"";
8004 tSCC zVxworks_Needs_VxworksTest2[] =
8005 " -n \"`egrep ULONG $file`\"";
8006
8007 #define VXWORKS_NEEDS_VXWORKS_TEST_CT 4
8008 static tTestDesc aVxworks_Needs_VxworksTests[] = {
8009 { TT_TEST, zVxworks_Needs_VxworksTest0, 0 /* unused */ },
8010 { TT_TEST, zVxworks_Needs_VxworksTest1, 0 /* unused */ },
8011 { TT_TEST, zVxworks_Needs_VxworksTest2, 0 /* unused */ },
8012 { TT_EGREP, zVxworks_Needs_VxworksSelect0, (regex_t*)NULL }, };
8013
8014 /*
8015 * Fix Command Arguments for Vxworks_Needs_Vxworks
8016 */
8017 static const char* apzVxworks_Needs_VxworksPatch[] = { sed_cmd_z,
8018 "-e", "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n\
8019 #include <types/vxTypesOld.h>\n",
8020 (char*)NULL };
8021
8022 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8023 *
8024 * Description of Vxworks_Time fix
8025 */
8026 tSCC zVxworks_TimeName[] =
8027 "vxworks_time";
8028
8029 /*
8030 * File name selection pattern
8031 */
8032 tSCC zVxworks_TimeList[] =
8033 "time.h\0";
8034 /*
8035 * Machine/OS name selection pattern
8036 */
8037 #define apzVxworks_TimeMachs (const char**)NULL
8038
8039 /*
8040 * content selection pattern - do fix if pattern found
8041 */
8042 tSCC zVxworks_TimeSelect0[] =
8043 "#[ \t]*define[ \t]+VOIDFUNCPTR[ \t].*";
8044
8045 /*
8046 * perform the 'test' shell command - do fix on success
8047 */
8048 tSCC zVxworks_TimeTest0[] =
8049 " -r vxWorks.h";
8050
8051 #define VXWORKS_TIME_TEST_CT 2
8052 static tTestDesc aVxworks_TimeTests[] = {
8053 { TT_TEST, zVxworks_TimeTest0, 0 /* unused */ },
8054 { TT_EGREP, zVxworks_TimeSelect0, (regex_t*)NULL }, };
8055
8056 /*
8057 * Fix Command Arguments for Vxworks_Time
8058 */
8059 static const char* apzVxworks_TimePatch[] = {
8060 "format",
8061 "#ifndef __gcc_VOIDFUNCPTR_defined\n\
8062 #ifdef __cplusplus\n\
8063 typedef void (*__gcc_VOIDFUNCPTR) (...);\n\
8064 #else\n\
8065 typedef void (*__gcc_VOIDFUNCPTR) ();\n\
8066 #endif\n\
8067 #define __gcc_VOIDFUNCPTR_defined\n\
8068 #endif\n\
8069 #define VOIDFUNCPTR __gcc_VOIDFUNCPTR",
8070 (char*)NULL };
8071
8072 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8073 *
8074 * Description of X11_Class fix
8075 */
8076 tSCC zX11_ClassName[] =
8077 "x11_class";
8078
8079 /*
8080 * File name selection pattern
8081 */
8082 tSCC zX11_ClassList[] =
8083 "X11/ShellP.h\0";
8084 /*
8085 * Machine/OS name selection pattern
8086 */
8087 #define apzX11_ClassMachs (const char**)NULL
8088
8089 /*
8090 * content selection pattern - do fix if pattern found
8091 */
8092 tSCC zX11_ClassSelect0[] =
8093 "^([ \t]*char \\*)class;(.*)";
8094
8095 /*
8096 * content bypass pattern - skip fix if pattern found
8097 */
8098 tSCC zX11_ClassBypass0[] =
8099 "__cplusplus";
8100
8101 #define X11_CLASS_TEST_CT 2
8102 static tTestDesc aX11_ClassTests[] = {
8103 { TT_NEGREP, zX11_ClassBypass0, (regex_t*)NULL },
8104 { TT_EGREP, zX11_ClassSelect0, (regex_t*)NULL }, };
8105
8106 /*
8107 * Fix Command Arguments for X11_Class
8108 */
8109 static const char* apzX11_ClassPatch[] = {
8110 "format",
8111 "#ifdef __cplusplus\n\
8112 %1c_class;%2\n\
8113 #else\n\
8114 %1class;%2\n\
8115 #endif",
8116 (char*)NULL };
8117
8118 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8119 *
8120 * Description of X11_Class_Usage fix
8121 */
8122 tSCC zX11_Class_UsageName[] =
8123 "x11_class_usage";
8124
8125 /*
8126 * File name selection pattern
8127 */
8128 tSCC zX11_Class_UsageList[] =
8129 "Xm/BaseClassI.h\0";
8130 /*
8131 * Machine/OS name selection pattern
8132 */
8133 #define apzX11_Class_UsageMachs (const char**)NULL
8134
8135 /*
8136 * content selection pattern - do fix if pattern found
8137 */
8138 tSCC zX11_Class_UsageSelect0[] =
8139 " class\\)";
8140
8141 /*
8142 * content bypass pattern - skip fix if pattern found
8143 */
8144 tSCC zX11_Class_UsageBypass0[] =
8145 "__cplusplus";
8146
8147 #define X11_CLASS_USAGE_TEST_CT 2
8148 static tTestDesc aX11_Class_UsageTests[] = {
8149 { TT_NEGREP, zX11_Class_UsageBypass0, (regex_t*)NULL },
8150 { TT_EGREP, zX11_Class_UsageSelect0, (regex_t*)NULL }, };
8151
8152 /*
8153 * Fix Command Arguments for X11_Class_Usage
8154 */
8155 static const char* apzX11_Class_UsagePatch[] = {
8156 "format",
8157 " c_class)",
8158 (char*)NULL };
8159
8160 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8161 *
8162 * Description of X11_New fix
8163 */
8164 tSCC zX11_NewName[] =
8165 "x11_new";
8166
8167 /*
8168 * File name selection pattern
8169 */
8170 tSCC zX11_NewList[] =
8171 "Xm/Traversal.h\0";
8172 /*
8173 * Machine/OS name selection pattern
8174 */
8175 #define apzX11_NewMachs (const char**)NULL
8176
8177 /*
8178 * content bypass pattern - skip fix if pattern found
8179 */
8180 tSCC zX11_NewBypass0[] =
8181 "__cplusplus";
8182
8183 #define X11_NEW_TEST_CT 1
8184 static tTestDesc aX11_NewTests[] = {
8185 { TT_NEGREP, zX11_NewBypass0, (regex_t*)NULL }, };
8186
8187 /*
8188 * Fix Command Arguments for X11_New
8189 */
8190 static const char* apzX11_NewPatch[] = { sed_cmd_z,
8191 "-e", "/Widget\told, new;/i\\\n\
8192 #ifdef __cplusplus\\\n\
8193 \\\tWidget\told, c_new;\\\n\
8194 #else\n",
8195 "-e", "/Widget\told, new;/a\\\n\
8196 #endif\n",
8197 "-e", "s/Widget new,/Widget c_new,/g",
8198 (char*)NULL };
8199
8200 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8201 *
8202 * Description of X11_Sprintf fix
8203 */
8204 tSCC zX11_SprintfName[] =
8205 "x11_sprintf";
8206
8207 /*
8208 * File name selection pattern
8209 */
8210 tSCC zX11_SprintfList[] =
8211 "X11/Xmu.h\0X11/Xmu/Xmu.h\0";
8212 /*
8213 * Machine/OS name selection pattern
8214 */
8215 #define apzX11_SprintfMachs (const char**)NULL
8216
8217 /*
8218 * content selection pattern - do fix if pattern found
8219 */
8220 tSCC zX11_SprintfSelect0[] =
8221 "^extern char \\*\tsprintf\\(\\);$";
8222
8223 #define X11_SPRINTF_TEST_CT 1
8224 static tTestDesc aX11_SprintfTests[] = {
8225 { TT_EGREP, zX11_SprintfSelect0, (regex_t*)NULL }, };
8226
8227 /*
8228 * Fix Command Arguments for X11_Sprintf
8229 */
8230 static const char* apzX11_SprintfPatch[] = {
8231 "format",
8232 "#ifndef __STDC__\n\
8233 %0\n\
8234 #endif /* !defined __STDC__ */",
8235 (char*)NULL };
8236
8237
8238 /* * * * * * * * * * * * * * * * * * * * * * * * * *
8239 *
8240 * List of all fixes
8241 */
8242 #define REGEX_COUNT 244
8243 #define MACH_LIST_SIZE_LIMIT 181
8244 #define FIX_COUNT 202
8245
8246 /*
8247 * Enumerate the fixes
8248 */
8249 typedef enum {
8250 AAB_AIX_STDIO_FIXIDX,
8251 AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_FIXIDX,
8252 AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_FIXIDX,
8253 AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
8254 AAB_FD_ZERO_GNU_TYPES_H_FIXIDX,
8255 AAB_FD_ZERO_SELECTBITS_H_FIXIDX,
8256 AAB_SOLARIS_SYS_VARARGS_H_FIXIDX,
8257 AAB_SUN_MEMCPY_FIXIDX,
8258 AIX_COMPLEX_FIXIDX,
8259 AIX_PTHREAD_FIXIDX,
8260 AIX_STDINT_1_FIXIDX,
8261 AIX_STDINT_2_FIXIDX,
8262 AIX_STDINT_3_FIXIDX,
8263 AIX_STDINT_4_FIXIDX,
8264 AIX_STDINT_5_FIXIDX,
8265 AIX_SYSMACHINE_FIXIDX,
8266 AIX_SYSWAIT_2_FIXIDX,
8267 AIX_VOLATILE_FIXIDX,
8268 ALPHA___ASSERT_FIXIDX,
8269 ALPHA___EXTERN_PREFIX_FIXIDX,
8270 ALPHA___EXTERN_PREFIX_STANDARDS_FIXIDX,
8271 ALPHA___EXTERN_PREFIX_SYS_STAT_FIXIDX,
8272 ALPHA_ASSERT_FIXIDX,
8273 ALPHA_BAD_LVAL_FIXIDX,
8274 ALPHA_GETOPT_FIXIDX,
8275 ALPHA_IF_SEMICOLON_FIXIDX,
8276 ALPHA_PARENS_FIXIDX,
8277 ALPHA_PTHREAD_FIXIDX,
8278 ALPHA_PTHREAD_GCC_FIXIDX,
8279 ALPHA_PTHREAD_INIT_FIXIDX,
8280 ALPHA_SBRK_FIXIDX,
8281 ALPHA_WCHAR_FIXIDX,
8282 AVOID_BOOL_DEFINE_FIXIDX,
8283 AVOID_BOOL_TYPE_FIXIDX,
8284 AVOID_WCHAR_T_TYPE_FIXIDX,
8285 BAD_STRUCT_TERM_FIXIDX,
8286 BADQUOTE_FIXIDX,
8287 BROKEN_ASSERT_STDIO_FIXIDX,
8288 BROKEN_ASSERT_STDLIB_FIXIDX,
8289 BROKEN_CABS_FIXIDX,
8290 BROKEN_NAN_FIXIDX,
8291 BSD_STDIO_ATTRS_CONFLICT_FIXIDX,
8292 CTRL_QUOTES_DEF_FIXIDX,
8293 CTRL_QUOTES_USE_FIXIDX,
8294 CXX_UNREADY_FIXIDX,
8295 DARWIN_EXTERNC_FIXIDX,
8296 DARWIN_GCC4_BREAKAGE_FIXIDX,
8297 DARWIN_PRIVATE_EXTERN_FIXIDX,
8298 DARWIN_STDINT_1_FIXIDX,
8299 DARWIN_STDINT_2_FIXIDX,
8300 DARWIN_STDINT_3_FIXIDX,
8301 DARWIN_STDINT_4_FIXIDX,
8302 DARWIN_STDINT_5_FIXIDX,
8303 DARWIN_STDINT_6_FIXIDX,
8304 DARWIN_STDINT_7_FIXIDX,
8305 DEC_INTERN_ASM_FIXIDX,
8306 DJGPP_WCHAR_H_FIXIDX,
8307 ECD_CURSOR_FIXIDX,
8308 FREEBSD_GCC3_BREAKAGE_FIXIDX,
8309 FREEBSD_GCC4_BREAKAGE_FIXIDX,
8310 GLIBC_C99_INLINE_1_FIXIDX,
8311 GLIBC_C99_INLINE_1A_FIXIDX,
8312 GLIBC_C99_INLINE_2_FIXIDX,
8313 GLIBC_C99_INLINE_3_FIXIDX,
8314 GLIBC_C99_INLINE_4_FIXIDX,
8315 GLIBC_MUTEX_INIT_FIXIDX,
8316 GLIBC_STDINT_FIXIDX,
8317 GLIBC_TGMATH_FIXIDX,
8318 GNU_TYPES_FIXIDX,
8319 HP_INLINE_FIXIDX,
8320 HP_SYSFILE_FIXIDX,
8321 HPPA_HPUX_FP_MACROS_FIXIDX,
8322 HPUX10_CPP_POW_INLINE_FIXIDX,
8323 HPUX11_CPP_POW_INLINE_FIXIDX,
8324 HPUX10_CTYPE_DECLARATIONS1_FIXIDX,
8325 HPUX10_CTYPE_DECLARATIONS2_FIXIDX,
8326 HPUX10_STDIO_DECLARATIONS_FIXIDX,
8327 HPUX11_ABS_FIXIDX,
8328 HPUX11_FABSF_FIXIDX,
8329 HPUX11_PTHREAD_CONST_FIXIDX,
8330 HPUX11_SIZE_T_FIXIDX,
8331 HPUX11_SNPRINTF_FIXIDX,
8332 HPUX11_VSNPRINTF_FIXIDX,
8333 HPUX8_BOGUS_INLINES_FIXIDX,
8334 HPUX_CTYPE_MACROS_FIXIDX,
8335 HPUX_HTONL_FIXIDX,
8336 HPUX_LONG_DOUBLE_FIXIDX,
8337 HPUX_LONG_DOUBLE_2_FIXIDX,
8338 HPUX_SYSTIME_FIXIDX,
8339 HPUX_SPU_INFO_FIXIDX,
8340 HPUX11_EXTERN_SENDFILE_FIXIDX,
8341 HPUX11_EXTERN_SENDPATH_FIXIDX,
8342 HPUX_EXTERN_ERRNO_FIXIDX,
8343 HPUX_PTHREAD_INITIALIZERS_FIXIDX,
8344 HPUX_C99_INTPTR_FIXIDX,
8345 HPUX_C99_INTTYPES_FIXIDX,
8346 HPUX_C99_INTTYPES2_FIXIDX,
8347 HPUX_STDINT_LEAST_FAST_FIXIDX,
8348 HPUX_INTTYPE_INT8_T_FIXIDX,
8349 HPUX_IMAGINARY_I_FIXIDX,
8350 HUGE_VAL_HEX_FIXIDX,
8351 HUGE_VALF_HEX_FIXIDX,
8352 HUGE_VALL_HEX_FIXIDX,
8353 INT_ABORT_FREE_AND_EXIT_FIXIDX,
8354 IO_QUOTES_DEF_FIXIDX,
8355 IO_QUOTES_USE_FIXIDX,
8356 IP_MISSING_SEMI_FIXIDX,
8357 IRIX___RESTRICT_FIXIDX,
8358 IRIX___GENERIC1_FIXIDX,
8359 IRIX___GENERIC2_FIXIDX,
8360 IRIX_ASM_APOSTROPHE_FIXIDX,
8361 IRIX_COMPLEX_FIXIDX,
8362 IRIX_LIMITS_CONST_FIXIDX,
8363 IRIX_SOCKLEN_T_FIXIDX,
8364 IRIX_STDINT_C99_FIXIDX,
8365 IRIX_STDIO_VA_LIST_FIXIDX,
8366 IRIX_WCSFTIME_FIXIDX,
8367 KANDR_CONCAT_FIXIDX,
8368 LINUX_IA64_UCONTEXT_FIXIDX,
8369 LYNXOS_NO_WARNING_IN_SYS_TIME_H_FIXIDX,
8370 LYNXOS_MISSING_PUTENV_FIXIDX,
8371 MACHINE_ANSI_H_VA_LIST_FIXIDX,
8372 MACHINE_NAME_FIXIDX,
8373 MATH_EXCEPTION_FIXIDX,
8374 MATH_HUGE_VAL_FROM_DBL_MAX_FIXIDX,
8375 NESTED_AUTH_DES_FIXIDX,
8376 NETBSD_C99_INLINE_1_FIXIDX,
8377 NETBSD_C99_INLINE_2_FIXIDX,
8378 NETBSD_EXTRA_SEMICOLON_FIXIDX,
8379 NEWLIB_STDINT_1_FIXIDX,
8380 NEWLIB_STDINT_2_FIXIDX,
8381 NEXT_MATH_PREFIX_FIXIDX,
8382 NEXT_TEMPLATE_FIXIDX,
8383 NEXT_VOLITILE_FIXIDX,
8384 NEXT_WAIT_UNION_FIXIDX,
8385 NODEENT_SYNTAX_FIXIDX,
8386 OPENBSD_NULL_DEFINITION_FIXIDX,
8387 OBSTACK_LVALUE_CAST_FIXIDX,
8388 OPENBSD_VA_START_FIXIDX,
8389 OSF_NAMESPACE_A_FIXIDX,
8390 OSF_NAMESPACE_C_FIXIDX,
8391 PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_FIXIDX,
8392 READ_RET_TYPE_FIXIDX,
8393 RPC_XDR_LVALUE_CAST_A_FIXIDX,
8394 RPC_XDR_LVALUE_CAST_B_FIXIDX,
8395 RS6000_DOUBLE_FIXIDX,
8396 RS6000_FCHMOD_FIXIDX,
8397 RS6000_PARAM_FIXIDX,
8398 SOLARIS_COMPLEX_FIXIDX,
8399 SOLARIS_MATH_1_FIXIDX,
8400 SOLARIS_MATH_2_FIXIDX,
8401 SOLARIS_MATH_3_FIXIDX,
8402 SOLARIS_MATH_4_FIXIDX,
8403 SOLARIS_MATH_8_FIXIDX,
8404 SOLARIS_MATH_9_FIXIDX,
8405 SOLARIS_MATH_10_FIXIDX,
8406 SOLARIS_MUTEX_INIT_2_FIXIDX,
8407 SOLARIS_RWLOCK_INIT_1_FIXIDX,
8408 SOLARIS_ONCE_INIT_1_FIXIDX,
8409 SOLARIS_ONCE_INIT_2_FIXIDX,
8410 SOLARIS_INT_CONST_FIXIDX,
8411 SOLARIS_INT_LIMITS_1_FIXIDX,
8412 SOLARIS_INT_LIMITS_2_FIXIDX,
8413 SOLARIS_INT_TYPES_FIXIDX,
8414 SOLARIS_STDIO_TAG_FIXIDX,
8415 STATSSWTCH_FIXIDX,
8416 STDIO_STDARG_H_FIXIDX,
8417 STDIO_VA_LIST_FIXIDX,
8418 STDIO_VA_LIST_CLIENTS_FIXIDX,
8419 STRICT_ANSI_NOT_FIXIDX,
8420 STRICT_ANSI_NOT_CTD_FIXIDX,
8421 STRICT_ANSI_ONLY_FIXIDX,
8422 STRUCT_FILE_FIXIDX,
8423 STRUCT_SOCKADDR_FIXIDX,
8424 SUN_AUTH_PROTO_FIXIDX,
8425 SUN_BOGUS_IFDEF_FIXIDX,
8426 SUN_CATMACRO_FIXIDX,
8427 SUN_MALLOC_FIXIDX,
8428 SUN_RUSERS_SEMI_FIXIDX,
8429 SUN_SIGNAL_FIXIDX,
8430 SUNOS_STRLEN_FIXIDX,
8431 SVR4_DISABLE_OPT_FIXIDX,
8432 SVR4_GETCWD_FIXIDX,
8433 SVR4_PROFIL_FIXIDX,
8434 SVR4_SIGHANDLER_TYPE_FIXIDX,
8435 SVR4_UNDECLARED_GETRNGE_FIXIDX,
8436 SYSV68_STRING_FIXIDX,
8437 SYSZ_STDLIB_FOR_SUN_FIXIDX,
8438 THREAD_KEYWORD_FIXIDX,
8439 TINFO_CPLUSPLUS_FIXIDX,
8440 ULTRIX_CONST_FIXIDX,
8441 ULTRIX_CONST2_FIXIDX,
8442 VA_I960_MACRO_FIXIDX,
8443 VOID_NULL_FIXIDX,
8444 VXWORKS_GCC_PROBLEM_FIXIDX,
8445 VXWORKS_NEEDS_VXTYPES_FIXIDX,
8446 VXWORKS_NEEDS_VXWORKS_FIXIDX,
8447 VXWORKS_TIME_FIXIDX,
8448 X11_CLASS_FIXIDX,
8449 X11_CLASS_USAGE_FIXIDX,
8450 X11_NEW_FIXIDX,
8451 X11_SPRINTF_FIXIDX
8452 } t_fixinc_idx;
8453
8454 tFixDesc fixDescList[ FIX_COUNT ] = {
8455 { zAab_Aix_StdioName, zAab_Aix_StdioList,
8456 apzAab_Aix_StdioMachs,
8457 AAB_AIX_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8458 aAab_Aix_StdioTests, apzAab_Aix_StdioPatch, 0 },
8459
8460 { zAab_Darwin7_9_Long_Double_FuncsName, zAab_Darwin7_9_Long_Double_FuncsList,
8461 apzAab_Darwin7_9_Long_Double_FuncsMachs,
8462 AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8463 aAab_Darwin7_9_Long_Double_FuncsTests, apzAab_Darwin7_9_Long_Double_FuncsPatch, 0 },
8464
8465 { zAab_Darwin7_9_Long_Double_Funcs_2Name, zAab_Darwin7_9_Long_Double_Funcs_2List,
8466 apzAab_Darwin7_9_Long_Double_Funcs_2Machs,
8467 AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8468 aAab_Darwin7_9_Long_Double_Funcs_2Tests, apzAab_Darwin7_9_Long_Double_Funcs_2Patch, 0 },
8469
8470 { zAab_Fd_Zero_Asm_Posix_Types_HName, zAab_Fd_Zero_Asm_Posix_Types_HList,
8471 apzAab_Fd_Zero_Asm_Posix_Types_HMachs,
8472 AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8473 aAab_Fd_Zero_Asm_Posix_Types_HTests, apzAab_Fd_Zero_Asm_Posix_Types_HPatch, 0 },
8474
8475 { zAab_Fd_Zero_Gnu_Types_HName, zAab_Fd_Zero_Gnu_Types_HList,
8476 apzAab_Fd_Zero_Gnu_Types_HMachs,
8477 AAB_FD_ZERO_GNU_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8478 aAab_Fd_Zero_Gnu_Types_HTests, apzAab_Fd_Zero_Gnu_Types_HPatch, 0 },
8479
8480 { zAab_Fd_Zero_Selectbits_HName, zAab_Fd_Zero_Selectbits_HList,
8481 apzAab_Fd_Zero_Selectbits_HMachs,
8482 AAB_FD_ZERO_SELECTBITS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8483 aAab_Fd_Zero_Selectbits_HTests, apzAab_Fd_Zero_Selectbits_HPatch, 0 },
8484
8485 { zAab_Solaris_Sys_Varargs_HName, zAab_Solaris_Sys_Varargs_HList,
8486 apzAab_Solaris_Sys_Varargs_HMachs,
8487 AAB_SOLARIS_SYS_VARARGS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8488 aAab_Solaris_Sys_Varargs_HTests, apzAab_Solaris_Sys_Varargs_HPatch, 0 },
8489
8490 { zAab_Sun_MemcpyName, zAab_Sun_MemcpyList,
8491 apzAab_Sun_MemcpyMachs,
8492 AAB_SUN_MEMCPY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8493 aAab_Sun_MemcpyTests, apzAab_Sun_MemcpyPatch, 0 },
8494
8495 { zAix_ComplexName, zAix_ComplexList,
8496 apzAix_ComplexMachs,
8497 AIX_COMPLEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8498 aAix_ComplexTests, apzAix_ComplexPatch, 0 },
8499
8500 { zAix_PthreadName, zAix_PthreadList,
8501 apzAix_PthreadMachs,
8502 AIX_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8503 aAix_PthreadTests, apzAix_PthreadPatch, 0 },
8504
8505 { zAix_Stdint_1Name, zAix_Stdint_1List,
8506 apzAix_Stdint_1Machs,
8507 AIX_STDINT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8508 aAix_Stdint_1Tests, apzAix_Stdint_1Patch, 0 },
8509
8510 { zAix_Stdint_2Name, zAix_Stdint_2List,
8511 apzAix_Stdint_2Machs,
8512 AIX_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8513 aAix_Stdint_2Tests, apzAix_Stdint_2Patch, 0 },
8514
8515 { zAix_Stdint_3Name, zAix_Stdint_3List,
8516 apzAix_Stdint_3Machs,
8517 AIX_STDINT_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8518 aAix_Stdint_3Tests, apzAix_Stdint_3Patch, 0 },
8519
8520 { zAix_Stdint_4Name, zAix_Stdint_4List,
8521 apzAix_Stdint_4Machs,
8522 AIX_STDINT_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8523 aAix_Stdint_4Tests, apzAix_Stdint_4Patch, 0 },
8524
8525 { zAix_Stdint_5Name, zAix_Stdint_5List,
8526 apzAix_Stdint_5Machs,
8527 AIX_STDINT_5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8528 aAix_Stdint_5Tests, apzAix_Stdint_5Patch, 0 },
8529
8530 { zAix_SysmachineName, zAix_SysmachineList,
8531 apzAix_SysmachineMachs,
8532 AIX_SYSMACHINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8533 aAix_SysmachineTests, apzAix_SysmachinePatch, 0 },
8534
8535 { zAix_Syswait_2Name, zAix_Syswait_2List,
8536 apzAix_Syswait_2Machs,
8537 AIX_SYSWAIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8538 aAix_Syswait_2Tests, apzAix_Syswait_2Patch, 0 },
8539
8540 { zAix_VolatileName, zAix_VolatileList,
8541 apzAix_VolatileMachs,
8542 AIX_VOLATILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8543 aAix_VolatileTests, apzAix_VolatilePatch, 0 },
8544
8545 { zAlpha___AssertName, zAlpha___AssertList,
8546 apzAlpha___AssertMachs,
8547 ALPHA___ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8548 aAlpha___AssertTests, apzAlpha___AssertPatch, 0 },
8549
8550 { zAlpha___Extern_PrefixName, zAlpha___Extern_PrefixList,
8551 apzAlpha___Extern_PrefixMachs,
8552 ALPHA___EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8553 aAlpha___Extern_PrefixTests, apzAlpha___Extern_PrefixPatch, 0 },
8554
8555 { zAlpha___Extern_Prefix_StandardsName, zAlpha___Extern_Prefix_StandardsList,
8556 apzAlpha___Extern_Prefix_StandardsMachs,
8557 ALPHA___EXTERN_PREFIX_STANDARDS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8558 aAlpha___Extern_Prefix_StandardsTests, apzAlpha___Extern_Prefix_StandardsPatch, 0 },
8559
8560 { zAlpha___Extern_Prefix_Sys_StatName, zAlpha___Extern_Prefix_Sys_StatList,
8561 apzAlpha___Extern_Prefix_Sys_StatMachs,
8562 ALPHA___EXTERN_PREFIX_SYS_STAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8563 aAlpha___Extern_Prefix_Sys_StatTests, apzAlpha___Extern_Prefix_Sys_StatPatch, 0 },
8564
8565 { zAlpha_AssertName, zAlpha_AssertList,
8566 apzAlpha_AssertMachs,
8567 ALPHA_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8568 aAlpha_AssertTests, apzAlpha_AssertPatch, 0 },
8569
8570 { zAlpha_Bad_LvalName, zAlpha_Bad_LvalList,
8571 apzAlpha_Bad_LvalMachs,
8572 ALPHA_BAD_LVAL_TEST_CT, FD_MACH_ONLY,
8573 aAlpha_Bad_LvalTests, apzAlpha_Bad_LvalPatch, 0 },
8574
8575 { zAlpha_GetoptName, zAlpha_GetoptList,
8576 apzAlpha_GetoptMachs,
8577 ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8578 aAlpha_GetoptTests, apzAlpha_GetoptPatch, 0 },
8579
8580 { zAlpha_If_SemicolonName, zAlpha_If_SemicolonList,
8581 apzAlpha_If_SemicolonMachs,
8582 ALPHA_IF_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8583 aAlpha_If_SemicolonTests, apzAlpha_If_SemicolonPatch, 0 },
8584
8585 { zAlpha_ParensName, zAlpha_ParensList,
8586 apzAlpha_ParensMachs,
8587 ALPHA_PARENS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8588 aAlpha_ParensTests, apzAlpha_ParensPatch, 0 },
8589
8590 { zAlpha_PthreadName, zAlpha_PthreadList,
8591 apzAlpha_PthreadMachs,
8592 ALPHA_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8593 aAlpha_PthreadTests, apzAlpha_PthreadPatch, 0 },
8594
8595 { zAlpha_Pthread_GccName, zAlpha_Pthread_GccList,
8596 apzAlpha_Pthread_GccMachs,
8597 ALPHA_PTHREAD_GCC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8598 aAlpha_Pthread_GccTests, apzAlpha_Pthread_GccPatch, 0 },
8599
8600 { zAlpha_Pthread_InitName, zAlpha_Pthread_InitList,
8601 apzAlpha_Pthread_InitMachs,
8602 ALPHA_PTHREAD_INIT_TEST_CT, FD_MACH_ONLY,
8603 aAlpha_Pthread_InitTests, apzAlpha_Pthread_InitPatch, 0 },
8604
8605 { zAlpha_SbrkName, zAlpha_SbrkList,
8606 apzAlpha_SbrkMachs,
8607 ALPHA_SBRK_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8608 aAlpha_SbrkTests, apzAlpha_SbrkPatch, 0 },
8609
8610 { zAlpha_WcharName, zAlpha_WcharList,
8611 apzAlpha_WcharMachs,
8612 ALPHA_WCHAR_TEST_CT, FD_MACH_ONLY,
8613 aAlpha_WcharTests, apzAlpha_WcharPatch, 0 },
8614
8615 { zAvoid_Bool_DefineName, zAvoid_Bool_DefineList,
8616 apzAvoid_Bool_DefineMachs,
8617 AVOID_BOOL_DEFINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8618 aAvoid_Bool_DefineTests, apzAvoid_Bool_DefinePatch, 0 },
8619
8620 { zAvoid_Bool_TypeName, zAvoid_Bool_TypeList,
8621 apzAvoid_Bool_TypeMachs,
8622 AVOID_BOOL_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8623 aAvoid_Bool_TypeTests, apzAvoid_Bool_TypePatch, 0 },
8624
8625 { zAvoid_Wchar_T_TypeName, zAvoid_Wchar_T_TypeList,
8626 apzAvoid_Wchar_T_TypeMachs,
8627 AVOID_WCHAR_T_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8628 aAvoid_Wchar_T_TypeTests, apzAvoid_Wchar_T_TypePatch, 0 },
8629
8630 { zBad_Struct_TermName, zBad_Struct_TermList,
8631 apzBad_Struct_TermMachs,
8632 BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8633 aBad_Struct_TermTests, apzBad_Struct_TermPatch, 0 },
8634
8635 { zBadquoteName, zBadquoteList,
8636 apzBadquoteMachs,
8637 BADQUOTE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8638 aBadquoteTests, apzBadquotePatch, 0 },
8639
8640 { zBroken_Assert_StdioName, zBroken_Assert_StdioList,
8641 apzBroken_Assert_StdioMachs,
8642 BROKEN_ASSERT_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8643 aBroken_Assert_StdioTests, apzBroken_Assert_StdioPatch, 0 },
8644
8645 { zBroken_Assert_StdlibName, zBroken_Assert_StdlibList,
8646 apzBroken_Assert_StdlibMachs,
8647 BROKEN_ASSERT_STDLIB_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8648 aBroken_Assert_StdlibTests, apzBroken_Assert_StdlibPatch, 0 },
8649
8650 { zBroken_CabsName, zBroken_CabsList,
8651 apzBroken_CabsMachs,
8652 BROKEN_CABS_TEST_CT, FD_MACH_ONLY,
8653 aBroken_CabsTests, apzBroken_CabsPatch, 0 },
8654
8655 { zBroken_NanName, zBroken_NanList,
8656 apzBroken_NanMachs,
8657 BROKEN_NAN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8658 aBroken_NanTests, apzBroken_NanPatch, 0 },
8659
8660 { zBsd_Stdio_Attrs_ConflictName, zBsd_Stdio_Attrs_ConflictList,
8661 apzBsd_Stdio_Attrs_ConflictMachs,
8662 BSD_STDIO_ATTRS_CONFLICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8663 aBsd_Stdio_Attrs_ConflictTests, apzBsd_Stdio_Attrs_ConflictPatch, 0 },
8664
8665 { zCtrl_Quotes_DefName, zCtrl_Quotes_DefList,
8666 apzCtrl_Quotes_DefMachs,
8667 CTRL_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8668 aCtrl_Quotes_DefTests, apzCtrl_Quotes_DefPatch, 0 },
8669
8670 { zCtrl_Quotes_UseName, zCtrl_Quotes_UseList,
8671 apzCtrl_Quotes_UseMachs,
8672 CTRL_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8673 aCtrl_Quotes_UseTests, apzCtrl_Quotes_UsePatch, 0 },
8674
8675 { zCxx_UnreadyName, zCxx_UnreadyList,
8676 apzCxx_UnreadyMachs,
8677 CXX_UNREADY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8678 aCxx_UnreadyTests, apzCxx_UnreadyPatch, 0 },
8679
8680 { zDarwin_ExterncName, zDarwin_ExterncList,
8681 apzDarwin_ExterncMachs,
8682 DARWIN_EXTERNC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8683 aDarwin_ExterncTests, apzDarwin_ExterncPatch, 0 },
8684
8685 { zDarwin_Gcc4_BreakageName, zDarwin_Gcc4_BreakageList,
8686 apzDarwin_Gcc4_BreakageMachs,
8687 DARWIN_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8688 aDarwin_Gcc4_BreakageTests, apzDarwin_Gcc4_BreakagePatch, 0 },
8689
8690 { zDarwin_Private_ExternName, zDarwin_Private_ExternList,
8691 apzDarwin_Private_ExternMachs,
8692 DARWIN_PRIVATE_EXTERN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8693 aDarwin_Private_ExternTests, apzDarwin_Private_ExternPatch, 0 },
8694
8695 { zDarwin_Stdint_1Name, zDarwin_Stdint_1List,
8696 apzDarwin_Stdint_1Machs,
8697 DARWIN_STDINT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8698 aDarwin_Stdint_1Tests, apzDarwin_Stdint_1Patch, 0 },
8699
8700 { zDarwin_Stdint_2Name, zDarwin_Stdint_2List,
8701 apzDarwin_Stdint_2Machs,
8702 DARWIN_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8703 aDarwin_Stdint_2Tests, apzDarwin_Stdint_2Patch, 0 },
8704
8705 { zDarwin_Stdint_3Name, zDarwin_Stdint_3List,
8706 apzDarwin_Stdint_3Machs,
8707 DARWIN_STDINT_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8708 aDarwin_Stdint_3Tests, apzDarwin_Stdint_3Patch, 0 },
8709
8710 { zDarwin_Stdint_4Name, zDarwin_Stdint_4List,
8711 apzDarwin_Stdint_4Machs,
8712 DARWIN_STDINT_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8713 aDarwin_Stdint_4Tests, apzDarwin_Stdint_4Patch, 0 },
8714
8715 { zDarwin_Stdint_5Name, zDarwin_Stdint_5List,
8716 apzDarwin_Stdint_5Machs,
8717 DARWIN_STDINT_5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8718 aDarwin_Stdint_5Tests, apzDarwin_Stdint_5Patch, 0 },
8719
8720 { zDarwin_Stdint_6Name, zDarwin_Stdint_6List,
8721 apzDarwin_Stdint_6Machs,
8722 DARWIN_STDINT_6_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8723 aDarwin_Stdint_6Tests, apzDarwin_Stdint_6Patch, 0 },
8724
8725 { zDarwin_Stdint_7Name, zDarwin_Stdint_7List,
8726 apzDarwin_Stdint_7Machs,
8727 DARWIN_STDINT_7_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8728 aDarwin_Stdint_7Tests, apzDarwin_Stdint_7Patch, 0 },
8729
8730 { zDec_Intern_AsmName, zDec_Intern_AsmList,
8731 apzDec_Intern_AsmMachs,
8732 DEC_INTERN_ASM_TEST_CT, FD_MACH_ONLY,
8733 aDec_Intern_AsmTests, apzDec_Intern_AsmPatch, 0 },
8734
8735 { zDjgpp_Wchar_HName, zDjgpp_Wchar_HList,
8736 apzDjgpp_Wchar_HMachs,
8737 DJGPP_WCHAR_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8738 aDjgpp_Wchar_HTests, apzDjgpp_Wchar_HPatch, 0 },
8739
8740 { zEcd_CursorName, zEcd_CursorList,
8741 apzEcd_CursorMachs,
8742 ECD_CURSOR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8743 aEcd_CursorTests, apzEcd_CursorPatch, 0 },
8744
8745 { zFreebsd_Gcc3_BreakageName, zFreebsd_Gcc3_BreakageList,
8746 apzFreebsd_Gcc3_BreakageMachs,
8747 FREEBSD_GCC3_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8748 aFreebsd_Gcc3_BreakageTests, apzFreebsd_Gcc3_BreakagePatch, 0 },
8749
8750 { zFreebsd_Gcc4_BreakageName, zFreebsd_Gcc4_BreakageList,
8751 apzFreebsd_Gcc4_BreakageMachs,
8752 FREEBSD_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8753 aFreebsd_Gcc4_BreakageTests, apzFreebsd_Gcc4_BreakagePatch, 0 },
8754
8755 { zGlibc_C99_Inline_1Name, zGlibc_C99_Inline_1List,
8756 apzGlibc_C99_Inline_1Machs,
8757 GLIBC_C99_INLINE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8758 aGlibc_C99_Inline_1Tests, apzGlibc_C99_Inline_1Patch, 0 },
8759
8760 { zGlibc_C99_Inline_1aName, zGlibc_C99_Inline_1aList,
8761 apzGlibc_C99_Inline_1aMachs,
8762 GLIBC_C99_INLINE_1A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8763 aGlibc_C99_Inline_1aTests, apzGlibc_C99_Inline_1aPatch, 0 },
8764
8765 { zGlibc_C99_Inline_2Name, zGlibc_C99_Inline_2List,
8766 apzGlibc_C99_Inline_2Machs,
8767 GLIBC_C99_INLINE_2_TEST_CT, FD_MACH_ONLY,
8768 aGlibc_C99_Inline_2Tests, apzGlibc_C99_Inline_2Patch, 0 },
8769
8770 { zGlibc_C99_Inline_3Name, zGlibc_C99_Inline_3List,
8771 apzGlibc_C99_Inline_3Machs,
8772 GLIBC_C99_INLINE_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8773 aGlibc_C99_Inline_3Tests, apzGlibc_C99_Inline_3Patch, 0 },
8774
8775 { zGlibc_C99_Inline_4Name, zGlibc_C99_Inline_4List,
8776 apzGlibc_C99_Inline_4Machs,
8777 GLIBC_C99_INLINE_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8778 aGlibc_C99_Inline_4Tests, apzGlibc_C99_Inline_4Patch, 0 },
8779
8780 { zGlibc_Mutex_InitName, zGlibc_Mutex_InitList,
8781 apzGlibc_Mutex_InitMachs,
8782 GLIBC_MUTEX_INIT_TEST_CT, FD_MACH_ONLY,
8783 aGlibc_Mutex_InitTests, apzGlibc_Mutex_InitPatch, 0 },
8784
8785 { zGlibc_StdintName, zGlibc_StdintList,
8786 apzGlibc_StdintMachs,
8787 GLIBC_STDINT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8788 aGlibc_StdintTests, apzGlibc_StdintPatch, 0 },
8789
8790 { zGlibc_TgmathName, zGlibc_TgmathList,
8791 apzGlibc_TgmathMachs,
8792 GLIBC_TGMATH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8793 aGlibc_TgmathTests, apzGlibc_TgmathPatch, 0 },
8794
8795 { zGnu_TypesName, zGnu_TypesList,
8796 apzGnu_TypesMachs,
8797 GNU_TYPES_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
8798 aGnu_TypesTests, apzGnu_TypesPatch, 0 },
8799
8800 { zHp_InlineName, zHp_InlineList,
8801 apzHp_InlineMachs,
8802 HP_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8803 aHp_InlineTests, apzHp_InlinePatch, 0 },
8804
8805 { zHp_SysfileName, zHp_SysfileList,
8806 apzHp_SysfileMachs,
8807 HP_SYSFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8808 aHp_SysfileTests, apzHp_SysfilePatch, 0 },
8809
8810 { zHppa_Hpux_Fp_MacrosName, zHppa_Hpux_Fp_MacrosList,
8811 apzHppa_Hpux_Fp_MacrosMachs,
8812 HPPA_HPUX_FP_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8813 aHppa_Hpux_Fp_MacrosTests, apzHppa_Hpux_Fp_MacrosPatch, 0 },
8814
8815 { zHpux10_Cpp_Pow_InlineName, zHpux10_Cpp_Pow_InlineList,
8816 apzHpux10_Cpp_Pow_InlineMachs,
8817 HPUX10_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8818 aHpux10_Cpp_Pow_InlineTests, apzHpux10_Cpp_Pow_InlinePatch, 0 },
8819
8820 { zHpux11_Cpp_Pow_InlineName, zHpux11_Cpp_Pow_InlineList,
8821 apzHpux11_Cpp_Pow_InlineMachs,
8822 HPUX11_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8823 aHpux11_Cpp_Pow_InlineTests, apzHpux11_Cpp_Pow_InlinePatch, 0 },
8824
8825 { zHpux10_Ctype_Declarations1Name, zHpux10_Ctype_Declarations1List,
8826 apzHpux10_Ctype_Declarations1Machs,
8827 HPUX10_CTYPE_DECLARATIONS1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8828 aHpux10_Ctype_Declarations1Tests, apzHpux10_Ctype_Declarations1Patch, 0 },
8829
8830 { zHpux10_Ctype_Declarations2Name, zHpux10_Ctype_Declarations2List,
8831 apzHpux10_Ctype_Declarations2Machs,
8832 HPUX10_CTYPE_DECLARATIONS2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8833 aHpux10_Ctype_Declarations2Tests, apzHpux10_Ctype_Declarations2Patch, 0 },
8834
8835 { zHpux10_Stdio_DeclarationsName, zHpux10_Stdio_DeclarationsList,
8836 apzHpux10_Stdio_DeclarationsMachs,
8837 HPUX10_STDIO_DECLARATIONS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8838 aHpux10_Stdio_DeclarationsTests, apzHpux10_Stdio_DeclarationsPatch, 0 },
8839
8840 { zHpux11_AbsName, zHpux11_AbsList,
8841 apzHpux11_AbsMachs,
8842 HPUX11_ABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8843 aHpux11_AbsTests, apzHpux11_AbsPatch, 0 },
8844
8845 { zHpux11_FabsfName, zHpux11_FabsfList,
8846 apzHpux11_FabsfMachs,
8847 HPUX11_FABSF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8848 aHpux11_FabsfTests, apzHpux11_FabsfPatch, 0 },
8849
8850 { zHpux11_Pthread_ConstName, zHpux11_Pthread_ConstList,
8851 apzHpux11_Pthread_ConstMachs,
8852 HPUX11_PTHREAD_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8853 aHpux11_Pthread_ConstTests, apzHpux11_Pthread_ConstPatch, 0 },
8854
8855 { zHpux11_Size_TName, zHpux11_Size_TList,
8856 apzHpux11_Size_TMachs,
8857 HPUX11_SIZE_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8858 aHpux11_Size_TTests, apzHpux11_Size_TPatch, 0 },
8859
8860 { zHpux11_SnprintfName, zHpux11_SnprintfList,
8861 apzHpux11_SnprintfMachs,
8862 HPUX11_SNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8863 aHpux11_SnprintfTests, apzHpux11_SnprintfPatch, 0 },
8864
8865 { zHpux11_VsnprintfName, zHpux11_VsnprintfList,
8866 apzHpux11_VsnprintfMachs,
8867 HPUX11_VSNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8868 aHpux11_VsnprintfTests, apzHpux11_VsnprintfPatch, 0 },
8869
8870 { zHpux8_Bogus_InlinesName, zHpux8_Bogus_InlinesList,
8871 apzHpux8_Bogus_InlinesMachs,
8872 HPUX8_BOGUS_INLINES_TEST_CT, FD_MACH_ONLY,
8873 aHpux8_Bogus_InlinesTests, apzHpux8_Bogus_InlinesPatch, 0 },
8874
8875 { zHpux_Ctype_MacrosName, zHpux_Ctype_MacrosList,
8876 apzHpux_Ctype_MacrosMachs,
8877 HPUX_CTYPE_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8878 aHpux_Ctype_MacrosTests, apzHpux_Ctype_MacrosPatch, 0 },
8879
8880 { zHpux_HtonlName, zHpux_HtonlList,
8881 apzHpux_HtonlMachs,
8882 HPUX_HTONL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8883 aHpux_HtonlTests, apzHpux_HtonlPatch, 0 },
8884
8885 { zHpux_Long_DoubleName, zHpux_Long_DoubleList,
8886 apzHpux_Long_DoubleMachs,
8887 HPUX_LONG_DOUBLE_TEST_CT, FD_MACH_ONLY,
8888 aHpux_Long_DoubleTests, apzHpux_Long_DoublePatch, 0 },
8889
8890 { zHpux_Long_Double_2Name, zHpux_Long_Double_2List,
8891 apzHpux_Long_Double_2Machs,
8892 HPUX_LONG_DOUBLE_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8893 aHpux_Long_Double_2Tests, apzHpux_Long_Double_2Patch, 0 },
8894
8895 { zHpux_SystimeName, zHpux_SystimeList,
8896 apzHpux_SystimeMachs,
8897 HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8898 aHpux_SystimeTests, apzHpux_SystimePatch, 0 },
8899
8900 { zHpux_Spu_InfoName, zHpux_Spu_InfoList,
8901 apzHpux_Spu_InfoMachs,
8902 HPUX_SPU_INFO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8903 aHpux_Spu_InfoTests, apzHpux_Spu_InfoPatch, 0 },
8904
8905 { zHpux11_Extern_SendfileName, zHpux11_Extern_SendfileList,
8906 apzHpux11_Extern_SendfileMachs,
8907 HPUX11_EXTERN_SENDFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8908 aHpux11_Extern_SendfileTests, apzHpux11_Extern_SendfilePatch, 0 },
8909
8910 { zHpux11_Extern_SendpathName, zHpux11_Extern_SendpathList,
8911 apzHpux11_Extern_SendpathMachs,
8912 HPUX11_EXTERN_SENDPATH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8913 aHpux11_Extern_SendpathTests, apzHpux11_Extern_SendpathPatch, 0 },
8914
8915 { zHpux_Extern_ErrnoName, zHpux_Extern_ErrnoList,
8916 apzHpux_Extern_ErrnoMachs,
8917 HPUX_EXTERN_ERRNO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8918 aHpux_Extern_ErrnoTests, apzHpux_Extern_ErrnoPatch, 0 },
8919
8920 { zHpux_Pthread_InitializersName, zHpux_Pthread_InitializersList,
8921 apzHpux_Pthread_InitializersMachs,
8922 HPUX_PTHREAD_INITIALIZERS_TEST_CT, FD_MACH_ONLY,
8923 aHpux_Pthread_InitializersTests, apzHpux_Pthread_InitializersPatch, 0 },
8924
8925 { zHpux_C99_IntptrName, zHpux_C99_IntptrList,
8926 apzHpux_C99_IntptrMachs,
8927 HPUX_C99_INTPTR_TEST_CT, FD_MACH_ONLY,
8928 aHpux_C99_IntptrTests, apzHpux_C99_IntptrPatch, 0 },
8929
8930 { zHpux_C99_InttypesName, zHpux_C99_InttypesList,
8931 apzHpux_C99_InttypesMachs,
8932 HPUX_C99_INTTYPES_TEST_CT, FD_MACH_ONLY,
8933 aHpux_C99_InttypesTests, apzHpux_C99_InttypesPatch, 0 },
8934
8935 { zHpux_C99_Inttypes2Name, zHpux_C99_Inttypes2List,
8936 apzHpux_C99_Inttypes2Machs,
8937 HPUX_C99_INTTYPES2_TEST_CT, FD_MACH_ONLY,
8938 aHpux_C99_Inttypes2Tests, apzHpux_C99_Inttypes2Patch, 0 },
8939
8940 { zHpux_Stdint_Least_FastName, zHpux_Stdint_Least_FastList,
8941 apzHpux_Stdint_Least_FastMachs,
8942 HPUX_STDINT_LEAST_FAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8943 aHpux_Stdint_Least_FastTests, apzHpux_Stdint_Least_FastPatch, 0 },
8944
8945 { zHpux_Inttype_Int8_TName, zHpux_Inttype_Int8_TList,
8946 apzHpux_Inttype_Int8_TMachs,
8947 HPUX_INTTYPE_INT8_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8948 aHpux_Inttype_Int8_TTests, apzHpux_Inttype_Int8_TPatch, 0 },
8949
8950 { zHpux_Imaginary_IName, zHpux_Imaginary_IList,
8951 apzHpux_Imaginary_IMachs,
8952 HPUX_IMAGINARY_I_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8953 aHpux_Imaginary_ITests, apzHpux_Imaginary_IPatch, 0 },
8954
8955 { zHuge_Val_HexName, zHuge_Val_HexList,
8956 apzHuge_Val_HexMachs,
8957 HUGE_VAL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8958 aHuge_Val_HexTests, apzHuge_Val_HexPatch, 0 },
8959
8960 { zHuge_Valf_HexName, zHuge_Valf_HexList,
8961 apzHuge_Valf_HexMachs,
8962 HUGE_VALF_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8963 aHuge_Valf_HexTests, apzHuge_Valf_HexPatch, 0 },
8964
8965 { zHuge_Vall_HexName, zHuge_Vall_HexList,
8966 apzHuge_Vall_HexMachs,
8967 HUGE_VALL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8968 aHuge_Vall_HexTests, apzHuge_Vall_HexPatch, 0 },
8969
8970 { zInt_Abort_Free_And_ExitName, zInt_Abort_Free_And_ExitList,
8971 apzInt_Abort_Free_And_ExitMachs,
8972 INT_ABORT_FREE_AND_EXIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8973 aInt_Abort_Free_And_ExitTests, apzInt_Abort_Free_And_ExitPatch, 0 },
8974
8975 { zIo_Quotes_DefName, zIo_Quotes_DefList,
8976 apzIo_Quotes_DefMachs,
8977 IO_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8978 aIo_Quotes_DefTests, apzIo_Quotes_DefPatch, 0 },
8979
8980 { zIo_Quotes_UseName, zIo_Quotes_UseList,
8981 apzIo_Quotes_UseMachs,
8982 IO_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8983 aIo_Quotes_UseTests, apzIo_Quotes_UsePatch, 0 },
8984
8985 { zIp_Missing_SemiName, zIp_Missing_SemiList,
8986 apzIp_Missing_SemiMachs,
8987 IP_MISSING_SEMI_TEST_CT, FD_MACH_ONLY,
8988 aIp_Missing_SemiTests, apzIp_Missing_SemiPatch, 0 },
8989
8990 { zIrix___RestrictName, zIrix___RestrictList,
8991 apzIrix___RestrictMachs,
8992 IRIX___RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8993 aIrix___RestrictTests, apzIrix___RestrictPatch, 0 },
8994
8995 { zIrix___Generic1Name, zIrix___Generic1List,
8996 apzIrix___Generic1Machs,
8997 IRIX___GENERIC1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8998 aIrix___Generic1Tests, apzIrix___Generic1Patch, 0 },
8999
9000 { zIrix___Generic2Name, zIrix___Generic2List,
9001 apzIrix___Generic2Machs,
9002 IRIX___GENERIC2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9003 aIrix___Generic2Tests, apzIrix___Generic2Patch, 0 },
9004
9005 { zIrix_Asm_ApostropheName, zIrix_Asm_ApostropheList,
9006 apzIrix_Asm_ApostropheMachs,
9007 IRIX_ASM_APOSTROPHE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9008 aIrix_Asm_ApostropheTests, apzIrix_Asm_ApostrophePatch, 0 },
9009
9010 { zIrix_ComplexName, zIrix_ComplexList,
9011 apzIrix_ComplexMachs,
9012 IRIX_COMPLEX_TEST_CT, FD_MACH_ONLY,
9013 aIrix_ComplexTests, apzIrix_ComplexPatch, 0 },
9014
9015 { zIrix_Limits_ConstName, zIrix_Limits_ConstList,
9016 apzIrix_Limits_ConstMachs,
9017 IRIX_LIMITS_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9018 aIrix_Limits_ConstTests, apzIrix_Limits_ConstPatch, 0 },
9019
9020 { zIrix_Socklen_TName, zIrix_Socklen_TList,
9021 apzIrix_Socklen_TMachs,
9022 IRIX_SOCKLEN_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9023 aIrix_Socklen_TTests, apzIrix_Socklen_TPatch, 0 },
9024
9025 { zIrix_Stdint_C99Name, zIrix_Stdint_C99List,
9026 apzIrix_Stdint_C99Machs,
9027 IRIX_STDINT_C99_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9028 aIrix_Stdint_C99Tests, apzIrix_Stdint_C99Patch, 0 },
9029
9030 { zIrix_Stdio_Va_ListName, zIrix_Stdio_Va_ListList,
9031 apzIrix_Stdio_Va_ListMachs,
9032 IRIX_STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9033 aIrix_Stdio_Va_ListTests, apzIrix_Stdio_Va_ListPatch, 0 },
9034
9035 { zIrix_WcsftimeName, zIrix_WcsftimeList,
9036 apzIrix_WcsftimeMachs,
9037 IRIX_WCSFTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9038 aIrix_WcsftimeTests, apzIrix_WcsftimePatch, 0 },
9039
9040 { zKandr_ConcatName, zKandr_ConcatList,
9041 apzKandr_ConcatMachs,
9042 KANDR_CONCAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9043 aKandr_ConcatTests, apzKandr_ConcatPatch, 0 },
9044
9045 { zLinux_Ia64_UcontextName, zLinux_Ia64_UcontextList,
9046 apzLinux_Ia64_UcontextMachs,
9047 LINUX_IA64_UCONTEXT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9048 aLinux_Ia64_UcontextTests, apzLinux_Ia64_UcontextPatch, 0 },
9049
9050 { zLynxos_No_Warning_In_Sys_Time_HName, zLynxos_No_Warning_In_Sys_Time_HList,
9051 apzLynxos_No_Warning_In_Sys_Time_HMachs,
9052 LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9053 aLynxos_No_Warning_In_Sys_Time_HTests, apzLynxos_No_Warning_In_Sys_Time_HPatch, 0 },
9054
9055 { zLynxos_Missing_PutenvName, zLynxos_Missing_PutenvList,
9056 apzLynxos_Missing_PutenvMachs,
9057 LYNXOS_MISSING_PUTENV_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9058 aLynxos_Missing_PutenvTests, apzLynxos_Missing_PutenvPatch, 0 },
9059
9060 { zMachine_Ansi_H_Va_ListName, zMachine_Ansi_H_Va_ListList,
9061 apzMachine_Ansi_H_Va_ListMachs,
9062 MACHINE_ANSI_H_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9063 aMachine_Ansi_H_Va_ListTests, apzMachine_Ansi_H_Va_ListPatch, 0 },
9064
9065 { zMachine_NameName, zMachine_NameList,
9066 apzMachine_NameMachs,
9067 MACHINE_NAME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9068 aMachine_NameTests, apzMachine_NamePatch, 0 },
9069
9070 { zMath_ExceptionName, zMath_ExceptionList,
9071 apzMath_ExceptionMachs,
9072 MATH_EXCEPTION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9073 aMath_ExceptionTests, apzMath_ExceptionPatch, 0 },
9074
9075 { zMath_Huge_Val_From_Dbl_MaxName, zMath_Huge_Val_From_Dbl_MaxList,
9076 apzMath_Huge_Val_From_Dbl_MaxMachs,
9077 MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
9078 aMath_Huge_Val_From_Dbl_MaxTests, apzMath_Huge_Val_From_Dbl_MaxPatch, 0 },
9079
9080 { zNested_Auth_DesName, zNested_Auth_DesList,
9081 apzNested_Auth_DesMachs,
9082 NESTED_AUTH_DES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9083 aNested_Auth_DesTests, apzNested_Auth_DesPatch, 0 },
9084
9085 { zNetbsd_C99_Inline_1Name, zNetbsd_C99_Inline_1List,
9086 apzNetbsd_C99_Inline_1Machs,
9087 NETBSD_C99_INLINE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9088 aNetbsd_C99_Inline_1Tests, apzNetbsd_C99_Inline_1Patch, 0 },
9089
9090 { zNetbsd_C99_Inline_2Name, zNetbsd_C99_Inline_2List,
9091 apzNetbsd_C99_Inline_2Machs,
9092 NETBSD_C99_INLINE_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9093 aNetbsd_C99_Inline_2Tests, apzNetbsd_C99_Inline_2Patch, 0 },
9094
9095 { zNetbsd_Extra_SemicolonName, zNetbsd_Extra_SemicolonList,
9096 apzNetbsd_Extra_SemicolonMachs,
9097 NETBSD_EXTRA_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9098 aNetbsd_Extra_SemicolonTests, apzNetbsd_Extra_SemicolonPatch, 0 },
9099
9100 { zNewlib_Stdint_1Name, zNewlib_Stdint_1List,
9101 apzNewlib_Stdint_1Machs,
9102 NEWLIB_STDINT_1_TEST_CT, FD_MACH_ONLY,
9103 aNewlib_Stdint_1Tests, apzNewlib_Stdint_1Patch, 0 },
9104
9105 { zNewlib_Stdint_2Name, zNewlib_Stdint_2List,
9106 apzNewlib_Stdint_2Machs,
9107 NEWLIB_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9108 aNewlib_Stdint_2Tests, apzNewlib_Stdint_2Patch, 0 },
9109
9110 { zNext_Math_PrefixName, zNext_Math_PrefixList,
9111 apzNext_Math_PrefixMachs,
9112 NEXT_MATH_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9113 aNext_Math_PrefixTests, apzNext_Math_PrefixPatch, 0 },
9114
9115 { zNext_TemplateName, zNext_TemplateList,
9116 apzNext_TemplateMachs,
9117 NEXT_TEMPLATE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9118 aNext_TemplateTests, apzNext_TemplatePatch, 0 },
9119
9120 { zNext_VolitileName, zNext_VolitileList,
9121 apzNext_VolitileMachs,
9122 NEXT_VOLITILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9123 aNext_VolitileTests, apzNext_VolitilePatch, 0 },
9124
9125 { zNext_Wait_UnionName, zNext_Wait_UnionList,
9126 apzNext_Wait_UnionMachs,
9127 NEXT_WAIT_UNION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9128 aNext_Wait_UnionTests, apzNext_Wait_UnionPatch, 0 },
9129
9130 { zNodeent_SyntaxName, zNodeent_SyntaxList,
9131 apzNodeent_SyntaxMachs,
9132 NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9133 aNodeent_SyntaxTests, apzNodeent_SyntaxPatch, 0 },
9134
9135 { zOpenbsd_Null_DefinitionName, zOpenbsd_Null_DefinitionList,
9136 apzOpenbsd_Null_DefinitionMachs,
9137 OPENBSD_NULL_DEFINITION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9138 aOpenbsd_Null_DefinitionTests, apzOpenbsd_Null_DefinitionPatch, 0 },
9139
9140 { zObstack_Lvalue_CastName, zObstack_Lvalue_CastList,
9141 apzObstack_Lvalue_CastMachs,
9142 OBSTACK_LVALUE_CAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9143 aObstack_Lvalue_CastTests, apzObstack_Lvalue_CastPatch, 0 },
9144
9145 { zOpenbsd_Va_StartName, zOpenbsd_Va_StartList,
9146 apzOpenbsd_Va_StartMachs,
9147 OPENBSD_VA_START_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9148 aOpenbsd_Va_StartTests, apzOpenbsd_Va_StartPatch, 0 },
9149
9150 { zOsf_Namespace_AName, zOsf_Namespace_AList,
9151 apzOsf_Namespace_AMachs,
9152 OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9153 aOsf_Namespace_ATests, apzOsf_Namespace_APatch, 0 },
9154
9155 { zOsf_Namespace_CName, zOsf_Namespace_CList,
9156 apzOsf_Namespace_CMachs,
9157 OSF_NAMESPACE_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9158 aOsf_Namespace_CTests, apzOsf_Namespace_CPatch, 0 },
9159
9160 { zPthread_Incomplete_Struct_ArgumentName, zPthread_Incomplete_Struct_ArgumentList,
9161 apzPthread_Incomplete_Struct_ArgumentMachs,
9162 PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9163 aPthread_Incomplete_Struct_ArgumentTests, apzPthread_Incomplete_Struct_ArgumentPatch, 0 },
9164
9165 { zRead_Ret_TypeName, zRead_Ret_TypeList,
9166 apzRead_Ret_TypeMachs,
9167 READ_RET_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9168 aRead_Ret_TypeTests, apzRead_Ret_TypePatch, 0 },
9169
9170 { zRpc_Xdr_Lvalue_Cast_AName, zRpc_Xdr_Lvalue_Cast_AList,
9171 apzRpc_Xdr_Lvalue_Cast_AMachs,
9172 RPC_XDR_LVALUE_CAST_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9173 aRpc_Xdr_Lvalue_Cast_ATests, apzRpc_Xdr_Lvalue_Cast_APatch, 0 },
9174
9175 { zRpc_Xdr_Lvalue_Cast_BName, zRpc_Xdr_Lvalue_Cast_BList,
9176 apzRpc_Xdr_Lvalue_Cast_BMachs,
9177 RPC_XDR_LVALUE_CAST_B_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9178 aRpc_Xdr_Lvalue_Cast_BTests, apzRpc_Xdr_Lvalue_Cast_BPatch, 0 },
9179
9180 { zRs6000_DoubleName, zRs6000_DoubleList,
9181 apzRs6000_DoubleMachs,
9182 RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9183 aRs6000_DoubleTests, apzRs6000_DoublePatch, 0 },
9184
9185 { zRs6000_FchmodName, zRs6000_FchmodList,
9186 apzRs6000_FchmodMachs,
9187 RS6000_FCHMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9188 aRs6000_FchmodTests, apzRs6000_FchmodPatch, 0 },
9189
9190 { zRs6000_ParamName, zRs6000_ParamList,
9191 apzRs6000_ParamMachs,
9192 RS6000_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9193 aRs6000_ParamTests, apzRs6000_ParamPatch, 0 },
9194
9195 { zSolaris_ComplexName, zSolaris_ComplexList,
9196 apzSolaris_ComplexMachs,
9197 SOLARIS_COMPLEX_TEST_CT, FD_MACH_ONLY,
9198 aSolaris_ComplexTests, apzSolaris_ComplexPatch, 0 },
9199
9200 { zSolaris_Math_1Name, zSolaris_Math_1List,
9201 apzSolaris_Math_1Machs,
9202 SOLARIS_MATH_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9203 aSolaris_Math_1Tests, apzSolaris_Math_1Patch, 0 },
9204
9205 { zSolaris_Math_2Name, zSolaris_Math_2List,
9206 apzSolaris_Math_2Machs,
9207 SOLARIS_MATH_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9208 aSolaris_Math_2Tests, apzSolaris_Math_2Patch, 0 },
9209
9210 { zSolaris_Math_3Name, zSolaris_Math_3List,
9211 apzSolaris_Math_3Machs,
9212 SOLARIS_MATH_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9213 aSolaris_Math_3Tests, apzSolaris_Math_3Patch, 0 },
9214
9215 { zSolaris_Math_4Name, zSolaris_Math_4List,
9216 apzSolaris_Math_4Machs,
9217 SOLARIS_MATH_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9218 aSolaris_Math_4Tests, apzSolaris_Math_4Patch, 0 },
9219
9220 { zSolaris_Math_8Name, zSolaris_Math_8List,
9221 apzSolaris_Math_8Machs,
9222 SOLARIS_MATH_8_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9223 aSolaris_Math_8Tests, apzSolaris_Math_8Patch, 0 },
9224
9225 { zSolaris_Math_9Name, zSolaris_Math_9List,
9226 apzSolaris_Math_9Machs,
9227 SOLARIS_MATH_9_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9228 aSolaris_Math_9Tests, apzSolaris_Math_9Patch, 0 },
9229
9230 { zSolaris_Math_10Name, zSolaris_Math_10List,
9231 apzSolaris_Math_10Machs,
9232 SOLARIS_MATH_10_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9233 aSolaris_Math_10Tests, apzSolaris_Math_10Patch, 0 },
9234
9235 { zSolaris_Mutex_Init_2Name, zSolaris_Mutex_Init_2List,
9236 apzSolaris_Mutex_Init_2Machs,
9237 SOLARIS_MUTEX_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9238 aSolaris_Mutex_Init_2Tests, apzSolaris_Mutex_Init_2Patch, 0 },
9239
9240 { zSolaris_Rwlock_Init_1Name, zSolaris_Rwlock_Init_1List,
9241 apzSolaris_Rwlock_Init_1Machs,
9242 SOLARIS_RWLOCK_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9243 aSolaris_Rwlock_Init_1Tests, apzSolaris_Rwlock_Init_1Patch, 0 },
9244
9245 { zSolaris_Once_Init_1Name, zSolaris_Once_Init_1List,
9246 apzSolaris_Once_Init_1Machs,
9247 SOLARIS_ONCE_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9248 aSolaris_Once_Init_1Tests, apzSolaris_Once_Init_1Patch, 0 },
9249
9250 { zSolaris_Once_Init_2Name, zSolaris_Once_Init_2List,
9251 apzSolaris_Once_Init_2Machs,
9252 SOLARIS_ONCE_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9253 aSolaris_Once_Init_2Tests, apzSolaris_Once_Init_2Patch, 0 },
9254
9255 { zSolaris_Int_ConstName, zSolaris_Int_ConstList,
9256 apzSolaris_Int_ConstMachs,
9257 SOLARIS_INT_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9258 aSolaris_Int_ConstTests, apzSolaris_Int_ConstPatch, 0 },
9259
9260 { zSolaris_Int_Limits_1Name, zSolaris_Int_Limits_1List,
9261 apzSolaris_Int_Limits_1Machs,
9262 SOLARIS_INT_LIMITS_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9263 aSolaris_Int_Limits_1Tests, apzSolaris_Int_Limits_1Patch, 0 },
9264
9265 { zSolaris_Int_Limits_2Name, zSolaris_Int_Limits_2List,
9266 apzSolaris_Int_Limits_2Machs,
9267 SOLARIS_INT_LIMITS_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9268 aSolaris_Int_Limits_2Tests, apzSolaris_Int_Limits_2Patch, 0 },
9269
9270 { zSolaris_Int_TypesName, zSolaris_Int_TypesList,
9271 apzSolaris_Int_TypesMachs,
9272 SOLARIS_INT_TYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9273 aSolaris_Int_TypesTests, apzSolaris_Int_TypesPatch, 0 },
9274
9275 { zSolaris_Stdio_TagName, zSolaris_Stdio_TagList,
9276 apzSolaris_Stdio_TagMachs,
9277 SOLARIS_STDIO_TAG_TEST_CT, FD_MACH_ONLY,
9278 aSolaris_Stdio_TagTests, apzSolaris_Stdio_TagPatch, 0 },
9279
9280 { zStatsswtchName, zStatsswtchList,
9281 apzStatsswtchMachs,
9282 STATSSWTCH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9283 aStatsswtchTests, apzStatsswtchPatch, 0 },
9284
9285 { zStdio_Stdarg_HName, zStdio_Stdarg_HList,
9286 apzStdio_Stdarg_HMachs,
9287 STDIO_STDARG_H_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
9288 aStdio_Stdarg_HTests, apzStdio_Stdarg_HPatch, 0 },
9289
9290 { zStdio_Va_ListName, zStdio_Va_ListList,
9291 apzStdio_Va_ListMachs,
9292 STDIO_VA_LIST_TEST_CT, FD_MACH_IFNOT,
9293 aStdio_Va_ListTests, apzStdio_Va_ListPatch, 0 },
9294
9295 { zStdio_Va_List_ClientsName, zStdio_Va_List_ClientsList,
9296 apzStdio_Va_List_ClientsMachs,
9297 STDIO_VA_LIST_CLIENTS_TEST_CT, FD_MACH_ONLY,
9298 aStdio_Va_List_ClientsTests, apzStdio_Va_List_ClientsPatch, 0 },
9299
9300 { zStrict_Ansi_NotName, zStrict_Ansi_NotList,
9301 apzStrict_Ansi_NotMachs,
9302 STRICT_ANSI_NOT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9303 aStrict_Ansi_NotTests, apzStrict_Ansi_NotPatch, 0 },
9304
9305 { zStrict_Ansi_Not_CtdName, zStrict_Ansi_Not_CtdList,
9306 apzStrict_Ansi_Not_CtdMachs,
9307 STRICT_ANSI_NOT_CTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9308 aStrict_Ansi_Not_CtdTests, apzStrict_Ansi_Not_CtdPatch, 0 },
9309
9310 { zStrict_Ansi_OnlyName, zStrict_Ansi_OnlyList,
9311 apzStrict_Ansi_OnlyMachs,
9312 STRICT_ANSI_ONLY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9313 aStrict_Ansi_OnlyTests, apzStrict_Ansi_OnlyPatch, 0 },
9314
9315 { zStruct_FileName, zStruct_FileList,
9316 apzStruct_FileMachs,
9317 STRUCT_FILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9318 aStruct_FileTests, apzStruct_FilePatch, 0 },
9319
9320 { zStruct_SockaddrName, zStruct_SockaddrList,
9321 apzStruct_SockaddrMachs,
9322 STRUCT_SOCKADDR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9323 aStruct_SockaddrTests, apzStruct_SockaddrPatch, 0 },
9324
9325 { zSun_Auth_ProtoName, zSun_Auth_ProtoList,
9326 apzSun_Auth_ProtoMachs,
9327 SUN_AUTH_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9328 aSun_Auth_ProtoTests, apzSun_Auth_ProtoPatch, 0 },
9329
9330 { zSun_Bogus_IfdefName, zSun_Bogus_IfdefList,
9331 apzSun_Bogus_IfdefMachs,
9332 SUN_BOGUS_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9333 aSun_Bogus_IfdefTests, apzSun_Bogus_IfdefPatch, 0 },
9334
9335 { zSun_CatmacroName, zSun_CatmacroList,
9336 apzSun_CatmacroMachs,
9337 SUN_CATMACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9338 aSun_CatmacroTests, apzSun_CatmacroPatch, 0 },
9339
9340 { zSun_MallocName, zSun_MallocList,
9341 apzSun_MallocMachs,
9342 SUN_MALLOC_TEST_CT, FD_MACH_ONLY,
9343 aSun_MallocTests, apzSun_MallocPatch, 0 },
9344
9345 { zSun_Rusers_SemiName, zSun_Rusers_SemiList,
9346 apzSun_Rusers_SemiMachs,
9347 SUN_RUSERS_SEMI_TEST_CT, FD_MACH_ONLY,
9348 aSun_Rusers_SemiTests, apzSun_Rusers_SemiPatch, 0 },
9349
9350 { zSun_SignalName, zSun_SignalList,
9351 apzSun_SignalMachs,
9352 SUN_SIGNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9353 aSun_SignalTests, apzSun_SignalPatch, 0 },
9354
9355 { zSunos_StrlenName, zSunos_StrlenList,
9356 apzSunos_StrlenMachs,
9357 SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9358 aSunos_StrlenTests, apzSunos_StrlenPatch, 0 },
9359
9360 { zSvr4_Disable_OptName, zSvr4_Disable_OptList,
9361 apzSvr4_Disable_OptMachs,
9362 SVR4_DISABLE_OPT_TEST_CT, FD_MACH_ONLY,
9363 aSvr4_Disable_OptTests, apzSvr4_Disable_OptPatch, 0 },
9364
9365 { zSvr4_GetcwdName, zSvr4_GetcwdList,
9366 apzSvr4_GetcwdMachs,
9367 SVR4_GETCWD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9368 aSvr4_GetcwdTests, apzSvr4_GetcwdPatch, 0 },
9369
9370 { zSvr4_ProfilName, zSvr4_ProfilList,
9371 apzSvr4_ProfilMachs,
9372 SVR4_PROFIL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9373 aSvr4_ProfilTests, apzSvr4_ProfilPatch, 0 },
9374
9375 { zSvr4_Sighandler_TypeName, zSvr4_Sighandler_TypeList,
9376 apzSvr4_Sighandler_TypeMachs,
9377 SVR4_SIGHANDLER_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9378 aSvr4_Sighandler_TypeTests, apzSvr4_Sighandler_TypePatch, 0 },
9379
9380 { zSvr4_Undeclared_GetrngeName, zSvr4_Undeclared_GetrngeList,
9381 apzSvr4_Undeclared_GetrngeMachs,
9382 SVR4_UNDECLARED_GETRNGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9383 aSvr4_Undeclared_GetrngeTests, apzSvr4_Undeclared_GetrngePatch, 0 },
9384
9385 { zSysv68_StringName, zSysv68_StringList,
9386 apzSysv68_StringMachs,
9387 SYSV68_STRING_TEST_CT, FD_MACH_ONLY,
9388 aSysv68_StringTests, apzSysv68_StringPatch, 0 },
9389
9390 { zSysz_Stdlib_For_SunName, zSysz_Stdlib_For_SunList,
9391 apzSysz_Stdlib_For_SunMachs,
9392 SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9393 aSysz_Stdlib_For_SunTests, apzSysz_Stdlib_For_SunPatch, 0 },
9394
9395 { zThread_KeywordName, zThread_KeywordList,
9396 apzThread_KeywordMachs,
9397 THREAD_KEYWORD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9398 aThread_KeywordTests, apzThread_KeywordPatch, 0 },
9399
9400 { zTinfo_CplusplusName, zTinfo_CplusplusList,
9401 apzTinfo_CplusplusMachs,
9402 TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9403 aTinfo_CplusplusTests, apzTinfo_CplusplusPatch, 0 },
9404
9405 { zUltrix_ConstName, zUltrix_ConstList,
9406 apzUltrix_ConstMachs,
9407 ULTRIX_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9408 aUltrix_ConstTests, apzUltrix_ConstPatch, 0 },
9409
9410 { zUltrix_Const2Name, zUltrix_Const2List,
9411 apzUltrix_Const2Machs,
9412 ULTRIX_CONST2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9413 aUltrix_Const2Tests, apzUltrix_Const2Patch, 0 },
9414
9415 { zVa_I960_MacroName, zVa_I960_MacroList,
9416 apzVa_I960_MacroMachs,
9417 VA_I960_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9418 aVa_I960_MacroTests, apzVa_I960_MacroPatch, 0 },
9419
9420 { zVoid_NullName, zVoid_NullList,
9421 apzVoid_NullMachs,
9422 VOID_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9423 aVoid_NullTests, apzVoid_NullPatch, 0 },
9424
9425 { zVxworks_Gcc_ProblemName, zVxworks_Gcc_ProblemList,
9426 apzVxworks_Gcc_ProblemMachs,
9427 VXWORKS_GCC_PROBLEM_TEST_CT, FD_MACH_ONLY,
9428 aVxworks_Gcc_ProblemTests, apzVxworks_Gcc_ProblemPatch, 0 },
9429
9430 { zVxworks_Needs_VxtypesName, zVxworks_Needs_VxtypesList,
9431 apzVxworks_Needs_VxtypesMachs,
9432 VXWORKS_NEEDS_VXTYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9433 aVxworks_Needs_VxtypesTests, apzVxworks_Needs_VxtypesPatch, 0 },
9434
9435 { zVxworks_Needs_VxworksName, zVxworks_Needs_VxworksList,
9436 apzVxworks_Needs_VxworksMachs,
9437 VXWORKS_NEEDS_VXWORKS_TEST_CT, FD_MACH_ONLY,
9438 aVxworks_Needs_VxworksTests, apzVxworks_Needs_VxworksPatch, 0 },
9439
9440 { zVxworks_TimeName, zVxworks_TimeList,
9441 apzVxworks_TimeMachs,
9442 VXWORKS_TIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9443 aVxworks_TimeTests, apzVxworks_TimePatch, 0 },
9444
9445 { zX11_ClassName, zX11_ClassList,
9446 apzX11_ClassMachs,
9447 X11_CLASS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9448 aX11_ClassTests, apzX11_ClassPatch, 0 },
9449
9450 { zX11_Class_UsageName, zX11_Class_UsageList,
9451 apzX11_Class_UsageMachs,
9452 X11_CLASS_USAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9453 aX11_Class_UsageTests, apzX11_Class_UsagePatch, 0 },
9454
9455 { zX11_NewName, zX11_NewList,
9456 apzX11_NewMachs,
9457 X11_NEW_TEST_CT, FD_MACH_ONLY,
9458 aX11_NewTests, apzX11_NewPatch, 0 },
9459
9460 { zX11_SprintfName, zX11_SprintfList,
9461 apzX11_SprintfMachs,
9462 X11_SPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9463 aX11_SprintfTests, apzX11_SprintfPatch, 0 }
9464 };