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