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