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