OSDN Git Service

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