inclhack.def (svr4_undeclared_getrnge): Introduce and enable.
[gcc.git] / gcc / fixinc / 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 Monday August 4, 2003 at 03:26:31 PM EDT
6 * From the definitions inclhack.def
7 * and the template file fixincl
8 */
9 /* DO NOT CVS-MERGE THIS FILE, EITHER Mon Aug 4 15:26:31 EDT 2003
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 156 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_Fd_Zero_Asm_Posix_Types_H fix
46 */
47 tSCC zAab_Fd_Zero_Asm_Posix_Types_HName[] =
48 "AAB_fd_zero_asm_posix_types_h";
49
50 /*
51 * File name selection pattern
52 */
53 tSCC zAab_Fd_Zero_Asm_Posix_Types_HList[] =
54 "|asm/posix_types.h|";
55 /*
56 * Machine/OS name selection pattern
57 */
58 tSCC* apzAab_Fd_Zero_Asm_Posix_Types_HMachs[] = {
59 "i[34567]86-*-linux*",
60 (const char*)NULL };
61
62 /*
63 * content bypass pattern - skip fix if pattern found
64 */
65 tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass0[] =
66 "} while";
67
68 #define AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT 1
69 static tTestDesc aAab_Fd_Zero_Asm_Posix_Types_HTests[] = {
70 { TT_NEGREP, zAab_Fd_Zero_Asm_Posix_Types_HBypass0, (regex_t*)NULL }, };
71
72 /*
73 * Fix Command Arguments for Aab_Fd_Zero_Asm_Posix_Types_H
74 */
75 static const char* apzAab_Fd_Zero_Asm_Posix_Types_HPatch[] = {
76 "/* This file fixes a bug in the __FD_ZERO macro\n\
77 for older versions of the Linux kernel. */\n\
78 #ifndef _POSIX_TYPES_H_WRAPPER\n\
79 #include <features.h>\n\
80 #include_next <asm/posix_types.h>\n\n\
81 #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
82 #undef __FD_ZERO\n\
83 #define __FD_ZERO(fdsetp) \\\n\
84 do { \\\n\
85 int __d0, __d1; \\\n\
86 __asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
87 : \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
88 : \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
89 \"1\" ((__kernel_fd_set *) (fdsetp)) :\"memory\"); \\\n\
90 } while (0)\n\
91 #endif\n\n\
92 #define _POSIX_TYPES_H_WRAPPER\n\
93 #endif /* _POSIX_TYPES_H_WRAPPER */",
94 (char*)NULL };
95
96 /* * * * * * * * * * * * * * * * * * * * * * * * * *
97 *
98 * Description of Aab_Fd_Zero_Gnu_Types_H fix
99 */
100 tSCC zAab_Fd_Zero_Gnu_Types_HName[] =
101 "AAB_fd_zero_gnu_types_h";
102
103 /*
104 * File name selection pattern
105 */
106 tSCC zAab_Fd_Zero_Gnu_Types_HList[] =
107 "|gnu/types.h|";
108 /*
109 * Machine/OS name selection pattern
110 */
111 tSCC* apzAab_Fd_Zero_Gnu_Types_HMachs[] = {
112 "i[34567]86-*-linux*",
113 (const char*)NULL };
114 #define AAB_FD_ZERO_GNU_TYPES_H_TEST_CT 0
115 #define aAab_Fd_Zero_Gnu_Types_HTests (tTestDesc*)NULL
116
117 /*
118 * Fix Command Arguments for Aab_Fd_Zero_Gnu_Types_H
119 */
120 static const char* apzAab_Fd_Zero_Gnu_Types_HPatch[] = {
121 "/* This file fixes a bug in the __FD_ZERO macro present in glibc 1.x. */\n\
122 #ifndef _TYPES_H_WRAPPER\n\
123 #include <features.h>\n\
124 #include_next <gnu/types.h>\n\n\
125 #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
126 #undef __FD_ZERO\n\
127 # define __FD_ZERO(fdsetp) \\\\\n\
128 do { \\\\\n\
129 int __d0, __d1; \\\\\n\
130 __asm__ __volatile__(\"cld ; rep ; stosl\" \\\\\n\
131 \t: \"=&c\" (__d0), \"=&D\" (__d1) \\\\\n\
132 \t: \"a\" (0), \"0\" (__FDSET_LONGS), \\\\\n\
133 \"1\" ((__fd_set *) (fdsetp)) :\"memory\"); \\\\\n\
134 } while (0)\n\
135 #endif\n\n\
136 #define _TYPES_H_WRAPPER\n\
137 #endif /* _TYPES_H_WRAPPER */",
138 (char*)NULL };
139
140 /* * * * * * * * * * * * * * * * * * * * * * * * * *
141 *
142 * Description of Aab_Fd_Zero_Selectbits_H fix
143 */
144 tSCC zAab_Fd_Zero_Selectbits_HName[] =
145 "AAB_fd_zero_selectbits_h";
146
147 /*
148 * File name selection pattern
149 */
150 tSCC zAab_Fd_Zero_Selectbits_HList[] =
151 "|selectbits.h|";
152 /*
153 * Machine/OS name selection pattern
154 */
155 tSCC* apzAab_Fd_Zero_Selectbits_HMachs[] = {
156 "i[34567]86-*-linux*",
157 (const char*)NULL };
158 #define AAB_FD_ZERO_SELECTBITS_H_TEST_CT 0
159 #define aAab_Fd_Zero_Selectbits_HTests (tTestDesc*)NULL
160
161 /*
162 * Fix Command Arguments for Aab_Fd_Zero_Selectbits_H
163 */
164 static const char* apzAab_Fd_Zero_Selectbits_HPatch[] = {
165 "/* This file fixes a bug in the __FD_ZERO macro present in glibc 2.0.x. */\n\
166 #ifndef _SELECTBITS_H_WRAPPER\n\
167 #include <features.h>\n\
168 #include_next <selectbits.h>\n\n\
169 #if defined(__FD_ZERO) && defined(__GLIBC__) \\\\\n\
170 && defined(__GLIBC_MINOR__) && __GLIBC__ == 2 \\\\\n\
171 && __GLIBC_MINOR__ == 0\n\
172 #undef __FD_ZERO\n\
173 #define __FD_ZERO(fdsetp) \\\\\n\
174 do { \\\\\n\
175 int __d0, __d1; \\\\\n\
176 __asm__ __volatile__ (\"cld; rep; stosl\" \\\\\n\
177 : \"=&c\" (__d0), \"=&D\" (__d1) \\\\\n\
178 : \"a\" (0), \"0\" (sizeof (__fd_set) \\\\\n\
179 / sizeof (__fd_mask)), \\\\\n\
180 \"1\" ((__fd_mask *) (fdsetp)) \\\\\n\
181 : \"memory\"); \\\\\n\
182 } while (0)\n\
183 #endif\n\n\
184 #define _SELECTBITS_H_WRAPPER\n\
185 #endif /* _SELECTBITS_H_WRAPPER */",
186 (char*)NULL };
187
188 /* * * * * * * * * * * * * * * * * * * * * * * * * *
189 *
190 * Description of Aab_Solaris_Sys_Varargs_H fix
191 */
192 tSCC zAab_Solaris_Sys_Varargs_HName[] =
193 "AAB_solaris_sys_varargs_h";
194
195 /*
196 * File name selection pattern
197 */
198 tSCC zAab_Solaris_Sys_Varargs_HList[] =
199 "|sys/varargs.h|";
200 /*
201 * Machine/OS name selection pattern
202 */
203 tSCC* apzAab_Solaris_Sys_Varargs_HMachs[] = {
204 "*-*-solaris*",
205 (const char*)NULL };
206 #define AAB_SOLARIS_SYS_VARARGS_H_TEST_CT 0
207 #define aAab_Solaris_Sys_Varargs_HTests (tTestDesc*)NULL
208
209 /*
210 * Fix Command Arguments for Aab_Solaris_Sys_Varargs_H
211 */
212 static const char* apzAab_Solaris_Sys_Varargs_HPatch[] = {
213 "#ifdef __STDC__\n\
214 #include <stdarg.h>\n\
215 #else\n\
216 #include <varargs.h>\n\
217 #endif",
218 (char*)NULL };
219
220 /* * * * * * * * * * * * * * * * * * * * * * * * * *
221 *
222 * Description of Aab_Sun_Memcpy fix
223 */
224 tSCC zAab_Sun_MemcpyName[] =
225 "AAB_sun_memcpy";
226
227 /*
228 * File name selection pattern
229 */
230 tSCC zAab_Sun_MemcpyList[] =
231 "|memory.h|";
232 /*
233 * Machine/OS name selection pattern
234 */
235 #define apzAab_Sun_MemcpyMachs (const char**)NULL
236
237 /*
238 * content selection pattern - do fix if pattern found
239 */
240 tSCC zAab_Sun_MemcpySelect0[] =
241 "/\\*\t@\\(#\\)(head/memory.h\t50.1\t |memory\\.h 1\\.[2-4] 8./../.. SMI; from S5R2 1\\.2\t)\\*/";
242
243 #define AAB_SUN_MEMCPY_TEST_CT 1
244 static tTestDesc aAab_Sun_MemcpyTests[] = {
245 { TT_EGREP, zAab_Sun_MemcpySelect0, (regex_t*)NULL }, };
246
247 /*
248 * Fix Command Arguments for Aab_Sun_Memcpy
249 */
250 static const char* apzAab_Sun_MemcpyPatch[] = {
251 "/* This file was generated by fixincludes */\n\
252 #ifndef __memory_h__\n\
253 #define __memory_h__\n\n\
254 #ifdef __STDC__\n\
255 extern void *memccpy();\n\
256 extern void *memchr();\n\
257 extern void *memcpy();\n\
258 extern void *memset();\n\
259 #else\n\
260 extern char *memccpy();\n\
261 extern char *memchr();\n\
262 extern char *memcpy();\n\
263 extern char *memset();\n\
264 #endif /* __STDC__ */\n\n\
265 extern int memcmp();\n\n\
266 #endif /* __memory_h__ */\n\
267 _EndOfHeader;\n\
268 };\n\n\n\
269 /*\n\
270 * Completely replace <sys/varargs.h> with a file that includes gcc's\n\
271 * stdarg.h or varargs.h files as appropriate.\n\
272 */\n\
273 #ifdef SVR4\n\
274 fix = {\n\
275 hackname = AAB_svr4_no_varargs;\n\
276 files = sys/varargs.h;\n\
277 replace = \"/* This file was generated by fixincludes. */\\n\"\n\
278 \"#ifndef _SYS_VARARGS_H\\n\"\n\
279 \"#define _SYS_VARARGS_H\\n\\n\"\n\n\
280 \"#ifdef __STDC__\\n\"\n\
281 \"#include <stdarg.h>\\n\"\n\
282 \"#else\\n\"\n\
283 \"#include <varargs.h>\\n\"\n\
284 \"#endif\\n\\n\"\n\n\
285 \"#endif /* _SYS_VARARGS_H */\\n\";\n\
286 };\n\
287 #endif\n\n\n\
288 /*\n\
289 * Completely replace <sys/byteorder.h>; with a file that implements gcc's\n\
290 * optimized byteswapping.\n\
291 */\n\
292 fix = {\n\
293 hackname = AAB_svr4_replace_byteorder;\n\
294 mach = \"*-*-sysv4*\";\n\
295 mach = \"i[34567]86-*-sysv5*\";\n\
296 mach = \"i[34567]86-*-sco3.2v5*\";\n\
297 mach = \"i[34567]86-*-udk*\";\n\
298 mach = \"i[34567]86-*-solaris2.[0-4]\";\n\
299 mach = \"powerpcle-*-solaris2.[0-4]\";\n\
300 mach = \"sparc-*-solaris2.[0-4]\";\n\
301 files = sys/byteorder.h;\n\
302 replace = <<- _EndOfHeader_\n\
303 #ifndef _SYS_BYTEORDER_H\n\
304 #define _SYS_BYTEORDER_H\n\n\
305 /* Functions to convert `short' and `long' quantities from host byte order\n\
306 to (internet) network byte order (i.e. big-endian).\n\n\
307 Written by Ron Guilmette (rfg@ncd.com).\n\n\
308 This isn't actually used by GCC. It is installed by fixinc.svr4.\n\n\
309 For big-endian machines these functions are essentially no-ops.\n\n\
310 For little-endian machines, we define the functions using specialized\n\
311 asm sequences in cases where doing so yields better code (e.g. i386). */\n\n\
312 #if !defined (__GNUC__) && !defined (__GNUG__)\n\
313 #error You lose! This file is only useful with GNU compilers.\n\
314 #endif\n\n\
315 #ifndef __BYTE_ORDER__\n\
316 /* Byte order defines. These are as defined on UnixWare 1.1, but with\n\
317 double underscores added at the front and back. */\n\
318 #define __LITTLE_ENDIAN__ 1234\n\
319 #define __BIG_ENDIAN__ 4321\n\
320 #define __PDP_ENDIAN__ 3412\n\
321 #endif\n\n\
322 #ifdef __STDC__\n\
323 static __inline__ unsigned long htonl (unsigned long);\n\
324 static __inline__ unsigned short htons (unsigned int);\n\
325 static __inline__ unsigned long ntohl (unsigned long);\n\
326 static __inline__ unsigned short ntohs (unsigned int);\n\
327 #endif /* defined (__STDC__) */\n\n\
328 #if defined (__i386__)\n\n\
329 #ifndef __BYTE_ORDER__\n\
330 #define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
331 #endif\n\n\
332 /* Convert a host long to a network long. */\n\n\
333 /* We must use a new-style function definition, so that this will also\n\
334 be valid for C++. */\n\
335 static __inline__ unsigned long\n\
336 htonl (unsigned long __arg)\n\
337 {\n\
338 register unsigned long __result;\n\n\
339 __asm__ (\"xchg%B0 %b0,%h0\n\
340 ror%L0 $16,%0\n\
341 xchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
342 return __result;\n\
343 }\n\n\
344 /* Convert a host short to a network short. */\n\n\
345 static __inline__ unsigned short\n\
346 htons (unsigned int __arg)\n\
347 {\n\
348 register unsigned short __result;\n\n\
349 __asm__ (\"xchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
350 return __result;\n\
351 }\n\n\
352 #elif (defined (__ns32k__) || defined (__vax__) || defined (__arm__))\n\n\
353 #ifndef __BYTE_ORDER__\n\
354 #define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
355 #endif\n\n\
356 /* For other little-endian machines, using C code is just as efficient as\n\
357 using assembly code. */\n\n\
358 /* Convert a host long to a network long. */\n\n\
359 static __inline__ unsigned long\n\
360 htonl (unsigned long __arg)\n\
361 {\n\
362 register unsigned long __result;\n\n\
363 __result = (__arg >> 24) & 0x000000ff;\n\
364 __result |= (__arg >> 8) & 0x0000ff00;\n\
365 __result |= (__arg << 8) & 0x00ff0000;\n\
366 __result |= (__arg << 24) & 0xff000000;\n\
367 return __result;\n\
368 }\n\n\
369 /* Convert a host short to a network short. */\n\n\
370 static __inline__ unsigned short\n\
371 htons (unsigned int __arg)\n\
372 {\n\
373 register unsigned short __result;\n\n\
374 __result = (__arg << 8) & 0xff00;\n\
375 __result |= (__arg >> 8) & 0x00ff;\n\
376 return __result;\n\
377 }\n\n\
378 #else /* must be a big-endian machine */\n\n\
379 #ifndef __BYTE_ORDER__\n\
380 #define __BYTE_ORDER__ __BIG_ENDIAN__\n\
381 #endif\n\n\
382 /* Convert a host long to a network long. */\n\n\
383 static __inline__ unsigned long\n\
384 htonl (unsigned long __arg)\n\
385 {\n\
386 return __arg;\n\
387 }\n\n\
388 /* Convert a host short to a network short. */\n\n\
389 static __inline__ unsigned short\n\
390 htons (unsigned int __arg)\n\
391 {\n\
392 return __arg;\n\
393 }\n\n\
394 #endif /* big-endian */\n\n\
395 /* Convert a network long to a host long. */\n\n\
396 static __inline__ unsigned long\n\
397 ntohl (unsigned long __arg)\n\
398 {\n\
399 return htonl (__arg);\n\
400 }\n\n\
401 /* Convert a network short to a host short. */\n\n\
402 static __inline__ unsigned short\n\
403 ntohs (unsigned int __arg)\n\
404 {\n\
405 return htons (__arg);\n\
406 }\n\
407 #endif",
408 (char*)NULL };
409
410 /* * * * * * * * * * * * * * * * * * * * * * * * * *
411 *
412 * Description of Aab_Ultrix_Ansi_Compat fix
413 */
414 tSCC zAab_Ultrix_Ansi_CompatName[] =
415 "AAB_ultrix_ansi_compat";
416
417 /*
418 * File name selection pattern
419 */
420 tSCC zAab_Ultrix_Ansi_CompatList[] =
421 "|ansi_compat.h|";
422 /*
423 * Machine/OS name selection pattern
424 */
425 #define apzAab_Ultrix_Ansi_CompatMachs (const char**)NULL
426
427 /*
428 * content selection pattern - do fix if pattern found
429 */
430 tSCC zAab_Ultrix_Ansi_CompatSelect0[] =
431 "ULTRIX";
432
433 #define AAB_ULTRIX_ANSI_COMPAT_TEST_CT 1
434 static tTestDesc aAab_Ultrix_Ansi_CompatTests[] = {
435 { TT_EGREP, zAab_Ultrix_Ansi_CompatSelect0, (regex_t*)NULL }, };
436
437 /*
438 * Fix Command Arguments for Aab_Ultrix_Ansi_Compat
439 */
440 static const char* apzAab_Ultrix_Ansi_CompatPatch[] = {
441 "/* This file intentionally left blank. */\n",
442 (char*)NULL };
443
444 /* * * * * * * * * * * * * * * * * * * * * * * * * *
445 *
446 * Description of Aab_Ultrix_Limits fix
447 */
448 tSCC zAab_Ultrix_LimitsName[] =
449 "AAB_ultrix_limits";
450
451 /*
452 * File name selection pattern
453 */
454 tSCC zAab_Ultrix_LimitsList[] =
455 "|limits.h|";
456 /*
457 * Machine/OS name selection pattern
458 */
459 tSCC* apzAab_Ultrix_LimitsMachs[] = {
460 "*-*-ultrix4.3",
461 (const char*)NULL };
462 #define AAB_ULTRIX_LIMITS_TEST_CT 0
463 #define aAab_Ultrix_LimitsTests (tTestDesc*)NULL
464
465 /*
466 * Fix Command Arguments for Aab_Ultrix_Limits
467 */
468 static const char* apzAab_Ultrix_LimitsPatch[] = {
469 "#ifndef _LIMITS_INCLUDED\n\
470 #define _LIMITS_INCLUDED\n\
471 #include <sys/limits.h>\n\
472 #endif /* _LIMITS_INCLUDED */",
473 (char*)NULL };
474
475 /* * * * * * * * * * * * * * * * * * * * * * * * * *
476 *
477 * Description of Aab_Ultrix_Memory fix
478 */
479 tSCC zAab_Ultrix_MemoryName[] =
480 "AAB_ultrix_memory";
481
482 /*
483 * File name selection pattern
484 */
485 tSCC zAab_Ultrix_MemoryList[] =
486 "|memory.h|";
487 /*
488 * Machine/OS name selection pattern
489 */
490 tSCC* apzAab_Ultrix_MemoryMachs[] = {
491 "*-*-ultrix4.3",
492 (const char*)NULL };
493 #define AAB_ULTRIX_MEMORY_TEST_CT 0
494 #define aAab_Ultrix_MemoryTests (tTestDesc*)NULL
495
496 /*
497 * Fix Command Arguments for Aab_Ultrix_Memory
498 */
499 static const char* apzAab_Ultrix_MemoryPatch[] = {
500 "#ifndef _MEMORY_INCLUDED\n\
501 #define _MEMORY_INCLUDED\n\
502 #include <strings.h>\n\
503 #endif /* _MEMORY_INCLUDED */",
504 (char*)NULL };
505
506 /* * * * * * * * * * * * * * * * * * * * * * * * * *
507 *
508 * Description of Aab_Ultrix_String fix
509 */
510 tSCC zAab_Ultrix_StringName[] =
511 "AAB_ultrix_string";
512
513 /*
514 * File name selection pattern
515 */
516 tSCC zAab_Ultrix_StringList[] =
517 "|string.h|";
518 /*
519 * Machine/OS name selection pattern
520 */
521 tSCC* apzAab_Ultrix_StringMachs[] = {
522 "*-*-ultrix4.3",
523 (const char*)NULL };
524 #define AAB_ULTRIX_STRING_TEST_CT 0
525 #define aAab_Ultrix_StringTests (tTestDesc*)NULL
526
527 /*
528 * Fix Command Arguments for Aab_Ultrix_String
529 */
530 static const char* apzAab_Ultrix_StringPatch[] = {
531 "#ifndef _STRING_INCLUDED\n\
532 #define _STRING_INCLUDED\n\
533 #include <strings.h>\n\
534 #endif /* _STRING_INCLUDED */",
535 (char*)NULL };
536
537 /* * * * * * * * * * * * * * * * * * * * * * * * * *
538 *
539 * Description of Aix_Pthread fix
540 */
541 tSCC zAix_PthreadName[] =
542 "aix_pthread";
543
544 /*
545 * File name selection pattern
546 */
547 tSCC zAix_PthreadList[] =
548 "|pthread.h|";
549 /*
550 * Machine/OS name selection pattern
551 */
552 #define apzAix_PthreadMachs (const char**)NULL
553
554 /*
555 * content selection pattern - do fix if pattern found
556 */
557 tSCC zAix_PthreadSelect0[] =
558 "(#define [A-Za-z_0-9]+)(\\\\\n\
559 [^A-Za-z_0-9 \t\n\
560 (])";
561
562 #define AIX_PTHREAD_TEST_CT 1
563 static tTestDesc aAix_PthreadTests[] = {
564 { TT_EGREP, zAix_PthreadSelect0, (regex_t*)NULL }, };
565
566 /*
567 * Fix Command Arguments for Aix_Pthread
568 */
569 static const char* apzAix_PthreadPatch[] = {
570 "format",
571 "%1 %2",
572 (char*)NULL };
573
574 /* * * * * * * * * * * * * * * * * * * * * * * * * *
575 *
576 * Description of Aix_Sysmachine fix
577 */
578 tSCC zAix_SysmachineName[] =
579 "aix_sysmachine";
580
581 /*
582 * File name selection pattern
583 */
584 tSCC zAix_SysmachineList[] =
585 "|sys/machine.h|";
586 /*
587 * Machine/OS name selection pattern
588 */
589 #define apzAix_SysmachineMachs (const char**)NULL
590
591 /*
592 * content selection pattern - do fix if pattern found
593 */
594 tSCC zAix_SysmachineSelect0[] =
595 "\\\\ +\n";
596
597 #define AIX_SYSMACHINE_TEST_CT 1
598 static tTestDesc aAix_SysmachineTests[] = {
599 { TT_EGREP, zAix_SysmachineSelect0, (regex_t*)NULL }, };
600
601 /*
602 * Fix Command Arguments for Aix_Sysmachine
603 */
604 static const char* apzAix_SysmachinePatch[] = {
605 "format",
606 "\\\n",
607 (char*)NULL };
608
609 /* * * * * * * * * * * * * * * * * * * * * * * * * *
610 *
611 * Description of Aix_Syswait fix
612 */
613 tSCC zAix_SyswaitName[] =
614 "aix_syswait";
615
616 /*
617 * File name selection pattern
618 */
619 tSCC zAix_SyswaitList[] =
620 "|sys/wait.h|";
621 /*
622 * Machine/OS name selection pattern
623 */
624 #define apzAix_SyswaitMachs (const char**)NULL
625
626 /*
627 * content selection pattern - do fix if pattern found
628 */
629 tSCC zAix_SyswaitSelect0[] =
630 "^extern pid_t wait3\\(\\);\n";
631 tSCC zAix_SyswaitSelect1[] =
632 "bos325,";
633
634 #define AIX_SYSWAIT_TEST_CT 2
635 static tTestDesc aAix_SyswaitTests[] = {
636 { TT_EGREP, zAix_SyswaitSelect0, (regex_t*)NULL },
637 { TT_EGREP, zAix_SyswaitSelect1, (regex_t*)NULL }, };
638
639 /*
640 * Fix Command Arguments for Aix_Syswait
641 */
642 static const char* apzAix_SyswaitPatch[] = {
643 "format",
644 "struct rusage;\n\
645 %0",
646 (char*)NULL };
647
648 /* * * * * * * * * * * * * * * * * * * * * * * * * *
649 *
650 * Description of Aix_Volatile fix
651 */
652 tSCC zAix_VolatileName[] =
653 "aix_volatile";
654
655 /*
656 * File name selection pattern
657 */
658 tSCC zAix_VolatileList[] =
659 "|sys/signal.h|";
660 /*
661 * Machine/OS name selection pattern
662 */
663 #define apzAix_VolatileMachs (const char**)NULL
664
665 /*
666 * content selection pattern - do fix if pattern found
667 */
668 tSCC zAix_VolatileSelect0[] =
669 "typedef volatile int sig_atomic_t";
670
671 #define AIX_VOLATILE_TEST_CT 1
672 static tTestDesc aAix_VolatileTests[] = {
673 { TT_EGREP, zAix_VolatileSelect0, (regex_t*)NULL }, };
674
675 /*
676 * Fix Command Arguments for Aix_Volatile
677 */
678 static const char* apzAix_VolatilePatch[] = {
679 "format",
680 "typedef int sig_atomic_t",
681 (char*)NULL };
682
683 /* * * * * * * * * * * * * * * * * * * * * * * * * *
684 *
685 * Description of Alpha___Assert fix
686 */
687 tSCC zAlpha___AssertName[] =
688 "alpha___assert";
689
690 /*
691 * File name selection pattern
692 */
693 tSCC zAlpha___AssertList[] =
694 "|assert.h|";
695 /*
696 * Machine/OS name selection pattern
697 */
698 #define apzAlpha___AssertMachs (const char**)NULL
699
700 /*
701 * content selection pattern - do fix if pattern found
702 */
703 tSCC zAlpha___AssertSelect0[] =
704 "__assert\\(char \\*, char \\*, int\\)";
705
706 #define ALPHA___ASSERT_TEST_CT 1
707 static tTestDesc aAlpha___AssertTests[] = {
708 { TT_EGREP, zAlpha___AssertSelect0, (regex_t*)NULL }, };
709
710 /*
711 * Fix Command Arguments for Alpha___Assert
712 */
713 static const char* apzAlpha___AssertPatch[] = {
714 "format",
715 "__assert(const char *, const char *, int)",
716 (char*)NULL };
717
718 /* * * * * * * * * * * * * * * * * * * * * * * * * *
719 *
720 * Description of Alpha___Extern_Prefix fix
721 */
722 tSCC zAlpha___Extern_PrefixName[] =
723 "alpha___extern_prefix";
724
725 /*
726 * File name selection pattern
727 */
728 tSCC zAlpha___Extern_PrefixList[] =
729 "|sys/stat.h|";
730 /*
731 * Machine/OS name selection pattern
732 */
733 tSCC* apzAlpha___Extern_PrefixMachs[] = {
734 "alpha*-dec-osf5*",
735 (const char*)NULL };
736
737 /*
738 * content selection pattern - do fix if pattern found
739 */
740 tSCC zAlpha___Extern_PrefixSelect0[] =
741 "#[ \t]*if[ \t]*defined\\(__DECC\\)";
742
743 #define ALPHA___EXTERN_PREFIX_TEST_CT 1
744 static tTestDesc aAlpha___Extern_PrefixTests[] = {
745 { TT_EGREP, zAlpha___Extern_PrefixSelect0, (regex_t*)NULL }, };
746
747 /*
748 * Fix Command Arguments for Alpha___Extern_Prefix
749 */
750 static const char* apzAlpha___Extern_PrefixPatch[] = {
751 "format",
752 "%0 || defined(__PRAGMA_EXTERN_PREFIX)",
753 (char*)NULL };
754
755 /* * * * * * * * * * * * * * * * * * * * * * * * * *
756 *
757 * Description of Alpha_Assert fix
758 */
759 tSCC zAlpha_AssertName[] =
760 "alpha_assert";
761
762 /*
763 * File name selection pattern
764 */
765 tSCC zAlpha_AssertList[] =
766 "|assert.h|";
767 /*
768 * Machine/OS name selection pattern
769 */
770 #define apzAlpha_AssertMachs (const char**)NULL
771
772 /*
773 * content selection pattern - do fix if pattern found
774 */
775 tSCC zAlpha_AssertSelect0[] =
776 "(#define assert\\(EX\\).*)\\(\\(int\\) \\(EX\\)\\)";
777
778 #define ALPHA_ASSERT_TEST_CT 1
779 static tTestDesc aAlpha_AssertTests[] = {
780 { TT_EGREP, zAlpha_AssertSelect0, (regex_t*)NULL }, };
781
782 /*
783 * Fix Command Arguments for Alpha_Assert
784 */
785 static const char* apzAlpha_AssertPatch[] = {
786 "format",
787 "%1(EX)",
788 (char*)NULL };
789
790 /* * * * * * * * * * * * * * * * * * * * * * * * * *
791 *
792 * Description of Alpha_Getopt fix
793 */
794 tSCC zAlpha_GetoptName[] =
795 "alpha_getopt";
796
797 /*
798 * File name selection pattern
799 */
800 tSCC zAlpha_GetoptList[] =
801 "|stdio.h|stdlib.h|";
802 /*
803 * Machine/OS name selection pattern
804 */
805 #define apzAlpha_GetoptMachs (const char**)NULL
806
807 /*
808 * content selection pattern - do fix if pattern found
809 */
810 tSCC zAlpha_GetoptSelect0[] =
811 "getopt\\(int, char \\*\\[\\], *char \\*\\)";
812
813 #define ALPHA_GETOPT_TEST_CT 1
814 static tTestDesc aAlpha_GetoptTests[] = {
815 { TT_EGREP, zAlpha_GetoptSelect0, (regex_t*)NULL }, };
816
817 /*
818 * Fix Command Arguments for Alpha_Getopt
819 */
820 static const char* apzAlpha_GetoptPatch[] = {
821 "format",
822 "getopt(int, char *const[], const char *)",
823 (char*)NULL };
824
825 /* * * * * * * * * * * * * * * * * * * * * * * * * *
826 *
827 * Description of Alpha_Parens fix
828 */
829 tSCC zAlpha_ParensName[] =
830 "alpha_parens";
831
832 /*
833 * File name selection pattern
834 */
835 tSCC zAlpha_ParensList[] =
836 "|sym.h|";
837 /*
838 * Machine/OS name selection pattern
839 */
840 #define apzAlpha_ParensMachs (const char**)NULL
841
842 /*
843 * content selection pattern - do fix if pattern found
844 */
845 tSCC zAlpha_ParensSelect0[] =
846 "#ifndef\\(__mips64\\)";
847
848 #define ALPHA_PARENS_TEST_CT 1
849 static tTestDesc aAlpha_ParensTests[] = {
850 { TT_EGREP, zAlpha_ParensSelect0, (regex_t*)NULL }, };
851
852 /*
853 * Fix Command Arguments for Alpha_Parens
854 */
855 static const char* apzAlpha_ParensPatch[] = {
856 "format",
857 "#ifndef __mips64",
858 (char*)NULL };
859
860 /* * * * * * * * * * * * * * * * * * * * * * * * * *
861 *
862 * Description of Alpha_Pthread fix
863 */
864 tSCC zAlpha_PthreadName[] =
865 "alpha_pthread";
866
867 /*
868 * File name selection pattern
869 */
870 tSCC zAlpha_PthreadList[] =
871 "|pthread.h|";
872 /*
873 * Machine/OS name selection pattern
874 */
875 tSCC* apzAlpha_PthreadMachs[] = {
876 "alpha*-dec-osf*",
877 (const char*)NULL };
878
879 /*
880 * content selection pattern - do fix if pattern found
881 */
882 tSCC zAlpha_PthreadSelect0[] =
883 "(#[ \t]*if defined \\(_PTHREAD_ENV_DECC\\) || defined \\(_PTHREAD_ENV_EPCC\\))\n\
884 (#[ \t]*define _PTHREAD_USE_PTDNAM_)";
885
886 #define ALPHA_PTHREAD_TEST_CT 1
887 static tTestDesc aAlpha_PthreadTests[] = {
888 { TT_EGREP, zAlpha_PthreadSelect0, (regex_t*)NULL }, };
889
890 /*
891 * Fix Command Arguments for Alpha_Pthread
892 */
893 static const char* apzAlpha_PthreadPatch[] = {
894 "format",
895 "%1 || defined (__PRAGMA_EXTERN_PREFIX)\n\
896 %2",
897 (char*)NULL };
898
899 /* * * * * * * * * * * * * * * * * * * * * * * * * *
900 *
901 * Description of Alpha_Sbrk fix
902 */
903 tSCC zAlpha_SbrkName[] =
904 "alpha_sbrk";
905
906 /*
907 * File name selection pattern
908 */
909 tSCC zAlpha_SbrkList[] =
910 "|unistd.h|";
911 /*
912 * Machine/OS name selection pattern
913 */
914 #define apzAlpha_SbrkMachs (const char**)NULL
915
916 /*
917 * content selection pattern - do fix if pattern found
918 */
919 tSCC zAlpha_SbrkSelect0[] =
920 "char[ \t]*\\*[\t ]*sbrk[ \t]*\\(";
921
922 #define ALPHA_SBRK_TEST_CT 1
923 static tTestDesc aAlpha_SbrkTests[] = {
924 { TT_EGREP, zAlpha_SbrkSelect0, (regex_t*)NULL }, };
925
926 /*
927 * Fix Command Arguments for Alpha_Sbrk
928 */
929 static const char* apzAlpha_SbrkPatch[] = {
930 "format",
931 "void *sbrk(",
932 (char*)NULL };
933
934 /* * * * * * * * * * * * * * * * * * * * * * * * * *
935 *
936 * Description of Avoid_Bool_Define fix
937 */
938 tSCC zAvoid_Bool_DefineName[] =
939 "avoid_bool_define";
940
941 /*
942 * File name selection pattern
943 */
944 tSCC zAvoid_Bool_DefineList[] =
945 "|curses.h|curses_colr/curses.h|term.h|tinfo.h|";
946 /*
947 * Machine/OS name selection pattern
948 */
949 #define apzAvoid_Bool_DefineMachs (const char**)NULL
950
951 /*
952 * content selection pattern - do fix if pattern found
953 */
954 tSCC zAvoid_Bool_DefineSelect0[] =
955 "#[ \t]*define[ \t]+bool[ \t]";
956
957 /*
958 * content bypass pattern - skip fix if pattern found
959 */
960 tSCC zAvoid_Bool_DefineBypass0[] =
961 "__cplusplus";
962
963 #define AVOID_BOOL_DEFINE_TEST_CT 2
964 static tTestDesc aAvoid_Bool_DefineTests[] = {
965 { TT_NEGREP, zAvoid_Bool_DefineBypass0, (regex_t*)NULL },
966 { TT_EGREP, zAvoid_Bool_DefineSelect0, (regex_t*)NULL }, };
967
968 /*
969 * Fix Command Arguments for Avoid_Bool_Define
970 */
971 static const char* apzAvoid_Bool_DefinePatch[] = {
972 "format",
973 "#ifndef __cplusplus\n\
974 %0\n\
975 #endif",
976 "^[ \t]*#[ \t]*define[ \t]+bool[ \t].*",
977 (char*)NULL };
978
979 /* * * * * * * * * * * * * * * * * * * * * * * * * *
980 *
981 * Description of Avoid_Bool_Type fix
982 */
983 tSCC zAvoid_Bool_TypeName[] =
984 "avoid_bool_type";
985
986 /*
987 * File name selection pattern
988 */
989 tSCC zAvoid_Bool_TypeList[] =
990 "|curses.h|curses_colr/curses.h|term.h|tinfo.h|";
991 /*
992 * Machine/OS name selection pattern
993 */
994 #define apzAvoid_Bool_TypeMachs (const char**)NULL
995
996 /*
997 * content selection pattern - do fix if pattern found
998 */
999 tSCC zAvoid_Bool_TypeSelect0[] =
1000 "^[ \t]*typedef[ \t].*[ \t]bool[ \t]*;";
1001
1002 /*
1003 * content bypass pattern - skip fix if pattern found
1004 */
1005 tSCC zAvoid_Bool_TypeBypass0[] =
1006 "__cplusplus";
1007
1008 #define AVOID_BOOL_TYPE_TEST_CT 2
1009 static tTestDesc aAvoid_Bool_TypeTests[] = {
1010 { TT_NEGREP, zAvoid_Bool_TypeBypass0, (regex_t*)NULL },
1011 { TT_EGREP, zAvoid_Bool_TypeSelect0, (regex_t*)NULL }, };
1012
1013 /*
1014 * Fix Command Arguments for Avoid_Bool_Type
1015 */
1016 static const char* apzAvoid_Bool_TypePatch[] = {
1017 "format",
1018 "#ifndef __cplusplus\n\
1019 %0\n\
1020 #endif",
1021 (char*)NULL };
1022
1023 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1024 *
1025 * Description of Avoid_Wchar_T_Type fix
1026 */
1027 tSCC zAvoid_Wchar_T_TypeName[] =
1028 "avoid_wchar_t_type";
1029
1030 /*
1031 * File name selection pattern
1032 */
1033 #define zAvoid_Wchar_T_TypeList (char*)NULL
1034 /*
1035 * Machine/OS name selection pattern
1036 */
1037 #define apzAvoid_Wchar_T_TypeMachs (const char**)NULL
1038
1039 /*
1040 * content selection pattern - do fix if pattern found
1041 */
1042 tSCC zAvoid_Wchar_T_TypeSelect0[] =
1043 "^[ \t]*typedef[ \t].*[ \t]wchar_t[ \t]*;";
1044
1045 /*
1046 * content bypass pattern - skip fix if pattern found
1047 */
1048 tSCC zAvoid_Wchar_T_TypeBypass0[] =
1049 "__cplusplus";
1050 tSCC zAvoid_Wchar_T_TypeBypass1[] =
1051 "_LINUX_NLS_H";
1052 tSCC zAvoid_Wchar_T_TypeBypass2[] =
1053 "XFree86: xc/lib/X11/Xlib\\.h";
1054
1055 #define AVOID_WCHAR_T_TYPE_TEST_CT 4
1056 static tTestDesc aAvoid_Wchar_T_TypeTests[] = {
1057 { TT_NEGREP, zAvoid_Wchar_T_TypeBypass0, (regex_t*)NULL },
1058 { TT_NEGREP, zAvoid_Wchar_T_TypeBypass1, (regex_t*)NULL },
1059 { TT_NEGREP, zAvoid_Wchar_T_TypeBypass2, (regex_t*)NULL },
1060 { TT_EGREP, zAvoid_Wchar_T_TypeSelect0, (regex_t*)NULL }, };
1061
1062 /*
1063 * Fix Command Arguments for Avoid_Wchar_T_Type
1064 */
1065 static const char* apzAvoid_Wchar_T_TypePatch[] = {
1066 "format",
1067 "#ifndef __cplusplus\n\
1068 %0\n\
1069 #endif",
1070 (char*)NULL };
1071
1072 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1073 *
1074 * Description of Bad_Lval fix
1075 */
1076 tSCC zBad_LvalName[] =
1077 "bad_lval";
1078
1079 /*
1080 * File name selection pattern
1081 */
1082 tSCC zBad_LvalList[] =
1083 "|libgen.h|dirent.h|ftw.h|grp.h|ndbm.h|pthread.h|pwd.h|signal.h|standards.h|stdlib.h|string.h|stropts.h|time.h|unistd.h|";
1084 /*
1085 * Machine/OS name selection pattern
1086 */
1087 #define apzBad_LvalMachs (const char**)NULL
1088
1089 /*
1090 * content selection pattern - do fix if pattern found
1091 */
1092 tSCC zBad_LvalSelect0[] =
1093 "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
1094
1095 #define BAD_LVAL_TEST_CT 1
1096 static tTestDesc aBad_LvalTests[] = {
1097 { TT_EGREP, zBad_LvalSelect0, (regex_t*)NULL }, };
1098
1099 /*
1100 * Fix Command Arguments for Bad_Lval
1101 */
1102 static const char* apzBad_LvalPatch[] = { "sed",
1103 "-e", "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
1104 (char*)NULL };
1105
1106 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1107 *
1108 * Description of Bad_Struct_Term fix
1109 */
1110 tSCC zBad_Struct_TermName[] =
1111 "bad_struct_term";
1112
1113 /*
1114 * File name selection pattern
1115 */
1116 tSCC zBad_Struct_TermList[] =
1117 "|curses.h|";
1118 /*
1119 * Machine/OS name selection pattern
1120 */
1121 #define apzBad_Struct_TermMachs (const char**)NULL
1122
1123 /*
1124 * content selection pattern - do fix if pattern found
1125 */
1126 tSCC zBad_Struct_TermSelect0[] =
1127 "^[ \t]*typedef[ \t]+struct[ \t]+term[ \t]*;";
1128
1129 #define BAD_STRUCT_TERM_TEST_CT 1
1130 static tTestDesc aBad_Struct_TermTests[] = {
1131 { TT_EGREP, zBad_Struct_TermSelect0, (regex_t*)NULL }, };
1132
1133 /*
1134 * Fix Command Arguments for Bad_Struct_Term
1135 */
1136 static const char* apzBad_Struct_TermPatch[] = {
1137 "format",
1138 "struct term;",
1139 (char*)NULL };
1140
1141 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1142 *
1143 * Description of Badquote fix
1144 */
1145 tSCC zBadquoteName[] =
1146 "badquote";
1147
1148 /*
1149 * File name selection pattern
1150 */
1151 tSCC zBadquoteList[] =
1152 "|sundev/vuid_event.h|";
1153 /*
1154 * Machine/OS name selection pattern
1155 */
1156 #define apzBadquoteMachs (const char**)NULL
1157
1158 /*
1159 * content selection pattern - do fix if pattern found
1160 */
1161 tSCC zBadquoteSelect0[] =
1162 "doesn't";
1163
1164 #define BADQUOTE_TEST_CT 1
1165 static tTestDesc aBadquoteTests[] = {
1166 { TT_EGREP, zBadquoteSelect0, (regex_t*)NULL }, };
1167
1168 /*
1169 * Fix Command Arguments for Badquote
1170 */
1171 static const char* apzBadquotePatch[] = {
1172 "format",
1173 "does not",
1174 (char*)NULL };
1175
1176 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1177 *
1178 * Description of Broken_Assert_Stdio fix
1179 */
1180 tSCC zBroken_Assert_StdioName[] =
1181 "broken_assert_stdio";
1182
1183 /*
1184 * File name selection pattern
1185 */
1186 tSCC zBroken_Assert_StdioList[] =
1187 "|assert.h|";
1188 /*
1189 * Machine/OS name selection pattern
1190 */
1191 #define apzBroken_Assert_StdioMachs (const char**)NULL
1192
1193 /*
1194 * content selection pattern - do fix if pattern found
1195 */
1196 tSCC zBroken_Assert_StdioSelect0[] =
1197 "stderr";
1198
1199 /*
1200 * content bypass pattern - skip fix if pattern found
1201 */
1202 tSCC zBroken_Assert_StdioBypass0[] =
1203 "include.*stdio\\.h";
1204
1205 #define BROKEN_ASSERT_STDIO_TEST_CT 2
1206 static tTestDesc aBroken_Assert_StdioTests[] = {
1207 { TT_NEGREP, zBroken_Assert_StdioBypass0, (regex_t*)NULL },
1208 { TT_EGREP, zBroken_Assert_StdioSelect0, (regex_t*)NULL }, };
1209
1210 /*
1211 * Fix Command Arguments for Broken_Assert_Stdio
1212 */
1213 static const char* apzBroken_Assert_StdioPatch[] = {
1214 "wrap",
1215 "#include <stdio.h>\n",
1216 (char*)NULL };
1217
1218 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1219 *
1220 * Description of Broken_Assert_Stdlib fix
1221 */
1222 tSCC zBroken_Assert_StdlibName[] =
1223 "broken_assert_stdlib";
1224
1225 /*
1226 * File name selection pattern
1227 */
1228 tSCC zBroken_Assert_StdlibList[] =
1229 "|assert.h|";
1230 /*
1231 * Machine/OS name selection pattern
1232 */
1233 #define apzBroken_Assert_StdlibMachs (const char**)NULL
1234
1235 /*
1236 * content selection pattern - do fix if pattern found
1237 */
1238 tSCC zBroken_Assert_StdlibSelect0[] =
1239 "exit *\\(|abort *\\(";
1240
1241 /*
1242 * content bypass pattern - skip fix if pattern found
1243 */
1244 tSCC zBroken_Assert_StdlibBypass0[] =
1245 "include.*stdlib\\.h";
1246
1247 #define BROKEN_ASSERT_STDLIB_TEST_CT 2
1248 static tTestDesc aBroken_Assert_StdlibTests[] = {
1249 { TT_NEGREP, zBroken_Assert_StdlibBypass0, (regex_t*)NULL },
1250 { TT_EGREP, zBroken_Assert_StdlibSelect0, (regex_t*)NULL }, };
1251
1252 /*
1253 * Fix Command Arguments for Broken_Assert_Stdlib
1254 */
1255 static const char* apzBroken_Assert_StdlibPatch[] = {
1256 "wrap",
1257 "#ifdef __cplusplus\n\
1258 #include <stdlib.h>\n\
1259 #endif\n",
1260 (char*)NULL };
1261
1262 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1263 *
1264 * Description of Broken_Cabs fix
1265 */
1266 tSCC zBroken_CabsName[] =
1267 "broken_cabs";
1268
1269 /*
1270 * File name selection pattern
1271 */
1272 tSCC zBroken_CabsList[] =
1273 "|math.h|architecture/ppc/math.h|architecture/i386/math.h|";
1274 /*
1275 * Machine/OS name selection pattern
1276 */
1277 #define apzBroken_CabsMachs (const char**)NULL
1278
1279 /*
1280 * content selection pattern - do fix if pattern found
1281 */
1282 tSCC zBroken_CabsSelect0[] =
1283 "^extern[ \\t]+double[ \\t]+cabs";
1284
1285 #define BROKEN_CABS_TEST_CT 1
1286 static tTestDesc aBroken_CabsTests[] = {
1287 { TT_EGREP, zBroken_CabsSelect0, (regex_t*)NULL }, };
1288
1289 /*
1290 * Fix Command Arguments for Broken_Cabs
1291 */
1292 static const char* apzBroken_CabsPatch[] = {
1293 "format",
1294 "",
1295 "^extern[ \t]+double[ \t]+cabs[ \t]*\\([^\\)]*\\);",
1296 (char*)NULL };
1297
1298 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1299 *
1300 * Description of Bsd_Stdio_Attrs_Conflict fix
1301 */
1302 tSCC zBsd_Stdio_Attrs_ConflictName[] =
1303 "bsd_stdio_attrs_conflict";
1304
1305 /*
1306 * File name selection pattern
1307 */
1308 tSCC zBsd_Stdio_Attrs_ConflictList[] =
1309 "|stdio.h|";
1310 /*
1311 * Machine/OS name selection pattern
1312 */
1313 tSCC* apzBsd_Stdio_Attrs_ConflictMachs[] = {
1314 "*-*-*bsd*",
1315 "*-*-*darwin*",
1316 (const char*)NULL };
1317
1318 /*
1319 * content selection pattern - do fix if pattern found
1320 */
1321 tSCC zBsd_Stdio_Attrs_ConflictSelect0[] =
1322 "^#define[ \t]*vfscanf[ \t]*__svfscanf[ \t]*$";
1323
1324 #define BSD_STDIO_ATTRS_CONFLICT_TEST_CT 1
1325 static tTestDesc aBsd_Stdio_Attrs_ConflictTests[] = {
1326 { TT_EGREP, zBsd_Stdio_Attrs_ConflictSelect0, (regex_t*)NULL }, };
1327
1328 /*
1329 * Fix Command Arguments for Bsd_Stdio_Attrs_Conflict
1330 */
1331 static const char* apzBsd_Stdio_Attrs_ConflictPatch[] = {
1332 "format",
1333 "#define _BSD_STRING(_BSD_X) _BSD_STRINGX(_BSD_X)\n\
1334 #define _BSD_STRINGX(_BSD_X) #_BSD_X\n\
1335 int vfscanf(FILE *, const char *, __builtin_va_list) __asm__ (_BSD_STRING(__USER_LABEL_PREFIX__) \"__svfscanf\");",
1336 (char*)NULL };
1337
1338 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1339 *
1340 * Description of Ctrl_Quotes_Def fix
1341 */
1342 tSCC zCtrl_Quotes_DefName[] =
1343 "ctrl_quotes_def";
1344
1345 /*
1346 * File name selection pattern
1347 */
1348 #define zCtrl_Quotes_DefList (char*)NULL
1349 /*
1350 * Machine/OS name selection pattern
1351 */
1352 #define apzCtrl_Quotes_DefMachs (const char**)NULL
1353
1354 /*
1355 * content selection pattern - do fix if pattern found
1356 */
1357 tSCC zCtrl_Quotes_DefSelect0[] =
1358 "define[ \t]+[A-Z0-9_]+CTRL\\([a-zA-Z][,)]";
1359
1360 #define CTRL_QUOTES_DEF_TEST_CT 1
1361 static tTestDesc aCtrl_Quotes_DefTests[] = {
1362 { TT_EGREP, zCtrl_Quotes_DefSelect0, (regex_t*)NULL }, };
1363
1364 /*
1365 * Fix Command Arguments for Ctrl_Quotes_Def
1366 */
1367 static const char* apzCtrl_Quotes_DefPatch[] = {
1368 "char_macro_def",
1369 "CTRL",
1370 (char*)NULL };
1371
1372 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1373 *
1374 * Description of Ctrl_Quotes_Use fix
1375 */
1376 tSCC zCtrl_Quotes_UseName[] =
1377 "ctrl_quotes_use";
1378
1379 /*
1380 * File name selection pattern
1381 */
1382 #define zCtrl_Quotes_UseList (char*)NULL
1383 /*
1384 * Machine/OS name selection pattern
1385 */
1386 #define apzCtrl_Quotes_UseMachs (const char**)NULL
1387
1388 /*
1389 * content selection pattern - do fix if pattern found
1390 */
1391 tSCC zCtrl_Quotes_UseSelect0[] =
1392 "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+CTRL[ \t]*\\( *[^,']";
1393
1394 #define CTRL_QUOTES_USE_TEST_CT 1
1395 static tTestDesc aCtrl_Quotes_UseTests[] = {
1396 { TT_EGREP, zCtrl_Quotes_UseSelect0, (regex_t*)NULL }, };
1397
1398 /*
1399 * Fix Command Arguments for Ctrl_Quotes_Use
1400 */
1401 static const char* apzCtrl_Quotes_UsePatch[] = {
1402 "char_macro_use",
1403 "CTRL",
1404 (char*)NULL };
1405
1406 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1407 *
1408 * Description of Cxx_Unready fix
1409 */
1410 tSCC zCxx_UnreadyName[] =
1411 "cxx_unready";
1412
1413 /*
1414 * File name selection pattern
1415 */
1416 tSCC zCxx_UnreadyList[] =
1417 "|sys/mman.h|rpc/types.h|";
1418 /*
1419 * Machine/OS name selection pattern
1420 */
1421 #define apzCxx_UnreadyMachs (const char**)NULL
1422
1423 /*
1424 * content selection pattern - do fix if pattern found
1425 */
1426 tSCC zCxx_UnreadySelect0[] =
1427 "[^#]+malloc.*;";
1428
1429 /*
1430 * content bypass pattern - skip fix if pattern found
1431 */
1432 tSCC zCxx_UnreadyBypass0[] =
1433 "\"C\"|__BEGIN_DECLS";
1434
1435 #define CXX_UNREADY_TEST_CT 2
1436 static tTestDesc aCxx_UnreadyTests[] = {
1437 { TT_NEGREP, zCxx_UnreadyBypass0, (regex_t*)NULL },
1438 { TT_EGREP, zCxx_UnreadySelect0, (regex_t*)NULL }, };
1439
1440 /*
1441 * Fix Command Arguments for Cxx_Unready
1442 */
1443 static const char* apzCxx_UnreadyPatch[] = {
1444 "wrap",
1445 "#ifdef __cplusplus\n\
1446 extern \"C\" {\n\
1447 #endif\n",
1448 "#ifdef __cplusplus\n\
1449 }\n\
1450 #endif\n",
1451 (char*)NULL };
1452
1453 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1454 *
1455 * Description of Dec_Intern_Asm fix
1456 */
1457 tSCC zDec_Intern_AsmName[] =
1458 "dec_intern_asm";
1459
1460 /*
1461 * File name selection pattern
1462 */
1463 tSCC zDec_Intern_AsmList[] =
1464 "|c_asm.h|";
1465 /*
1466 * Machine/OS name selection pattern
1467 */
1468 #define apzDec_Intern_AsmMachs (const char**)NULL
1469 #define DEC_INTERN_ASM_TEST_CT 0
1470 #define aDec_Intern_AsmTests (tTestDesc*)NULL
1471
1472 /*
1473 * Fix Command Arguments for Dec_Intern_Asm
1474 */
1475 static const char* apzDec_Intern_AsmPatch[] = { "sed",
1476 "-e", "/^[ \t]*float[ \t]*fasm/i\\\n\
1477 #ifdef __DECC\n",
1478 "-e", "/^[ \t]*#[ \t]*pragma[ \t]*intrinsic([ \t]*dasm/a\\\n\
1479 #endif\n",
1480 (char*)NULL };
1481
1482 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1483 *
1484 * Description of Djgpp_Wchar_H fix
1485 */
1486 tSCC zDjgpp_Wchar_HName[] =
1487 "djgpp_wchar_h";
1488
1489 /*
1490 * File name selection pattern
1491 */
1492 #define zDjgpp_Wchar_HList (char*)NULL
1493 /*
1494 * Machine/OS name selection pattern
1495 */
1496 #define apzDjgpp_Wchar_HMachs (const char**)NULL
1497
1498 /*
1499 * content selection pattern - do fix if pattern found
1500 */
1501 tSCC zDjgpp_Wchar_HSelect0[] =
1502 "__DJ_wint_t";
1503
1504 /*
1505 * content bypass pattern - skip fix if pattern found
1506 */
1507 tSCC zDjgpp_Wchar_HBypass0[] =
1508 "sys/djtypes.h";
1509
1510 #define DJGPP_WCHAR_H_TEST_CT 2
1511 static tTestDesc aDjgpp_Wchar_HTests[] = {
1512 { TT_NEGREP, zDjgpp_Wchar_HBypass0, (regex_t*)NULL },
1513 { TT_EGREP, zDjgpp_Wchar_HSelect0, (regex_t*)NULL }, };
1514
1515 /*
1516 * Fix Command Arguments for Djgpp_Wchar_H
1517 */
1518 static const char* apzDjgpp_Wchar_HPatch[] = {
1519 "format",
1520 "%0\n\
1521 #include <sys/djtypes.h>",
1522 "#include <stddef.h>",
1523 (char*)NULL };
1524
1525 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1526 *
1527 * Description of Ecd_Cursor fix
1528 */
1529 tSCC zEcd_CursorName[] =
1530 "ecd_cursor";
1531
1532 /*
1533 * File name selection pattern
1534 */
1535 tSCC zEcd_CursorList[] =
1536 "|sunwindow/win_lock.h|sunwindow/win_cursor.h|";
1537 /*
1538 * Machine/OS name selection pattern
1539 */
1540 #define apzEcd_CursorMachs (const char**)NULL
1541
1542 /*
1543 * content selection pattern - do fix if pattern found
1544 */
1545 tSCC zEcd_CursorSelect0[] =
1546 "ecd\\.cursor";
1547
1548 #define ECD_CURSOR_TEST_CT 1
1549 static tTestDesc aEcd_CursorTests[] = {
1550 { TT_EGREP, zEcd_CursorSelect0, (regex_t*)NULL }, };
1551
1552 /*
1553 * Fix Command Arguments for Ecd_Cursor
1554 */
1555 static const char* apzEcd_CursorPatch[] = {
1556 "format",
1557 "ecd_cursor",
1558 (char*)NULL };
1559
1560 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1561 *
1562 * Description of Freebsd_Gcc3_Breakage fix
1563 */
1564 tSCC zFreebsd_Gcc3_BreakageName[] =
1565 "freebsd_gcc3_breakage";
1566
1567 /*
1568 * File name selection pattern
1569 */
1570 tSCC zFreebsd_Gcc3_BreakageList[] =
1571 "|sys/cdefs.h|";
1572 /*
1573 * Machine/OS name selection pattern
1574 */
1575 tSCC* apzFreebsd_Gcc3_BreakageMachs[] = {
1576 "*-*-freebsd*",
1577 (const char*)NULL };
1578
1579 /*
1580 * content selection pattern - do fix if pattern found
1581 */
1582 tSCC zFreebsd_Gcc3_BreakageSelect0[] =
1583 "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7$";
1584
1585 /*
1586 * content bypass pattern - skip fix if pattern found
1587 */
1588 tSCC zFreebsd_Gcc3_BreakageBypass0[] =
1589 "__GNUC__[ \\t]*([>=]=[ \\t]*[3-9]|>[ \\t]*2)";
1590
1591 #define FREEBSD_GCC3_BREAKAGE_TEST_CT 2
1592 static tTestDesc aFreebsd_Gcc3_BreakageTests[] = {
1593 { TT_NEGREP, zFreebsd_Gcc3_BreakageBypass0, (regex_t*)NULL },
1594 { TT_EGREP, zFreebsd_Gcc3_BreakageSelect0, (regex_t*)NULL }, };
1595
1596 /*
1597 * Fix Command Arguments for Freebsd_Gcc3_Breakage
1598 */
1599 static const char* apzFreebsd_Gcc3_BreakagePatch[] = {
1600 "format",
1601 "%0 || __GNUC__ >= 3",
1602 (char*)NULL };
1603
1604 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1605 *
1606 * Description of Gnu_Types fix
1607 */
1608 tSCC zGnu_TypesName[] =
1609 "gnu_types";
1610
1611 /*
1612 * File name selection pattern
1613 */
1614 tSCC zGnu_TypesList[] =
1615 "|sys/types.h|stdlib.h|sys/stdtypes.h|stddef.h|memory.h|unistd.h|";
1616 /*
1617 * Machine/OS name selection pattern
1618 */
1619 #define apzGnu_TypesMachs (const char**)NULL
1620
1621 /*
1622 * content selection pattern - do fix if pattern found
1623 */
1624 tSCC zGnu_TypesSelect0[] =
1625 "^[ \t]*typedef[ \t]+.*[ \t](ptrdiff|size|wchar)_t;";
1626
1627 /*
1628 * content bypass pattern - skip fix if pattern found
1629 */
1630 tSCC zGnu_TypesBypass0[] =
1631 "_GCC_(PTRDIFF|SIZE|WCHAR)_T";
1632
1633 #define GNU_TYPES_TEST_CT 2
1634 static tTestDesc aGnu_TypesTests[] = {
1635 { TT_NEGREP, zGnu_TypesBypass0, (regex_t*)NULL },
1636 { TT_EGREP, zGnu_TypesSelect0, (regex_t*)NULL }, };
1637
1638 /*
1639 * Fix Command Arguments for Gnu_Types
1640 */
1641 static const char* apzGnu_TypesPatch[] = {
1642 "gnu_type",
1643 (char*)NULL };
1644
1645 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1646 *
1647 * Description of Hp_Inline fix
1648 */
1649 tSCC zHp_InlineName[] =
1650 "hp_inline";
1651
1652 /*
1653 * File name selection pattern
1654 */
1655 tSCC zHp_InlineList[] =
1656 "|sys/spinlock.h|machine/machparam.h|";
1657 /*
1658 * Machine/OS name selection pattern
1659 */
1660 #define apzHp_InlineMachs (const char**)NULL
1661
1662 /*
1663 * content selection pattern - do fix if pattern found
1664 */
1665 tSCC zHp_InlineSelect0[] =
1666 "[ \t]*#[ \t]*include[ \t]+\"\\.\\./machine/";
1667
1668 #define HP_INLINE_TEST_CT 1
1669 static tTestDesc aHp_InlineTests[] = {
1670 { TT_EGREP, zHp_InlineSelect0, (regex_t*)NULL }, };
1671
1672 /*
1673 * Fix Command Arguments for Hp_Inline
1674 */
1675 static const char* apzHp_InlinePatch[] = {
1676 "format",
1677 "%1<machine/%2.h>",
1678 "([ \t]*#[ \t]*include[ \t]+)\"\\.\\./machine/([a-z]+)\\.h\"",
1679 (char*)NULL };
1680
1681 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1682 *
1683 * Description of Hp_Sysfile fix
1684 */
1685 tSCC zHp_SysfileName[] =
1686 "hp_sysfile";
1687
1688 /*
1689 * File name selection pattern
1690 */
1691 tSCC zHp_SysfileList[] =
1692 "|sys/file.h|";
1693 /*
1694 * Machine/OS name selection pattern
1695 */
1696 #define apzHp_SysfileMachs (const char**)NULL
1697
1698 /*
1699 * content selection pattern - do fix if pattern found
1700 */
1701 tSCC zHp_SysfileSelect0[] =
1702 "HPUX_SOURCE";
1703
1704 #define HP_SYSFILE_TEST_CT 1
1705 static tTestDesc aHp_SysfileTests[] = {
1706 { TT_EGREP, zHp_SysfileSelect0, (regex_t*)NULL }, };
1707
1708 /*
1709 * Fix Command Arguments for Hp_Sysfile
1710 */
1711 static const char* apzHp_SysfilePatch[] = {
1712 "format",
1713 "(struct file *, ...)",
1714 "\\(\\.\\.\\.\\)",
1715 (char*)NULL };
1716
1717 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1718 *
1719 * Description of Hpux10_Cpp_Pow_Inline fix
1720 */
1721 tSCC zHpux10_Cpp_Pow_InlineName[] =
1722 "hpux10_cpp_pow_inline";
1723
1724 /*
1725 * File name selection pattern
1726 */
1727 tSCC zHpux10_Cpp_Pow_InlineList[] =
1728 "|fixinc-test-limits.h|math.h|";
1729 /*
1730 * Machine/OS name selection pattern
1731 */
1732 #define apzHpux10_Cpp_Pow_InlineMachs (const char**)NULL
1733
1734 /*
1735 * content selection pattern - do fix if pattern found
1736 */
1737 tSCC zHpux10_Cpp_Pow_InlineSelect0[] =
1738 "^# +ifdef +__cplusplus\n\
1739 +\\}\n\
1740 +inline +double +pow\\(double +__d,int +__expon\\) +\\{\n\
1741 [ \t]+return +pow\\(__d,\\(double\\)__expon\\);\n\
1742 +\\}\n\
1743 +extern +\"C\" +\\{\n\
1744 #else\n\
1745 # +endif";
1746
1747 #define HPUX10_CPP_POW_INLINE_TEST_CT 1
1748 static tTestDesc aHpux10_Cpp_Pow_InlineTests[] = {
1749 { TT_EGREP, zHpux10_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
1750
1751 /*
1752 * Fix Command Arguments for Hpux10_Cpp_Pow_Inline
1753 */
1754 static const char* apzHpux10_Cpp_Pow_InlinePatch[] = {
1755 "format",
1756 "",
1757 (char*)NULL };
1758
1759 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1760 *
1761 * Description of Hpux11_Cpp_Pow_Inline fix
1762 */
1763 tSCC zHpux11_Cpp_Pow_InlineName[] =
1764 "hpux11_cpp_pow_inline";
1765
1766 /*
1767 * File name selection pattern
1768 */
1769 tSCC zHpux11_Cpp_Pow_InlineList[] =
1770 "|math.h|";
1771 /*
1772 * Machine/OS name selection pattern
1773 */
1774 #define apzHpux11_Cpp_Pow_InlineMachs (const char**)NULL
1775
1776 /*
1777 * content selection pattern - do fix if pattern found
1778 */
1779 tSCC zHpux11_Cpp_Pow_InlineSelect0[] =
1780 " +inline double pow\\(double d,int expon\\) \\{\n\
1781 +return pow\\(d, \\(double\\)expon\\);\n\
1782 +\\}\n";
1783
1784 #define HPUX11_CPP_POW_INLINE_TEST_CT 1
1785 static tTestDesc aHpux11_Cpp_Pow_InlineTests[] = {
1786 { TT_EGREP, zHpux11_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
1787
1788 /*
1789 * Fix Command Arguments for Hpux11_Cpp_Pow_Inline
1790 */
1791 static const char* apzHpux11_Cpp_Pow_InlinePatch[] = {
1792 "format",
1793 "",
1794 (char*)NULL };
1795
1796 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1797 *
1798 * Description of Hpux10_Ctype_Declarations1 fix
1799 */
1800 tSCC zHpux10_Ctype_Declarations1Name[] =
1801 "hpux10_ctype_declarations1";
1802
1803 /*
1804 * File name selection pattern
1805 */
1806 tSCC zHpux10_Ctype_Declarations1List[] =
1807 "|ctype.h|";
1808 /*
1809 * Machine/OS name selection pattern
1810 */
1811 #define apzHpux10_Ctype_Declarations1Machs (const char**)NULL
1812
1813 /*
1814 * content selection pattern - do fix if pattern found
1815 */
1816 tSCC zHpux10_Ctype_Declarations1Select0[] =
1817 "^#[ \t]*define _toupper\\(__c\\)[ \t]*__toupper\\(__c\\)";
1818
1819 /*
1820 * content bypass pattern - skip fix if pattern found
1821 */
1822 tSCC zHpux10_Ctype_Declarations1Bypass0[] =
1823 "^[ \t]*extern[ \t]*int[ \t]*__tolower[ \t]*\\(";
1824
1825 #define HPUX10_CTYPE_DECLARATIONS1_TEST_CT 2
1826 static tTestDesc aHpux10_Ctype_Declarations1Tests[] = {
1827 { TT_NEGREP, zHpux10_Ctype_Declarations1Bypass0, (regex_t*)NULL },
1828 { TT_EGREP, zHpux10_Ctype_Declarations1Select0, (regex_t*)NULL }, };
1829
1830 /*
1831 * Fix Command Arguments for Hpux10_Ctype_Declarations1
1832 */
1833 static const char* apzHpux10_Ctype_Declarations1Patch[] = {
1834 "format",
1835 "#ifdef _PROTOTYPES\n\
1836 extern int __tolower(int);\n\
1837 extern int __toupper(int);\n\
1838 #else /* NOT _PROTOTYPES */\n\
1839 extern int __tolower();\n\
1840 extern int __toupper();\n\
1841 #endif /* _PROTOTYPES */\n\n\
1842 %0\n",
1843 (char*)NULL };
1844
1845 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1846 *
1847 * Description of Hpux10_Ctype_Declarations2 fix
1848 */
1849 tSCC zHpux10_Ctype_Declarations2Name[] =
1850 "hpux10_ctype_declarations2";
1851
1852 /*
1853 * File name selection pattern
1854 */
1855 tSCC zHpux10_Ctype_Declarations2List[] =
1856 "|ctype.h|";
1857 /*
1858 * Machine/OS name selection pattern
1859 */
1860 #define apzHpux10_Ctype_Declarations2Machs (const char**)NULL
1861
1862 /*
1863 * content selection pattern - do fix if pattern found
1864 */
1865 tSCC zHpux10_Ctype_Declarations2Select0[] =
1866 "^# if defined\\(_SB_CTYPE_MACROS\\) && \\!defined\\(__lint\\)";
1867
1868 /*
1869 * content bypass pattern - skip fix if pattern found
1870 */
1871 tSCC zHpux10_Ctype_Declarations2Bypass0[] =
1872 "^[ \t]*extern[ \t]*int[ \t]*_isalnum[ \t]*\\(";
1873
1874 #define HPUX10_CTYPE_DECLARATIONS2_TEST_CT 2
1875 static tTestDesc aHpux10_Ctype_Declarations2Tests[] = {
1876 { TT_NEGREP, zHpux10_Ctype_Declarations2Bypass0, (regex_t*)NULL },
1877 { TT_EGREP, zHpux10_Ctype_Declarations2Select0, (regex_t*)NULL }, };
1878
1879 /*
1880 * Fix Command Arguments for Hpux10_Ctype_Declarations2
1881 */
1882 static const char* apzHpux10_Ctype_Declarations2Patch[] = {
1883 "format",
1884 "%0\n\n\
1885 #ifdef _PROTOTYPES\n\
1886 extern int _isalnum(int);\n\
1887 extern int _isalpha(int);\n\
1888 extern int _iscntrl(int);\n\
1889 extern int _isdigit(int);\n\
1890 extern int _isgraph(int);\n\
1891 extern int _islower(int);\n\
1892 extern int _isprint(int);\n\
1893 extern int _ispunct(int);\n\
1894 extern int _isspace(int);\n\
1895 extern int _isupper(int);\n\
1896 extern int _isxdigit(int);\n\
1897 # else /* not _PROTOTYPES */\n\
1898 extern int _isalnum();\n\
1899 extern int _isalpha();\n\
1900 extern int _iscntrl();\n\
1901 extern int _isdigit();\n\
1902 extern int _isgraph();\n\
1903 extern int _islower();\n\
1904 extern int _isprint();\n\
1905 extern int _ispunct();\n\
1906 extern int _isspace();\n\
1907 extern int _isupper();\n\
1908 extern int _isxdigit();\n\
1909 #endif /* _PROTOTYPES */\n",
1910 (char*)NULL };
1911
1912 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1913 *
1914 * Description of Hpux11_Abs fix
1915 */
1916 tSCC zHpux11_AbsName[] =
1917 "hpux11_abs";
1918
1919 /*
1920 * File name selection pattern
1921 */
1922 tSCC zHpux11_AbsList[] =
1923 "|stdlib.h|";
1924 /*
1925 * Machine/OS name selection pattern
1926 */
1927 tSCC* apzHpux11_AbsMachs[] = {
1928 "ia64-hp-hpux11*",
1929 (const char*)NULL };
1930
1931 /*
1932 * content selection pattern - do fix if pattern found
1933 */
1934 tSCC zHpux11_AbsSelect0[] =
1935 "ifndef _MATH_INCLUDED";
1936
1937 #define HPUX11_ABS_TEST_CT 1
1938 static tTestDesc aHpux11_AbsTests[] = {
1939 { TT_EGREP, zHpux11_AbsSelect0, (regex_t*)NULL }, };
1940
1941 /*
1942 * Fix Command Arguments for Hpux11_Abs
1943 */
1944 static const char* apzHpux11_AbsPatch[] = {
1945 "format",
1946 "if !defined(_MATH_INCLUDED) || defined(__GNUG__)",
1947 (char*)NULL };
1948
1949 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1950 *
1951 * Description of Hpux11_Fabsf fix
1952 */
1953 tSCC zHpux11_FabsfName[] =
1954 "hpux11_fabsf";
1955
1956 /*
1957 * File name selection pattern
1958 */
1959 tSCC zHpux11_FabsfList[] =
1960 "|math.h|";
1961 /*
1962 * Machine/OS name selection pattern
1963 */
1964 #define apzHpux11_FabsfMachs (const char**)NULL
1965
1966 /*
1967 * content selection pattern - do fix if pattern found
1968 */
1969 tSCC zHpux11_FabsfSelect0[] =
1970 "^[ \t]*#[ \t]*define[ \t]+fabsf\\(.*";
1971
1972 /*
1973 * content bypass pattern - skip fix if pattern found
1974 */
1975 tSCC zHpux11_FabsfBypass0[] =
1976 "__cplusplus";
1977
1978 #define HPUX11_FABSF_TEST_CT 2
1979 static tTestDesc aHpux11_FabsfTests[] = {
1980 { TT_NEGREP, zHpux11_FabsfBypass0, (regex_t*)NULL },
1981 { TT_EGREP, zHpux11_FabsfSelect0, (regex_t*)NULL }, };
1982
1983 /*
1984 * Fix Command Arguments for Hpux11_Fabsf
1985 */
1986 static const char* apzHpux11_FabsfPatch[] = {
1987 "format",
1988 "#ifndef __cplusplus\n\
1989 %0\n\
1990 #endif",
1991 (char*)NULL };
1992
1993 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1994 *
1995 * Description of Hpux11_Size_T fix
1996 */
1997 tSCC zHpux11_Size_TName[] =
1998 "hpux11_size_t";
1999
2000 /*
2001 * File name selection pattern
2002 */
2003 #define zHpux11_Size_TList (char*)NULL
2004 /*
2005 * Machine/OS name selection pattern
2006 */
2007 tSCC* apzHpux11_Size_TMachs[] = {
2008 "*-hp-hpux11*",
2009 (const char*)NULL };
2010
2011 /*
2012 * content selection pattern - do fix if pattern found
2013 */
2014 tSCC zHpux11_Size_TSelect0[] =
2015 "__size_t";
2016
2017 #define HPUX11_SIZE_T_TEST_CT 1
2018 static tTestDesc aHpux11_Size_TTests[] = {
2019 { TT_EGREP, zHpux11_Size_TSelect0, (regex_t*)NULL }, };
2020
2021 /*
2022 * Fix Command Arguments for Hpux11_Size_T
2023 */
2024 static const char* apzHpux11_Size_TPatch[] = {
2025 "format",
2026 "_hpux_size_t",
2027 (char*)NULL };
2028
2029 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2030 *
2031 * Description of Hpux11_Uint32_C fix
2032 */
2033 tSCC zHpux11_Uint32_CName[] =
2034 "hpux11_uint32_c";
2035
2036 /*
2037 * File name selection pattern
2038 */
2039 tSCC zHpux11_Uint32_CList[] =
2040 "|inttypes.h|";
2041 /*
2042 * Machine/OS name selection pattern
2043 */
2044 #define apzHpux11_Uint32_CMachs (const char**)NULL
2045
2046 /*
2047 * content selection pattern - do fix if pattern found
2048 */
2049 tSCC zHpux11_Uint32_CSelect0[] =
2050 "^#define UINT32_C\\(__c\\)[ \t]*__CONCAT__\\(__CONCAT_U__\\(__c\\),l\\)";
2051
2052 #define HPUX11_UINT32_C_TEST_CT 1
2053 static tTestDesc aHpux11_Uint32_CTests[] = {
2054 { TT_EGREP, zHpux11_Uint32_CSelect0, (regex_t*)NULL }, };
2055
2056 /*
2057 * Fix Command Arguments for Hpux11_Uint32_C
2058 */
2059 static const char* apzHpux11_Uint32_CPatch[] = {
2060 "format",
2061 "#define UINT32_C(__c) __CONCAT__(__c,ul)",
2062 (char*)NULL };
2063
2064 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2065 *
2066 * Description of Hpux11_Vsnprintf fix
2067 */
2068 tSCC zHpux11_VsnprintfName[] =
2069 "hpux11_vsnprintf";
2070
2071 /*
2072 * File name selection pattern
2073 */
2074 tSCC zHpux11_VsnprintfList[] =
2075 "|stdio.h|";
2076 /*
2077 * Machine/OS name selection pattern
2078 */
2079 #define apzHpux11_VsnprintfMachs (const char**)NULL
2080
2081 /*
2082 * content selection pattern - do fix if pattern found
2083 */
2084 tSCC zHpux11_VsnprintfSelect0[] =
2085 "(extern int vsnprintf\\(char \\*, _[hpux]*_size_t, const char \\*,) __va__list\\);";
2086
2087 #define HPUX11_VSNPRINTF_TEST_CT 1
2088 static tTestDesc aHpux11_VsnprintfTests[] = {
2089 { TT_EGREP, zHpux11_VsnprintfSelect0, (regex_t*)NULL }, };
2090
2091 /*
2092 * Fix Command Arguments for Hpux11_Vsnprintf
2093 */
2094 static const char* apzHpux11_VsnprintfPatch[] = {
2095 "format",
2096 "%1 __va_list);",
2097 (char*)NULL };
2098
2099 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2100 *
2101 * Description of Hpux8_Bogus_Inlines fix
2102 */
2103 tSCC zHpux8_Bogus_InlinesName[] =
2104 "hpux8_bogus_inlines";
2105
2106 /*
2107 * File name selection pattern
2108 */
2109 tSCC zHpux8_Bogus_InlinesList[] =
2110 "|math.h|";
2111 /*
2112 * Machine/OS name selection pattern
2113 */
2114 #define apzHpux8_Bogus_InlinesMachs (const char**)NULL
2115
2116 /*
2117 * content selection pattern - do fix if pattern found
2118 */
2119 tSCC zHpux8_Bogus_InlinesSelect0[] =
2120 "inline";
2121
2122 #define HPUX8_BOGUS_INLINES_TEST_CT 1
2123 static tTestDesc aHpux8_Bogus_InlinesTests[] = {
2124 { TT_EGREP, zHpux8_Bogus_InlinesSelect0, (regex_t*)NULL }, };
2125
2126 /*
2127 * Fix Command Arguments for Hpux8_Bogus_Inlines
2128 */
2129 static const char* apzHpux8_Bogus_InlinesPatch[] = { "sed",
2130 "-e", "s@inline int abs(int [a-z][a-z]*) {.*}@extern \"C\" int abs(int);@",
2131 "-e", "s@inline double abs(double [a-z][a-z]*) {.*}@@",
2132 "-e", "s@inline int sqr(int [a-z][a-z]*) {.*}@@",
2133 "-e", "s@inline double sqr(double [a-z][a-z]*) {.*}@@",
2134 (char*)NULL };
2135
2136 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2137 *
2138 * Description of Hpux_Ctype_Macros fix
2139 */
2140 tSCC zHpux_Ctype_MacrosName[] =
2141 "hpux_ctype_macros";
2142
2143 /*
2144 * File name selection pattern
2145 */
2146 tSCC zHpux_Ctype_MacrosList[] =
2147 "|ctype.h|";
2148 /*
2149 * Machine/OS name selection pattern
2150 */
2151 #define apzHpux_Ctype_MacrosMachs (const char**)NULL
2152
2153 /*
2154 * content selection pattern - do fix if pattern found
2155 */
2156 tSCC zHpux_Ctype_MacrosSelect0[] =
2157 "((: |\\()__SB_masks \\? )(__SB_masks\\[__(alnum|c)\\] & _IS)";
2158
2159 #define HPUX_CTYPE_MACROS_TEST_CT 1
2160 static tTestDesc aHpux_Ctype_MacrosTests[] = {
2161 { TT_EGREP, zHpux_Ctype_MacrosSelect0, (regex_t*)NULL }, };
2162
2163 /*
2164 * Fix Command Arguments for Hpux_Ctype_Macros
2165 */
2166 static const char* apzHpux_Ctype_MacrosPatch[] = {
2167 "format",
2168 "%1(int)%3",
2169 (char*)NULL };
2170
2171 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2172 *
2173 * Description of Hpux_Long_Double fix
2174 */
2175 tSCC zHpux_Long_DoubleName[] =
2176 "hpux_long_double";
2177
2178 /*
2179 * File name selection pattern
2180 */
2181 tSCC zHpux_Long_DoubleList[] =
2182 "|stdlib.h|";
2183 /*
2184 * Machine/OS name selection pattern
2185 */
2186 #define apzHpux_Long_DoubleMachs (const char**)NULL
2187
2188 /*
2189 * content selection pattern - do fix if pattern found
2190 */
2191 tSCC zHpux_Long_DoubleSelect0[] =
2192 "extern[ \t]long_double[ \t]strtold";
2193
2194 /*
2195 * content bypass pattern - skip fix if pattern found
2196 */
2197 tSCC zHpux_Long_DoubleBypass0[] =
2198 "long_double_t";
2199
2200 #define HPUX_LONG_DOUBLE_TEST_CT 2
2201 static tTestDesc aHpux_Long_DoubleTests[] = {
2202 { TT_NEGREP, zHpux_Long_DoubleBypass0, (regex_t*)NULL },
2203 { TT_EGREP, zHpux_Long_DoubleSelect0, (regex_t*)NULL }, };
2204
2205 /*
2206 * Fix Command Arguments for Hpux_Long_Double
2207 */
2208 static const char* apzHpux_Long_DoublePatch[] = { "sed",
2209 "-e", "/^#[ \t]*ifndef _LONG_DOUBLE/,/\\/\\* _LONG_DOUBLE \\*\\//D",
2210 "-e", "s/long_double/long double/g",
2211 (char*)NULL };
2212
2213 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2214 *
2215 * Description of Hpux_Maxint fix
2216 */
2217 tSCC zHpux_MaxintName[] =
2218 "hpux_maxint";
2219
2220 /*
2221 * File name selection pattern
2222 */
2223 tSCC zHpux_MaxintList[] =
2224 "|sys/param.h|values.h|";
2225 /*
2226 * Machine/OS name selection pattern
2227 */
2228 #define apzHpux_MaxintMachs (const char**)NULL
2229
2230 /*
2231 * content selection pattern - do fix if pattern found
2232 */
2233 tSCC zHpux_MaxintSelect0[] =
2234 "^#[ \t]*define[ \t]+MAXINT[ \t]";
2235
2236 /*
2237 * content bypass pattern - skip fix if pattern found
2238 */
2239 tSCC zHpux_MaxintBypass0[] =
2240 "^#[ \t]*ifndef[ \t]+MAXINT";
2241
2242 /*
2243 * perform the 'test' shell command - do fix on success
2244 */
2245 tSCC zHpux_MaxintTest0[] =
2246 "-n \"`egrep '#[ \t]*define[ \t]+MAXINT[ \t]' sys/param.h`\"";
2247
2248 #define HPUX_MAXINT_TEST_CT 3
2249 static tTestDesc aHpux_MaxintTests[] = {
2250 { TT_TEST, zHpux_MaxintTest0, 0 /* unused */ },
2251 { TT_NEGREP, zHpux_MaxintBypass0, (regex_t*)NULL },
2252 { TT_EGREP, zHpux_MaxintSelect0, (regex_t*)NULL }, };
2253
2254 /*
2255 * Fix Command Arguments for Hpux_Maxint
2256 */
2257 static const char* apzHpux_MaxintPatch[] = {
2258 "format",
2259 "#ifndef MAXINT\n\
2260 %0\n\
2261 #endif",
2262 "^#[ \t]*define[ \t]+MAXINT[ \t].*",
2263 (char*)NULL };
2264
2265 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2266 *
2267 * Description of Hpux_Systime fix
2268 */
2269 tSCC zHpux_SystimeName[] =
2270 "hpux_systime";
2271
2272 /*
2273 * File name selection pattern
2274 */
2275 tSCC zHpux_SystimeList[] =
2276 "|sys/time.h|";
2277 /*
2278 * Machine/OS name selection pattern
2279 */
2280 #define apzHpux_SystimeMachs (const char**)NULL
2281
2282 /*
2283 * content selection pattern - do fix if pattern found
2284 */
2285 tSCC zHpux_SystimeSelect0[] =
2286 "^extern struct sigevent;";
2287
2288 #define HPUX_SYSTIME_TEST_CT 1
2289 static tTestDesc aHpux_SystimeTests[] = {
2290 { TT_EGREP, zHpux_SystimeSelect0, (regex_t*)NULL }, };
2291
2292 /*
2293 * Fix Command Arguments for Hpux_Systime
2294 */
2295 static const char* apzHpux_SystimePatch[] = {
2296 "format",
2297 "struct sigevent;",
2298 (char*)NULL };
2299
2300 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2301 *
2302 * Description of Int_Abort_Free_And_Exit fix
2303 */
2304 tSCC zInt_Abort_Free_And_ExitName[] =
2305 "int_abort_free_and_exit";
2306
2307 /*
2308 * File name selection pattern
2309 */
2310 tSCC zInt_Abort_Free_And_ExitList[] =
2311 "|stdlib.h|";
2312 /*
2313 * Machine/OS name selection pattern
2314 */
2315 #define apzInt_Abort_Free_And_ExitMachs (const char**)NULL
2316
2317 /*
2318 * content selection pattern - do fix if pattern found
2319 */
2320 tSCC zInt_Abort_Free_And_ExitSelect0[] =
2321 "int[ \t]+(abort|free|exit)[ \t]*\\(";
2322
2323 #define INT_ABORT_FREE_AND_EXIT_TEST_CT 1
2324 static tTestDesc aInt_Abort_Free_And_ExitTests[] = {
2325 { TT_EGREP, zInt_Abort_Free_And_ExitSelect0, (regex_t*)NULL }, };
2326
2327 /*
2328 * Fix Command Arguments for Int_Abort_Free_And_Exit
2329 */
2330 static const char* apzInt_Abort_Free_And_ExitPatch[] = {
2331 "format",
2332 "void\t%1(",
2333 (char*)NULL };
2334
2335 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2336 *
2337 * Description of Io_Quotes_Def fix
2338 */
2339 tSCC zIo_Quotes_DefName[] =
2340 "io_quotes_def";
2341
2342 /*
2343 * File name selection pattern
2344 */
2345 #define zIo_Quotes_DefList (char*)NULL
2346 /*
2347 * Machine/OS name selection pattern
2348 */
2349 #define apzIo_Quotes_DefMachs (const char**)NULL
2350
2351 /*
2352 * content selection pattern - do fix if pattern found
2353 */
2354 tSCC zIo_Quotes_DefSelect0[] =
2355 "define[ \t]+[A-Z0-9_]+IO[A-Z]*\\([a-zA-Z][,)]";
2356
2357 #define IO_QUOTES_DEF_TEST_CT 1
2358 static tTestDesc aIo_Quotes_DefTests[] = {
2359 { TT_EGREP, zIo_Quotes_DefSelect0, (regex_t*)NULL }, };
2360
2361 /*
2362 * Fix Command Arguments for Io_Quotes_Def
2363 */
2364 static const char* apzIo_Quotes_DefPatch[] = {
2365 "char_macro_def",
2366 "IO",
2367 (char*)NULL };
2368
2369 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2370 *
2371 * Description of Io_Quotes_Use fix
2372 */
2373 tSCC zIo_Quotes_UseName[] =
2374 "io_quotes_use";
2375
2376 /*
2377 * File name selection pattern
2378 */
2379 #define zIo_Quotes_UseList (char*)NULL
2380 /*
2381 * Machine/OS name selection pattern
2382 */
2383 #define apzIo_Quotes_UseMachs (const char**)NULL
2384
2385 /*
2386 * content selection pattern - do fix if pattern found
2387 */
2388 tSCC zIo_Quotes_UseSelect0[] =
2389 "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+IO[A-Z]*[ \t]*\\( *[^,']";
2390
2391 #define IO_QUOTES_USE_TEST_CT 1
2392 static tTestDesc aIo_Quotes_UseTests[] = {
2393 { TT_EGREP, zIo_Quotes_UseSelect0, (regex_t*)NULL }, };
2394
2395 /*
2396 * Fix Command Arguments for Io_Quotes_Use
2397 */
2398 static const char* apzIo_Quotes_UsePatch[] = {
2399 "char_macro_use",
2400 "IO",
2401 (char*)NULL };
2402
2403 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2404 *
2405 * Description of Ip_Missing_Semi fix
2406 */
2407 tSCC zIp_Missing_SemiName[] =
2408 "ip_missing_semi";
2409
2410 /*
2411 * File name selection pattern
2412 */
2413 tSCC zIp_Missing_SemiList[] =
2414 "|netinet/ip.h|";
2415 /*
2416 * Machine/OS name selection pattern
2417 */
2418 #define apzIp_Missing_SemiMachs (const char**)NULL
2419
2420 /*
2421 * content selection pattern - do fix if pattern found
2422 */
2423 tSCC zIp_Missing_SemiSelect0[] =
2424 "}$";
2425
2426 #define IP_MISSING_SEMI_TEST_CT 1
2427 static tTestDesc aIp_Missing_SemiTests[] = {
2428 { TT_EGREP, zIp_Missing_SemiSelect0, (regex_t*)NULL }, };
2429
2430 /*
2431 * Fix Command Arguments for Ip_Missing_Semi
2432 */
2433 static const char* apzIp_Missing_SemiPatch[] = { "sed",
2434 "-e", "/^struct/,/^};/s/}$/};/",
2435 (char*)NULL };
2436
2437 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2438 *
2439 * Description of Irix___Restrict fix
2440 */
2441 tSCC zIrix___RestrictName[] =
2442 "irix___restrict";
2443
2444 /*
2445 * File name selection pattern
2446 */
2447 tSCC zIrix___RestrictList[] =
2448 "|internal/sgimacros.h|";
2449 /*
2450 * Machine/OS name selection pattern
2451 */
2452 tSCC* apzIrix___RestrictMachs[] = {
2453 "mips-sgi-irix6.5",
2454 (const char*)NULL };
2455
2456 /*
2457 * content selection pattern - do fix if pattern found
2458 */
2459 tSCC zIrix___RestrictSelect0[] =
2460 "(#ifdef __c99\n\
2461 )(#[ \t]*define __restrict restrict)";
2462
2463 #define IRIX___RESTRICT_TEST_CT 1
2464 static tTestDesc aIrix___RestrictTests[] = {
2465 { TT_EGREP, zIrix___RestrictSelect0, (regex_t*)NULL }, };
2466
2467 /*
2468 * Fix Command Arguments for Irix___Restrict
2469 */
2470 static const char* apzIrix___RestrictPatch[] = {
2471 "format",
2472 "%1# ifndef __cplusplus\n\
2473 %2\n\
2474 # endif",
2475 (char*)NULL };
2476
2477 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2478 *
2479 * Description of Irix_Asm_Apostrophe fix
2480 */
2481 tSCC zIrix_Asm_ApostropheName[] =
2482 "irix_asm_apostrophe";
2483
2484 /*
2485 * File name selection pattern
2486 */
2487 tSCC zIrix_Asm_ApostropheList[] =
2488 "|sys/asm.h|";
2489 /*
2490 * Machine/OS name selection pattern
2491 */
2492 #define apzIrix_Asm_ApostropheMachs (const char**)NULL
2493
2494 /*
2495 * content selection pattern - do fix if pattern found
2496 */
2497 tSCC zIrix_Asm_ApostropheSelect0[] =
2498 "^[ \t]*#.*[Ww]e're";
2499
2500 #define IRIX_ASM_APOSTROPHE_TEST_CT 1
2501 static tTestDesc aIrix_Asm_ApostropheTests[] = {
2502 { TT_EGREP, zIrix_Asm_ApostropheSelect0, (regex_t*)NULL }, };
2503
2504 /*
2505 * Fix Command Arguments for Irix_Asm_Apostrophe
2506 */
2507 static const char* apzIrix_Asm_ApostrophePatch[] = {
2508 "format",
2509 "%1 are",
2510 "^([ \t]*#.*[Ww]e)'re",
2511 (char*)NULL };
2512
2513 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2514 *
2515 * Description of Irix_Limits_Const fix
2516 */
2517 tSCC zIrix_Limits_ConstName[] =
2518 "irix_limits_const";
2519
2520 /*
2521 * File name selection pattern
2522 */
2523 tSCC zIrix_Limits_ConstList[] =
2524 "|fixinc-test-limits.h|limits.h|";
2525 /*
2526 * Machine/OS name selection pattern
2527 */
2528 #define apzIrix_Limits_ConstMachs (const char**)NULL
2529
2530 /*
2531 * content selection pattern - do fix if pattern found
2532 */
2533 tSCC zIrix_Limits_ConstSelect0[] =
2534 "^extern const ";
2535
2536 #define IRIX_LIMITS_CONST_TEST_CT 1
2537 static tTestDesc aIrix_Limits_ConstTests[] = {
2538 { TT_EGREP, zIrix_Limits_ConstSelect0, (regex_t*)NULL }, };
2539
2540 /*
2541 * Fix Command Arguments for Irix_Limits_Const
2542 */
2543 static const char* apzIrix_Limits_ConstPatch[] = {
2544 "format",
2545 "extern __const ",
2546 (char*)NULL };
2547
2548 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2549 *
2550 * Description of Irix_Socklen_T fix
2551 */
2552 tSCC zIrix_Socklen_TName[] =
2553 "irix_socklen_t";
2554
2555 /*
2556 * File name selection pattern
2557 */
2558 tSCC zIrix_Socklen_TList[] =
2559 "|sys/socket.h|";
2560 /*
2561 * Machine/OS name selection pattern
2562 */
2563 tSCC* apzIrix_Socklen_TMachs[] = {
2564 "mips-sgi-irix6.5",
2565 (const char*)NULL };
2566
2567 /*
2568 * content selection pattern - do fix if pattern found
2569 */
2570 tSCC zIrix_Socklen_TSelect0[] =
2571 "(#define _SOCKLEN_T\n\
2572 )(typedef u_int32_t socklen_t;)";
2573
2574 #define IRIX_SOCKLEN_T_TEST_CT 1
2575 static tTestDesc aIrix_Socklen_TTests[] = {
2576 { TT_EGREP, zIrix_Socklen_TSelect0, (regex_t*)NULL }, };
2577
2578 /*
2579 * Fix Command Arguments for Irix_Socklen_T
2580 */
2581 static const char* apzIrix_Socklen_TPatch[] = {
2582 "format",
2583 "%1#if _NO_XOPEN4 && _NO_XOPEN5\n\
2584 typedef int socklen_t;\n\
2585 #else\n\
2586 %2\n\
2587 #endif /* _NO_XOPEN4 && _NO_XOPEN5 */",
2588 (char*)NULL };
2589
2590 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2591 *
2592 * Description of Irix_Stdio_Va_List fix
2593 */
2594 tSCC zIrix_Stdio_Va_ListName[] =
2595 "irix_stdio_va_list";
2596
2597 /*
2598 * File name selection pattern
2599 */
2600 tSCC zIrix_Stdio_Va_ListList[] =
2601 "|stdio.h|internal/stdio_core.h|";
2602 /*
2603 * Machine/OS name selection pattern
2604 */
2605 #define apzIrix_Stdio_Va_ListMachs (const char**)NULL
2606
2607 /*
2608 * content selection pattern - do fix if pattern found
2609 */
2610 tSCC zIrix_Stdio_Va_ListSelect0[] =
2611 "(printf\\(.*), /\\* va_list \\*/ char \\*";
2612
2613 #define IRIX_STDIO_VA_LIST_TEST_CT 1
2614 static tTestDesc aIrix_Stdio_Va_ListTests[] = {
2615 { TT_EGREP, zIrix_Stdio_Va_ListSelect0, (regex_t*)NULL }, };
2616
2617 /*
2618 * Fix Command Arguments for Irix_Stdio_Va_List
2619 */
2620 static const char* apzIrix_Stdio_Va_ListPatch[] = {
2621 "format",
2622 "%1, __gnuc_va_list",
2623 (char*)NULL };
2624
2625 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2626 *
2627 * Description of Irix_Wcsftime fix
2628 */
2629 tSCC zIrix_WcsftimeName[] =
2630 "irix_wcsftime";
2631
2632 /*
2633 * File name selection pattern
2634 */
2635 tSCC zIrix_WcsftimeList[] =
2636 "|internal/wchar_core.h|";
2637 /*
2638 * Machine/OS name selection pattern
2639 */
2640 tSCC* apzIrix_WcsftimeMachs[] = {
2641 "mips-sgi-irix6.5",
2642 (const char*)NULL };
2643
2644 /*
2645 * content selection pattern - do fix if pattern found
2646 */
2647 tSCC zIrix_WcsftimeSelect0[] =
2648 "#if _NO_XOPEN5\n\
2649 (extern size_t[ \t]+wcsftime.*const char *.*)";
2650
2651 #define IRIX_WCSFTIME_TEST_CT 1
2652 static tTestDesc aIrix_WcsftimeTests[] = {
2653 { TT_EGREP, zIrix_WcsftimeSelect0, (regex_t*)NULL }, };
2654
2655 /*
2656 * Fix Command Arguments for Irix_Wcsftime
2657 */
2658 static const char* apzIrix_WcsftimePatch[] = {
2659 "format",
2660 "#if _NO_XOPEN5 && !defined(__c99)\n\
2661 %1",
2662 (char*)NULL };
2663
2664 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2665 *
2666 * Description of Isc_Fmod fix
2667 */
2668 tSCC zIsc_FmodName[] =
2669 "isc_fmod";
2670
2671 /*
2672 * File name selection pattern
2673 */
2674 tSCC zIsc_FmodList[] =
2675 "|math.h|";
2676 /*
2677 * Machine/OS name selection pattern
2678 */
2679 #define apzIsc_FmodMachs (const char**)NULL
2680
2681 /*
2682 * content selection pattern - do fix if pattern found
2683 */
2684 tSCC zIsc_FmodSelect0[] =
2685 "fmod\\(double\\)";
2686
2687 #define ISC_FMOD_TEST_CT 1
2688 static tTestDesc aIsc_FmodTests[] = {
2689 { TT_EGREP, zIsc_FmodSelect0, (regex_t*)NULL }, };
2690
2691 /*
2692 * Fix Command Arguments for Isc_Fmod
2693 */
2694 static const char* apzIsc_FmodPatch[] = {
2695 "format",
2696 "fmod(double, double)",
2697 (char*)NULL };
2698
2699 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2700 *
2701 * Description of Isc_Omits_With_Stdc fix
2702 */
2703 tSCC zIsc_Omits_With_StdcName[] =
2704 "isc_omits_with_stdc";
2705
2706 /*
2707 * File name selection pattern
2708 */
2709 tSCC zIsc_Omits_With_StdcList[] =
2710 "|stdio.h|math.h|ctype.h|sys/limits.h|sys/fcntl.h|sys/dirent.h|";
2711 /*
2712 * Machine/OS name selection pattern
2713 */
2714 #define apzIsc_Omits_With_StdcMachs (const char**)NULL
2715
2716 /*
2717 * content selection pattern - do fix if pattern found
2718 */
2719 tSCC zIsc_Omits_With_StdcSelect0[] =
2720 "!defined\\(__STDC__\\) && !defined\\(_POSIX_SOURCE\\)";
2721
2722 #define ISC_OMITS_WITH_STDC_TEST_CT 1
2723 static tTestDesc aIsc_Omits_With_StdcTests[] = {
2724 { TT_EGREP, zIsc_Omits_With_StdcSelect0, (regex_t*)NULL }, };
2725
2726 /*
2727 * Fix Command Arguments for Isc_Omits_With_Stdc
2728 */
2729 static const char* apzIsc_Omits_With_StdcPatch[] = {
2730 "format",
2731 "!defined(_POSIX_SOURCE)",
2732 (char*)NULL };
2733
2734 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2735 *
2736 * Description of Kandr_Concat fix
2737 */
2738 tSCC zKandr_ConcatName[] =
2739 "kandr_concat";
2740
2741 /*
2742 * File name selection pattern
2743 */
2744 tSCC zKandr_ConcatList[] =
2745 "|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|";
2746 /*
2747 * Machine/OS name selection pattern
2748 */
2749 #define apzKandr_ConcatMachs (const char**)NULL
2750
2751 /*
2752 * content selection pattern - do fix if pattern found
2753 */
2754 tSCC zKandr_ConcatSelect0[] =
2755 "/\\*\\*/";
2756
2757 #define KANDR_CONCAT_TEST_CT 1
2758 static tTestDesc aKandr_ConcatTests[] = {
2759 { TT_EGREP, zKandr_ConcatSelect0, (regex_t*)NULL }, };
2760
2761 /*
2762 * Fix Command Arguments for Kandr_Concat
2763 */
2764 static const char* apzKandr_ConcatPatch[] = {
2765 "format",
2766 "##",
2767 (char*)NULL };
2768
2769 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2770 *
2771 * Description of Libc1_G_Va_List fix
2772 */
2773 tSCC zLibc1_G_Va_ListName[] =
2774 "libc1_G_va_list";
2775
2776 /*
2777 * File name selection pattern
2778 */
2779 tSCC zLibc1_G_Va_ListList[] =
2780 "|_G_config.h|";
2781 /*
2782 * Machine/OS name selection pattern
2783 */
2784 tSCC* apzLibc1_G_Va_ListMachs[] = {
2785 "*-*-linux*libc1",
2786 (const char*)NULL };
2787
2788 /*
2789 * content selection pattern - do fix if pattern found
2790 */
2791 tSCC zLibc1_G_Va_ListSelect0[] =
2792 "typedef void \\* _G_va_list;";
2793
2794 #define LIBC1_G_VA_LIST_TEST_CT 1
2795 static tTestDesc aLibc1_G_Va_ListTests[] = {
2796 { TT_EGREP, zLibc1_G_Va_ListSelect0, (regex_t*)NULL }, };
2797
2798 /*
2799 * Fix Command Arguments for Libc1_G_Va_List
2800 */
2801 static const char* apzLibc1_G_Va_ListPatch[] = {
2802 "format",
2803 "typedef __builtin_va_list _G_va_list;",
2804 (char*)NULL };
2805
2806 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2807 *
2808 * Description of Libc1_Ifdefd_Memx fix
2809 */
2810 tSCC zLibc1_Ifdefd_MemxName[] =
2811 "libc1_ifdefd_memx";
2812
2813 /*
2814 * File name selection pattern
2815 */
2816 tSCC zLibc1_Ifdefd_MemxList[] =
2817 "|testing.h|string.h|";
2818 /*
2819 * Machine/OS name selection pattern
2820 */
2821 #define apzLibc1_Ifdefd_MemxMachs (const char**)NULL
2822
2823 /*
2824 * content selection pattern - do fix if pattern found
2825 */
2826 tSCC zLibc1_Ifdefd_MemxSelect0[] =
2827 "' is a built-in function for gcc 2\\.x\\. \\*/";
2828
2829 /*
2830 * content bypass pattern - skip fix if pattern found
2831 */
2832 tSCC zLibc1_Ifdefd_MemxBypass0[] =
2833 "__cplusplus";
2834
2835 #define LIBC1_IFDEFD_MEMX_TEST_CT 2
2836 static tTestDesc aLibc1_Ifdefd_MemxTests[] = {
2837 { TT_NEGREP, zLibc1_Ifdefd_MemxBypass0, (regex_t*)NULL },
2838 { TT_EGREP, zLibc1_Ifdefd_MemxSelect0, (regex_t*)NULL }, };
2839
2840 /*
2841 * Fix Command Arguments for Libc1_Ifdefd_Memx
2842 */
2843 static const char* apzLibc1_Ifdefd_MemxPatch[] = {
2844 "format",
2845 "%1",
2846 "/\\* `mem...' is a built-in function for gcc 2\\.x\\. \\*/\n\
2847 #if defined\\(__STDC__\\) && __GNUC__ < 2\n\
2848 (/\\* .* \\*/\n\
2849 extern [a-z_]+ mem.*(\n\
2850 [^#].*)*;)\n\
2851 #endif",
2852 (char*)NULL };
2853
2854 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2855 *
2856 * Description of Limits_Ifndefs fix
2857 */
2858 tSCC zLimits_IfndefsName[] =
2859 "limits_ifndefs";
2860
2861 /*
2862 * File name selection pattern
2863 */
2864 tSCC zLimits_IfndefsList[] =
2865 "|sys/limits.h|limits.h|";
2866 /*
2867 * Machine/OS name selection pattern
2868 */
2869 #define apzLimits_IfndefsMachs (const char**)NULL
2870
2871 /*
2872 * content selection pattern - do fix if pattern found
2873 */
2874 tSCC zLimits_IfndefsSelect0[] =
2875 "^[ \t]*#[ \t]*define[ \t]+((FLT|DBL)_(MIN|MAX|DIG))[ \t].*";
2876
2877 /*
2878 * content bypass pattern - skip fix if pattern found
2879 */
2880 tSCC zLimits_IfndefsBypass0[] =
2881 "ifndef[ \t]+FLT_(MIN|MAX)";
2882
2883 #define LIMITS_IFNDEFS_TEST_CT 2
2884 static tTestDesc aLimits_IfndefsTests[] = {
2885 { TT_NEGREP, zLimits_IfndefsBypass0, (regex_t*)NULL },
2886 { TT_EGREP, zLimits_IfndefsSelect0, (regex_t*)NULL }, };
2887
2888 /*
2889 * Fix Command Arguments for Limits_Ifndefs
2890 */
2891 static const char* apzLimits_IfndefsPatch[] = {
2892 "format",
2893 "#ifndef %1\n\
2894 %0\n\
2895 #endif",
2896 (char*)NULL };
2897
2898 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2899 *
2900 * Description of Lynx_Void_Int fix
2901 */
2902 tSCC zLynx_Void_IntName[] =
2903 "lynx_void_int";
2904
2905 /*
2906 * File name selection pattern
2907 */
2908 tSCC zLynx_Void_IntList[] =
2909 "|curses.h|";
2910 /*
2911 * Machine/OS name selection pattern
2912 */
2913 #define apzLynx_Void_IntMachs (const char**)NULL
2914
2915 /*
2916 * content selection pattern - do fix if pattern found
2917 */
2918 tSCC zLynx_Void_IntSelect0[] =
2919 "#[ \t]*define[ \t]+void[ \t]+int[ \t]*";
2920
2921 #define LYNX_VOID_INT_TEST_CT 1
2922 static tTestDesc aLynx_Void_IntTests[] = {
2923 { TT_EGREP, zLynx_Void_IntSelect0, (regex_t*)NULL }, };
2924
2925 /*
2926 * Fix Command Arguments for Lynx_Void_Int
2927 */
2928 static const char* apzLynx_Void_IntPatch[] = {
2929 "format",
2930 "",
2931 (char*)NULL };
2932
2933 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2934 *
2935 * Description of Lynxos_Fcntl_Proto fix
2936 */
2937 tSCC zLynxos_Fcntl_ProtoName[] =
2938 "lynxos_fcntl_proto";
2939
2940 /*
2941 * File name selection pattern
2942 */
2943 tSCC zLynxos_Fcntl_ProtoList[] =
2944 "|fcntl.h|";
2945 /*
2946 * Machine/OS name selection pattern
2947 */
2948 #define apzLynxos_Fcntl_ProtoMachs (const char**)NULL
2949
2950 /*
2951 * content selection pattern - do fix if pattern found
2952 */
2953 tSCC zLynxos_Fcntl_ProtoSelect0[] =
2954 "fcntl[ \t]*\\(int, int, int\\)";
2955
2956 #define LYNXOS_FCNTL_PROTO_TEST_CT 1
2957 static tTestDesc aLynxos_Fcntl_ProtoTests[] = {
2958 { TT_EGREP, zLynxos_Fcntl_ProtoSelect0, (regex_t*)NULL }, };
2959
2960 /*
2961 * Fix Command Arguments for Lynxos_Fcntl_Proto
2962 */
2963 static const char* apzLynxos_Fcntl_ProtoPatch[] = {
2964 "format",
2965 "%1...)",
2966 "(fcntl[ \t]*\\(int, int, )int\\)",
2967 (char*)NULL };
2968
2969 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2970 *
2971 * Description of Machine_Ansi_H_Va_List fix
2972 */
2973 tSCC zMachine_Ansi_H_Va_ListName[] =
2974 "machine_ansi_h_va_list";
2975
2976 /*
2977 * File name selection pattern
2978 */
2979 #define zMachine_Ansi_H_Va_ListList (char*)NULL
2980 /*
2981 * Machine/OS name selection pattern
2982 */
2983 #define apzMachine_Ansi_H_Va_ListMachs (const char**)NULL
2984
2985 /*
2986 * content selection pattern - do fix if pattern found
2987 */
2988 tSCC zMachine_Ansi_H_Va_ListSelect0[] =
2989 "define[ \t]+_BSD_VA_LIST_[ \t]";
2990
2991 /*
2992 * content bypass pattern - skip fix if pattern found
2993 */
2994 tSCC zMachine_Ansi_H_Va_ListBypass0[] =
2995 "__builtin_va_list";
2996
2997 #define MACHINE_ANSI_H_VA_LIST_TEST_CT 2
2998 static tTestDesc aMachine_Ansi_H_Va_ListTests[] = {
2999 { TT_NEGREP, zMachine_Ansi_H_Va_ListBypass0, (regex_t*)NULL },
3000 { TT_EGREP, zMachine_Ansi_H_Va_ListSelect0, (regex_t*)NULL }, };
3001
3002 /*
3003 * Fix Command Arguments for Machine_Ansi_H_Va_List
3004 */
3005 static const char* apzMachine_Ansi_H_Va_ListPatch[] = {
3006 "format",
3007 "%1__builtin_va_list",
3008 "(define[ \t]+_BSD_VA_LIST_[ \t]+).*",
3009 (char*)NULL };
3010
3011 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3012 *
3013 * Description of Machine_Name fix
3014 */
3015 tSCC zMachine_NameName[] =
3016 "machine_name";
3017
3018 /*
3019 * File name selection pattern
3020 */
3021 #define zMachine_NameList (char*)NULL
3022 /*
3023 * Machine/OS name selection pattern
3024 */
3025 #define apzMachine_NameMachs (const char**)NULL
3026
3027 /*
3028 * perform the C function call test
3029 */
3030 tSCC zMachine_NameFTst0[] = "machine_name";
3031
3032 #define MACHINE_NAME_TEST_CT 1
3033 static tTestDesc aMachine_NameTests[] = {
3034 { TT_FUNCTION, zMachine_NameFTst0, 0 /* unused */ }, };
3035
3036 /*
3037 * Fix Command Arguments for Machine_Name
3038 */
3039 static const char* apzMachine_NamePatch[] = {
3040 "machine_name",
3041 (char*)NULL };
3042
3043 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3044 *
3045 * Description of Math_Exception fix
3046 */
3047 tSCC zMath_ExceptionName[] =
3048 "math_exception";
3049
3050 /*
3051 * File name selection pattern
3052 */
3053 tSCC zMath_ExceptionList[] =
3054 "|math.h|";
3055 /*
3056 * Machine/OS name selection pattern
3057 */
3058 #define apzMath_ExceptionMachs (const char**)NULL
3059
3060 /*
3061 * content selection pattern - do fix if pattern found
3062 */
3063 tSCC zMath_ExceptionSelect0[] =
3064 "struct exception";
3065
3066 /*
3067 * content bypass pattern - skip fix if pattern found
3068 */
3069 tSCC zMath_ExceptionBypass0[] =
3070 "__cplusplus";
3071
3072 #define MATH_EXCEPTION_TEST_CT 2
3073 static tTestDesc aMath_ExceptionTests[] = {
3074 { TT_NEGREP, zMath_ExceptionBypass0, (regex_t*)NULL },
3075 { TT_EGREP, zMath_ExceptionSelect0, (regex_t*)NULL }, };
3076
3077 /*
3078 * Fix Command Arguments for Math_Exception
3079 */
3080 static const char* apzMath_ExceptionPatch[] = {
3081 "wrap",
3082 "#ifdef __cplusplus\n\
3083 #define exception __math_exception\n\
3084 #endif\n",
3085 "#ifdef __cplusplus\n\
3086 #undef exception\n\
3087 #endif\n",
3088 (char*)NULL };
3089
3090 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3091 *
3092 * Description of Math_Huge_Val_From_Dbl_Max fix
3093 */
3094 tSCC zMath_Huge_Val_From_Dbl_MaxName[] =
3095 "math_huge_val_from_dbl_max";
3096
3097 /*
3098 * File name selection pattern
3099 */
3100 tSCC zMath_Huge_Val_From_Dbl_MaxList[] =
3101 "|math.h|";
3102 /*
3103 * Machine/OS name selection pattern
3104 */
3105 #define apzMath_Huge_Val_From_Dbl_MaxMachs (const char**)NULL
3106
3107 /*
3108 * content selection pattern - do fix if pattern found
3109 */
3110 tSCC zMath_Huge_Val_From_Dbl_MaxSelect0[] =
3111 "define[ \t]+HUGE_VAL[ \t]+DBL_MAX";
3112
3113 /*
3114 * content bypass pattern - skip fix if pattern found
3115 */
3116 tSCC zMath_Huge_Val_From_Dbl_MaxBypass0[] =
3117 "define[ \t]+DBL_MAX";
3118
3119 #define MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT 2
3120 static tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = {
3121 { TT_NEGREP, zMath_Huge_Val_From_Dbl_MaxBypass0, (regex_t*)NULL },
3122 { TT_EGREP, zMath_Huge_Val_From_Dbl_MaxSelect0, (regex_t*)NULL }, };
3123
3124 /*
3125 * Fix Command Arguments for Math_Huge_Val_From_Dbl_Max
3126 */
3127 static const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c",
3128 "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h | sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n\
3129 \tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\
3130 \tthen sed -e '/define[ \t]*HUGE_VAL[ \t]*DBL_MAX/s@DBL_MAX@'\"$dbl_max_def@\"\n\
3131 \telse cat\n\
3132 \tfi",
3133 (char*)NULL };
3134
3135 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3136 *
3137 * Description of Math_Huge_Val_Ifndef fix
3138 */
3139 tSCC zMath_Huge_Val_IfndefName[] =
3140 "math_huge_val_ifndef";
3141
3142 /*
3143 * File name selection pattern
3144 */
3145 tSCC zMath_Huge_Val_IfndefList[] =
3146 "|math.h|math/math.h|";
3147 /*
3148 * Machine/OS name selection pattern
3149 */
3150 #define apzMath_Huge_Val_IfndefMachs (const char**)NULL
3151
3152 /*
3153 * content selection pattern - do fix if pattern found
3154 */
3155 tSCC zMath_Huge_Val_IfndefSelect0[] =
3156 "define[ \t]+HUGE_VAL";
3157
3158 #define MATH_HUGE_VAL_IFNDEF_TEST_CT 1
3159 static tTestDesc aMath_Huge_Val_IfndefTests[] = {
3160 { TT_EGREP, zMath_Huge_Val_IfndefSelect0, (regex_t*)NULL }, };
3161
3162 /*
3163 * Fix Command Arguments for Math_Huge_Val_Ifndef
3164 */
3165 static const char* apzMath_Huge_Val_IfndefPatch[] = {
3166 "format",
3167 "#ifndef HUGE_VAL\n\
3168 %0\n\
3169 #endif",
3170 "^[ \t]*#[ \t]*define[ \t]+HUGE_VAL[ \t].*",
3171 (char*)NULL };
3172
3173 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3174 *
3175 * Description of Nested_Auth_Des fix
3176 */
3177 tSCC zNested_Auth_DesName[] =
3178 "nested_auth_des";
3179
3180 /*
3181 * File name selection pattern
3182 */
3183 tSCC zNested_Auth_DesList[] =
3184 "|rpc/rpc.h|";
3185 /*
3186 * Machine/OS name selection pattern
3187 */
3188 #define apzNested_Auth_DesMachs (const char**)NULL
3189
3190 /*
3191 * content selection pattern - do fix if pattern found
3192 */
3193 tSCC zNested_Auth_DesSelect0[] =
3194 "(/\\*.*rpc/auth_des\\.h>.*)/\\*";
3195
3196 #define NESTED_AUTH_DES_TEST_CT 1
3197 static tTestDesc aNested_Auth_DesTests[] = {
3198 { TT_EGREP, zNested_Auth_DesSelect0, (regex_t*)NULL }, };
3199
3200 /*
3201 * Fix Command Arguments for Nested_Auth_Des
3202 */
3203 static const char* apzNested_Auth_DesPatch[] = {
3204 "format",
3205 "%1*/ /*",
3206 (char*)NULL };
3207
3208 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3209 *
3210 * Description of Nested_Motorola fix
3211 */
3212 tSCC zNested_MotorolaName[] =
3213 "nested_motorola";
3214
3215 /*
3216 * File name selection pattern
3217 */
3218 tSCC zNested_MotorolaList[] =
3219 "|sys/limits.h|limits.h|";
3220 /*
3221 * Machine/OS name selection pattern
3222 */
3223 tSCC* apzNested_MotorolaMachs[] = {
3224 "m68k-motorola-sysv*",
3225 (const char*)NULL };
3226
3227 /*
3228 * content selection pattern - do fix if pattern found
3229 */
3230 tSCC zNested_MotorolaSelect0[] =
3231 "max # bytes atomic in write|error value returned by Math lib";
3232
3233 #define NESTED_MOTOROLA_TEST_CT 1
3234 static tTestDesc aNested_MotorolaTests[] = {
3235 { TT_EGREP, zNested_MotorolaSelect0, (regex_t*)NULL }, };
3236
3237 /*
3238 * Fix Command Arguments for Nested_Motorola
3239 */
3240 static const char* apzNested_MotorolaPatch[] = { "sed",
3241 "-e", "s@^\\(#undef[ \t][ \t]*PIPE_BUF[ \t]*/\\* max # bytes atomic in write to a\\)$@\\1 */@",
3242 "-e", "s@\\(/\\*#define\tHUGE_VAL\t3.[0-9e+]* \\)\\(/\\*error value returned by Math lib\\*/\\)$@\\1*/ \\2@",
3243 (char*)NULL };
3244
3245 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3246 *
3247 * Description of Nested_Sys_Limits fix
3248 */
3249 tSCC zNested_Sys_LimitsName[] =
3250 "nested_sys_limits";
3251
3252 /*
3253 * File name selection pattern
3254 */
3255 tSCC zNested_Sys_LimitsList[] =
3256 "|sys/limits.h|";
3257 /*
3258 * Machine/OS name selection pattern
3259 */
3260 #define apzNested_Sys_LimitsMachs (const char**)NULL
3261
3262 /*
3263 * content selection pattern - do fix if pattern found
3264 */
3265 tSCC zNested_Sys_LimitsSelect0[] =
3266 "CHILD_MAX";
3267
3268 #define NESTED_SYS_LIMITS_TEST_CT 1
3269 static tTestDesc aNested_Sys_LimitsTests[] = {
3270 { TT_EGREP, zNested_Sys_LimitsSelect0, (regex_t*)NULL }, };
3271
3272 /*
3273 * Fix Command Arguments for Nested_Sys_Limits
3274 */
3275 static const char* apzNested_Sys_LimitsPatch[] = { "sed",
3276 "-e", "/CHILD_MAX/s,/\\* Max, Max,",
3277 "-e", "/OPEN_MAX/s,/\\* Max, Max,",
3278 (char*)NULL };
3279
3280 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3281 *
3282 * Description of Netbsd_Extra_Semicolon fix
3283 */
3284 tSCC zNetbsd_Extra_SemicolonName[] =
3285 "netbsd_extra_semicolon";
3286
3287 /*
3288 * File name selection pattern
3289 */
3290 tSCC zNetbsd_Extra_SemicolonList[] =
3291 "|sys/cdefs.h|";
3292 /*
3293 * Machine/OS name selection pattern
3294 */
3295 tSCC* apzNetbsd_Extra_SemicolonMachs[] = {
3296 "*-*-netbsd*",
3297 (const char*)NULL };
3298
3299 /*
3300 * content selection pattern - do fix if pattern found
3301 */
3302 tSCC zNetbsd_Extra_SemicolonSelect0[] =
3303 "#define[ \t]*__END_DECLS[ \t]*};";
3304
3305 #define NETBSD_EXTRA_SEMICOLON_TEST_CT 1
3306 static tTestDesc aNetbsd_Extra_SemicolonTests[] = {
3307 { TT_EGREP, zNetbsd_Extra_SemicolonSelect0, (regex_t*)NULL }, };
3308
3309 /*
3310 * Fix Command Arguments for Netbsd_Extra_Semicolon
3311 */
3312 static const char* apzNetbsd_Extra_SemicolonPatch[] = {
3313 "format",
3314 "#define __END_DECLS }",
3315 (char*)NULL };
3316
3317 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3318 *
3319 * Description of Next_Math_Prefix fix
3320 */
3321 tSCC zNext_Math_PrefixName[] =
3322 "next_math_prefix";
3323
3324 /*
3325 * File name selection pattern
3326 */
3327 tSCC zNext_Math_PrefixList[] =
3328 "|ansi/math.h|";
3329 /*
3330 * Machine/OS name selection pattern
3331 */
3332 #define apzNext_Math_PrefixMachs (const char**)NULL
3333
3334 /*
3335 * content selection pattern - do fix if pattern found
3336 */
3337 tSCC zNext_Math_PrefixSelect0[] =
3338 "^extern[ \t]+double[ \t]+__const__[ \t]";
3339
3340 #define NEXT_MATH_PREFIX_TEST_CT 1
3341 static tTestDesc aNext_Math_PrefixTests[] = {
3342 { TT_EGREP, zNext_Math_PrefixSelect0, (regex_t*)NULL }, };
3343
3344 /*
3345 * Fix Command Arguments for Next_Math_Prefix
3346 */
3347 static const char* apzNext_Math_PrefixPatch[] = {
3348 "format",
3349 "extern double %1(",
3350 "^extern[ \t]+double[ \t]+__const__[ \t]+([a-z]+)\\(",
3351 (char*)NULL };
3352
3353 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3354 *
3355 * Description of Next_Template fix
3356 */
3357 tSCC zNext_TemplateName[] =
3358 "next_template";
3359
3360 /*
3361 * File name selection pattern
3362 */
3363 tSCC zNext_TemplateList[] =
3364 "|bsd/libc.h|";
3365 /*
3366 * Machine/OS name selection pattern
3367 */
3368 #define apzNext_TemplateMachs (const char**)NULL
3369
3370 /*
3371 * content selection pattern - do fix if pattern found
3372 */
3373 tSCC zNext_TemplateSelect0[] =
3374 "[ \t]template\\)";
3375
3376 #define NEXT_TEMPLATE_TEST_CT 1
3377 static tTestDesc aNext_TemplateTests[] = {
3378 { TT_EGREP, zNext_TemplateSelect0, (regex_t*)NULL }, };
3379
3380 /*
3381 * Fix Command Arguments for Next_Template
3382 */
3383 static const char* apzNext_TemplatePatch[] = {
3384 "format",
3385 "(%1)",
3386 "\\(([^)]*)[ \t]template\\)",
3387 (char*)NULL };
3388
3389 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3390 *
3391 * Description of Next_Volitile fix
3392 */
3393 tSCC zNext_VolitileName[] =
3394 "next_volitile";
3395
3396 /*
3397 * File name selection pattern
3398 */
3399 tSCC zNext_VolitileList[] =
3400 "|ansi/stdlib.h|";
3401 /*
3402 * Machine/OS name selection pattern
3403 */
3404 #define apzNext_VolitileMachs (const char**)NULL
3405
3406 /*
3407 * content selection pattern - do fix if pattern found
3408 */
3409 tSCC zNext_VolitileSelect0[] =
3410 "^extern[ \t]+volatile[ \t]+void[ \t]";
3411
3412 #define NEXT_VOLITILE_TEST_CT 1
3413 static tTestDesc aNext_VolitileTests[] = {
3414 { TT_EGREP, zNext_VolitileSelect0, (regex_t*)NULL }, };
3415
3416 /*
3417 * Fix Command Arguments for Next_Volitile
3418 */
3419 static const char* apzNext_VolitilePatch[] = {
3420 "format",
3421 "extern void %1(",
3422 "^extern[ \t]+volatile[ \t]+void[ \t]+(exit|abort)\\(",
3423 (char*)NULL };
3424
3425 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3426 *
3427 * Description of Next_Wait_Union fix
3428 */
3429 tSCC zNext_Wait_UnionName[] =
3430 "next_wait_union";
3431
3432 /*
3433 * File name selection pattern
3434 */
3435 tSCC zNext_Wait_UnionList[] =
3436 "|sys/wait.h|";
3437 /*
3438 * Machine/OS name selection pattern
3439 */
3440 #define apzNext_Wait_UnionMachs (const char**)NULL
3441
3442 /*
3443 * content selection pattern - do fix if pattern found
3444 */
3445 tSCC zNext_Wait_UnionSelect0[] =
3446 "wait\\(union wait";
3447
3448 #define NEXT_WAIT_UNION_TEST_CT 1
3449 static tTestDesc aNext_Wait_UnionTests[] = {
3450 { TT_EGREP, zNext_Wait_UnionSelect0, (regex_t*)NULL }, };
3451
3452 /*
3453 * Fix Command Arguments for Next_Wait_Union
3454 */
3455 static const char* apzNext_Wait_UnionPatch[] = {
3456 "format",
3457 "wait(void",
3458 (char*)NULL };
3459
3460 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3461 *
3462 * Description of Nodeent_Syntax fix
3463 */
3464 tSCC zNodeent_SyntaxName[] =
3465 "nodeent_syntax";
3466
3467 /*
3468 * File name selection pattern
3469 */
3470 tSCC zNodeent_SyntaxList[] =
3471 "|netdnet/dnetdb.h|";
3472 /*
3473 * Machine/OS name selection pattern
3474 */
3475 #define apzNodeent_SyntaxMachs (const char**)NULL
3476
3477 /*
3478 * content selection pattern - do fix if pattern found
3479 */
3480 tSCC zNodeent_SyntaxSelect0[] =
3481 "char[ \t]*\\*na_addr[ \t]*$";
3482
3483 #define NODEENT_SYNTAX_TEST_CT 1
3484 static tTestDesc aNodeent_SyntaxTests[] = {
3485 { TT_EGREP, zNodeent_SyntaxSelect0, (regex_t*)NULL }, };
3486
3487 /*
3488 * Fix Command Arguments for Nodeent_Syntax
3489 */
3490 static const char* apzNodeent_SyntaxPatch[] = {
3491 "format",
3492 "%0;",
3493 (char*)NULL };
3494
3495 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3496 *
3497 * Description of Osf_Namespace_A fix
3498 */
3499 tSCC zOsf_Namespace_AName[] =
3500 "osf_namespace_a";
3501
3502 /*
3503 * File name selection pattern
3504 */
3505 tSCC zOsf_Namespace_AList[] =
3506 "|reg_types.h|sys/lc_core.h|";
3507 /*
3508 * Machine/OS name selection pattern
3509 */
3510 #define apzOsf_Namespace_AMachs (const char**)NULL
3511
3512 /*
3513 * perform the 'test' shell command - do fix on success
3514 */
3515 tSCC zOsf_Namespace_ATest0[] =
3516 " -r reg_types.h";
3517 tSCC zOsf_Namespace_ATest1[] =
3518 " -r sys/lc_core.h";
3519 tSCC zOsf_Namespace_ATest2[] =
3520 " -n \"`grep '} regex_t;' reg_types.h`\"";
3521 tSCC zOsf_Namespace_ATest3[] =
3522 " -z \"`grep __regex_t regex.h`\"";
3523
3524 #define OSF_NAMESPACE_A_TEST_CT 4
3525 static tTestDesc aOsf_Namespace_ATests[] = {
3526 { TT_TEST, zOsf_Namespace_ATest0, 0 /* unused */ },
3527 { TT_TEST, zOsf_Namespace_ATest1, 0 /* unused */ },
3528 { TT_TEST, zOsf_Namespace_ATest2, 0 /* unused */ },
3529 { TT_TEST, zOsf_Namespace_ATest3, 0 /* unused */ }, };
3530
3531 /*
3532 * Fix Command Arguments for Osf_Namespace_A
3533 */
3534 static const char* apzOsf_Namespace_APatch[] = {
3535 "format",
3536 "__%0",
3537 "reg(ex|off|match)_t",
3538 (char*)NULL };
3539
3540 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3541 *
3542 * Description of Osf_Namespace_C fix
3543 */
3544 tSCC zOsf_Namespace_CName[] =
3545 "osf_namespace_c";
3546
3547 /*
3548 * File name selection pattern
3549 */
3550 tSCC zOsf_Namespace_CList[] =
3551 "|regex.h|";
3552 /*
3553 * Machine/OS name selection pattern
3554 */
3555 #define apzOsf_Namespace_CMachs (const char**)NULL
3556
3557 /*
3558 * content selection pattern - do fix if pattern found
3559 */
3560 tSCC zOsf_Namespace_CSelect0[] =
3561 "#include <reg_types.h>.*";
3562
3563 /*
3564 * perform the 'test' shell command - do fix on success
3565 */
3566 tSCC zOsf_Namespace_CTest0[] =
3567 " -r reg_types.h";
3568 tSCC zOsf_Namespace_CTest1[] =
3569 " -r sys/lc_core.h";
3570 tSCC zOsf_Namespace_CTest2[] =
3571 " -n \"`grep '} regex_t;' reg_types.h`\"";
3572 tSCC zOsf_Namespace_CTest3[] =
3573 " -z \"`grep __regex_t regex.h`\"";
3574
3575 #define OSF_NAMESPACE_C_TEST_CT 5
3576 static tTestDesc aOsf_Namespace_CTests[] = {
3577 { TT_TEST, zOsf_Namespace_CTest0, 0 /* unused */ },
3578 { TT_TEST, zOsf_Namespace_CTest1, 0 /* unused */ },
3579 { TT_TEST, zOsf_Namespace_CTest2, 0 /* unused */ },
3580 { TT_TEST, zOsf_Namespace_CTest3, 0 /* unused */ },
3581 { TT_EGREP, zOsf_Namespace_CSelect0, (regex_t*)NULL }, };
3582
3583 /*
3584 * Fix Command Arguments for Osf_Namespace_C
3585 */
3586 static const char* apzOsf_Namespace_CPatch[] = {
3587 "format",
3588 "%0\n\
3589 typedef __regex_t\tregex_t;\n\
3590 typedef __regoff_t\tregoff_t;\n\
3591 typedef __regmatch_t\tregmatch_t;",
3592 (char*)NULL };
3593
3594 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3595 *
3596 * Description of Pthread_Page_Size fix
3597 */
3598 tSCC zPthread_Page_SizeName[] =
3599 "pthread_page_size";
3600
3601 /*
3602 * File name selection pattern
3603 */
3604 tSCC zPthread_Page_SizeList[] =
3605 "|pthread.h|";
3606 /*
3607 * Machine/OS name selection pattern
3608 */
3609 #define apzPthread_Page_SizeMachs (const char**)NULL
3610
3611 /*
3612 * content selection pattern - do fix if pattern found
3613 */
3614 tSCC zPthread_Page_SizeSelect0[] =
3615 "^int __page_size";
3616
3617 #define PTHREAD_PAGE_SIZE_TEST_CT 1
3618 static tTestDesc aPthread_Page_SizeTests[] = {
3619 { TT_EGREP, zPthread_Page_SizeSelect0, (regex_t*)NULL }, };
3620
3621 /*
3622 * Fix Command Arguments for Pthread_Page_Size
3623 */
3624 static const char* apzPthread_Page_SizePatch[] = {
3625 "format",
3626 "extern %0",
3627 (char*)NULL };
3628
3629 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3630 *
3631 * Description of Read_Ret_Type fix
3632 */
3633 tSCC zRead_Ret_TypeName[] =
3634 "read_ret_type";
3635
3636 /*
3637 * File name selection pattern
3638 */
3639 tSCC zRead_Ret_TypeList[] =
3640 "|stdio.h|";
3641 /*
3642 * Machine/OS name selection pattern
3643 */
3644 #define apzRead_Ret_TypeMachs (const char**)NULL
3645
3646 /*
3647 * content selection pattern - do fix if pattern found
3648 */
3649 tSCC zRead_Ret_TypeSelect0[] =
3650 "extern int\t.*, fread\\(\\), fwrite\\(\\)";
3651
3652 #define READ_RET_TYPE_TEST_CT 1
3653 static tTestDesc aRead_Ret_TypeTests[] = {
3654 { TT_EGREP, zRead_Ret_TypeSelect0, (regex_t*)NULL }, };
3655
3656 /*
3657 * Fix Command Arguments for Read_Ret_Type
3658 */
3659 static const char* apzRead_Ret_TypePatch[] = {
3660 "format",
3661 "extern unsigned int fread(), fwrite();\n\
3662 %1%2",
3663 "(extern int\t.*), fread\\(\\), fwrite\\(\\)(.*)",
3664 (char*)NULL };
3665
3666 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3667 *
3668 * Description of Rs6000_Double fix
3669 */
3670 tSCC zRs6000_DoubleName[] =
3671 "rs6000_double";
3672
3673 /*
3674 * File name selection pattern
3675 */
3676 tSCC zRs6000_DoubleList[] =
3677 "|math.h|";
3678 /*
3679 * Machine/OS name selection pattern
3680 */
3681 #define apzRs6000_DoubleMachs (const char**)NULL
3682
3683 /*
3684 * content selection pattern - do fix if pattern found
3685 */
3686 tSCC zRs6000_DoubleSelect0[] =
3687 "[^a-zA-Z_]class\\(";
3688
3689 #define RS6000_DOUBLE_TEST_CT 1
3690 static tTestDesc aRs6000_DoubleTests[] = {
3691 { TT_EGREP, zRs6000_DoubleSelect0, (regex_t*)NULL }, };
3692
3693 /*
3694 * Fix Command Arguments for Rs6000_Double
3695 */
3696 static const char* apzRs6000_DoublePatch[] = {
3697 "format",
3698 "#ifndef __cplusplus\n\
3699 %0\n\
3700 #endif",
3701 "^.*[^a-zA-Z_]class\\(.*",
3702 (char*)NULL };
3703
3704 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3705 *
3706 * Description of Rs6000_Fchmod fix
3707 */
3708 tSCC zRs6000_FchmodName[] =
3709 "rs6000_fchmod";
3710
3711 /*
3712 * File name selection pattern
3713 */
3714 tSCC zRs6000_FchmodList[] =
3715 "|sys/stat.h|";
3716 /*
3717 * Machine/OS name selection pattern
3718 */
3719 #define apzRs6000_FchmodMachs (const char**)NULL
3720
3721 /*
3722 * content selection pattern - do fix if pattern found
3723 */
3724 tSCC zRs6000_FchmodSelect0[] =
3725 "fchmod\\(char \\*";
3726
3727 #define RS6000_FCHMOD_TEST_CT 1
3728 static tTestDesc aRs6000_FchmodTests[] = {
3729 { TT_EGREP, zRs6000_FchmodSelect0, (regex_t*)NULL }, };
3730
3731 /*
3732 * Fix Command Arguments for Rs6000_Fchmod
3733 */
3734 static const char* apzRs6000_FchmodPatch[] = {
3735 "format",
3736 "fchmod(int",
3737 (char*)NULL };
3738
3739 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3740 *
3741 * Description of Rs6000_Param fix
3742 */
3743 tSCC zRs6000_ParamName[] =
3744 "rs6000_param";
3745
3746 /*
3747 * File name selection pattern
3748 */
3749 tSCC zRs6000_ParamList[] =
3750 "|stdio.h|unistd.h|";
3751 /*
3752 * Machine/OS name selection pattern
3753 */
3754 #define apzRs6000_ParamMachs (const char**)NULL
3755
3756 /*
3757 * content selection pattern - do fix if pattern found
3758 */
3759 tSCC zRs6000_ParamSelect0[] =
3760 "rename\\(const char \\*old, const char \\*new\\)";
3761
3762 #define RS6000_PARAM_TEST_CT 1
3763 static tTestDesc aRs6000_ParamTests[] = {
3764 { TT_EGREP, zRs6000_ParamSelect0, (regex_t*)NULL }, };
3765
3766 /*
3767 * Fix Command Arguments for Rs6000_Param
3768 */
3769 static const char* apzRs6000_ParamPatch[] = {
3770 "format",
3771 "rename(const char *_old, const char *_new)",
3772 (char*)NULL };
3773
3774 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3775 *
3776 * Description of Sco_Math fix
3777 */
3778 tSCC zSco_MathName[] =
3779 "sco_math";
3780
3781 /*
3782 * File name selection pattern
3783 */
3784 tSCC zSco_MathList[] =
3785 "|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|";
3786 /*
3787 * Machine/OS name selection pattern
3788 */
3789 #define apzSco_MathMachs (const char**)NULL
3790
3791 /*
3792 * content selection pattern - do fix if pattern found
3793 */
3794 tSCC zSco_MathSelect0[] =
3795 "inline double abs";
3796
3797 #define SCO_MATH_TEST_CT 1
3798 static tTestDesc aSco_MathTests[] = {
3799 { TT_EGREP, zSco_MathSelect0, (regex_t*)NULL }, };
3800
3801 /*
3802 * Fix Command Arguments for Sco_Math
3803 */
3804 static const char* apzSco_MathPatch[] = { "sed",
3805 "-e", "/#define.*__fp_class(a) \\\\/i\\\n\
3806 #ifndef __GNUC__\n",
3807 "-e", "/.*__builtin_generic/a\\\n\
3808 #else\\\n\
3809 #define __fp_class(a) \\\\\\\n\
3810 __builtin_choose_expr(__builtin_types_compatible_p(typeof(a),long double),\\\\\\\n\
3811 __fpclassifyl(a), \\\\\\\n\
3812 __builtin_choose_expr(__builtin_types_compatible_p(typeof(a), float), \\\\\\\n\
3813 __fpclassifyf(a),__fpclassify(a)))\\\n\
3814 #endif",
3815 "-e", "/extern \"C\\+\\+\"/N;/inline double abs/i\\\n\
3816 #ifndef __GNUC__\n",
3817 "-e", "/inline long double trunc/N;/inline long double trunc.*}.*extern \"C\\+\\+\"/a\\\n\
3818 #endif /* ! __GNUC__ */",
3819 (char*)NULL };
3820
3821 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3822 *
3823 * Description of Sco_Regset fix
3824 */
3825 tSCC zSco_RegsetName[] =
3826 "sco_regset";
3827
3828 /*
3829 * File name selection pattern
3830 */
3831 tSCC zSco_RegsetList[] =
3832 "|sys/regset.h|";
3833 /*
3834 * Machine/OS name selection pattern
3835 */
3836 tSCC* apzSco_RegsetMachs[] = {
3837 "*-*-sco3.2v5*",
3838 (const char*)NULL };
3839
3840 /*
3841 * content selection pattern - do fix if pattern found
3842 */
3843 tSCC zSco_RegsetSelect0[] =
3844 "(struct[ \t]+.*)fpstate";
3845
3846 #define SCO_REGSET_TEST_CT 1
3847 static tTestDesc aSco_RegsetTests[] = {
3848 { TT_EGREP, zSco_RegsetSelect0, (regex_t*)NULL }, };
3849
3850 /*
3851 * Fix Command Arguments for Sco_Regset
3852 */
3853 static const char* apzSco_RegsetPatch[] = {
3854 "format",
3855 "%1rsfpstate",
3856 (char*)NULL };
3857
3858 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3859 *
3860 * Description of Sco_Static_Func fix
3861 */
3862 tSCC zSco_Static_FuncName[] =
3863 "sco_static_func";
3864
3865 /*
3866 * File name selection pattern
3867 */
3868 tSCC zSco_Static_FuncList[] =
3869 "|sys/stat.h|";
3870 /*
3871 * Machine/OS name selection pattern
3872 */
3873 tSCC* apzSco_Static_FuncMachs[] = {
3874 "i?86-*-sco3.2*",
3875 (const char*)NULL };
3876
3877 /*
3878 * content selection pattern - do fix if pattern found
3879 */
3880 tSCC zSco_Static_FuncSelect0[] =
3881 "^static int";
3882
3883 #define SCO_STATIC_FUNC_TEST_CT 1
3884 static tTestDesc aSco_Static_FuncTests[] = {
3885 { TT_EGREP, zSco_Static_FuncSelect0, (regex_t*)NULL }, };
3886
3887 /*
3888 * Fix Command Arguments for Sco_Static_Func
3889 */
3890 static const char* apzSco_Static_FuncPatch[] = { "sed",
3891 "-e", "/^static int/i\\\n\
3892 #if __cplusplus\\\n\
3893 extern \"C\" {\\\n\
3894 #endif /* __cplusplus */",
3895 "-e", "/^}$/a\\\n\
3896 #if __cplusplus\\\n\
3897 }\\\n\
3898 #endif /* __cplusplus */",
3899 (char*)NULL };
3900
3901 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3902 *
3903 * Description of Sco_Utime fix
3904 */
3905 tSCC zSco_UtimeName[] =
3906 "sco_utime";
3907
3908 /*
3909 * File name selection pattern
3910 */
3911 tSCC zSco_UtimeList[] =
3912 "|sys/times.h|";
3913 /*
3914 * Machine/OS name selection pattern
3915 */
3916 tSCC* apzSco_UtimeMachs[] = {
3917 "i?86-*-sco3.2v4*",
3918 (const char*)NULL };
3919
3920 /*
3921 * content selection pattern - do fix if pattern found
3922 */
3923 tSCC zSco_UtimeSelect0[] =
3924 "\\(const char \\*, struct utimbuf \\*\\);";
3925
3926 #define SCO_UTIME_TEST_CT 1
3927 static tTestDesc aSco_UtimeTests[] = {
3928 { TT_EGREP, zSco_UtimeSelect0, (regex_t*)NULL }, };
3929
3930 /*
3931 * Fix Command Arguments for Sco_Utime
3932 */
3933 static const char* apzSco_UtimePatch[] = {
3934 "format",
3935 "(const char *, const struct utimbuf *);",
3936 (char*)NULL };
3937
3938 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3939 *
3940 * Description of Solaris_Mutex_Init_1 fix
3941 */
3942 tSCC zSolaris_Mutex_Init_1Name[] =
3943 "solaris_mutex_init_1";
3944
3945 /*
3946 * File name selection pattern
3947 */
3948 tSCC zSolaris_Mutex_Init_1List[] =
3949 "|pthread.h|";
3950 /*
3951 * Machine/OS name selection pattern
3952 */
3953 #define apzSolaris_Mutex_Init_1Machs (const char**)NULL
3954
3955 /*
3956 * content selection pattern - do fix if pattern found
3957 */
3958 tSCC zSolaris_Mutex_Init_1Select0[] =
3959 "@\\(#\\)pthread.h[ \t]+1.1[0-9][ \t]+9[567]/[0-9/]+ SMI";
3960
3961 #define SOLARIS_MUTEX_INIT_1_TEST_CT 1
3962 static tTestDesc aSolaris_Mutex_Init_1Tests[] = {
3963 { TT_EGREP, zSolaris_Mutex_Init_1Select0, (regex_t*)NULL }, };
3964
3965 /*
3966 * Fix Command Arguments for Solaris_Mutex_Init_1
3967 */
3968 static const char* apzSolaris_Mutex_Init_1Patch[] = { "sed",
3969 "-e", "/define[ \t]*PTHREAD_MUTEX_INI/s/{0, 0,/{{{0}, 0}, {{{0}}},/\n\
3970 /define[ \t]*PTHREAD_COND_INI/s/{0,/{{{0},0},/",
3971 (char*)NULL };
3972
3973 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3974 *
3975 * Description of Solaris_Mutex_Init_2 fix
3976 */
3977 tSCC zSolaris_Mutex_Init_2Name[] =
3978 "solaris_mutex_init_2";
3979
3980 /*
3981 * File name selection pattern
3982 */
3983 tSCC zSolaris_Mutex_Init_2List[] =
3984 "|pthread.h|";
3985 /*
3986 * Machine/OS name selection pattern
3987 */
3988 #define apzSolaris_Mutex_Init_2Machs (const char**)NULL
3989
3990 /*
3991 * content selection pattern - do fix if pattern found
3992 */
3993 tSCC zSolaris_Mutex_Init_2Select0[] =
3994 "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
3995
3996 #define SOLARIS_MUTEX_INIT_2_TEST_CT 1
3997 static tTestDesc aSolaris_Mutex_Init_2Tests[] = {
3998 { TT_EGREP, zSolaris_Mutex_Init_2Select0, (regex_t*)NULL }, };
3999
4000 /*
4001 * Fix Command Arguments for Solaris_Mutex_Init_2
4002 */
4003 static const char* apzSolaris_Mutex_Init_2Patch[] = {
4004 "format",
4005 "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
4006 %0\n\
4007 #else\n\
4008 %1, {0}}%3\n\
4009 #endif",
4010 "(^#define[ \t]+PTHREAD_(MUTEX|COND)_INITIALIZER[ \t]+\\{.*),[ \t]*0\\}(|[ \t].*)$",
4011 (char*)NULL };
4012
4013 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4014 *
4015 * Description of Solaris_Socket fix
4016 */
4017 tSCC zSolaris_SocketName[] =
4018 "solaris_socket";
4019
4020 /*
4021 * File name selection pattern
4022 */
4023 tSCC zSolaris_SocketList[] =
4024 "|sys/socket.h|";
4025 /*
4026 * Machine/OS name selection pattern
4027 */
4028 #define apzSolaris_SocketMachs (const char**)NULL
4029
4030 /*
4031 * content selection pattern - do fix if pattern found
4032 */
4033 tSCC zSolaris_SocketSelect0[] =
4034 "@\\(#\\)socket.h[ \t]+1.[123][0-9][ \t]+9[567]/[0-9/]+ SMI";
4035
4036 #define SOLARIS_SOCKET_TEST_CT 1
4037 static tTestDesc aSolaris_SocketTests[] = {
4038 { TT_EGREP, zSolaris_SocketSelect0, (regex_t*)NULL }, };
4039
4040 /*
4041 * Fix Command Arguments for Solaris_Socket
4042 */
4043 static const char* apzSolaris_SocketPatch[] = {
4044 "format",
4045 "extern int %1(int, %2void *, int, int);",
4046 "^extern int (recv|send)\\(int, (const )*char \\*, int, int\\);",
4047 (char*)NULL };
4048
4049 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4050 *
4051 * Description of Solaris_Stdio_Tag fix
4052 */
4053 tSCC zSolaris_Stdio_TagName[] =
4054 "solaris_stdio_tag";
4055
4056 /*
4057 * File name selection pattern
4058 */
4059 tSCC zSolaris_Stdio_TagList[] =
4060 "|stdio_tag.h|";
4061 /*
4062 * Machine/OS name selection pattern
4063 */
4064 #define apzSolaris_Stdio_TagMachs (const char**)NULL
4065
4066 /*
4067 * content selection pattern - do fix if pattern found
4068 */
4069 tSCC zSolaris_Stdio_TagSelect0[] =
4070 "__cplusplus < 54321L";
4071
4072 #define SOLARIS_STDIO_TAG_TEST_CT 1
4073 static tTestDesc aSolaris_Stdio_TagTests[] = {
4074 { TT_EGREP, zSolaris_Stdio_TagSelect0, (regex_t*)NULL }, };
4075
4076 /*
4077 * Fix Command Arguments for Solaris_Stdio_Tag
4078 */
4079 static const char* apzSolaris_Stdio_TagPatch[] = { "sed",
4080 "-e", "s/defined(__cplusplus) && (__cplusplus < 54321L)/0/",
4081 (char*)NULL };
4082
4083 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4084 *
4085 * Description of Solaris_Unistd fix
4086 */
4087 tSCC zSolaris_UnistdName[] =
4088 "solaris_unistd";
4089
4090 /*
4091 * File name selection pattern
4092 */
4093 tSCC zSolaris_UnistdList[] =
4094 "|unistd.h|";
4095 /*
4096 * Machine/OS name selection pattern
4097 */
4098 #define apzSolaris_UnistdMachs (const char**)NULL
4099
4100 /*
4101 * content selection pattern - do fix if pattern found
4102 */
4103 tSCC zSolaris_UnistdSelect0[] =
4104 "@\\(#\\)unistd.h[ \t]+1.3[0-9][ \t]+9[567]/[0-9/]+ SMI";
4105
4106 /*
4107 * content bypass pattern - skip fix if pattern found
4108 */
4109 tSCC zSolaris_UnistdBypass0[] =
4110 "getpagesize";
4111
4112 #define SOLARIS_UNISTD_TEST_CT 2
4113 static tTestDesc aSolaris_UnistdTests[] = {
4114 { TT_NEGREP, zSolaris_UnistdBypass0, (regex_t*)NULL },
4115 { TT_EGREP, zSolaris_UnistdSelect0, (regex_t*)NULL }, };
4116
4117 /*
4118 * Fix Command Arguments for Solaris_Unistd
4119 */
4120 static const char* apzSolaris_UnistdPatch[] = {
4121 "format",
4122 "extern int getpagesize();\n\
4123 %0",
4124 "^extern (pid_t|int) getpgid\\(.*\\);",
4125 (char*)NULL };
4126
4127 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4128 *
4129 * Description of Solaris_Widec fix
4130 */
4131 tSCC zSolaris_WidecName[] =
4132 "solaris_widec";
4133
4134 /*
4135 * File name selection pattern
4136 */
4137 tSCC zSolaris_WidecList[] =
4138 "|widec.h|";
4139 /*
4140 * Machine/OS name selection pattern
4141 */
4142 tSCC* apzSolaris_WidecMachs[] = {
4143 "*-*-solaris2.[0-5]*",
4144 (const char*)NULL };
4145
4146 /*
4147 * content selection pattern - do fix if pattern found
4148 */
4149 tSCC zSolaris_WidecSelect0[] =
4150 "#include <euc.h>";
4151
4152 /*
4153 * content bypass pattern - skip fix if pattern found
4154 */
4155 tSCC zSolaris_WidecBypass0[] =
4156 "include.*wchar\\.h";
4157
4158 #define SOLARIS_WIDEC_TEST_CT 2
4159 static tTestDesc aSolaris_WidecTests[] = {
4160 { TT_NEGREP, zSolaris_WidecBypass0, (regex_t*)NULL },
4161 { TT_EGREP, zSolaris_WidecSelect0, (regex_t*)NULL }, };
4162
4163 /*
4164 * Fix Command Arguments for Solaris_Widec
4165 */
4166 static const char* apzSolaris_WidecPatch[] = {
4167 "format",
4168 "%0\n\
4169 #include <wchar.h>",
4170 (char*)NULL };
4171
4172 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4173 *
4174 * Description of Statsswtch fix
4175 */
4176 tSCC zStatsswtchName[] =
4177 "statsswtch";
4178
4179 /*
4180 * File name selection pattern
4181 */
4182 tSCC zStatsswtchList[] =
4183 "|rpcsvc/rstat.h|";
4184 /*
4185 * Machine/OS name selection pattern
4186 */
4187 #define apzStatsswtchMachs (const char**)NULL
4188
4189 /*
4190 * content selection pattern - do fix if pattern found
4191 */
4192 tSCC zStatsswtchSelect0[] =
4193 "boottime$";
4194
4195 #define STATSSWTCH_TEST_CT 1
4196 static tTestDesc aStatsswtchTests[] = {
4197 { TT_EGREP, zStatsswtchSelect0, (regex_t*)NULL }, };
4198
4199 /*
4200 * Fix Command Arguments for Statsswtch
4201 */
4202 static const char* apzStatsswtchPatch[] = {
4203 "format",
4204 "boottime;",
4205 (char*)NULL };
4206
4207 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4208 *
4209 * Description of Stdio_Stdarg_H fix
4210 */
4211 tSCC zStdio_Stdarg_HName[] =
4212 "stdio_stdarg_h";
4213
4214 /*
4215 * File name selection pattern
4216 */
4217 tSCC zStdio_Stdarg_HList[] =
4218 "|stdio.h|";
4219 /*
4220 * Machine/OS name selection pattern
4221 */
4222 #define apzStdio_Stdarg_HMachs (const char**)NULL
4223
4224 /*
4225 * content bypass pattern - skip fix if pattern found
4226 */
4227 tSCC zStdio_Stdarg_HBypass0[] =
4228 "include.*(stdarg.h|machine/ansi.h)";
4229
4230 #define STDIO_STDARG_H_TEST_CT 1
4231 static tTestDesc aStdio_Stdarg_HTests[] = {
4232 { TT_NEGREP, zStdio_Stdarg_HBypass0, (regex_t*)NULL }, };
4233
4234 /*
4235 * Fix Command Arguments for Stdio_Stdarg_H
4236 */
4237 static const char* apzStdio_Stdarg_HPatch[] = {
4238 "wrap",
4239 "#define __need___va_list\n\
4240 #include <stdarg.h>\n",
4241 (char*)NULL };
4242
4243 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4244 *
4245 * Description of Stdio_Va_List fix
4246 */
4247 tSCC zStdio_Va_ListName[] =
4248 "stdio_va_list";
4249
4250 /*
4251 * File name selection pattern
4252 */
4253 tSCC zStdio_Va_ListList[] =
4254 "|stdio.h|internal/stdio_core.h|internal/wchar_core.h|";
4255 /*
4256 * Machine/OS name selection pattern
4257 */
4258 #define apzStdio_Va_ListMachs (const char**)NULL
4259
4260 /*
4261 * content bypass pattern - skip fix if pattern found
4262 */
4263 tSCC zStdio_Va_ListBypass0[] =
4264 "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
4265
4266 #define STDIO_VA_LIST_TEST_CT 1
4267 static tTestDesc aStdio_Va_ListTests[] = {
4268 { TT_NEGREP, zStdio_Va_ListBypass0, (regex_t*)NULL }, };
4269
4270 /*
4271 * Fix Command Arguments for Stdio_Va_List
4272 */
4273 static const char* apzStdio_Va_ListPatch[] = { "sed",
4274 "-e", "s@ va_list @ __gnuc_va_list @\n\
4275 s@ va_list)@ __gnuc_va_list)@\n\
4276 s@va_list _ap;@__gnuc_va_list _ap;@\n\
4277 s@(va_list)&@(__gnuc_va_list)\\&@\n\
4278 s@ _VA_LIST_));@ __gnuc_va_list));@\n\
4279 s@ __VA_LIST__));@ __gnuc_va_list));@\n\
4280 s@ va_list@ __not_va_list__@\n\
4281 s@\\*va_list@*__not_va_list__@\n\
4282 s@ __va_list)@ __gnuc_va_list)@\n\
4283 s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
4284 s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
4285 s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
4286 s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
4287 s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
4288 s@VA_LIST@DUMMY_VA_LIST@\n\
4289 s@_Va_LIST@_VA_LIST@",
4290 (char*)NULL };
4291
4292 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4293 *
4294 * Description of Strict_Ansi_Not fix
4295 */
4296 tSCC zStrict_Ansi_NotName[] =
4297 "strict_ansi_not";
4298
4299 /*
4300 * File name selection pattern
4301 */
4302 #define zStrict_Ansi_NotList (char*)NULL
4303 /*
4304 * Machine/OS name selection pattern
4305 */
4306 #define apzStrict_Ansi_NotMachs (const char**)NULL
4307
4308 /*
4309 * content selection pattern - do fix if pattern found
4310 */
4311 tSCC zStrict_Ansi_NotSelect0[] =
4312 "^([ \t]*#[ \t]*if.*)(!__STDC__|__STDC__[ \t]*==[ \t]*0|__STDC__[ \t]*!=[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*0)";
4313
4314 /*
4315 * content bypass pattern - skip fix if pattern found
4316 */
4317 tSCC zStrict_Ansi_NotBypass0[] =
4318 "GNU and MIPS C compilers define __STDC__ differently";
4319 tSCC zStrict_Ansi_NotBypass1[] =
4320 "__SCO_VERSION__.*__STDC__ != 1";
4321
4322 /*
4323 * perform the C function call test
4324 */
4325 tSCC zStrict_Ansi_NotFTst0[] = "stdc_0_in_system_headers";
4326
4327 #define STRICT_ANSI_NOT_TEST_CT 4
4328 static tTestDesc aStrict_Ansi_NotTests[] = {
4329 { TT_FUNCTION, zStrict_Ansi_NotFTst0, 0 /* unused */ },
4330 { TT_NEGREP, zStrict_Ansi_NotBypass0, (regex_t*)NULL },
4331 { TT_NEGREP, zStrict_Ansi_NotBypass1, (regex_t*)NULL },
4332 { TT_EGREP, zStrict_Ansi_NotSelect0, (regex_t*)NULL }, };
4333
4334 /*
4335 * Fix Command Arguments for Strict_Ansi_Not
4336 */
4337 static const char* apzStrict_Ansi_NotPatch[] = {
4338 "format",
4339 "%1 !defined(__STRICT_ANSI__)",
4340 (char*)NULL };
4341
4342 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4343 *
4344 * Description of Strict_Ansi_Not_Ctd fix
4345 */
4346 tSCC zStrict_Ansi_Not_CtdName[] =
4347 "strict_ansi_not_ctd";
4348
4349 /*
4350 * File name selection pattern
4351 */
4352 tSCC zStrict_Ansi_Not_CtdList[] =
4353 "|math.h|limits.h|stdio.h|signal.h|stdlib.h|sys/signal.h|time.h|";
4354 /*
4355 * Machine/OS name selection pattern
4356 */
4357 #define apzStrict_Ansi_Not_CtdMachs (const char**)NULL
4358
4359 /*
4360 * content selection pattern - do fix if pattern found
4361 */
4362 tSCC zStrict_Ansi_Not_CtdSelect0[] =
4363 "^([ \t]*(\\(|&&|\\|\\|)([ \t(]*!*[ \t]*defined\\([a-zA-Z_0-9]+\\)[ \t]*[|&][|&])*[ \t(]*)(__STDC__[ \t]*(|-[ \t]*0[ \t]*)==[ \t]*0)";
4364
4365 /*
4366 * perform the C function call test
4367 */
4368 tSCC zStrict_Ansi_Not_CtdFTst0[] = "stdc_0_in_system_headers";
4369
4370 #define STRICT_ANSI_NOT_CTD_TEST_CT 2
4371 static tTestDesc aStrict_Ansi_Not_CtdTests[] = {
4372 { TT_FUNCTION, zStrict_Ansi_Not_CtdFTst0, 0 /* unused */ },
4373 { TT_EGREP, zStrict_Ansi_Not_CtdSelect0, (regex_t*)NULL }, };
4374
4375 /*
4376 * Fix Command Arguments for Strict_Ansi_Not_Ctd
4377 */
4378 static const char* apzStrict_Ansi_Not_CtdPatch[] = {
4379 "format",
4380 "%1 !defined(__STRICT_ANSI__)",
4381 (char*)NULL };
4382
4383 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4384 *
4385 * Description of Strict_Ansi_Only fix
4386 */
4387 tSCC zStrict_Ansi_OnlyName[] =
4388 "strict_ansi_only";
4389
4390 /*
4391 * File name selection pattern
4392 */
4393 #define zStrict_Ansi_OnlyList (char*)NULL
4394 /*
4395 * Machine/OS name selection pattern
4396 */
4397 #define apzStrict_Ansi_OnlyMachs (const char**)NULL
4398
4399 /*
4400 * content selection pattern - do fix if pattern found
4401 */
4402 tSCC zStrict_Ansi_OnlySelect0[] =
4403 "^([ \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)";
4404
4405 /*
4406 * perform the C function call test
4407 */
4408 tSCC zStrict_Ansi_OnlyFTst0[] = "stdc_0_in_system_headers";
4409
4410 #define STRICT_ANSI_ONLY_TEST_CT 2
4411 static tTestDesc aStrict_Ansi_OnlyTests[] = {
4412 { TT_FUNCTION, zStrict_Ansi_OnlyFTst0, 0 /* unused */ },
4413 { TT_EGREP, zStrict_Ansi_OnlySelect0, (regex_t*)NULL }, };
4414
4415 /*
4416 * Fix Command Arguments for Strict_Ansi_Only
4417 */
4418 static const char* apzStrict_Ansi_OnlyPatch[] = {
4419 "format",
4420 "%1 defined(__STRICT_ANSI__)",
4421 (char*)NULL };
4422
4423 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4424 *
4425 * Description of Struct_File fix
4426 */
4427 tSCC zStruct_FileName[] =
4428 "struct_file";
4429
4430 /*
4431 * File name selection pattern
4432 */
4433 tSCC zStruct_FileList[] =
4434 "|rpc/xdr.h|";
4435 /*
4436 * Machine/OS name selection pattern
4437 */
4438 #define apzStruct_FileMachs (const char**)NULL
4439
4440 /*
4441 * content selection pattern - do fix if pattern found
4442 */
4443 tSCC zStruct_FileSelect0[] =
4444 "^.*xdrstdio_create.*struct __file_s";
4445
4446 #define STRUCT_FILE_TEST_CT 1
4447 static tTestDesc aStruct_FileTests[] = {
4448 { TT_EGREP, zStruct_FileSelect0, (regex_t*)NULL }, };
4449
4450 /*
4451 * Fix Command Arguments for Struct_File
4452 */
4453 static const char* apzStruct_FilePatch[] = {
4454 "format",
4455 "struct __file_s;\n\
4456 %0",
4457 (char*)NULL };
4458
4459 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4460 *
4461 * Description of Struct_Sockaddr fix
4462 */
4463 tSCC zStruct_SockaddrName[] =
4464 "struct_sockaddr";
4465
4466 /*
4467 * File name selection pattern
4468 */
4469 tSCC zStruct_SockaddrList[] =
4470 "|rpc/auth.h|";
4471 /*
4472 * Machine/OS name selection pattern
4473 */
4474 #define apzStruct_SockaddrMachs (const char**)NULL
4475
4476 /*
4477 * content selection pattern - do fix if pattern found
4478 */
4479 tSCC zStruct_SockaddrSelect0[] =
4480 "^.*authdes_create.*struct sockaddr[^_]";
4481
4482 /*
4483 * content bypass pattern - skip fix if pattern found
4484 */
4485 tSCC zStruct_SockaddrBypass0[] =
4486 "<sys/socket.h>";
4487 tSCC zStruct_SockaddrBypass1[] =
4488 "struct sockaddr;\n";
4489
4490 #define STRUCT_SOCKADDR_TEST_CT 3
4491 static tTestDesc aStruct_SockaddrTests[] = {
4492 { TT_NEGREP, zStruct_SockaddrBypass0, (regex_t*)NULL },
4493 { TT_NEGREP, zStruct_SockaddrBypass1, (regex_t*)NULL },
4494 { TT_EGREP, zStruct_SockaddrSelect0, (regex_t*)NULL }, };
4495
4496 /*
4497 * Fix Command Arguments for Struct_Sockaddr
4498 */
4499 static const char* apzStruct_SockaddrPatch[] = {
4500 "format",
4501 "struct sockaddr;\n\
4502 %0",
4503 (char*)NULL };
4504
4505 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4506 *
4507 * Description of Sun_Auth_Proto fix
4508 */
4509 tSCC zSun_Auth_ProtoName[] =
4510 "sun_auth_proto";
4511
4512 /*
4513 * File name selection pattern
4514 */
4515 tSCC zSun_Auth_ProtoList[] =
4516 "|rpc/auth.h|rpc/clnt.h|rpc/svc.h|rpc/xdr.h|";
4517 /*
4518 * Machine/OS name selection pattern
4519 */
4520 #define apzSun_Auth_ProtoMachs (const char**)NULL
4521
4522 /*
4523 * content selection pattern - do fix if pattern found
4524 */
4525 tSCC zSun_Auth_ProtoSelect0[] =
4526 "\\(\\*[a-z][a-z_]*\\)\\(\\)";
4527
4528 #define SUN_AUTH_PROTO_TEST_CT 1
4529 static tTestDesc aSun_Auth_ProtoTests[] = {
4530 { TT_EGREP, zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };
4531
4532 /*
4533 * Fix Command Arguments for Sun_Auth_Proto
4534 */
4535 static const char* apzSun_Auth_ProtoPatch[] = {
4536 "format",
4537 "#ifdef __cplusplus\n\
4538 %1(...);%2\n\
4539 #else\n\
4540 %1();%2\n\
4541 #endif",
4542 "(.*\\(\\*[a-z][a-z_]*\\))\\(\\);(.*)",
4543 (char*)NULL };
4544
4545 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4546 *
4547 * Description of Sun_Bogus_Ifdef fix
4548 */
4549 tSCC zSun_Bogus_IfdefName[] =
4550 "sun_bogus_ifdef";
4551
4552 /*
4553 * File name selection pattern
4554 */
4555 tSCC zSun_Bogus_IfdefList[] =
4556 "|hsfs/hsfs_spec.h|hsfs/iso_spec.h|";
4557 /*
4558 * Machine/OS name selection pattern
4559 */
4560 #define apzSun_Bogus_IfdefMachs (const char**)NULL
4561
4562 /*
4563 * content selection pattern - do fix if pattern found
4564 */
4565 tSCC zSun_Bogus_IfdefSelect0[] =
4566 "#ifdef(.*\\|\\|.*)";
4567
4568 #define SUN_BOGUS_IFDEF_TEST_CT 1
4569 static tTestDesc aSun_Bogus_IfdefTests[] = {
4570 { TT_EGREP, zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };
4571
4572 /*
4573 * Fix Command Arguments for Sun_Bogus_Ifdef
4574 */
4575 static const char* apzSun_Bogus_IfdefPatch[] = {
4576 "format",
4577 "#if%1",
4578 (char*)NULL };
4579
4580 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4581 *
4582 * Description of Sun_Catmacro fix
4583 */
4584 tSCC zSun_CatmacroName[] =
4585 "sun_catmacro";
4586
4587 /*
4588 * File name selection pattern
4589 */
4590 tSCC zSun_CatmacroList[] =
4591 "|pixrect/memvar.h|";
4592 /*
4593 * Machine/OS name selection pattern
4594 */
4595 #define apzSun_CatmacroMachs (const char**)NULL
4596
4597 /*
4598 * content selection pattern - do fix if pattern found
4599 */
4600 tSCC zSun_CatmacroSelect0[] =
4601 "^#define[ \t]+CAT\\(a,b\\).*";
4602
4603 #define SUN_CATMACRO_TEST_CT 1
4604 static tTestDesc aSun_CatmacroTests[] = {
4605 { TT_EGREP, zSun_CatmacroSelect0, (regex_t*)NULL }, };
4606
4607 /*
4608 * Fix Command Arguments for Sun_Catmacro
4609 */
4610 static const char* apzSun_CatmacroPatch[] = {
4611 "format",
4612 "#ifdef __STDC__\n\
4613 # define CAT(a,b) a##b\n\
4614 #else\n\
4615 %0\n\
4616 #endif",
4617 (char*)NULL };
4618
4619 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4620 *
4621 * Description of Sun_Malloc fix
4622 */
4623 tSCC zSun_MallocName[] =
4624 "sun_malloc";
4625
4626 /*
4627 * File name selection pattern
4628 */
4629 tSCC zSun_MallocList[] =
4630 "|malloc.h|";
4631 /*
4632 * Machine/OS name selection pattern
4633 */
4634 #define apzSun_MallocMachs (const char**)NULL
4635 #define SUN_MALLOC_TEST_CT 0
4636 #define aSun_MallocTests (tTestDesc*)NULL
4637
4638 /*
4639 * Fix Command Arguments for Sun_Malloc
4640 */
4641 static const char* apzSun_MallocPatch[] = { "sed",
4642 "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
4643 "-e", "s/int[ \t][ \t]*free/void\tfree/g",
4644 "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
4645 "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
4646 "-e", "s/char\\([ \t]*\\*[ \t]*calloc\\)/void\\1/g",
4647 (char*)NULL };
4648
4649 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4650 *
4651 * Description of Sun_Rusers_Semi fix
4652 */
4653 tSCC zSun_Rusers_SemiName[] =
4654 "sun_rusers_semi";
4655
4656 /*
4657 * File name selection pattern
4658 */
4659 tSCC zSun_Rusers_SemiList[] =
4660 "|rpcsvc/rusers.h|";
4661 /*
4662 * Machine/OS name selection pattern
4663 */
4664 #define apzSun_Rusers_SemiMachs (const char**)NULL
4665
4666 /*
4667 * content selection pattern - do fix if pattern found
4668 */
4669 tSCC zSun_Rusers_SemiSelect0[] =
4670 "_cnt$";
4671
4672 #define SUN_RUSERS_SEMI_TEST_CT 1
4673 static tTestDesc aSun_Rusers_SemiTests[] = {
4674 { TT_EGREP, zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };
4675
4676 /*
4677 * Fix Command Arguments for Sun_Rusers_Semi
4678 */
4679 static const char* apzSun_Rusers_SemiPatch[] = { "sed",
4680 "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
4681 (char*)NULL };
4682
4683 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4684 *
4685 * Description of Sun_Signal fix
4686 */
4687 tSCC zSun_SignalName[] =
4688 "sun_signal";
4689
4690 /*
4691 * File name selection pattern
4692 */
4693 tSCC zSun_SignalList[] =
4694 "|sys/signal.h|signal.h|";
4695 /*
4696 * Machine/OS name selection pattern
4697 */
4698 #define apzSun_SignalMachs (const char**)NULL
4699
4700 /*
4701 * content selection pattern - do fix if pattern found
4702 */
4703 tSCC zSun_SignalSelect0[] =
4704 "^void\t\\(\\*signal\\(\\)\\)\\(\\);.*";
4705
4706 #define SUN_SIGNAL_TEST_CT 1
4707 static tTestDesc aSun_SignalTests[] = {
4708 { TT_EGREP, zSun_SignalSelect0, (regex_t*)NULL }, };
4709
4710 /*
4711 * Fix Command Arguments for Sun_Signal
4712 */
4713 static const char* apzSun_SignalPatch[] = {
4714 "format",
4715 "#ifdef __cplusplus\n\
4716 void\t(*signal(...))(...);\n\
4717 #else\n\
4718 %0\n\
4719 #endif",
4720 (char*)NULL };
4721
4722 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4723 *
4724 * Description of Sunos_Matherr_Decl fix
4725 */
4726 tSCC zSunos_Matherr_DeclName[] =
4727 "sunos_matherr_decl";
4728
4729 /*
4730 * File name selection pattern
4731 */
4732 tSCC zSunos_Matherr_DeclList[] =
4733 "|math.h|";
4734 /*
4735 * Machine/OS name selection pattern
4736 */
4737 #define apzSunos_Matherr_DeclMachs (const char**)NULL
4738
4739 /*
4740 * content selection pattern - do fix if pattern found
4741 */
4742 tSCC zSunos_Matherr_DeclSelect0[] =
4743 "matherr";
4744
4745 /*
4746 * content bypass pattern - skip fix if pattern found
4747 */
4748 tSCC zSunos_Matherr_DeclBypass0[] =
4749 "matherr.*(struct exception|__MATH_EXCEPTION)";
4750
4751 #define SUNOS_MATHERR_DECL_TEST_CT 2
4752 static tTestDesc aSunos_Matherr_DeclTests[] = {
4753 { TT_NEGREP, zSunos_Matherr_DeclBypass0, (regex_t*)NULL },
4754 { TT_EGREP, zSunos_Matherr_DeclSelect0, (regex_t*)NULL }, };
4755
4756 /*
4757 * Fix Command Arguments for Sunos_Matherr_Decl
4758 */
4759 static const char* apzSunos_Matherr_DeclPatch[] = {
4760 "wrap",
4761 "struct exception;\n",
4762 (char*)NULL };
4763
4764 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4765 *
4766 * Description of Sunos_Strlen fix
4767 */
4768 tSCC zSunos_StrlenName[] =
4769 "sunos_strlen";
4770
4771 /*
4772 * File name selection pattern
4773 */
4774 tSCC zSunos_StrlenList[] =
4775 "|strings.h|";
4776 /*
4777 * Machine/OS name selection pattern
4778 */
4779 #define apzSunos_StrlenMachs (const char**)NULL
4780
4781 /*
4782 * content selection pattern - do fix if pattern found
4783 */
4784 tSCC zSunos_StrlenSelect0[] =
4785 "int[ \t]*strlen\\(\\);(.*)";
4786
4787 #define SUNOS_STRLEN_TEST_CT 1
4788 static tTestDesc aSunos_StrlenTests[] = {
4789 { TT_EGREP, zSunos_StrlenSelect0, (regex_t*)NULL }, };
4790
4791 /*
4792 * Fix Command Arguments for Sunos_Strlen
4793 */
4794 static const char* apzSunos_StrlenPatch[] = {
4795 "format",
4796 "__SIZE_TYPE__ strlen();%1",
4797 (char*)NULL };
4798
4799 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4800 *
4801 * Description of Svr4__P fix
4802 */
4803 tSCC zSvr4__PName[] =
4804 "svr4__p";
4805
4806 /*
4807 * File name selection pattern
4808 */
4809 tSCC zSvr4__PList[] =
4810 "|math.h|floatingpoint.h|";
4811 /*
4812 * Machine/OS name selection pattern
4813 */
4814 #define apzSvr4__PMachs (const char**)NULL
4815
4816 /*
4817 * content selection pattern - do fix if pattern found
4818 */
4819 tSCC zSvr4__PSelect0[] =
4820 "^#define[ \t]+__P.*";
4821
4822 #define SVR4__P_TEST_CT 1
4823 static tTestDesc aSvr4__PTests[] = {
4824 { TT_EGREP, zSvr4__PSelect0, (regex_t*)NULL }, };
4825
4826 /*
4827 * Fix Command Arguments for Svr4__P
4828 */
4829 static const char* apzSvr4__PPatch[] = {
4830 "format",
4831 "#ifndef __P\n\
4832 %0\n\
4833 #endif",
4834 (char*)NULL };
4835
4836 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4837 *
4838 * Description of Svr4_Disable_Opt fix
4839 */
4840 tSCC zSvr4_Disable_OptName[] =
4841 "svr4_disable_opt";
4842
4843 /*
4844 * File name selection pattern
4845 */
4846 tSCC zSvr4_Disable_OptList[] =
4847 "|string.h|";
4848 /*
4849 * Machine/OS name selection pattern
4850 */
4851 #define apzSvr4_Disable_OptMachs (const char**)NULL
4852
4853 /*
4854 * content selection pattern - do fix if pattern found
4855 */
4856 tSCC zSvr4_Disable_OptSelect0[] =
4857 "#define.*__std_hdr_";
4858
4859 #define SVR4_DISABLE_OPT_TEST_CT 1
4860 static tTestDesc aSvr4_Disable_OptTests[] = {
4861 { TT_EGREP, zSvr4_Disable_OptSelect0, (regex_t*)NULL }, };
4862
4863 /*
4864 * Fix Command Arguments for Svr4_Disable_Opt
4865 */
4866 static const char* apzSvr4_Disable_OptPatch[] = { "sed",
4867 "-e", "/#define.*__std_hdr_/d",
4868 (char*)NULL };
4869
4870 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4871 *
4872 * Description of Svr4_Getcwd fix
4873 */
4874 tSCC zSvr4_GetcwdName[] =
4875 "svr4_getcwd";
4876
4877 /*
4878 * File name selection pattern
4879 */
4880 tSCC zSvr4_GetcwdList[] =
4881 "|stdlib.h|unistd.h|prototypes.h|";
4882 /*
4883 * Machine/OS name selection pattern
4884 */
4885 #define apzSvr4_GetcwdMachs (const char**)NULL
4886
4887 /*
4888 * content selection pattern - do fix if pattern found
4889 */
4890 tSCC zSvr4_GetcwdSelect0[] =
4891 "getcwd\\(char \\*, int\\)";
4892
4893 #define SVR4_GETCWD_TEST_CT 1
4894 static tTestDesc aSvr4_GetcwdTests[] = {
4895 { TT_EGREP, zSvr4_GetcwdSelect0, (regex_t*)NULL }, };
4896
4897 /*
4898 * Fix Command Arguments for Svr4_Getcwd
4899 */
4900 static const char* apzSvr4_GetcwdPatch[] = {
4901 "format",
4902 "getcwd(char *, size_t)",
4903 (char*)NULL };
4904
4905 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4906 *
4907 * Description of Svr4_Profil fix
4908 */
4909 tSCC zSvr4_ProfilName[] =
4910 "svr4_profil";
4911
4912 /*
4913 * File name selection pattern
4914 */
4915 tSCC zSvr4_ProfilList[] =
4916 "|stdlib.h|unistd.h|";
4917 /*
4918 * Machine/OS name selection pattern
4919 */
4920 #define apzSvr4_ProfilMachs (const char**)NULL
4921
4922 /*
4923 * content selection pattern - do fix if pattern found
4924 */
4925 tSCC zSvr4_ProfilSelect0[] =
4926 "profil\\(unsigned short \\*, unsigned int, unsigned int, unsigned int\\)";
4927
4928 #define SVR4_PROFIL_TEST_CT 1
4929 static tTestDesc aSvr4_ProfilTests[] = {
4930 { TT_EGREP, zSvr4_ProfilSelect0, (regex_t*)NULL }, };
4931
4932 /*
4933 * Fix Command Arguments for Svr4_Profil
4934 */
4935 static const char* apzSvr4_ProfilPatch[] = {
4936 "format",
4937 "profil(unsigned short *, size_t, int, unsigned int)",
4938 (char*)NULL };
4939
4940 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4941 *
4942 * Description of Svr4_Undeclared_Getrnge fix
4943 */
4944 tSCC zSvr4_Undeclared_GetrngeName[] =
4945 "svr4_undeclared_getrnge";
4946
4947 /*
4948 * File name selection pattern
4949 */
4950 tSCC zSvr4_Undeclared_GetrngeList[] =
4951 "|regexp.h|";
4952 /*
4953 * Machine/OS name selection pattern
4954 */
4955 #define apzSvr4_Undeclared_GetrngeMachs (const char**)NULL
4956
4957 /*
4958 * content selection pattern - do fix if pattern found
4959 */
4960 tSCC zSvr4_Undeclared_GetrngeSelect0[] =
4961 "getrnge";
4962
4963 /*
4964 * content bypass pattern - skip fix if pattern found
4965 */
4966 tSCC zSvr4_Undeclared_GetrngeBypass0[] =
4967 "static void getrnge";
4968
4969 #define SVR4_UNDECLARED_GETRNGE_TEST_CT 2
4970 static tTestDesc aSvr4_Undeclared_GetrngeTests[] = {
4971 { TT_NEGREP, zSvr4_Undeclared_GetrngeBypass0, (regex_t*)NULL },
4972 { TT_EGREP, zSvr4_Undeclared_GetrngeSelect0, (regex_t*)NULL }, };
4973
4974 /*
4975 * Fix Command Arguments for Svr4_Undeclared_Getrnge
4976 */
4977 static const char* apzSvr4_Undeclared_GetrngePatch[] = {
4978 "format",
4979 "%0\n\
4980 static int getrnge ();",
4981 "^static int[ \t]+size;",
4982 (char*)NULL };
4983
4984 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4985 *
4986 * Description of Sysv68_String fix
4987 */
4988 tSCC zSysv68_StringName[] =
4989 "sysv68_string";
4990
4991 /*
4992 * File name selection pattern
4993 */
4994 tSCC zSysv68_StringList[] =
4995 "|testing.h|string.h|";
4996 /*
4997 * Machine/OS name selection pattern
4998 */
4999 #define apzSysv68_StringMachs (const char**)NULL
5000 #define SYSV68_STRING_TEST_CT 0
5001 #define aSysv68_StringTests (tTestDesc*)NULL
5002
5003 /*
5004 * Fix Command Arguments for Sysv68_String
5005 */
5006 static const char* apzSysv68_StringPatch[] = { "sed",
5007 "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
5008 "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
5009 "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
5010 "-e", "/^extern char$/N",
5011 "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
5012 "-e", "/^extern int$/N",
5013 "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
5014 "-e", "/^\tstrncmp(),$/N",
5015 "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
5016 extern unsigned int\\\n\
5017 \\2/",
5018 (char*)NULL };
5019
5020 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5021 *
5022 * Description of Sysz_Stdlib_For_Sun fix
5023 */
5024 tSCC zSysz_Stdlib_For_SunName[] =
5025 "sysz_stdlib_for_sun";
5026
5027 /*
5028 * File name selection pattern
5029 */
5030 tSCC zSysz_Stdlib_For_SunList[] =
5031 "|stdlib.h|";
5032 /*
5033 * Machine/OS name selection pattern
5034 */
5035 #define apzSysz_Stdlib_For_SunMachs (const char**)NULL
5036
5037 /*
5038 * content selection pattern - do fix if pattern found
5039 */
5040 tSCC zSysz_Stdlib_For_SunSelect0[] =
5041 "char[ \t]*\\*[ \t]*(calloc|malloc|realloc|bsearch)[ \t]*\\(";
5042
5043 #define SYSZ_STDLIB_FOR_SUN_TEST_CT 1
5044 static tTestDesc aSysz_Stdlib_For_SunTests[] = {
5045 { TT_EGREP, zSysz_Stdlib_For_SunSelect0, (regex_t*)NULL }, };
5046
5047 /*
5048 * Fix Command Arguments for Sysz_Stdlib_For_Sun
5049 */
5050 static const char* apzSysz_Stdlib_For_SunPatch[] = {
5051 "format",
5052 "void *\t%1(",
5053 (char*)NULL };
5054
5055 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5056 *
5057 * Description of Thread_Keyword fix
5058 */
5059 tSCC zThread_KeywordName[] =
5060 "thread_keyword";
5061
5062 /*
5063 * File name selection pattern
5064 */
5065 tSCC zThread_KeywordList[] =
5066 "|pthread.h|bits/sigthread.h|";
5067 /*
5068 * Machine/OS name selection pattern
5069 */
5070 #define apzThread_KeywordMachs (const char**)NULL
5071
5072 /*
5073 * content selection pattern - do fix if pattern found
5074 */
5075 tSCC zThread_KeywordSelect0[] =
5076 "([* ])__thread([,)])";
5077
5078 #define THREAD_KEYWORD_TEST_CT 1
5079 static tTestDesc aThread_KeywordTests[] = {
5080 { TT_EGREP, zThread_KeywordSelect0, (regex_t*)NULL }, };
5081
5082 /*
5083 * Fix Command Arguments for Thread_Keyword
5084 */
5085 static const char* apzThread_KeywordPatch[] = {
5086 "format",
5087 "%1__thr%2",
5088 (char*)NULL };
5089
5090 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5091 *
5092 * Description of Tinfo_Cplusplus fix
5093 */
5094 tSCC zTinfo_CplusplusName[] =
5095 "tinfo_cplusplus";
5096
5097 /*
5098 * File name selection pattern
5099 */
5100 tSCC zTinfo_CplusplusList[] =
5101 "|tinfo.h|";
5102 /*
5103 * Machine/OS name selection pattern
5104 */
5105 #define apzTinfo_CplusplusMachs (const char**)NULL
5106
5107 /*
5108 * content selection pattern - do fix if pattern found
5109 */
5110 tSCC zTinfo_CplusplusSelect0[] =
5111 "[ \t]_cplusplus";
5112
5113 #define TINFO_CPLUSPLUS_TEST_CT 1
5114 static tTestDesc aTinfo_CplusplusTests[] = {
5115 { TT_EGREP, zTinfo_CplusplusSelect0, (regex_t*)NULL }, };
5116
5117 /*
5118 * Fix Command Arguments for Tinfo_Cplusplus
5119 */
5120 static const char* apzTinfo_CplusplusPatch[] = {
5121 "format",
5122 " __cplusplus",
5123 (char*)NULL };
5124
5125 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5126 *
5127 * Description of Ultrix_Atexit_Param fix
5128 */
5129 tSCC zUltrix_Atexit_ParamName[] =
5130 "ultrix_atexit_param";
5131
5132 /*
5133 * File name selection pattern
5134 */
5135 tSCC zUltrix_Atexit_ParamList[] =
5136 "|stdlib.h|";
5137 /*
5138 * Machine/OS name selection pattern
5139 */
5140 #define apzUltrix_Atexit_ParamMachs (const char**)NULL
5141
5142 /*
5143 * content selection pattern - do fix if pattern found
5144 */
5145 tSCC zUltrix_Atexit_ParamSelect0[] =
5146 "atexit\\(.*\\(\\)";
5147
5148 #define ULTRIX_ATEXIT_PARAM_TEST_CT 1
5149 static tTestDesc aUltrix_Atexit_ParamTests[] = {
5150 { TT_EGREP, zUltrix_Atexit_ParamSelect0, (regex_t*)NULL }, };
5151
5152 /*
5153 * Fix Command Arguments for Ultrix_Atexit_Param
5154 */
5155 static const char* apzUltrix_Atexit_ParamPatch[] = {
5156 "format",
5157 "atexit( void (*__func)( void )",
5158 (char*)NULL };
5159
5160 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5161 *
5162 * Description of Ultrix_Atof_Param fix
5163 */
5164 tSCC zUltrix_Atof_ParamName[] =
5165 "ultrix_atof_param";
5166
5167 /*
5168 * File name selection pattern
5169 */
5170 tSCC zUltrix_Atof_ParamList[] =
5171 "|math.h|";
5172 /*
5173 * Machine/OS name selection pattern
5174 */
5175 #define apzUltrix_Atof_ParamMachs (const char**)NULL
5176
5177 /*
5178 * content selection pattern - do fix if pattern found
5179 */
5180 tSCC zUltrix_Atof_ParamSelect0[] =
5181 "atof\\([ \t]*char";
5182
5183 #define ULTRIX_ATOF_PARAM_TEST_CT 1
5184 static tTestDesc aUltrix_Atof_ParamTests[] = {
5185 { TT_EGREP, zUltrix_Atof_ParamSelect0, (regex_t*)NULL }, };
5186
5187 /*
5188 * Fix Command Arguments for Ultrix_Atof_Param
5189 */
5190 static const char* apzUltrix_Atof_ParamPatch[] = {
5191 "format",
5192 "atof(const char",
5193 (char*)NULL };
5194
5195 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5196 *
5197 * Description of Ultrix_Const fix
5198 */
5199 tSCC zUltrix_ConstName[] =
5200 "ultrix_const";
5201
5202 /*
5203 * File name selection pattern
5204 */
5205 tSCC zUltrix_ConstList[] =
5206 "|stdio.h|";
5207 /*
5208 * Machine/OS name selection pattern
5209 */
5210 #define apzUltrix_ConstMachs (const char**)NULL
5211
5212 /*
5213 * content selection pattern - do fix if pattern found
5214 */
5215 tSCC zUltrix_ConstSelect0[] =
5216 "perror\\( char \\*";
5217
5218 #define ULTRIX_CONST_TEST_CT 1
5219 static tTestDesc aUltrix_ConstTests[] = {
5220 { TT_EGREP, zUltrix_ConstSelect0, (regex_t*)NULL }, };
5221
5222 /*
5223 * Fix Command Arguments for Ultrix_Const
5224 */
5225 static const char* apzUltrix_ConstPatch[] = {
5226 "format",
5227 "%1 const %3 *__",
5228 "([ \t*](perror|fputs|fwrite|scanf|fscanf)\\(.*)[ \t]+(char|void) \\*__",
5229 (char*)NULL };
5230
5231 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5232 *
5233 * Description of Ultrix_Const2 fix
5234 */
5235 tSCC zUltrix_Const2Name[] =
5236 "ultrix_const2";
5237
5238 /*
5239 * File name selection pattern
5240 */
5241 tSCC zUltrix_Const2List[] =
5242 "|stdio.h|";
5243 /*
5244 * Machine/OS name selection pattern
5245 */
5246 #define apzUltrix_Const2Machs (const char**)NULL
5247
5248 /*
5249 * content selection pattern - do fix if pattern found
5250 */
5251 tSCC zUltrix_Const2Select0[] =
5252 "\\*fopen\\( char \\*";
5253
5254 #define ULTRIX_CONST2_TEST_CT 1
5255 static tTestDesc aUltrix_Const2Tests[] = {
5256 { TT_EGREP, zUltrix_Const2Select0, (regex_t*)NULL }, };
5257
5258 /*
5259 * Fix Command Arguments for Ultrix_Const2
5260 */
5261 static const char* apzUltrix_Const2Patch[] = {
5262 "format",
5263 "%1( const char *%3, const char *",
5264 "([ \t*](fopen|sscanf|popen|tempnam))\\([ \t]*char[ \t]*\\*([^,]*),[ \t]*char[ \t]*\\*[ \t]*",
5265 (char*)NULL };
5266
5267 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5268 *
5269 * Description of Ultrix_Fix_Fixproto fix
5270 */
5271 tSCC zUltrix_Fix_FixprotoName[] =
5272 "ultrix_fix_fixproto";
5273
5274 /*
5275 * File name selection pattern
5276 */
5277 tSCC zUltrix_Fix_FixprotoList[] =
5278 "|sys/utsname.h|";
5279 /*
5280 * Machine/OS name selection pattern
5281 */
5282 #define apzUltrix_Fix_FixprotoMachs (const char**)NULL
5283
5284 /*
5285 * content selection pattern - do fix if pattern found
5286 */
5287 tSCC zUltrix_Fix_FixprotoSelect0[] =
5288 "ULTRIX";
5289
5290 #define ULTRIX_FIX_FIXPROTO_TEST_CT 1
5291 static tTestDesc aUltrix_Fix_FixprotoTests[] = {
5292 { TT_EGREP, zUltrix_Fix_FixprotoSelect0, (regex_t*)NULL }, };
5293
5294 /*
5295 * Fix Command Arguments for Ultrix_Fix_Fixproto
5296 */
5297 static const char* apzUltrix_Fix_FixprotoPatch[] = {
5298 "format",
5299 "struct utsname;\n\
5300 %0",
5301 "^[ \t]*extern[ \t]*int[ \t]*uname\\(\\);",
5302 (char*)NULL };
5303
5304 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5305 *
5306 * Description of Ultrix_Ifdef fix
5307 */
5308 tSCC zUltrix_IfdefName[] =
5309 "ultrix_ifdef";
5310
5311 /*
5312 * File name selection pattern
5313 */
5314 tSCC zUltrix_IfdefList[] =
5315 "|sys/file.h|";
5316 /*
5317 * Machine/OS name selection pattern
5318 */
5319 #define apzUltrix_IfdefMachs (const char**)NULL
5320
5321 /*
5322 * content selection pattern - do fix if pattern found
5323 */
5324 tSCC zUltrix_IfdefSelect0[] =
5325 "^#ifdef KERNEL[ \t]+&&";
5326
5327 #define ULTRIX_IFDEF_TEST_CT 1
5328 static tTestDesc aUltrix_IfdefTests[] = {
5329 { TT_EGREP, zUltrix_IfdefSelect0, (regex_t*)NULL }, };
5330
5331 /*
5332 * Fix Command Arguments for Ultrix_Ifdef
5333 */
5334 static const char* apzUltrix_IfdefPatch[] = {
5335 "format",
5336 "#if defined(KERNEL) &&",
5337 (char*)NULL };
5338
5339 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5340 *
5341 * Description of Ultrix_Math_Ifdef fix
5342 */
5343 tSCC zUltrix_Math_IfdefName[] =
5344 "ultrix_math_ifdef";
5345
5346 /*
5347 * File name selection pattern
5348 */
5349 tSCC zUltrix_Math_IfdefList[] =
5350 "|sys/limits.h|float.h|math.h|";
5351 /*
5352 * Machine/OS name selection pattern
5353 */
5354 #define apzUltrix_Math_IfdefMachs (const char**)NULL
5355
5356 /*
5357 * content selection pattern - do fix if pattern found
5358 */
5359 tSCC zUltrix_Math_IfdefSelect0[] =
5360 "^(#if.*)\\|\\|[ \t]+CC\\$[a-z]+";
5361
5362 #define ULTRIX_MATH_IFDEF_TEST_CT 1
5363 static tTestDesc aUltrix_Math_IfdefTests[] = {
5364 { TT_EGREP, zUltrix_Math_IfdefSelect0, (regex_t*)NULL }, };
5365
5366 /*
5367 * Fix Command Arguments for Ultrix_Math_Ifdef
5368 */
5369 static const char* apzUltrix_Math_IfdefPatch[] = {
5370 "format",
5371 "%1",
5372 (char*)NULL };
5373
5374 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5375 *
5376 * Description of Ultrix_Nested_Ioctl fix
5377 */
5378 tSCC zUltrix_Nested_IoctlName[] =
5379 "ultrix_nested_ioctl";
5380
5381 /*
5382 * File name selection pattern
5383 */
5384 tSCC zUltrix_Nested_IoctlList[] =
5385 "|sys/ioctl.h|";
5386 /*
5387 * Machine/OS name selection pattern
5388 */
5389 #define apzUltrix_Nested_IoctlMachs (const char**)NULL
5390
5391 /*
5392 * content selection pattern - do fix if pattern found
5393 */
5394 tSCC zUltrix_Nested_IoctlSelect0[] =
5395 "^/\\* #define SIOCSCREEN";
5396
5397 #define ULTRIX_NESTED_IOCTL_TEST_CT 1
5398 static tTestDesc aUltrix_Nested_IoctlTests[] = {
5399 { TT_EGREP, zUltrix_Nested_IoctlSelect0, (regex_t*)NULL }, };
5400
5401 /*
5402 * Fix Command Arguments for Ultrix_Nested_Ioctl
5403 */
5404 static const char* apzUltrix_Nested_IoctlPatch[] = { "sed",
5405 "-e", "/^\\/\\* #define SIOCSCREEN/s@/\\* screend@*//* screend@",
5406 (char*)NULL };
5407
5408 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5409 *
5410 * Description of Ultrix_Nested_Svc fix
5411 */
5412 tSCC zUltrix_Nested_SvcName[] =
5413 "ultrix_nested_svc";
5414
5415 /*
5416 * File name selection pattern
5417 */
5418 tSCC zUltrix_Nested_SvcList[] =
5419 "|rpc/svc.h|";
5420 /*
5421 * Machine/OS name selection pattern
5422 */
5423 #define apzUltrix_Nested_SvcMachs (const char**)NULL
5424
5425 /*
5426 * content selection pattern - do fix if pattern found
5427 */
5428 tSCC zUltrix_Nested_SvcSelect0[] =
5429 "^ \\*[ \t]*int protocol; */\\*";
5430
5431 #define ULTRIX_NESTED_SVC_TEST_CT 1
5432 static tTestDesc aUltrix_Nested_SvcTests[] = {
5433 { TT_EGREP, zUltrix_Nested_SvcSelect0, (regex_t*)NULL }, };
5434
5435 /*
5436 * Fix Command Arguments for Ultrix_Nested_Svc
5437 */
5438 static const char* apzUltrix_Nested_SvcPatch[] = { "sed",
5439 "-e", "s@^\\( \\*\tint protocol; \\)/\\*@\\1*/ /*@",
5440 (char*)NULL };
5441
5442 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5443 *
5444 * Description of Ultrix_Stat fix
5445 */
5446 tSCC zUltrix_StatName[] =
5447 "ultrix_stat";
5448
5449 /*
5450 * File name selection pattern
5451 */
5452 tSCC zUltrix_StatList[] =
5453 "|sys/stat.h|";
5454 /*
5455 * Machine/OS name selection pattern
5456 */
5457 #define apzUltrix_StatMachs (const char**)NULL
5458
5459 /*
5460 * content selection pattern - do fix if pattern found
5461 */
5462 tSCC zUltrix_StatSelect0[] =
5463 "@\\(#\\)stat\\.h.*6\\.1.*\\(ULTRIX\\)";
5464
5465 #define ULTRIX_STAT_TEST_CT 1
5466 static tTestDesc aUltrix_StatTests[] = {
5467 { TT_EGREP, zUltrix_StatSelect0, (regex_t*)NULL }, };
5468
5469 /*
5470 * Fix Command Arguments for Ultrix_Stat
5471 */
5472 static const char* apzUltrix_StatPatch[] = { "sed",
5473 "-e", "/^#define[ \t]S_IFPORT[ \t]*S_IFIFO$/a\\\n\
5474 \\\n\
5475 /* macro to test for symbolic link */\\\n\
5476 #define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK)\\\n\n",
5477 "-e", "/^[ \t]*fstat(),$/a\\\n\
5478 \tlstat(),\n",
5479 (char*)NULL };
5480
5481 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5482 *
5483 * Description of Ultrix_Static fix
5484 */
5485 tSCC zUltrix_StaticName[] =
5486 "ultrix_static";
5487
5488 /*
5489 * File name selection pattern
5490 */
5491 tSCC zUltrix_StaticList[] =
5492 "|machine/cpu.h|";
5493 /*
5494 * Machine/OS name selection pattern
5495 */
5496 #define apzUltrix_StaticMachs (const char**)NULL
5497
5498 /*
5499 * content selection pattern - do fix if pattern found
5500 */
5501 tSCC zUltrix_StaticSelect0[] =
5502 "#include \"r[34]_cpu";
5503
5504 #define ULTRIX_STATIC_TEST_CT 1
5505 static tTestDesc aUltrix_StaticTests[] = {
5506 { TT_EGREP, zUltrix_StaticSelect0, (regex_t*)NULL }, };
5507
5508 /*
5509 * Fix Command Arguments for Ultrix_Static
5510 */
5511 static const char* apzUltrix_StaticPatch[] = { "sed",
5512 "-e", "s/^static struct tlb_pid_state/struct tlb_pid_state/",
5513 "-e", "s/^#include \"r3_cpu\\.h\"$/#include <machine\\/r3_cpu\\.h>/",
5514 "-e", "s/^#include \"r4_cpu\\.h\"$/#include <machine\\/r4_cpu\\.h>/",
5515 (char*)NULL };
5516
5517 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5518 *
5519 * Description of Ultrix_Strings fix
5520 */
5521 tSCC zUltrix_StringsName[] =
5522 "ultrix_strings";
5523
5524 /*
5525 * File name selection pattern
5526 */
5527 tSCC zUltrix_StringsList[] =
5528 "|strings.h|";
5529 /*
5530 * Machine/OS name selection pattern
5531 */
5532 #define apzUltrix_StringsMachs (const char**)NULL
5533
5534 /*
5535 * content selection pattern - do fix if pattern found
5536 */
5537 tSCC zUltrix_StringsSelect0[] =
5538 "@\\(#\\)strings\\.h.*6\\.1.*\\(ULTRIX\\)";
5539
5540 #define ULTRIX_STRINGS_TEST_CT 1
5541 static tTestDesc aUltrix_StringsTests[] = {
5542 { TT_EGREP, zUltrix_StringsSelect0, (regex_t*)NULL }, };
5543
5544 /*
5545 * Fix Command Arguments for Ultrix_Strings
5546 */
5547 static const char* apzUltrix_StringsPatch[] = {
5548 "wrap",
5549 (char*)NULL };
5550
5551 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5552 *
5553 * Description of Undefine_Null fix
5554 */
5555 tSCC zUndefine_NullName[] =
5556 "undefine_null";
5557
5558 /*
5559 * File name selection pattern
5560 */
5561 #define zUndefine_NullList (char*)NULL
5562 /*
5563 * Machine/OS name selection pattern
5564 */
5565 #define apzUndefine_NullMachs (const char**)NULL
5566
5567 /*
5568 * content selection pattern - do fix if pattern found
5569 */
5570 tSCC zUndefine_NullSelect0[] =
5571 "^#[ \t]*define[ \t]+NULL[ \t]";
5572
5573 /*
5574 * content bypass pattern - skip fix if pattern found
5575 */
5576 tSCC zUndefine_NullBypass0[] =
5577 "#[ \t]*(ifn|un)def[ \t]+NULL($|[ \t\r])";
5578
5579 #define UNDEFINE_NULL_TEST_CT 2
5580 static tTestDesc aUndefine_NullTests[] = {
5581 { TT_NEGREP, zUndefine_NullBypass0, (regex_t*)NULL },
5582 { TT_EGREP, zUndefine_NullSelect0, (regex_t*)NULL }, };
5583
5584 /*
5585 * Fix Command Arguments for Undefine_Null
5586 */
5587 static const char* apzUndefine_NullPatch[] = {
5588 "format",
5589 "#ifndef NULL%2\n\
5590 #define NULL%1%2\n\
5591 #endif%2\n",
5592 "^#[ \t]*define[ \t]*[ \t]NULL([^\r\n\
5593 ]+)([\r]*)\n",
5594 (char*)NULL };
5595
5596 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5597 *
5598 * Description of Unicosmk_Restrict fix
5599 */
5600 tSCC zUnicosmk_RestrictName[] =
5601 "unicosmk_restrict";
5602
5603 /*
5604 * File name selection pattern
5605 */
5606 tSCC zUnicosmk_RestrictList[] =
5607 "|stdio.h|stdlib.h|wchar.h|";
5608 /*
5609 * Machine/OS name selection pattern
5610 */
5611 tSCC* apzUnicosmk_RestrictMachs[] = {
5612 "*-*-unicosmk*",
5613 (const char*)NULL };
5614
5615 /*
5616 * content selection pattern - do fix if pattern found
5617 */
5618 tSCC zUnicosmk_RestrictSelect0[] =
5619 "(\\*[ \t]*)restrict([ \t]+)";
5620
5621 #define UNICOSMK_RESTRICT_TEST_CT 1
5622 static tTestDesc aUnicosmk_RestrictTests[] = {
5623 { TT_EGREP, zUnicosmk_RestrictSelect0, (regex_t*)NULL }, };
5624
5625 /*
5626 * Fix Command Arguments for Unicosmk_Restrict
5627 */
5628 static const char* apzUnicosmk_RestrictPatch[] = {
5629 "format",
5630 "%1__restrict__%2",
5631 (char*)NULL };
5632
5633 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5634 *
5635 * Description of Uw7_Byteorder_Fix fix
5636 */
5637 tSCC zUw7_Byteorder_FixName[] =
5638 "uw7_byteorder_fix";
5639
5640 /*
5641 * File name selection pattern
5642 */
5643 tSCC zUw7_Byteorder_FixList[] =
5644 "|arpa/inet.h|";
5645 /*
5646 * Machine/OS name selection pattern
5647 */
5648 tSCC* apzUw7_Byteorder_FixMachs[] = {
5649 "*-*-sysv4*",
5650 "i?86-*-sysv5*",
5651 "i?86-*-udk*",
5652 "i?86-*-solaris2.[0-4]",
5653 "powerpcle-*-solaris2.[0-4]",
5654 "sparc-*-solaris2.[0-4]",
5655 (const char*)NULL };
5656
5657 /*
5658 * content selection pattern - do fix if pattern found
5659 */
5660 tSCC zUw7_Byteorder_FixSelect0[] =
5661 "in_port_t";
5662
5663 /*
5664 * perform the 'test' shell command - do fix on success
5665 */
5666 tSCC zUw7_Byteorder_FixTest0[] =
5667 "-f sys/byteorder.h";
5668
5669 #define UW7_BYTEORDER_FIX_TEST_CT 2
5670 static tTestDesc aUw7_Byteorder_FixTests[] = {
5671 { TT_TEST, zUw7_Byteorder_FixTest0, 0 /* unused */ },
5672 { TT_EGREP, zUw7_Byteorder_FixSelect0, (regex_t*)NULL }, };
5673
5674 /*
5675 * Fix Command Arguments for Uw7_Byteorder_Fix
5676 */
5677 static const char* apzUw7_Byteorder_FixPatch[] = {
5678 "format",
5679 "",
5680 "^extern.*[ \t](htons|ntohs).*\\(in_port_t\\).*;",
5681 (char*)NULL };
5682
5683 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5684 *
5685 * Description of Va_I960_Macro fix
5686 */
5687 tSCC zVa_I960_MacroName[] =
5688 "va_i960_macro";
5689
5690 /*
5691 * File name selection pattern
5692 */
5693 tSCC zVa_I960_MacroList[] =
5694 "|arch/i960/archI960.h|";
5695 /*
5696 * Machine/OS name selection pattern
5697 */
5698 #define apzVa_I960_MacroMachs (const char**)NULL
5699
5700 /*
5701 * content selection pattern - do fix if pattern found
5702 */
5703 tSCC zVa_I960_MacroSelect0[] =
5704 "__(vsiz|vali|vpad|alignof__)";
5705
5706 #define VA_I960_MACRO_TEST_CT 1
5707 static tTestDesc aVa_I960_MacroTests[] = {
5708 { TT_EGREP, zVa_I960_MacroSelect0, (regex_t*)NULL }, };
5709
5710 /*
5711 * Fix Command Arguments for Va_I960_Macro
5712 */
5713 static const char* apzVa_I960_MacroPatch[] = {
5714 "format",
5715 "__vx%1",
5716 (char*)NULL };
5717
5718 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5719 *
5720 * Description of Void_Null fix
5721 */
5722 tSCC zVoid_NullName[] =
5723 "void_null";
5724
5725 /*
5726 * File name selection pattern
5727 */
5728 tSCC zVoid_NullList[] =
5729 "|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|";
5730 /*
5731 * Machine/OS name selection pattern
5732 */
5733 #define apzVoid_NullMachs (const char**)NULL
5734
5735 /*
5736 * content selection pattern - do fix if pattern found
5737 */
5738 tSCC zVoid_NullSelect0[] =
5739 "^#[ \t]*define[ \t]+NULL[ \t]+\\(\\(void[ \t]*\\*\\)0\\)";
5740
5741 #define VOID_NULL_TEST_CT 1
5742 static tTestDesc aVoid_NullTests[] = {
5743 { TT_EGREP, zVoid_NullSelect0, (regex_t*)NULL }, };
5744
5745 /*
5746 * Fix Command Arguments for Void_Null
5747 */
5748 static const char* apzVoid_NullPatch[] = {
5749 "format",
5750 "#define NULL 0",
5751 (char*)NULL };
5752
5753 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5754 *
5755 * Description of Vxworks_Gcc_Problem fix
5756 */
5757 tSCC zVxworks_Gcc_ProblemName[] =
5758 "vxworks_gcc_problem";
5759
5760 /*
5761 * File name selection pattern
5762 */
5763 tSCC zVxworks_Gcc_ProblemList[] =
5764 "|types/vxTypesBase.h|";
5765 /*
5766 * Machine/OS name selection pattern
5767 */
5768 #define apzVxworks_Gcc_ProblemMachs (const char**)NULL
5769
5770 /*
5771 * content selection pattern - do fix if pattern found
5772 */
5773 tSCC zVxworks_Gcc_ProblemSelect0[] =
5774 "__GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__";
5775
5776 #define VXWORKS_GCC_PROBLEM_TEST_CT 1
5777 static tTestDesc aVxworks_Gcc_ProblemTests[] = {
5778 { TT_EGREP, zVxworks_Gcc_ProblemSelect0, (regex_t*)NULL }, };
5779
5780 /*
5781 * Fix Command Arguments for Vxworks_Gcc_Problem
5782 */
5783 static const char* apzVxworks_Gcc_ProblemPatch[] = { "sed",
5784 "-e", "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
5785 "-e", "/[ \t]size_t/i\\\n\
5786 #ifndef _GCC_SIZE_T\\\n\
5787 #define _GCC_SIZE_T\n",
5788 "-e", "/[ \t]size_t/a\\\n\
5789 #endif\n",
5790 "-e", "/[ \t]ptrdiff_t/i\\\n\
5791 #ifndef _GCC_PTRDIFF_T\\\n\
5792 #define _GCC_PTRDIFF_T\n",
5793 "-e", "/[ \t]ptrdiff_t/a\\\n\
5794 #endif\n",
5795 "-e", "/[ \t]wchar_t/i\\\n\
5796 #ifndef _GCC_WCHAR_T\\\n\
5797 #define _GCC_WCHAR_T\n",
5798 "-e", "/[ \t]wchar_t/a\\\n\
5799 #endif\n",
5800 (char*)NULL };
5801
5802 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5803 *
5804 * Description of Vxworks_Needs_Vxtypes fix
5805 */
5806 tSCC zVxworks_Needs_VxtypesName[] =
5807 "vxworks_needs_vxtypes";
5808
5809 /*
5810 * File name selection pattern
5811 */
5812 tSCC zVxworks_Needs_VxtypesList[] =
5813 "|time.h|";
5814 /*
5815 * Machine/OS name selection pattern
5816 */
5817 #define apzVxworks_Needs_VxtypesMachs (const char**)NULL
5818
5819 /*
5820 * content selection pattern - do fix if pattern found
5821 */
5822 tSCC zVxworks_Needs_VxtypesSelect0[] =
5823 "uint_t([ \t]+_clocks_per_sec)";
5824
5825 #define VXWORKS_NEEDS_VXTYPES_TEST_CT 1
5826 static tTestDesc aVxworks_Needs_VxtypesTests[] = {
5827 { TT_EGREP, zVxworks_Needs_VxtypesSelect0, (regex_t*)NULL }, };
5828
5829 /*
5830 * Fix Command Arguments for Vxworks_Needs_Vxtypes
5831 */
5832 static const char* apzVxworks_Needs_VxtypesPatch[] = {
5833 "format",
5834 "unsigned int%1",
5835 (char*)NULL };
5836
5837 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5838 *
5839 * Description of Vxworks_Needs_Vxworks fix
5840 */
5841 tSCC zVxworks_Needs_VxworksName[] =
5842 "vxworks_needs_vxworks";
5843
5844 /*
5845 * File name selection pattern
5846 */
5847 tSCC zVxworks_Needs_VxworksList[] =
5848 "|sys/stat.h|";
5849 /*
5850 * Machine/OS name selection pattern
5851 */
5852 #define apzVxworks_Needs_VxworksMachs (const char**)NULL
5853
5854 /*
5855 * content selection pattern - do fix if pattern found
5856 */
5857 tSCC zVxworks_Needs_VxworksSelect0[] =
5858 "#[ \t]define[ \t]+__INCstath";
5859
5860 /*
5861 * perform the 'test' shell command - do fix on success
5862 */
5863 tSCC zVxworks_Needs_VxworksTest0[] =
5864 " -r types/vxTypesOld.h";
5865 tSCC zVxworks_Needs_VxworksTest1[] =
5866 " -n \"`egrep '#include' $file`\"";
5867 tSCC zVxworks_Needs_VxworksTest2[] =
5868 " -n \"`egrep ULONG $file`\"";
5869
5870 #define VXWORKS_NEEDS_VXWORKS_TEST_CT 4
5871 static tTestDesc aVxworks_Needs_VxworksTests[] = {
5872 { TT_TEST, zVxworks_Needs_VxworksTest0, 0 /* unused */ },
5873 { TT_TEST, zVxworks_Needs_VxworksTest1, 0 /* unused */ },
5874 { TT_TEST, zVxworks_Needs_VxworksTest2, 0 /* unused */ },
5875 { TT_EGREP, zVxworks_Needs_VxworksSelect0, (regex_t*)NULL }, };
5876
5877 /*
5878 * Fix Command Arguments for Vxworks_Needs_Vxworks
5879 */
5880 static const char* apzVxworks_Needs_VxworksPatch[] = { "sed",
5881 "-e", "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n\
5882 #include <types/vxTypesOld.h>\n",
5883 (char*)NULL };
5884
5885 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5886 *
5887 * Description of Vxworks_Time fix
5888 */
5889 tSCC zVxworks_TimeName[] =
5890 "vxworks_time";
5891
5892 /*
5893 * File name selection pattern
5894 */
5895 tSCC zVxworks_TimeList[] =
5896 "|time.h|";
5897 /*
5898 * Machine/OS name selection pattern
5899 */
5900 #define apzVxworks_TimeMachs (const char**)NULL
5901
5902 /*
5903 * content selection pattern - do fix if pattern found
5904 */
5905 tSCC zVxworks_TimeSelect0[] =
5906 "#[ \t]*define[ \t]+VOIDFUNCPTR[ \t].*";
5907
5908 /*
5909 * perform the 'test' shell command - do fix on success
5910 */
5911 tSCC zVxworks_TimeTest0[] =
5912 " -r vxWorks.h";
5913
5914 #define VXWORKS_TIME_TEST_CT 2
5915 static tTestDesc aVxworks_TimeTests[] = {
5916 { TT_TEST, zVxworks_TimeTest0, 0 /* unused */ },
5917 { TT_EGREP, zVxworks_TimeSelect0, (regex_t*)NULL }, };
5918
5919 /*
5920 * Fix Command Arguments for Vxworks_Time
5921 */
5922 static const char* apzVxworks_TimePatch[] = {
5923 "format",
5924 "#ifndef __gcc_VOIDFUNCPTR_defined\n\
5925 #ifdef __cplusplus\n\
5926 typedef void (*__gcc_VOIDFUNCPTR) (...);\n\
5927 #else\n\
5928 typedef void (*__gcc_VOIDFUNCPTR) ();\n\
5929 #endif\n\
5930 #define __gcc_VOIDFUNCPTR_defined\n\
5931 #endif\n\
5932 #define VOIDFUNCPTR __gcc_VOIDFUNCPTR",
5933 (char*)NULL };
5934
5935 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5936 *
5937 * Description of Windiss_Math1 fix
5938 */
5939 tSCC zWindiss_Math1Name[] =
5940 "windiss_math1";
5941
5942 /*
5943 * File name selection pattern
5944 */
5945 tSCC zWindiss_Math1List[] =
5946 "|math.h|";
5947 /*
5948 * Machine/OS name selection pattern
5949 */
5950 tSCC* apzWindiss_Math1Machs[] = {
5951 "*-*-windiss",
5952 (const char*)NULL };
5953 #define WINDISS_MATH1_TEST_CT 0
5954 #define aWindiss_Math1Tests (tTestDesc*)NULL
5955
5956 /*
5957 * Fix Command Arguments for Windiss_Math1
5958 */
5959 static const char* apzWindiss_Math1Patch[] = { "sed",
5960 "-e", "s|inline long double cosl.*|#ifndef __GNUC__|",
5961 (char*)NULL };
5962
5963 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5964 *
5965 * Description of Windiss_Math2 fix
5966 */
5967 tSCC zWindiss_Math2Name[] =
5968 "windiss_math2";
5969
5970 /*
5971 * File name selection pattern
5972 */
5973 tSCC zWindiss_Math2List[] =
5974 "|math.h|";
5975 /*
5976 * Machine/OS name selection pattern
5977 */
5978 tSCC* apzWindiss_Math2Machs[] = {
5979 "*-*-windiss",
5980 (const char*)NULL };
5981 #define WINDISS_MATH2_TEST_CT 0
5982 #define aWindiss_Math2Tests (tTestDesc*)NULL
5983
5984 /*
5985 * Fix Command Arguments for Windiss_Math2
5986 */
5987 static const char* apzWindiss_Math2Patch[] = { "sed",
5988 "-e", "s|/\\* long double declarations \\*/|#endif /* __GNUC__ */|",
5989 (char*)NULL };
5990
5991 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5992 *
5993 * Description of Windiss_Valist fix
5994 */
5995 tSCC zWindiss_ValistName[] =
5996 "windiss_valist";
5997
5998 /*
5999 * File name selection pattern
6000 */
6001 #define zWindiss_ValistList (char*)NULL
6002 /*
6003 * Machine/OS name selection pattern
6004 */
6005 tSCC* apzWindiss_ValistMachs[] = {
6006 "*-*-windiss",
6007 (const char*)NULL };
6008
6009 /*
6010 * content selection pattern - do fix if pattern found
6011 */
6012 tSCC zWindiss_ValistSelect0[] =
6013 "(#include.*)diab/va_list.h";
6014
6015 #define WINDISS_VALIST_TEST_CT 1
6016 static tTestDesc aWindiss_ValistTests[] = {
6017 { TT_EGREP, zWindiss_ValistSelect0, (regex_t*)NULL }, };
6018
6019 /*
6020 * Fix Command Arguments for Windiss_Valist
6021 */
6022 static const char* apzWindiss_ValistPatch[] = { "sed",
6023 "-e", "s|diab/va_list.h|stdarg.h|",
6024 (char*)NULL };
6025
6026 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6027 *
6028 * Description of X11_Class fix
6029 */
6030 tSCC zX11_ClassName[] =
6031 "x11_class";
6032
6033 /*
6034 * File name selection pattern
6035 */
6036 tSCC zX11_ClassList[] =
6037 "|X11/ShellP.h|";
6038 /*
6039 * Machine/OS name selection pattern
6040 */
6041 #define apzX11_ClassMachs (const char**)NULL
6042
6043 /*
6044 * content selection pattern - do fix if pattern found
6045 */
6046 tSCC zX11_ClassSelect0[] =
6047 "^([ \t]*char \\*)class;(.*)";
6048
6049 /*
6050 * content bypass pattern - skip fix if pattern found
6051 */
6052 tSCC zX11_ClassBypass0[] =
6053 "__cplusplus";
6054
6055 #define X11_CLASS_TEST_CT 2
6056 static tTestDesc aX11_ClassTests[] = {
6057 { TT_NEGREP, zX11_ClassBypass0, (regex_t*)NULL },
6058 { TT_EGREP, zX11_ClassSelect0, (regex_t*)NULL }, };
6059
6060 /*
6061 * Fix Command Arguments for X11_Class
6062 */
6063 static const char* apzX11_ClassPatch[] = {
6064 "format",
6065 "#ifdef __cplusplus\n\
6066 %1c_class;%2\n\
6067 #else\n\
6068 %1class;%2\n\
6069 #endif",
6070 (char*)NULL };
6071
6072 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6073 *
6074 * Description of X11_Class_Usage fix
6075 */
6076 tSCC zX11_Class_UsageName[] =
6077 "x11_class_usage";
6078
6079 /*
6080 * File name selection pattern
6081 */
6082 tSCC zX11_Class_UsageList[] =
6083 "|Xm/BaseClassI.h|";
6084 /*
6085 * Machine/OS name selection pattern
6086 */
6087 #define apzX11_Class_UsageMachs (const char**)NULL
6088
6089 /*
6090 * content selection pattern - do fix if pattern found
6091 */
6092 tSCC zX11_Class_UsageSelect0[] =
6093 " class\\)";
6094
6095 /*
6096 * content bypass pattern - skip fix if pattern found
6097 */
6098 tSCC zX11_Class_UsageBypass0[] =
6099 "__cplusplus";
6100
6101 #define X11_CLASS_USAGE_TEST_CT 2
6102 static tTestDesc aX11_Class_UsageTests[] = {
6103 { TT_NEGREP, zX11_Class_UsageBypass0, (regex_t*)NULL },
6104 { TT_EGREP, zX11_Class_UsageSelect0, (regex_t*)NULL }, };
6105
6106 /*
6107 * Fix Command Arguments for X11_Class_Usage
6108 */
6109 static const char* apzX11_Class_UsagePatch[] = {
6110 "format",
6111 " c_class)",
6112 (char*)NULL };
6113
6114 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6115 *
6116 * Description of X11_New fix
6117 */
6118 tSCC zX11_NewName[] =
6119 "x11_new";
6120
6121 /*
6122 * File name selection pattern
6123 */
6124 tSCC zX11_NewList[] =
6125 "|Xm/Traversal.h|";
6126 /*
6127 * Machine/OS name selection pattern
6128 */
6129 #define apzX11_NewMachs (const char**)NULL
6130
6131 /*
6132 * content bypass pattern - skip fix if pattern found
6133 */
6134 tSCC zX11_NewBypass0[] =
6135 "__cplusplus";
6136
6137 #define X11_NEW_TEST_CT 1
6138 static tTestDesc aX11_NewTests[] = {
6139 { TT_NEGREP, zX11_NewBypass0, (regex_t*)NULL }, };
6140
6141 /*
6142 * Fix Command Arguments for X11_New
6143 */
6144 static const char* apzX11_NewPatch[] = { "sed",
6145 "-e", "/Widget\told, new;/i\\\n\
6146 #ifdef __cplusplus\\\n\
6147 \tWidget\told, c_new;\\\n\
6148 #else\n",
6149 "-e", "/Widget\told, new;/a\\\n\
6150 #endif\n",
6151 "-e", "s/Widget new,/Widget c_new,/g",
6152 (char*)NULL };
6153
6154 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6155 *
6156 * Description of X11_Sprintf fix
6157 */
6158 tSCC zX11_SprintfName[] =
6159 "x11_sprintf";
6160
6161 /*
6162 * File name selection pattern
6163 */
6164 tSCC zX11_SprintfList[] =
6165 "|X11/Xmu.h|X11/Xmu/Xmu.h|";
6166 /*
6167 * Machine/OS name selection pattern
6168 */
6169 #define apzX11_SprintfMachs (const char**)NULL
6170
6171 /*
6172 * content selection pattern - do fix if pattern found
6173 */
6174 tSCC zX11_SprintfSelect0[] =
6175 "^extern char \\*\tsprintf\\(\\);$";
6176
6177 #define X11_SPRINTF_TEST_CT 1
6178 static tTestDesc aX11_SprintfTests[] = {
6179 { TT_EGREP, zX11_SprintfSelect0, (regex_t*)NULL }, };
6180
6181 /*
6182 * Fix Command Arguments for X11_Sprintf
6183 */
6184 static const char* apzX11_SprintfPatch[] = {
6185 "format",
6186 "#ifndef __STDC__\n\
6187 %0\n\
6188 #endif /* !defined __STDC__ */",
6189 (char*)NULL };
6190
6191
6192 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6193 *
6194 * List of all fixes
6195 */
6196 #define REGEX_COUNT 176
6197 #define MACH_LIST_SIZE_LIMIT 261
6198 #define FIX_COUNT 156
6199
6200 /*
6201 * Enumerate the fixes
6202 */
6203 typedef enum {
6204 AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
6205 AAB_FD_ZERO_GNU_TYPES_H_FIXIDX,
6206 AAB_FD_ZERO_SELECTBITS_H_FIXIDX,
6207 AAB_SOLARIS_SYS_VARARGS_H_FIXIDX,
6208 AAB_SUN_MEMCPY_FIXIDX,
6209 AAB_ULTRIX_ANSI_COMPAT_FIXIDX,
6210 AAB_ULTRIX_LIMITS_FIXIDX,
6211 AAB_ULTRIX_MEMORY_FIXIDX,
6212 AAB_ULTRIX_STRING_FIXIDX,
6213 AIX_PTHREAD_FIXIDX,
6214 AIX_SYSMACHINE_FIXIDX,
6215 AIX_SYSWAIT_FIXIDX,
6216 AIX_VOLATILE_FIXIDX,
6217 ALPHA___ASSERT_FIXIDX,
6218 ALPHA___EXTERN_PREFIX_FIXIDX,
6219 ALPHA_ASSERT_FIXIDX,
6220 ALPHA_GETOPT_FIXIDX,
6221 ALPHA_PARENS_FIXIDX,
6222 ALPHA_PTHREAD_FIXIDX,
6223 ALPHA_SBRK_FIXIDX,
6224 AVOID_BOOL_DEFINE_FIXIDX,
6225 AVOID_BOOL_TYPE_FIXIDX,
6226 AVOID_WCHAR_T_TYPE_FIXIDX,
6227 BAD_LVAL_FIXIDX,
6228 BAD_STRUCT_TERM_FIXIDX,
6229 BADQUOTE_FIXIDX,
6230 BROKEN_ASSERT_STDIO_FIXIDX,
6231 BROKEN_ASSERT_STDLIB_FIXIDX,
6232 BROKEN_CABS_FIXIDX,
6233 BSD_STDIO_ATTRS_CONFLICT_FIXIDX,
6234 CTRL_QUOTES_DEF_FIXIDX,
6235 CTRL_QUOTES_USE_FIXIDX,
6236 CXX_UNREADY_FIXIDX,
6237 DEC_INTERN_ASM_FIXIDX,
6238 DJGPP_WCHAR_H_FIXIDX,
6239 ECD_CURSOR_FIXIDX,
6240 FREEBSD_GCC3_BREAKAGE_FIXIDX,
6241 GNU_TYPES_FIXIDX,
6242 HP_INLINE_FIXIDX,
6243 HP_SYSFILE_FIXIDX,
6244 HPUX10_CPP_POW_INLINE_FIXIDX,
6245 HPUX11_CPP_POW_INLINE_FIXIDX,
6246 HPUX10_CTYPE_DECLARATIONS1_FIXIDX,
6247 HPUX10_CTYPE_DECLARATIONS2_FIXIDX,
6248 HPUX11_ABS_FIXIDX,
6249 HPUX11_FABSF_FIXIDX,
6250 HPUX11_SIZE_T_FIXIDX,
6251 HPUX11_UINT32_C_FIXIDX,
6252 HPUX11_VSNPRINTF_FIXIDX,
6253 HPUX8_BOGUS_INLINES_FIXIDX,
6254 HPUX_CTYPE_MACROS_FIXIDX,
6255 HPUX_LONG_DOUBLE_FIXIDX,
6256 HPUX_MAXINT_FIXIDX,
6257 HPUX_SYSTIME_FIXIDX,
6258 INT_ABORT_FREE_AND_EXIT_FIXIDX,
6259 IO_QUOTES_DEF_FIXIDX,
6260 IO_QUOTES_USE_FIXIDX,
6261 IP_MISSING_SEMI_FIXIDX,
6262 IRIX___RESTRICT_FIXIDX,
6263 IRIX_ASM_APOSTROPHE_FIXIDX,
6264 IRIX_LIMITS_CONST_FIXIDX,
6265 IRIX_SOCKLEN_T_FIXIDX,
6266 IRIX_STDIO_VA_LIST_FIXIDX,
6267 IRIX_WCSFTIME_FIXIDX,
6268 ISC_FMOD_FIXIDX,
6269 ISC_OMITS_WITH_STDC_FIXIDX,
6270 KANDR_CONCAT_FIXIDX,
6271 LIBC1_G_VA_LIST_FIXIDX,
6272 LIBC1_IFDEFD_MEMX_FIXIDX,
6273 LIMITS_IFNDEFS_FIXIDX,
6274 LYNX_VOID_INT_FIXIDX,
6275 LYNXOS_FCNTL_PROTO_FIXIDX,
6276 MACHINE_ANSI_H_VA_LIST_FIXIDX,
6277 MACHINE_NAME_FIXIDX,
6278 MATH_EXCEPTION_FIXIDX,
6279 MATH_HUGE_VAL_FROM_DBL_MAX_FIXIDX,
6280 MATH_HUGE_VAL_IFNDEF_FIXIDX,
6281 NESTED_AUTH_DES_FIXIDX,
6282 NESTED_MOTOROLA_FIXIDX,
6283 NESTED_SYS_LIMITS_FIXIDX,
6284 NETBSD_EXTRA_SEMICOLON_FIXIDX,
6285 NEXT_MATH_PREFIX_FIXIDX,
6286 NEXT_TEMPLATE_FIXIDX,
6287 NEXT_VOLITILE_FIXIDX,
6288 NEXT_WAIT_UNION_FIXIDX,
6289 NODEENT_SYNTAX_FIXIDX,
6290 OSF_NAMESPACE_A_FIXIDX,
6291 OSF_NAMESPACE_C_FIXIDX,
6292 PTHREAD_PAGE_SIZE_FIXIDX,
6293 READ_RET_TYPE_FIXIDX,
6294 RS6000_DOUBLE_FIXIDX,
6295 RS6000_FCHMOD_FIXIDX,
6296 RS6000_PARAM_FIXIDX,
6297 SCO_MATH_FIXIDX,
6298 SCO_REGSET_FIXIDX,
6299 SCO_STATIC_FUNC_FIXIDX,
6300 SCO_UTIME_FIXIDX,
6301 SOLARIS_MUTEX_INIT_1_FIXIDX,
6302 SOLARIS_MUTEX_INIT_2_FIXIDX,
6303 SOLARIS_SOCKET_FIXIDX,
6304 SOLARIS_STDIO_TAG_FIXIDX,
6305 SOLARIS_UNISTD_FIXIDX,
6306 SOLARIS_WIDEC_FIXIDX,
6307 STATSSWTCH_FIXIDX,
6308 STDIO_STDARG_H_FIXIDX,
6309 STDIO_VA_LIST_FIXIDX,
6310 STRICT_ANSI_NOT_FIXIDX,
6311 STRICT_ANSI_NOT_CTD_FIXIDX,
6312 STRICT_ANSI_ONLY_FIXIDX,
6313 STRUCT_FILE_FIXIDX,
6314 STRUCT_SOCKADDR_FIXIDX,
6315 SUN_AUTH_PROTO_FIXIDX,
6316 SUN_BOGUS_IFDEF_FIXIDX,
6317 SUN_CATMACRO_FIXIDX,
6318 SUN_MALLOC_FIXIDX,
6319 SUN_RUSERS_SEMI_FIXIDX,
6320 SUN_SIGNAL_FIXIDX,
6321 SUNOS_MATHERR_DECL_FIXIDX,
6322 SUNOS_STRLEN_FIXIDX,
6323 SVR4__P_FIXIDX,
6324 SVR4_DISABLE_OPT_FIXIDX,
6325 SVR4_GETCWD_FIXIDX,
6326 SVR4_PROFIL_FIXIDX,
6327 SVR4_UNDECLARED_GETRNGE_FIXIDX,
6328 SYSV68_STRING_FIXIDX,
6329 SYSZ_STDLIB_FOR_SUN_FIXIDX,
6330 THREAD_KEYWORD_FIXIDX,
6331 TINFO_CPLUSPLUS_FIXIDX,
6332 ULTRIX_ATEXIT_PARAM_FIXIDX,
6333 ULTRIX_ATOF_PARAM_FIXIDX,
6334 ULTRIX_CONST_FIXIDX,
6335 ULTRIX_CONST2_FIXIDX,
6336 ULTRIX_FIX_FIXPROTO_FIXIDX,
6337 ULTRIX_IFDEF_FIXIDX,
6338 ULTRIX_MATH_IFDEF_FIXIDX,
6339 ULTRIX_NESTED_IOCTL_FIXIDX,
6340 ULTRIX_NESTED_SVC_FIXIDX,
6341 ULTRIX_STAT_FIXIDX,
6342 ULTRIX_STATIC_FIXIDX,
6343 ULTRIX_STRINGS_FIXIDX,
6344 UNDEFINE_NULL_FIXIDX,
6345 UNICOSMK_RESTRICT_FIXIDX,
6346 UW7_BYTEORDER_FIX_FIXIDX,
6347 VA_I960_MACRO_FIXIDX,
6348 VOID_NULL_FIXIDX,
6349 VXWORKS_GCC_PROBLEM_FIXIDX,
6350 VXWORKS_NEEDS_VXTYPES_FIXIDX,
6351 VXWORKS_NEEDS_VXWORKS_FIXIDX,
6352 VXWORKS_TIME_FIXIDX,
6353 WINDISS_MATH1_FIXIDX,
6354 WINDISS_MATH2_FIXIDX,
6355 WINDISS_VALIST_FIXIDX,
6356 X11_CLASS_FIXIDX,
6357 X11_CLASS_USAGE_FIXIDX,
6358 X11_NEW_FIXIDX,
6359 X11_SPRINTF_FIXIDX
6360 } t_fixinc_idx;
6361
6362 tFixDesc fixDescList[ FIX_COUNT ] = {
6363 { zAab_Fd_Zero_Asm_Posix_Types_HName, zAab_Fd_Zero_Asm_Posix_Types_HList,
6364 apzAab_Fd_Zero_Asm_Posix_Types_HMachs,
6365 AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6366 aAab_Fd_Zero_Asm_Posix_Types_HTests, apzAab_Fd_Zero_Asm_Posix_Types_HPatch, 0 },
6367
6368 { zAab_Fd_Zero_Gnu_Types_HName, zAab_Fd_Zero_Gnu_Types_HList,
6369 apzAab_Fd_Zero_Gnu_Types_HMachs,
6370 AAB_FD_ZERO_GNU_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6371 aAab_Fd_Zero_Gnu_Types_HTests, apzAab_Fd_Zero_Gnu_Types_HPatch, 0 },
6372
6373 { zAab_Fd_Zero_Selectbits_HName, zAab_Fd_Zero_Selectbits_HList,
6374 apzAab_Fd_Zero_Selectbits_HMachs,
6375 AAB_FD_ZERO_SELECTBITS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6376 aAab_Fd_Zero_Selectbits_HTests, apzAab_Fd_Zero_Selectbits_HPatch, 0 },
6377
6378 { zAab_Solaris_Sys_Varargs_HName, zAab_Solaris_Sys_Varargs_HList,
6379 apzAab_Solaris_Sys_Varargs_HMachs,
6380 AAB_SOLARIS_SYS_VARARGS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6381 aAab_Solaris_Sys_Varargs_HTests, apzAab_Solaris_Sys_Varargs_HPatch, 0 },
6382
6383 { zAab_Sun_MemcpyName, zAab_Sun_MemcpyList,
6384 apzAab_Sun_MemcpyMachs,
6385 AAB_SUN_MEMCPY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6386 aAab_Sun_MemcpyTests, apzAab_Sun_MemcpyPatch, 0 },
6387
6388 { zAab_Ultrix_Ansi_CompatName, zAab_Ultrix_Ansi_CompatList,
6389 apzAab_Ultrix_Ansi_CompatMachs,
6390 AAB_ULTRIX_ANSI_COMPAT_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6391 aAab_Ultrix_Ansi_CompatTests, apzAab_Ultrix_Ansi_CompatPatch, 0 },
6392
6393 { zAab_Ultrix_LimitsName, zAab_Ultrix_LimitsList,
6394 apzAab_Ultrix_LimitsMachs,
6395 AAB_ULTRIX_LIMITS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6396 aAab_Ultrix_LimitsTests, apzAab_Ultrix_LimitsPatch, 0 },
6397
6398 { zAab_Ultrix_MemoryName, zAab_Ultrix_MemoryList,
6399 apzAab_Ultrix_MemoryMachs,
6400 AAB_ULTRIX_MEMORY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6401 aAab_Ultrix_MemoryTests, apzAab_Ultrix_MemoryPatch, 0 },
6402
6403 { zAab_Ultrix_StringName, zAab_Ultrix_StringList,
6404 apzAab_Ultrix_StringMachs,
6405 AAB_ULTRIX_STRING_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6406 aAab_Ultrix_StringTests, apzAab_Ultrix_StringPatch, 0 },
6407
6408 { zAix_PthreadName, zAix_PthreadList,
6409 apzAix_PthreadMachs,
6410 AIX_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6411 aAix_PthreadTests, apzAix_PthreadPatch, 0 },
6412
6413 { zAix_SysmachineName, zAix_SysmachineList,
6414 apzAix_SysmachineMachs,
6415 AIX_SYSMACHINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6416 aAix_SysmachineTests, apzAix_SysmachinePatch, 0 },
6417
6418 { zAix_SyswaitName, zAix_SyswaitList,
6419 apzAix_SyswaitMachs,
6420 AIX_SYSWAIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6421 aAix_SyswaitTests, apzAix_SyswaitPatch, 0 },
6422
6423 { zAix_VolatileName, zAix_VolatileList,
6424 apzAix_VolatileMachs,
6425 AIX_VOLATILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6426 aAix_VolatileTests, apzAix_VolatilePatch, 0 },
6427
6428 { zAlpha___AssertName, zAlpha___AssertList,
6429 apzAlpha___AssertMachs,
6430 ALPHA___ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6431 aAlpha___AssertTests, apzAlpha___AssertPatch, 0 },
6432
6433 { zAlpha___Extern_PrefixName, zAlpha___Extern_PrefixList,
6434 apzAlpha___Extern_PrefixMachs,
6435 ALPHA___EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6436 aAlpha___Extern_PrefixTests, apzAlpha___Extern_PrefixPatch, 0 },
6437
6438 { zAlpha_AssertName, zAlpha_AssertList,
6439 apzAlpha_AssertMachs,
6440 ALPHA_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6441 aAlpha_AssertTests, apzAlpha_AssertPatch, 0 },
6442
6443 { zAlpha_GetoptName, zAlpha_GetoptList,
6444 apzAlpha_GetoptMachs,
6445 ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6446 aAlpha_GetoptTests, apzAlpha_GetoptPatch, 0 },
6447
6448 { zAlpha_ParensName, zAlpha_ParensList,
6449 apzAlpha_ParensMachs,
6450 ALPHA_PARENS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6451 aAlpha_ParensTests, apzAlpha_ParensPatch, 0 },
6452
6453 { zAlpha_PthreadName, zAlpha_PthreadList,
6454 apzAlpha_PthreadMachs,
6455 ALPHA_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6456 aAlpha_PthreadTests, apzAlpha_PthreadPatch, 0 },
6457
6458 { zAlpha_SbrkName, zAlpha_SbrkList,
6459 apzAlpha_SbrkMachs,
6460 ALPHA_SBRK_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6461 aAlpha_SbrkTests, apzAlpha_SbrkPatch, 0 },
6462
6463 { zAvoid_Bool_DefineName, zAvoid_Bool_DefineList,
6464 apzAvoid_Bool_DefineMachs,
6465 AVOID_BOOL_DEFINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6466 aAvoid_Bool_DefineTests, apzAvoid_Bool_DefinePatch, 0 },
6467
6468 { zAvoid_Bool_TypeName, zAvoid_Bool_TypeList,
6469 apzAvoid_Bool_TypeMachs,
6470 AVOID_BOOL_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6471 aAvoid_Bool_TypeTests, apzAvoid_Bool_TypePatch, 0 },
6472
6473 { zAvoid_Wchar_T_TypeName, zAvoid_Wchar_T_TypeList,
6474 apzAvoid_Wchar_T_TypeMachs,
6475 AVOID_WCHAR_T_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6476 aAvoid_Wchar_T_TypeTests, apzAvoid_Wchar_T_TypePatch, 0 },
6477
6478 { zBad_LvalName, zBad_LvalList,
6479 apzBad_LvalMachs,
6480 BAD_LVAL_TEST_CT, FD_MACH_ONLY,
6481 aBad_LvalTests, apzBad_LvalPatch, 0 },
6482
6483 { zBad_Struct_TermName, zBad_Struct_TermList,
6484 apzBad_Struct_TermMachs,
6485 BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6486 aBad_Struct_TermTests, apzBad_Struct_TermPatch, 0 },
6487
6488 { zBadquoteName, zBadquoteList,
6489 apzBadquoteMachs,
6490 BADQUOTE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6491 aBadquoteTests, apzBadquotePatch, 0 },
6492
6493 { zBroken_Assert_StdioName, zBroken_Assert_StdioList,
6494 apzBroken_Assert_StdioMachs,
6495 BROKEN_ASSERT_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6496 aBroken_Assert_StdioTests, apzBroken_Assert_StdioPatch, 0 },
6497
6498 { zBroken_Assert_StdlibName, zBroken_Assert_StdlibList,
6499 apzBroken_Assert_StdlibMachs,
6500 BROKEN_ASSERT_STDLIB_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6501 aBroken_Assert_StdlibTests, apzBroken_Assert_StdlibPatch, 0 },
6502
6503 { zBroken_CabsName, zBroken_CabsList,
6504 apzBroken_CabsMachs,
6505 BROKEN_CABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6506 aBroken_CabsTests, apzBroken_CabsPatch, 0 },
6507
6508 { zBsd_Stdio_Attrs_ConflictName, zBsd_Stdio_Attrs_ConflictList,
6509 apzBsd_Stdio_Attrs_ConflictMachs,
6510 BSD_STDIO_ATTRS_CONFLICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6511 aBsd_Stdio_Attrs_ConflictTests, apzBsd_Stdio_Attrs_ConflictPatch, 0 },
6512
6513 { zCtrl_Quotes_DefName, zCtrl_Quotes_DefList,
6514 apzCtrl_Quotes_DefMachs,
6515 CTRL_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6516 aCtrl_Quotes_DefTests, apzCtrl_Quotes_DefPatch, 0 },
6517
6518 { zCtrl_Quotes_UseName, zCtrl_Quotes_UseList,
6519 apzCtrl_Quotes_UseMachs,
6520 CTRL_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6521 aCtrl_Quotes_UseTests, apzCtrl_Quotes_UsePatch, 0 },
6522
6523 { zCxx_UnreadyName, zCxx_UnreadyList,
6524 apzCxx_UnreadyMachs,
6525 CXX_UNREADY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6526 aCxx_UnreadyTests, apzCxx_UnreadyPatch, 0 },
6527
6528 { zDec_Intern_AsmName, zDec_Intern_AsmList,
6529 apzDec_Intern_AsmMachs,
6530 DEC_INTERN_ASM_TEST_CT, FD_MACH_ONLY,
6531 aDec_Intern_AsmTests, apzDec_Intern_AsmPatch, 0 },
6532
6533 { zDjgpp_Wchar_HName, zDjgpp_Wchar_HList,
6534 apzDjgpp_Wchar_HMachs,
6535 DJGPP_WCHAR_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6536 aDjgpp_Wchar_HTests, apzDjgpp_Wchar_HPatch, 0 },
6537
6538 { zEcd_CursorName, zEcd_CursorList,
6539 apzEcd_CursorMachs,
6540 ECD_CURSOR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6541 aEcd_CursorTests, apzEcd_CursorPatch, 0 },
6542
6543 { zFreebsd_Gcc3_BreakageName, zFreebsd_Gcc3_BreakageList,
6544 apzFreebsd_Gcc3_BreakageMachs,
6545 FREEBSD_GCC3_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6546 aFreebsd_Gcc3_BreakageTests, apzFreebsd_Gcc3_BreakagePatch, 0 },
6547
6548 { zGnu_TypesName, zGnu_TypesList,
6549 apzGnu_TypesMachs,
6550 GNU_TYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6551 aGnu_TypesTests, apzGnu_TypesPatch, 0 },
6552
6553 { zHp_InlineName, zHp_InlineList,
6554 apzHp_InlineMachs,
6555 HP_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6556 aHp_InlineTests, apzHp_InlinePatch, 0 },
6557
6558 { zHp_SysfileName, zHp_SysfileList,
6559 apzHp_SysfileMachs,
6560 HP_SYSFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6561 aHp_SysfileTests, apzHp_SysfilePatch, 0 },
6562
6563 { zHpux10_Cpp_Pow_InlineName, zHpux10_Cpp_Pow_InlineList,
6564 apzHpux10_Cpp_Pow_InlineMachs,
6565 HPUX10_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6566 aHpux10_Cpp_Pow_InlineTests, apzHpux10_Cpp_Pow_InlinePatch, 0 },
6567
6568 { zHpux11_Cpp_Pow_InlineName, zHpux11_Cpp_Pow_InlineList,
6569 apzHpux11_Cpp_Pow_InlineMachs,
6570 HPUX11_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6571 aHpux11_Cpp_Pow_InlineTests, apzHpux11_Cpp_Pow_InlinePatch, 0 },
6572
6573 { zHpux10_Ctype_Declarations1Name, zHpux10_Ctype_Declarations1List,
6574 apzHpux10_Ctype_Declarations1Machs,
6575 HPUX10_CTYPE_DECLARATIONS1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6576 aHpux10_Ctype_Declarations1Tests, apzHpux10_Ctype_Declarations1Patch, 0 },
6577
6578 { zHpux10_Ctype_Declarations2Name, zHpux10_Ctype_Declarations2List,
6579 apzHpux10_Ctype_Declarations2Machs,
6580 HPUX10_CTYPE_DECLARATIONS2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6581 aHpux10_Ctype_Declarations2Tests, apzHpux10_Ctype_Declarations2Patch, 0 },
6582
6583 { zHpux11_AbsName, zHpux11_AbsList,
6584 apzHpux11_AbsMachs,
6585 HPUX11_ABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6586 aHpux11_AbsTests, apzHpux11_AbsPatch, 0 },
6587
6588 { zHpux11_FabsfName, zHpux11_FabsfList,
6589 apzHpux11_FabsfMachs,
6590 HPUX11_FABSF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6591 aHpux11_FabsfTests, apzHpux11_FabsfPatch, 0 },
6592
6593 { zHpux11_Size_TName, zHpux11_Size_TList,
6594 apzHpux11_Size_TMachs,
6595 HPUX11_SIZE_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6596 aHpux11_Size_TTests, apzHpux11_Size_TPatch, 0 },
6597
6598 { zHpux11_Uint32_CName, zHpux11_Uint32_CList,
6599 apzHpux11_Uint32_CMachs,
6600 HPUX11_UINT32_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6601 aHpux11_Uint32_CTests, apzHpux11_Uint32_CPatch, 0 },
6602
6603 { zHpux11_VsnprintfName, zHpux11_VsnprintfList,
6604 apzHpux11_VsnprintfMachs,
6605 HPUX11_VSNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6606 aHpux11_VsnprintfTests, apzHpux11_VsnprintfPatch, 0 },
6607
6608 { zHpux8_Bogus_InlinesName, zHpux8_Bogus_InlinesList,
6609 apzHpux8_Bogus_InlinesMachs,
6610 HPUX8_BOGUS_INLINES_TEST_CT, FD_MACH_ONLY,
6611 aHpux8_Bogus_InlinesTests, apzHpux8_Bogus_InlinesPatch, 0 },
6612
6613 { zHpux_Ctype_MacrosName, zHpux_Ctype_MacrosList,
6614 apzHpux_Ctype_MacrosMachs,
6615 HPUX_CTYPE_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6616 aHpux_Ctype_MacrosTests, apzHpux_Ctype_MacrosPatch, 0 },
6617
6618 { zHpux_Long_DoubleName, zHpux_Long_DoubleList,
6619 apzHpux_Long_DoubleMachs,
6620 HPUX_LONG_DOUBLE_TEST_CT, FD_MACH_ONLY,
6621 aHpux_Long_DoubleTests, apzHpux_Long_DoublePatch, 0 },
6622
6623 { zHpux_MaxintName, zHpux_MaxintList,
6624 apzHpux_MaxintMachs,
6625 HPUX_MAXINT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6626 aHpux_MaxintTests, apzHpux_MaxintPatch, 0 },
6627
6628 { zHpux_SystimeName, zHpux_SystimeList,
6629 apzHpux_SystimeMachs,
6630 HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6631 aHpux_SystimeTests, apzHpux_SystimePatch, 0 },
6632
6633 { zInt_Abort_Free_And_ExitName, zInt_Abort_Free_And_ExitList,
6634 apzInt_Abort_Free_And_ExitMachs,
6635 INT_ABORT_FREE_AND_EXIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6636 aInt_Abort_Free_And_ExitTests, apzInt_Abort_Free_And_ExitPatch, 0 },
6637
6638 { zIo_Quotes_DefName, zIo_Quotes_DefList,
6639 apzIo_Quotes_DefMachs,
6640 IO_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6641 aIo_Quotes_DefTests, apzIo_Quotes_DefPatch, 0 },
6642
6643 { zIo_Quotes_UseName, zIo_Quotes_UseList,
6644 apzIo_Quotes_UseMachs,
6645 IO_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6646 aIo_Quotes_UseTests, apzIo_Quotes_UsePatch, 0 },
6647
6648 { zIp_Missing_SemiName, zIp_Missing_SemiList,
6649 apzIp_Missing_SemiMachs,
6650 IP_MISSING_SEMI_TEST_CT, FD_MACH_ONLY,
6651 aIp_Missing_SemiTests, apzIp_Missing_SemiPatch, 0 },
6652
6653 { zIrix___RestrictName, zIrix___RestrictList,
6654 apzIrix___RestrictMachs,
6655 IRIX___RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6656 aIrix___RestrictTests, apzIrix___RestrictPatch, 0 },
6657
6658 { zIrix_Asm_ApostropheName, zIrix_Asm_ApostropheList,
6659 apzIrix_Asm_ApostropheMachs,
6660 IRIX_ASM_APOSTROPHE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6661 aIrix_Asm_ApostropheTests, apzIrix_Asm_ApostrophePatch, 0 },
6662
6663 { zIrix_Limits_ConstName, zIrix_Limits_ConstList,
6664 apzIrix_Limits_ConstMachs,
6665 IRIX_LIMITS_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6666 aIrix_Limits_ConstTests, apzIrix_Limits_ConstPatch, 0 },
6667
6668 { zIrix_Socklen_TName, zIrix_Socklen_TList,
6669 apzIrix_Socklen_TMachs,
6670 IRIX_SOCKLEN_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6671 aIrix_Socklen_TTests, apzIrix_Socklen_TPatch, 0 },
6672
6673 { zIrix_Stdio_Va_ListName, zIrix_Stdio_Va_ListList,
6674 apzIrix_Stdio_Va_ListMachs,
6675 IRIX_STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6676 aIrix_Stdio_Va_ListTests, apzIrix_Stdio_Va_ListPatch, 0 },
6677
6678 { zIrix_WcsftimeName, zIrix_WcsftimeList,
6679 apzIrix_WcsftimeMachs,
6680 IRIX_WCSFTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6681 aIrix_WcsftimeTests, apzIrix_WcsftimePatch, 0 },
6682
6683 { zIsc_FmodName, zIsc_FmodList,
6684 apzIsc_FmodMachs,
6685 ISC_FMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6686 aIsc_FmodTests, apzIsc_FmodPatch, 0 },
6687
6688 { zIsc_Omits_With_StdcName, zIsc_Omits_With_StdcList,
6689 apzIsc_Omits_With_StdcMachs,
6690 ISC_OMITS_WITH_STDC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6691 aIsc_Omits_With_StdcTests, apzIsc_Omits_With_StdcPatch, 0 },
6692
6693 { zKandr_ConcatName, zKandr_ConcatList,
6694 apzKandr_ConcatMachs,
6695 KANDR_CONCAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6696 aKandr_ConcatTests, apzKandr_ConcatPatch, 0 },
6697
6698 { zLibc1_G_Va_ListName, zLibc1_G_Va_ListList,
6699 apzLibc1_G_Va_ListMachs,
6700 LIBC1_G_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6701 aLibc1_G_Va_ListTests, apzLibc1_G_Va_ListPatch, 0 },
6702
6703 { zLibc1_Ifdefd_MemxName, zLibc1_Ifdefd_MemxList,
6704 apzLibc1_Ifdefd_MemxMachs,
6705 LIBC1_IFDEFD_MEMX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6706 aLibc1_Ifdefd_MemxTests, apzLibc1_Ifdefd_MemxPatch, 0 },
6707
6708 { zLimits_IfndefsName, zLimits_IfndefsList,
6709 apzLimits_IfndefsMachs,
6710 LIMITS_IFNDEFS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6711 aLimits_IfndefsTests, apzLimits_IfndefsPatch, 0 },
6712
6713 { zLynx_Void_IntName, zLynx_Void_IntList,
6714 apzLynx_Void_IntMachs,
6715 LYNX_VOID_INT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6716 aLynx_Void_IntTests, apzLynx_Void_IntPatch, 0 },
6717
6718 { zLynxos_Fcntl_ProtoName, zLynxos_Fcntl_ProtoList,
6719 apzLynxos_Fcntl_ProtoMachs,
6720 LYNXOS_FCNTL_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6721 aLynxos_Fcntl_ProtoTests, apzLynxos_Fcntl_ProtoPatch, 0 },
6722
6723 { zMachine_Ansi_H_Va_ListName, zMachine_Ansi_H_Va_ListList,
6724 apzMachine_Ansi_H_Va_ListMachs,
6725 MACHINE_ANSI_H_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6726 aMachine_Ansi_H_Va_ListTests, apzMachine_Ansi_H_Va_ListPatch, 0 },
6727
6728 { zMachine_NameName, zMachine_NameList,
6729 apzMachine_NameMachs,
6730 MACHINE_NAME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6731 aMachine_NameTests, apzMachine_NamePatch, 0 },
6732
6733 { zMath_ExceptionName, zMath_ExceptionList,
6734 apzMath_ExceptionMachs,
6735 MATH_EXCEPTION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6736 aMath_ExceptionTests, apzMath_ExceptionPatch, 0 },
6737
6738 { zMath_Huge_Val_From_Dbl_MaxName, zMath_Huge_Val_From_Dbl_MaxList,
6739 apzMath_Huge_Val_From_Dbl_MaxMachs,
6740 MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
6741 aMath_Huge_Val_From_Dbl_MaxTests, apzMath_Huge_Val_From_Dbl_MaxPatch, 0 },
6742
6743 { zMath_Huge_Val_IfndefName, zMath_Huge_Val_IfndefList,
6744 apzMath_Huge_Val_IfndefMachs,
6745 MATH_HUGE_VAL_IFNDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6746 aMath_Huge_Val_IfndefTests, apzMath_Huge_Val_IfndefPatch, 0 },
6747
6748 { zNested_Auth_DesName, zNested_Auth_DesList,
6749 apzNested_Auth_DesMachs,
6750 NESTED_AUTH_DES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6751 aNested_Auth_DesTests, apzNested_Auth_DesPatch, 0 },
6752
6753 { zNested_MotorolaName, zNested_MotorolaList,
6754 apzNested_MotorolaMachs,
6755 NESTED_MOTOROLA_TEST_CT, FD_MACH_ONLY,
6756 aNested_MotorolaTests, apzNested_MotorolaPatch, 0 },
6757
6758 { zNested_Sys_LimitsName, zNested_Sys_LimitsList,
6759 apzNested_Sys_LimitsMachs,
6760 NESTED_SYS_LIMITS_TEST_CT, FD_MACH_ONLY,
6761 aNested_Sys_LimitsTests, apzNested_Sys_LimitsPatch, 0 },
6762
6763 { zNetbsd_Extra_SemicolonName, zNetbsd_Extra_SemicolonList,
6764 apzNetbsd_Extra_SemicolonMachs,
6765 NETBSD_EXTRA_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6766 aNetbsd_Extra_SemicolonTests, apzNetbsd_Extra_SemicolonPatch, 0 },
6767
6768 { zNext_Math_PrefixName, zNext_Math_PrefixList,
6769 apzNext_Math_PrefixMachs,
6770 NEXT_MATH_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6771 aNext_Math_PrefixTests, apzNext_Math_PrefixPatch, 0 },
6772
6773 { zNext_TemplateName, zNext_TemplateList,
6774 apzNext_TemplateMachs,
6775 NEXT_TEMPLATE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6776 aNext_TemplateTests, apzNext_TemplatePatch, 0 },
6777
6778 { zNext_VolitileName, zNext_VolitileList,
6779 apzNext_VolitileMachs,
6780 NEXT_VOLITILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6781 aNext_VolitileTests, apzNext_VolitilePatch, 0 },
6782
6783 { zNext_Wait_UnionName, zNext_Wait_UnionList,
6784 apzNext_Wait_UnionMachs,
6785 NEXT_WAIT_UNION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6786 aNext_Wait_UnionTests, apzNext_Wait_UnionPatch, 0 },
6787
6788 { zNodeent_SyntaxName, zNodeent_SyntaxList,
6789 apzNodeent_SyntaxMachs,
6790 NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6791 aNodeent_SyntaxTests, apzNodeent_SyntaxPatch, 0 },
6792
6793 { zOsf_Namespace_AName, zOsf_Namespace_AList,
6794 apzOsf_Namespace_AMachs,
6795 OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6796 aOsf_Namespace_ATests, apzOsf_Namespace_APatch, 0 },
6797
6798 { zOsf_Namespace_CName, zOsf_Namespace_CList,
6799 apzOsf_Namespace_CMachs,
6800 OSF_NAMESPACE_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6801 aOsf_Namespace_CTests, apzOsf_Namespace_CPatch, 0 },
6802
6803 { zPthread_Page_SizeName, zPthread_Page_SizeList,
6804 apzPthread_Page_SizeMachs,
6805 PTHREAD_PAGE_SIZE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6806 aPthread_Page_SizeTests, apzPthread_Page_SizePatch, 0 },
6807
6808 { zRead_Ret_TypeName, zRead_Ret_TypeList,
6809 apzRead_Ret_TypeMachs,
6810 READ_RET_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6811 aRead_Ret_TypeTests, apzRead_Ret_TypePatch, 0 },
6812
6813 { zRs6000_DoubleName, zRs6000_DoubleList,
6814 apzRs6000_DoubleMachs,
6815 RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6816 aRs6000_DoubleTests, apzRs6000_DoublePatch, 0 },
6817
6818 { zRs6000_FchmodName, zRs6000_FchmodList,
6819 apzRs6000_FchmodMachs,
6820 RS6000_FCHMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6821 aRs6000_FchmodTests, apzRs6000_FchmodPatch, 0 },
6822
6823 { zRs6000_ParamName, zRs6000_ParamList,
6824 apzRs6000_ParamMachs,
6825 RS6000_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6826 aRs6000_ParamTests, apzRs6000_ParamPatch, 0 },
6827
6828 { zSco_MathName, zSco_MathList,
6829 apzSco_MathMachs,
6830 SCO_MATH_TEST_CT, FD_MACH_ONLY,
6831 aSco_MathTests, apzSco_MathPatch, 0 },
6832
6833 { zSco_RegsetName, zSco_RegsetList,
6834 apzSco_RegsetMachs,
6835 SCO_REGSET_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6836 aSco_RegsetTests, apzSco_RegsetPatch, 0 },
6837
6838 { zSco_Static_FuncName, zSco_Static_FuncList,
6839 apzSco_Static_FuncMachs,
6840 SCO_STATIC_FUNC_TEST_CT, FD_MACH_ONLY,
6841 aSco_Static_FuncTests, apzSco_Static_FuncPatch, 0 },
6842
6843 { zSco_UtimeName, zSco_UtimeList,
6844 apzSco_UtimeMachs,
6845 SCO_UTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6846 aSco_UtimeTests, apzSco_UtimePatch, 0 },
6847
6848 { zSolaris_Mutex_Init_1Name, zSolaris_Mutex_Init_1List,
6849 apzSolaris_Mutex_Init_1Machs,
6850 SOLARIS_MUTEX_INIT_1_TEST_CT, FD_MACH_ONLY,
6851 aSolaris_Mutex_Init_1Tests, apzSolaris_Mutex_Init_1Patch, 0 },
6852
6853 { zSolaris_Mutex_Init_2Name, zSolaris_Mutex_Init_2List,
6854 apzSolaris_Mutex_Init_2Machs,
6855 SOLARIS_MUTEX_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6856 aSolaris_Mutex_Init_2Tests, apzSolaris_Mutex_Init_2Patch, 0 },
6857
6858 { zSolaris_SocketName, zSolaris_SocketList,
6859 apzSolaris_SocketMachs,
6860 SOLARIS_SOCKET_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6861 aSolaris_SocketTests, apzSolaris_SocketPatch, 0 },
6862
6863 { zSolaris_Stdio_TagName, zSolaris_Stdio_TagList,
6864 apzSolaris_Stdio_TagMachs,
6865 SOLARIS_STDIO_TAG_TEST_CT, FD_MACH_ONLY,
6866 aSolaris_Stdio_TagTests, apzSolaris_Stdio_TagPatch, 0 },
6867
6868 { zSolaris_UnistdName, zSolaris_UnistdList,
6869 apzSolaris_UnistdMachs,
6870 SOLARIS_UNISTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6871 aSolaris_UnistdTests, apzSolaris_UnistdPatch, 0 },
6872
6873 { zSolaris_WidecName, zSolaris_WidecList,
6874 apzSolaris_WidecMachs,
6875 SOLARIS_WIDEC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6876 aSolaris_WidecTests, apzSolaris_WidecPatch, 0 },
6877
6878 { zStatsswtchName, zStatsswtchList,
6879 apzStatsswtchMachs,
6880 STATSSWTCH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6881 aStatsswtchTests, apzStatsswtchPatch, 0 },
6882
6883 { zStdio_Stdarg_HName, zStdio_Stdarg_HList,
6884 apzStdio_Stdarg_HMachs,
6885 STDIO_STDARG_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6886 aStdio_Stdarg_HTests, apzStdio_Stdarg_HPatch, 0 },
6887
6888 { zStdio_Va_ListName, zStdio_Va_ListList,
6889 apzStdio_Va_ListMachs,
6890 STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY,
6891 aStdio_Va_ListTests, apzStdio_Va_ListPatch, 0 },
6892
6893 { zStrict_Ansi_NotName, zStrict_Ansi_NotList,
6894 apzStrict_Ansi_NotMachs,
6895 STRICT_ANSI_NOT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6896 aStrict_Ansi_NotTests, apzStrict_Ansi_NotPatch, 0 },
6897
6898 { zStrict_Ansi_Not_CtdName, zStrict_Ansi_Not_CtdList,
6899 apzStrict_Ansi_Not_CtdMachs,
6900 STRICT_ANSI_NOT_CTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6901 aStrict_Ansi_Not_CtdTests, apzStrict_Ansi_Not_CtdPatch, 0 },
6902
6903 { zStrict_Ansi_OnlyName, zStrict_Ansi_OnlyList,
6904 apzStrict_Ansi_OnlyMachs,
6905 STRICT_ANSI_ONLY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6906 aStrict_Ansi_OnlyTests, apzStrict_Ansi_OnlyPatch, 0 },
6907
6908 { zStruct_FileName, zStruct_FileList,
6909 apzStruct_FileMachs,
6910 STRUCT_FILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6911 aStruct_FileTests, apzStruct_FilePatch, 0 },
6912
6913 { zStruct_SockaddrName, zStruct_SockaddrList,
6914 apzStruct_SockaddrMachs,
6915 STRUCT_SOCKADDR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6916 aStruct_SockaddrTests, apzStruct_SockaddrPatch, 0 },
6917
6918 { zSun_Auth_ProtoName, zSun_Auth_ProtoList,
6919 apzSun_Auth_ProtoMachs,
6920 SUN_AUTH_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6921 aSun_Auth_ProtoTests, apzSun_Auth_ProtoPatch, 0 },
6922
6923 { zSun_Bogus_IfdefName, zSun_Bogus_IfdefList,
6924 apzSun_Bogus_IfdefMachs,
6925 SUN_BOGUS_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6926 aSun_Bogus_IfdefTests, apzSun_Bogus_IfdefPatch, 0 },
6927
6928 { zSun_CatmacroName, zSun_CatmacroList,
6929 apzSun_CatmacroMachs,
6930 SUN_CATMACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6931 aSun_CatmacroTests, apzSun_CatmacroPatch, 0 },
6932
6933 { zSun_MallocName, zSun_MallocList,
6934 apzSun_MallocMachs,
6935 SUN_MALLOC_TEST_CT, FD_MACH_ONLY,
6936 aSun_MallocTests, apzSun_MallocPatch, 0 },
6937
6938 { zSun_Rusers_SemiName, zSun_Rusers_SemiList,
6939 apzSun_Rusers_SemiMachs,
6940 SUN_RUSERS_SEMI_TEST_CT, FD_MACH_ONLY,
6941 aSun_Rusers_SemiTests, apzSun_Rusers_SemiPatch, 0 },
6942
6943 { zSun_SignalName, zSun_SignalList,
6944 apzSun_SignalMachs,
6945 SUN_SIGNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6946 aSun_SignalTests, apzSun_SignalPatch, 0 },
6947
6948 { zSunos_Matherr_DeclName, zSunos_Matherr_DeclList,
6949 apzSunos_Matherr_DeclMachs,
6950 SUNOS_MATHERR_DECL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6951 aSunos_Matherr_DeclTests, apzSunos_Matherr_DeclPatch, 0 },
6952
6953 { zSunos_StrlenName, zSunos_StrlenList,
6954 apzSunos_StrlenMachs,
6955 SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6956 aSunos_StrlenTests, apzSunos_StrlenPatch, 0 },
6957
6958 { zSvr4__PName, zSvr4__PList,
6959 apzSvr4__PMachs,
6960 SVR4__P_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6961 aSvr4__PTests, apzSvr4__PPatch, 0 },
6962
6963 { zSvr4_Disable_OptName, zSvr4_Disable_OptList,
6964 apzSvr4_Disable_OptMachs,
6965 SVR4_DISABLE_OPT_TEST_CT, FD_MACH_ONLY,
6966 aSvr4_Disable_OptTests, apzSvr4_Disable_OptPatch, 0 },
6967
6968 { zSvr4_GetcwdName, zSvr4_GetcwdList,
6969 apzSvr4_GetcwdMachs,
6970 SVR4_GETCWD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6971 aSvr4_GetcwdTests, apzSvr4_GetcwdPatch, 0 },
6972
6973 { zSvr4_ProfilName, zSvr4_ProfilList,
6974 apzSvr4_ProfilMachs,
6975 SVR4_PROFIL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6976 aSvr4_ProfilTests, apzSvr4_ProfilPatch, 0 },
6977
6978 { zSvr4_Undeclared_GetrngeName, zSvr4_Undeclared_GetrngeList,
6979 apzSvr4_Undeclared_GetrngeMachs,
6980 SVR4_UNDECLARED_GETRNGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6981 aSvr4_Undeclared_GetrngeTests, apzSvr4_Undeclared_GetrngePatch, 0 },
6982
6983 { zSysv68_StringName, zSysv68_StringList,
6984 apzSysv68_StringMachs,
6985 SYSV68_STRING_TEST_CT, FD_MACH_ONLY,
6986 aSysv68_StringTests, apzSysv68_StringPatch, 0 },
6987
6988 { zSysz_Stdlib_For_SunName, zSysz_Stdlib_For_SunList,
6989 apzSysz_Stdlib_For_SunMachs,
6990 SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6991 aSysz_Stdlib_For_SunTests, apzSysz_Stdlib_For_SunPatch, 0 },
6992
6993 { zThread_KeywordName, zThread_KeywordList,
6994 apzThread_KeywordMachs,
6995 THREAD_KEYWORD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6996 aThread_KeywordTests, apzThread_KeywordPatch, 0 },
6997
6998 { zTinfo_CplusplusName, zTinfo_CplusplusList,
6999 apzTinfo_CplusplusMachs,
7000 TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7001 aTinfo_CplusplusTests, apzTinfo_CplusplusPatch, 0 },
7002
7003 { zUltrix_Atexit_ParamName, zUltrix_Atexit_ParamList,
7004 apzUltrix_Atexit_ParamMachs,
7005 ULTRIX_ATEXIT_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7006 aUltrix_Atexit_ParamTests, apzUltrix_Atexit_ParamPatch, 0 },
7007
7008 { zUltrix_Atof_ParamName, zUltrix_Atof_ParamList,
7009 apzUltrix_Atof_ParamMachs,
7010 ULTRIX_ATOF_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7011 aUltrix_Atof_ParamTests, apzUltrix_Atof_ParamPatch, 0 },
7012
7013 { zUltrix_ConstName, zUltrix_ConstList,
7014 apzUltrix_ConstMachs,
7015 ULTRIX_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7016 aUltrix_ConstTests, apzUltrix_ConstPatch, 0 },
7017
7018 { zUltrix_Const2Name, zUltrix_Const2List,
7019 apzUltrix_Const2Machs,
7020 ULTRIX_CONST2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7021 aUltrix_Const2Tests, apzUltrix_Const2Patch, 0 },
7022
7023 { zUltrix_Fix_FixprotoName, zUltrix_Fix_FixprotoList,
7024 apzUltrix_Fix_FixprotoMachs,
7025 ULTRIX_FIX_FIXPROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7026 aUltrix_Fix_FixprotoTests, apzUltrix_Fix_FixprotoPatch, 0 },
7027
7028 { zUltrix_IfdefName, zUltrix_IfdefList,
7029 apzUltrix_IfdefMachs,
7030 ULTRIX_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7031 aUltrix_IfdefTests, apzUltrix_IfdefPatch, 0 },
7032
7033 { zUltrix_Math_IfdefName, zUltrix_Math_IfdefList,
7034 apzUltrix_Math_IfdefMachs,
7035 ULTRIX_MATH_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7036 aUltrix_Math_IfdefTests, apzUltrix_Math_IfdefPatch, 0 },
7037
7038 { zUltrix_Nested_IoctlName, zUltrix_Nested_IoctlList,
7039 apzUltrix_Nested_IoctlMachs,
7040 ULTRIX_NESTED_IOCTL_TEST_CT, FD_MACH_ONLY,
7041 aUltrix_Nested_IoctlTests, apzUltrix_Nested_IoctlPatch, 0 },
7042
7043 { zUltrix_Nested_SvcName, zUltrix_Nested_SvcList,
7044 apzUltrix_Nested_SvcMachs,
7045 ULTRIX_NESTED_SVC_TEST_CT, FD_MACH_ONLY,
7046 aUltrix_Nested_SvcTests, apzUltrix_Nested_SvcPatch, 0 },
7047
7048 { zUltrix_StatName, zUltrix_StatList,
7049 apzUltrix_StatMachs,
7050 ULTRIX_STAT_TEST_CT, FD_MACH_ONLY,
7051 aUltrix_StatTests, apzUltrix_StatPatch, 0 },
7052
7053 { zUltrix_StaticName, zUltrix_StaticList,
7054 apzUltrix_StaticMachs,
7055 ULTRIX_STATIC_TEST_CT, FD_MACH_ONLY,
7056 aUltrix_StaticTests, apzUltrix_StaticPatch, 0 },
7057
7058 { zUltrix_StringsName, zUltrix_StringsList,
7059 apzUltrix_StringsMachs,
7060 ULTRIX_STRINGS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7061 aUltrix_StringsTests, apzUltrix_StringsPatch, 0 },
7062
7063 { zUndefine_NullName, zUndefine_NullList,
7064 apzUndefine_NullMachs,
7065 UNDEFINE_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7066 aUndefine_NullTests, apzUndefine_NullPatch, 0 },
7067
7068 { zUnicosmk_RestrictName, zUnicosmk_RestrictList,
7069 apzUnicosmk_RestrictMachs,
7070 UNICOSMK_RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7071 aUnicosmk_RestrictTests, apzUnicosmk_RestrictPatch, 0 },
7072
7073 { zUw7_Byteorder_FixName, zUw7_Byteorder_FixList,
7074 apzUw7_Byteorder_FixMachs,
7075 UW7_BYTEORDER_FIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7076 aUw7_Byteorder_FixTests, apzUw7_Byteorder_FixPatch, 0 },
7077
7078 { zVa_I960_MacroName, zVa_I960_MacroList,
7079 apzVa_I960_MacroMachs,
7080 VA_I960_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7081 aVa_I960_MacroTests, apzVa_I960_MacroPatch, 0 },
7082
7083 { zVoid_NullName, zVoid_NullList,
7084 apzVoid_NullMachs,
7085 VOID_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7086 aVoid_NullTests, apzVoid_NullPatch, 0 },
7087
7088 { zVxworks_Gcc_ProblemName, zVxworks_Gcc_ProblemList,
7089 apzVxworks_Gcc_ProblemMachs,
7090 VXWORKS_GCC_PROBLEM_TEST_CT, FD_MACH_ONLY,
7091 aVxworks_Gcc_ProblemTests, apzVxworks_Gcc_ProblemPatch, 0 },
7092
7093 { zVxworks_Needs_VxtypesName, zVxworks_Needs_VxtypesList,
7094 apzVxworks_Needs_VxtypesMachs,
7095 VXWORKS_NEEDS_VXTYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7096 aVxworks_Needs_VxtypesTests, apzVxworks_Needs_VxtypesPatch, 0 },
7097
7098 { zVxworks_Needs_VxworksName, zVxworks_Needs_VxworksList,
7099 apzVxworks_Needs_VxworksMachs,
7100 VXWORKS_NEEDS_VXWORKS_TEST_CT, FD_MACH_ONLY,
7101 aVxworks_Needs_VxworksTests, apzVxworks_Needs_VxworksPatch, 0 },
7102
7103 { zVxworks_TimeName, zVxworks_TimeList,
7104 apzVxworks_TimeMachs,
7105 VXWORKS_TIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7106 aVxworks_TimeTests, apzVxworks_TimePatch, 0 },
7107
7108 { zWindiss_Math1Name, zWindiss_Math1List,
7109 apzWindiss_Math1Machs,
7110 WINDISS_MATH1_TEST_CT, FD_MACH_ONLY,
7111 aWindiss_Math1Tests, apzWindiss_Math1Patch, 0 },
7112
7113 { zWindiss_Math2Name, zWindiss_Math2List,
7114 apzWindiss_Math2Machs,
7115 WINDISS_MATH2_TEST_CT, FD_MACH_ONLY,
7116 aWindiss_Math2Tests, apzWindiss_Math2Patch, 0 },
7117
7118 { zWindiss_ValistName, zWindiss_ValistList,
7119 apzWindiss_ValistMachs,
7120 WINDISS_VALIST_TEST_CT, FD_MACH_ONLY,
7121 aWindiss_ValistTests, apzWindiss_ValistPatch, 0 },
7122
7123 { zX11_ClassName, zX11_ClassList,
7124 apzX11_ClassMachs,
7125 X11_CLASS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7126 aX11_ClassTests, apzX11_ClassPatch, 0 },
7127
7128 { zX11_Class_UsageName, zX11_Class_UsageList,
7129 apzX11_Class_UsageMachs,
7130 X11_CLASS_USAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7131 aX11_Class_UsageTests, apzX11_Class_UsagePatch, 0 },
7132
7133 { zX11_NewName, zX11_NewList,
7134 apzX11_NewMachs,
7135 X11_NEW_TEST_CT, FD_MACH_ONLY,
7136 aX11_NewTests, apzX11_NewPatch, 0 },
7137
7138 { zX11_SprintfName, zX11_SprintfList,
7139 apzX11_SprintfMachs,
7140 X11_SPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7141 aX11_SprintfTests, apzX11_SprintfPatch, 0 }
7142 };