OSDN Git Service

1999-12-17 13:21 -0800 Zack Weinberg <zack@rabi.columbia.edu>
[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 114 fixup descriptions.
9  *
10  * See README-fixinc for more information.
11  *
12  *  inclhack copyright (c) 1999 The Free Software Foundation, Inc.
13  *
14  *  inclhack is free software.
15  *  
16  *  You may redistribute it and/or modify it under the terms of the
17  *  GNU General Public License, as published by the Free Software
18  *  Foundation; either version 2, or (at your option) any later version.
19  *  
20  *  inclhack is distributed in the hope that it will be useful,
21  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
22  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
23  *  See the GNU General Public License for more details.
24  *  
25  *  You should have received a copy of the GNU General Public License
26  *  along with inclhack.  See the file "COPYING".  If not,
27  *  write to:  The Free Software Foundation, Inc.,
28  *             59 Temple Place - Suite 330,
29  *             Boston,  MA  02111-1307, USA.
30  *
31  *
32  *  Description of Aaa_Ki_Iface fix
33  */
34 #define AAA_KI_IFACE_FIXIDX              0
35 tSCC zAaa_Ki_IfaceName[] =
36      "Aaa_Ki_Iface";
37 /*
38  *  File name selection pattern
39  */
40 tSCC zAaa_Ki_IfaceList[] =
41   "|sys/ki_iface.h|";
42 /*
43  *  Machine/OS name selection pattern
44  */
45 #define apzAaa_Ki_IfaceMachs (const char**)NULL
46
47 /*
48  *  content selection pattern - do fix if pattern found
49  */
50 tSCC zAaa_Ki_IfaceSelect0[] =
51        "These definitions are for HP Internal developers";
52
53 #define    AAA_KI_IFACE_TEST_CT  1
54 #define    AAA_KI_IFACE_RE_CT    1
55 tTestDesc aAaa_Ki_IfaceTests[] = {
56   { TT_EGREP,    zAaa_Ki_IfaceSelect0, (regex_t*)NULL }, };
57
58 /*
59  *  Fix Command Arguments for Aaa_Ki_Iface
60  */
61 const char* apzAaa_Ki_IfacePatch[] = {
62     (char*)NULL };
63
64 /* * * * * * * * * * * * * * * * * * * * * * * * * *
65  *
66  *  Description of Aaa_Ki fix
67  */
68 #define AAA_KI_FIXIDX                    1
69 tSCC zAaa_KiName[] =
70      "Aaa_Ki";
71 /*
72  *  File name selection pattern
73  */
74 tSCC zAaa_KiList[] =
75   "|sys/ki.h|";
76 /*
77  *  Machine/OS name selection pattern
78  */
79 #define apzAaa_KiMachs (const char**)NULL
80
81 /*
82  *  content selection pattern - do fix if pattern found
83  */
84 tSCC zAaa_KiSelect0[] =
85        "11.00 HP-UX LP64";
86
87 #define    AAA_KI_TEST_CT  1
88 #define    AAA_KI_RE_CT    1
89 tTestDesc aAaa_KiTests[] = {
90   { TT_EGREP,    zAaa_KiSelect0, (regex_t*)NULL }, };
91
92 /*
93  *  Fix Command Arguments for Aaa_Ki
94  */
95 const char* apzAaa_KiPatch[] = {
96     (char*)NULL };
97
98 /* * * * * * * * * * * * * * * * * * * * * * * * * *
99  *
100  *  Description of Aaa_Ki_Calls fix
101  */
102 #define AAA_KI_CALLS_FIXIDX              2
103 tSCC zAaa_Ki_CallsName[] =
104      "Aaa_Ki_Calls";
105 /*
106  *  File name selection pattern
107  */
108 tSCC zAaa_Ki_CallsList[] =
109   "|sys/ki_calls.h|";
110 /*
111  *  Machine/OS name selection pattern
112  */
113 #define apzAaa_Ki_CallsMachs (const char**)NULL
114
115 /*
116  *  content selection pattern - do fix if pattern found
117  */
118 tSCC zAaa_Ki_CallsSelect0[] =
119        "kthread_create_caller_t";
120
121 #define    AAA_KI_CALLS_TEST_CT  1
122 #define    AAA_KI_CALLS_RE_CT    1
123 tTestDesc aAaa_Ki_CallsTests[] = {
124   { TT_EGREP,    zAaa_Ki_CallsSelect0, (regex_t*)NULL }, };
125
126 /*
127  *  Fix Command Arguments for Aaa_Ki_Calls
128  */
129 const char* apzAaa_Ki_CallsPatch[] = {
130     (char*)NULL };
131
132 /* * * * * * * * * * * * * * * * * * * * * * * * * *
133  *
134  *  Description of Aaa_Ki_Defs fix
135  */
136 #define AAA_KI_DEFS_FIXIDX               3
137 tSCC zAaa_Ki_DefsName[] =
138      "Aaa_Ki_Defs";
139 /*
140  *  File name selection pattern
141  */
142 tSCC zAaa_Ki_DefsList[] =
143   "|sys/ki_defs.h|";
144 /*
145  *  Machine/OS name selection pattern
146  */
147 #define apzAaa_Ki_DefsMachs (const char**)NULL
148
149 /*
150  *  content selection pattern - do fix if pattern found
151  */
152 tSCC zAaa_Ki_DefsSelect0[] =
153        "Kernel Instrumentation Definitions";
154
155 #define    AAA_KI_DEFS_TEST_CT  1
156 #define    AAA_KI_DEFS_RE_CT    1
157 tTestDesc aAaa_Ki_DefsTests[] = {
158   { TT_EGREP,    zAaa_Ki_DefsSelect0, (regex_t*)NULL }, };
159
160 /*
161  *  Fix Command Arguments for Aaa_Ki_Defs
162  */
163 const char* apzAaa_Ki_DefsPatch[] = {
164     (char*)NULL };
165
166 /* * * * * * * * * * * * * * * * * * * * * * * * * *
167  *
168  *  Description of Aaa_Bad_Fixes fix
169  */
170 #define AAA_BAD_FIXES_FIXIDX             4
171 tSCC zAaa_Bad_FixesName[] =
172      "Aaa_Bad_Fixes";
173 /*
174  *  File name selection pattern
175  */
176 tSCC zAaa_Bad_FixesList[] =
177   "|sundev/ipi_error.h|";
178 /*
179  *  Machine/OS name selection pattern
180  */
181 #define apzAaa_Bad_FixesMachs (const char**)NULL
182 #define AAA_BAD_FIXES_TEST_CT  0
183 #define AAA_BAD_FIXES_RE_CT    0
184 #define aAaa_Bad_FixesTests   (tTestDesc*)NULL
185
186 /*
187  *  Fix Command Arguments for Aaa_Bad_Fixes
188  */
189 const char* apzAaa_Bad_FixesPatch[] = {
190     (char*)NULL };
191
192 /* * * * * * * * * * * * * * * * * * * * * * * * * *
193  *
194  *  Description of Aaa_Time fix
195  */
196 #define AAA_TIME_FIXIDX                  5
197 tSCC zAaa_TimeName[] =
198      "Aaa_Time";
199 /*
200  *  File name selection pattern
201  */
202 tSCC zAaa_TimeList[] =
203   "|sys/time.h|";
204 /*
205  *  Machine/OS name selection pattern
206  */
207 #define apzAaa_TimeMachs (const char**)NULL
208
209 /*
210  *  content selection pattern - do fix if pattern found
211  */
212 tSCC zAaa_TimeSelect0[] =
213        "11.0 and later representation of ki time";
214
215 #define    AAA_TIME_TEST_CT  1
216 #define    AAA_TIME_RE_CT    1
217 tTestDesc aAaa_TimeTests[] = {
218   { TT_EGREP,    zAaa_TimeSelect0, (regex_t*)NULL }, };
219
220 /*
221  *  Fix Command Arguments for Aaa_Time
222  */
223 const char* apzAaa_TimePatch[] = {
224     (char*)NULL };
225
226 /* * * * * * * * * * * * * * * * * * * * * * * * * *
227  *
228  *  Description of Aab_Dgux_Int_Varargs fix
229  */
230 #define AAB_DGUX_INT_VARARGS_FIXIDX      6
231 tSCC zAab_Dgux_Int_VarargsName[] =
232      "Aab_Dgux_Int_Varargs";
233 /*
234  *  File name selection pattern
235  */
236 tSCC zAab_Dgux_Int_VarargsList[] =
237   "|_int_varargs.h|";
238 /*
239  *  Machine/OS name selection pattern
240  */
241 #define apzAab_Dgux_Int_VarargsMachs (const char**)NULL
242 #define AAB_DGUX_INT_VARARGS_TEST_CT  0
243 #define AAB_DGUX_INT_VARARGS_RE_CT    0
244 #define aAab_Dgux_Int_VarargsTests   (tTestDesc*)NULL
245
246 /*
247  *  Fix Command Arguments for Aab_Dgux_Int_Varargs
248  */
249 const char* apzAab_Dgux_Int_VarargsPatch[] = {
250 "#ifndef __INT_VARARGS_H\n\
251 #define __INT_VARARGS_H\n\
252 \n\
253 /************************************************************************/\n\
254 /* _INT_VARARGS.H - Define the common stuff for varargs/stdarg/stdio.   */\n\
255 /************************************************************************/\n\
256 \n\
257 /*\n\
258 ** This file is a DG internal header.  Never include this\n\
259 ** file directly.\n\
260 */\n\
261 \n\
262 #ifndef ___int_features_h\n\
263 #include &lt;sys/_int_features.h&gt;\n\
264 #endif\n\
265 \n\
266 #if !(defined(_VA_LIST) || defined(_VA_LIST_))\n\
267 #define _VA_LIST\n\
268 #define _VA_LIST_\n\
269 \n\
270 #ifdef __LINT__\n\
271 \n\
272 #ifdef __STDC__\n\
273 typedef void * va_list;\n\
274 #else\n\
275 typedef char * va_list;\n\
276 #endif\n\
277 \n\
278 #else\n\
279 #if _M88K_ANY\n\
280 \n\
281 #if defined(__DCC__)\n\
282 \n\
283 typedef struct {\n\
284       int     next_arg;\n\
285       int     *mem_ptr;\n\
286       int     *reg_ptr;\n\
287 } va_list;\n\
288 \n\
289 #else  /* ! defined(__DCC__) */\n\
290 \n\
291 typedef struct {\n\
292       int  __va_arg;       /* argument number */\n\
293       int *__va_stk;       /* start of args passed on stack */\n\
294       int *__va_reg;       /* start of args passed in regs */\n\
295 } va_list;\n\
296 \n\
297 #endif  /* ! defined(__DCC__) */\n\
298 \n\
299 #elif _IX86_ANY\n\
300 \n\
301 #if defined(__GNUC__) || defined(__STDC__)\n\
302 typedef void * va_list;\n\
303 #else\n\
304 typedef char * va_list;\n\
305 #endif\n\
306 \n\
307 #endif  /*  _IX86_ANY */\n\
308 \n\
309 #endif /* __LINT__ */\n\
310 #endif /*  !(defined(_VA_LIST) || defined(_VA_LIST_)) */\n\
311 #endif /*  #ifndef __INT_VARARGS_H  */\n",
312     (char*)NULL };
313
314 /* * * * * * * * * * * * * * * * * * * * * * * * * *
315  *
316  *  Description of Aab_Fd_Zero_Asm_Posix_Types_H fix
317  */
318 #define AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX 7
319 tSCC zAab_Fd_Zero_Asm_Posix_Types_HName[] =
320      "Aab_Fd_Zero_Asm_Posix_Types_H";
321 /*
322  *  File name selection pattern
323  */
324 tSCC zAab_Fd_Zero_Asm_Posix_Types_HList[] =
325   "|asm/posix_types.h|";
326 /*
327  *  Machine/OS name selection pattern
328  */
329 tSCC* apzAab_Fd_Zero_Asm_Posix_Types_HMachs[] = {
330         "i[34567]86-*-linux-gnu*",
331         (const char*)NULL };
332
333 /*
334  *  content bypass pattern - skip fix if pattern found
335  */
336 tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass0[] =
337        "} while";
338
339 #define    AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT  1
340 #define    AAB_FD_ZERO_ASM_POSIX_TYPES_H_RE_CT    1
341 tTestDesc aAab_Fd_Zero_Asm_Posix_Types_HTests[] = {
342   { TT_NEGREP,   zAab_Fd_Zero_Asm_Posix_Types_HBypass0, (regex_t*)NULL }, };
343
344 /*
345  *  Fix Command Arguments for Aab_Fd_Zero_Asm_Posix_Types_H
346  */
347 const char* apzAab_Fd_Zero_Asm_Posix_Types_HPatch[] = {
348 "/* This file fixes a bug in the __FD_ZERO macro\n\
349    for older versions of the Linux kernel. */\n\
350 #ifndef _POSIX_TYPES_H_WRAPPER\n\
351 #include <features.h>\n\
352 #include_next <asm/posix_types.h>\n\
353 \n\
354 #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
355 #undef __FD_ZERO\n\
356 #define __FD_ZERO(fdsetp) \\\n\
357   do { \\\n\
358     int __d0, __d1; \\\n\
359 \t\t__asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
360 \t\t\t: \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
361 \t\t\t: \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
362 \t\t\t  \"1\" ((__kernel_fd_set *) (fdsetp)) :\"memory\"); \\\n\
363   } while (0)\n\
364 #endif\n\
365 \n\
366 #define _POSIX_TYPES_H_WRAPPER\n\
367 #endif /* _POSIX_TYPES_H_WRAPPER */\n",
368     (char*)NULL };
369
370 /* * * * * * * * * * * * * * * * * * * * * * * * * *
371  *
372  *  Description of Aab_Fd_Zero_Gnu_Types_H fix
373  */
374 #define AAB_FD_ZERO_GNU_TYPES_H_FIXIDX   8
375 tSCC zAab_Fd_Zero_Gnu_Types_HName[] =
376      "Aab_Fd_Zero_Gnu_Types_H";
377 /*
378  *  File name selection pattern
379  */
380 tSCC zAab_Fd_Zero_Gnu_Types_HList[] =
381   "|gnu/types.h|";
382 /*
383  *  Machine/OS name selection pattern
384  */
385 tSCC* apzAab_Fd_Zero_Gnu_Types_HMachs[] = {
386         "i[34567]86-*-linux-gnu*",
387         (const char*)NULL };
388 #define AAB_FD_ZERO_GNU_TYPES_H_TEST_CT  0
389 #define AAB_FD_ZERO_GNU_TYPES_H_RE_CT    0
390 #define aAab_Fd_Zero_Gnu_Types_HTests   (tTestDesc*)NULL
391
392 /*
393  *  Fix Command Arguments for Aab_Fd_Zero_Gnu_Types_H
394  */
395 const char* apzAab_Fd_Zero_Gnu_Types_HPatch[] = {
396 "/* This file fixes a bug in the __FD_ZERO macro present in glibc 1.x. */\n\
397 #ifndef _TYPES_H_WRAPPER\n\
398 #include <features.h>\n\
399 #include_next <gnu/types.h>\n\
400 \n\
401 #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
402 #undef __FD_ZERO\n\
403 # define __FD_ZERO(fdsetp) \\\n\
404   do { \\\n\
405     int __d0, __d1; \\\n\
406 \t__asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
407         \t: \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
408         \t: \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
409 \t\t  \"1\" ((__fd_set *) (fdsetp)) :\"memory\"); \\\n\
410   } while (0)\n\
411 #endif\n\
412 \n\
413 #define _TYPES_H_WRAPPER\n\
414 #endif /* _TYPES_H_WRAPPER */\n",
415     (char*)NULL };
416
417 /* * * * * * * * * * * * * * * * * * * * * * * * * *
418  *
419  *  Description of Aab_Fd_Zero_Selectbits_H fix
420  */
421 #define AAB_FD_ZERO_SELECTBITS_H_FIXIDX  9
422 tSCC zAab_Fd_Zero_Selectbits_HName[] =
423      "Aab_Fd_Zero_Selectbits_H";
424 /*
425  *  File name selection pattern
426  */
427 tSCC zAab_Fd_Zero_Selectbits_HList[] =
428   "|selectbits.h|";
429 /*
430  *  Machine/OS name selection pattern
431  */
432 tSCC* apzAab_Fd_Zero_Selectbits_HMachs[] = {
433         "i[34567]86-*-linux-gnu*",
434         (const char*)NULL };
435 #define AAB_FD_ZERO_SELECTBITS_H_TEST_CT  0
436 #define AAB_FD_ZERO_SELECTBITS_H_RE_CT    0
437 #define aAab_Fd_Zero_Selectbits_HTests   (tTestDesc*)NULL
438
439 /*
440  *  Fix Command Arguments for Aab_Fd_Zero_Selectbits_H
441  */
442 const char* apzAab_Fd_Zero_Selectbits_HPatch[] = {
443 "/* This file fixes a bug in the __FD_ZERO macro present in glibc 2.0.x. */\n\
444 #ifndef _SELECTBITS_H_WRAPPER\n\
445 #include <features.h>\n\
446 #include_next <selectbits.h>\n\
447 \n\
448 #if defined(__FD_ZERO) && defined(__GLIBC__) \\\n\
449 \t&& defined(__GLIBC_MINOR__) && __GLIBC__ == 2 \\\n\
450 \t&& __GLIBC_MINOR__ == 0\n\
451 #undef __FD_ZERO\n\
452 #define __FD_ZERO(fdsetp) \\\n\
453   do { \\\n\
454     int __d0, __d1; \\\n\
455   __asm__ __volatile__ (\"cld; rep; stosl\" \\\n\
456                         : \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
457                         : \"a\" (0), \"0\" (sizeof (__fd_set) \\\n\
458                                         / sizeof (__fd_mask)), \\\n\
459                           \"1\" ((__fd_mask *) (fdsetp)) \\\n\
460                         : \"memory\"); \\\n\
461   } while (0)\n\
462 #endif\n\
463 \n\
464 #define _SELECTBITS_H_WRAPPER\n\
465 #endif /* _SELECTBITS_H_WRAPPER */\n",
466     (char*)NULL };
467
468 /* * * * * * * * * * * * * * * * * * * * * * * * * *
469  *
470  *  Description of Aab_Svr4_Replace_Byteorder fix
471  */
472 #define AAB_SVR4_REPLACE_BYTEORDER_FIXIDX 10
473 tSCC zAab_Svr4_Replace_ByteorderName[] =
474      "Aab_Svr4_Replace_Byteorder";
475 /*
476  *  File name selection pattern
477  */
478 tSCC zAab_Svr4_Replace_ByteorderList[] =
479   "|sys/byteorder.h|";
480 /*
481  *  Machine/OS name selection pattern
482  */
483 tSCC* apzAab_Svr4_Replace_ByteorderMachs[] = {
484         "*-*-sysv4*",
485         "i[34567]86-*-sysv5*",
486         "i[34567]86-*-udk*",
487         "i[34567]86-*-solaris2.[0-4]",
488         "powerpcle-*-solaris2.[0-4]",
489         "sparc-*-solaris2.[0-4]",
490         (const char*)NULL };
491 #define AAB_SVR4_REPLACE_BYTEORDER_TEST_CT  0
492 #define AAB_SVR4_REPLACE_BYTEORDER_RE_CT    0
493 #define aAab_Svr4_Replace_ByteorderTests   (tTestDesc*)NULL
494
495 /*
496  *  Fix Command Arguments for Aab_Svr4_Replace_Byteorder
497  */
498 const char* apzAab_Svr4_Replace_ByteorderPatch[] = {
499 "#ifndef _SYS_BYTEORDER_H\n\
500 #define _SYS_BYTEORDER_H\n\
501 \n\
502 /* Functions to convert `short' and `long' quantities from host byte order\n\
503    to (internet) network byte order (i.e. big-endian).\n\
504 \n\
505    Written by Ron Guilmette (rfg@ncd.com).\n\
506 \n\
507    This isn't actually used by GCC.  It is installed by fixinc.svr4.\n\
508 \n\
509    For big-endian machines these functions are essentially no-ops.\n\
510 \n\
511    For little-endian machines, we define the functions using specialized\n\
512    asm sequences in cases where doing so yields better code (e.g. i386).  */\n\
513 \n\
514 #if !defined (__GNUC__) && !defined (__GNUG__)\n\
515 #error You lose!  This file is only useful with GNU compilers.\n\
516 #endif\n\
517 \n\
518 #ifndef __BYTE_ORDER__\n\
519 /* Byte order defines.  These are as defined on UnixWare 1.1, but with\n\
520    double underscores added at the front and back.  */\n\
521 #define __LITTLE_ENDIAN__   1234\n\
522 #define __BIG_ENDIAN__      4321\n\
523 #define __PDP_ENDIAN__      3412\n\
524 #endif\n\
525 \n\
526 #ifdef __STDC__\n\
527 static __inline__ unsigned long htonl (unsigned long);\n\
528 static __inline__ unsigned short htons (unsigned int);\n\
529 static __inline__ unsigned long ntohl (unsigned long);\n\
530 static __inline__ unsigned short ntohs (unsigned int);\n\
531 #endif /* defined (__STDC__) */\n\
532 \n\
533 #if defined (__i386__)\n\
534 \n\
535 #ifndef __BYTE_ORDER__\n\
536 #define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
537 #endif\n\
538 \n\
539 /* Convert a host long to a network long.  */\n\
540 \n\
541 /* We must use a new-style function definition, so that this will also\n\
542    be valid for C++.  */\n\
543 static __inline__ unsigned long\n\
544 htonl (unsigned long __arg)\n\
545 {\n\
546   register unsigned long __result;\n\
547 \n\
548   __asm__ (\"xchg%B0 %b0,%h0\n\
549 \tror%L0 $16,%0\n\
550 \txchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
551   return __result;\n\
552 }\n\
553 \n\
554 /* Convert a host short to a network short.  */\n\
555 \n\
556 static __inline__ unsigned short\n\
557 htons (unsigned int __arg)\n\
558 {\n\
559   register unsigned short __result;\n\
560 \n\
561   __asm__ (\"xchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
562   return __result;\n\
563 }\n\
564 \n\
565 #elif ((defined (__i860__) && !defined (__i860_big_endian__))\t\\\n\
566        || defined (__ns32k__) || defined (__vax__)\t\t\\\n\
567        || defined (__spur__) || defined (__arm__))\n\
568 \n\
569 #ifndef __BYTE_ORDER__\n\
570 #define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
571 #endif\n\
572 \n\
573 /* For other little-endian machines, using C code is just as efficient as\n\
574    using assembly code.  */\n\
575 \n\
576 /* Convert a host long to a network long.  */\n\
577 \n\
578 static __inline__ unsigned long\n\
579 htonl (unsigned long __arg)\n\
580 {\n\
581   register unsigned long __result;\n\
582 \n\
583   __result = (__arg >> 24) & 0x000000ff;\n\
584   __result |= (__arg >> 8) & 0x0000ff00;\n\
585   __result |= (__arg << 8) & 0x00ff0000;\n\
586   __result |= (__arg << 24) & 0xff000000;\n\
587   return __result;\n\
588 }\n\
589 \n\
590 /* Convert a host short to a network short.  */\n\
591 \n\
592 static __inline__ unsigned short\n\
593 htons (unsigned int __arg)\n\
594 {\n\
595   register unsigned short __result;\n\
596 \n\
597   __result = (__arg << 8) & 0xff00;\n\
598   __result |= (__arg >> 8) & 0x00ff;\n\
599   return __result;\n\
600 }\n\
601 \n\
602 #else /* must be a big-endian machine */\n\
603 \n\
604 #ifndef __BYTE_ORDER__\n\
605 #define __BYTE_ORDER__ __BIG_ENDIAN__\n\
606 #endif\n\
607 \n\
608 /* Convert a host long to a network long.  */\n\
609 \n\
610 static __inline__ unsigned long\n\
611 htonl (unsigned long __arg)\n\
612 {\n\
613   return __arg;\n\
614 }\n\
615 \n\
616 /* Convert a host short to a network short.  */\n\
617 \n\
618 static __inline__ unsigned short\n\
619 htons (unsigned int __arg)\n\
620 {\n\
621   return __arg;\n\
622 }\n\
623 \n\
624 #endif /* big-endian */\n\
625 \n\
626 /* Convert a network long to a host long.  */\n\
627 \n\
628 static __inline__ unsigned long\n\
629 ntohl (unsigned long __arg)\n\
630 {\n\
631   return htonl (__arg);\n\
632 }\n\
633 \n\
634 /* Convert a network short to a host short.  */\n\
635 \n\
636 static __inline__ unsigned short\n\
637 ntohs (unsigned int __arg)\n\
638 {\n\
639   return htons (__arg);\n\
640 }\n\
641 #endif\n",
642     (char*)NULL };
643
644 /* * * * * * * * * * * * * * * * * * * * * * * * * *
645  *
646  *  Description of Aix_Syswait fix
647  */
648 #define AIX_SYSWAIT_FIXIDX               11
649 tSCC zAix_SyswaitName[] =
650      "Aix_Syswait";
651 /*
652  *  File name selection pattern
653  */
654 tSCC zAix_SyswaitList[] =
655   "|sys/wait.h|";
656 /*
657  *  Machine/OS name selection pattern
658  */
659 #define apzAix_SyswaitMachs (const char**)NULL
660
661 /*
662  *  content selection pattern - do fix if pattern found
663  */
664 tSCC zAix_SyswaitSelect0[] =
665        "bos325,";
666
667 #define    AIX_SYSWAIT_TEST_CT  1
668 #define    AIX_SYSWAIT_RE_CT    1
669 tTestDesc aAix_SyswaitTests[] = {
670   { TT_EGREP,    zAix_SyswaitSelect0, (regex_t*)NULL }, };
671
672 /*
673  *  Fix Command Arguments for Aix_Syswait
674  */
675 const char* apzAix_SyswaitPatch[] = { "sed",
676     "-e", "/^extern pid_t wait3();$/i\\\n\
677 struct rusage;\n",
678     (char*)NULL };
679
680 /* * * * * * * * * * * * * * * * * * * * * * * * * *
681  *
682  *  Description of Aix_Volatile fix
683  */
684 #define AIX_VOLATILE_FIXIDX              12
685 tSCC zAix_VolatileName[] =
686      "Aix_Volatile";
687 /*
688  *  File name selection pattern
689  */
690 tSCC zAix_VolatileList[] =
691   "|sys/signal.h|";
692 /*
693  *  Machine/OS name selection pattern
694  */
695 #define apzAix_VolatileMachs (const char**)NULL
696
697 /*
698  *  content selection pattern - do fix if pattern found
699  */
700 tSCC zAix_VolatileSelect0[] =
701        "typedef volatile int sig_atomic_t";
702
703 #define    AIX_VOLATILE_TEST_CT  1
704 #define    AIX_VOLATILE_RE_CT    1
705 tTestDesc aAix_VolatileTests[] = {
706   { TT_EGREP,    zAix_VolatileSelect0, (regex_t*)NULL }, };
707
708 /*
709  *  Fix Command Arguments for Aix_Volatile
710  */
711 const char* apzAix_VolatilePatch[] = { "sed",
712     "-e", "s/typedef volatile int sig_atomic_t/typedef int sig_atomic_t/",
713     (char*)NULL };
714
715 /* * * * * * * * * * * * * * * * * * * * * * * * * *
716  *
717  *  Description of Alpha_Getopt fix
718  */
719 #define ALPHA_GETOPT_FIXIDX              13
720 tSCC zAlpha_GetoptName[] =
721      "Alpha_Getopt";
722 /*
723  *  File name selection pattern
724  */
725 tSCC zAlpha_GetoptList[] =
726   "|stdio.h|stdlib.h|";
727 /*
728  *  Machine/OS name selection pattern
729  */
730 #define apzAlpha_GetoptMachs (const char**)NULL
731
732 /*
733  *  content selection pattern - do fix if pattern found
734  */
735 tSCC zAlpha_GetoptSelect0[] =
736        "getopt\\(int, char \\*\\[";
737
738 #define    ALPHA_GETOPT_TEST_CT  1
739 #define    ALPHA_GETOPT_RE_CT    1
740 tTestDesc aAlpha_GetoptTests[] = {
741   { TT_EGREP,    zAlpha_GetoptSelect0, (regex_t*)NULL }, };
742
743 /*
744  *  Fix Command Arguments for Alpha_Getopt
745  */
746 const char* apzAlpha_GetoptPatch[] = { "sed",
747     "-e", "s/getopt(int, char \\*\\[\\],[ ]*char \\*)/getopt(int, char *const[], const char *)/",
748     (char*)NULL };
749
750 /* * * * * * * * * * * * * * * * * * * * * * * * * *
751  *
752  *  Description of Alpha_Parens fix
753  */
754 #define ALPHA_PARENS_FIXIDX              14
755 tSCC zAlpha_ParensName[] =
756      "Alpha_Parens";
757 /*
758  *  File name selection pattern
759  */
760 tSCC zAlpha_ParensList[] =
761   "|sym.h|";
762 /*
763  *  Machine/OS name selection pattern
764  */
765 #define apzAlpha_ParensMachs (const char**)NULL
766
767 /*
768  *  content selection pattern - do fix if pattern found
769  */
770 tSCC zAlpha_ParensSelect0[] =
771        "#ifndef\\(__mips64\\)";
772
773 #define    ALPHA_PARENS_TEST_CT  1
774 #define    ALPHA_PARENS_RE_CT    1
775 tTestDesc aAlpha_ParensTests[] = {
776   { TT_EGREP,    zAlpha_ParensSelect0, (regex_t*)NULL }, };
777
778 /*
779  *  Fix Command Arguments for Alpha_Parens
780  */
781 const char* apzAlpha_ParensPatch[] = { "sed",
782     "-e", "s/#ifndef(__mips64)/#ifndef __mips64/",
783     (char*)NULL };
784
785 /* * * * * * * * * * * * * * * * * * * * * * * * * *
786  *
787  *  Description of Alpha_Sbrk fix
788  */
789 #define ALPHA_SBRK_FIXIDX                15
790 tSCC zAlpha_SbrkName[] =
791      "Alpha_Sbrk";
792 /*
793  *  File name selection pattern
794  */
795 tSCC zAlpha_SbrkList[] =
796   "|unistd.h|";
797 /*
798  *  Machine/OS name selection pattern
799  */
800 #define apzAlpha_SbrkMachs (const char**)NULL
801
802 /*
803  *  content selection pattern - do fix if pattern found
804  */
805 tSCC zAlpha_SbrkSelect0[] =
806        "char[ \t]*\\*[\t ]*sbrk[ \t]*\\(";
807
808 #define    ALPHA_SBRK_TEST_CT  1
809 #define    ALPHA_SBRK_RE_CT    1
810 tTestDesc aAlpha_SbrkTests[] = {
811   { TT_EGREP,    zAlpha_SbrkSelect0, (regex_t*)NULL }, };
812
813 /*
814  *  Fix Command Arguments for Alpha_Sbrk
815  */
816 const char* apzAlpha_SbrkPatch[] = { "sed",
817     "-e", "s/char\\([ \t]*\\*[\t ]*sbrk[ \t]*(\\)/void\\1/",
818     (char*)NULL };
819
820 /* * * * * * * * * * * * * * * * * * * * * * * * * *
821  *
822  *  Description of Arm_Norcroft_Hint fix
823  */
824 #define ARM_NORCROFT_HINT_FIXIDX         16
825 tSCC zArm_Norcroft_HintName[] =
826      "Arm_Norcroft_Hint";
827 /*
828  *  File name selection pattern
829  */
830 tSCC zArm_Norcroft_HintList[] =
831   "|X11/Intrinsic.h|";
832 /*
833  *  Machine/OS name selection pattern
834  */
835 #define apzArm_Norcroft_HintMachs (const char**)NULL
836
837 /*
838  *  content selection pattern - do fix if pattern found
839  */
840 tSCC zArm_Norcroft_HintSelect0[] =
841        "___type p_type";
842
843 #define    ARM_NORCROFT_HINT_TEST_CT  1
844 #define    ARM_NORCROFT_HINT_RE_CT    1
845 tTestDesc aArm_Norcroft_HintTests[] = {
846   { TT_EGREP,    zArm_Norcroft_HintSelect0, (regex_t*)NULL }, };
847
848 /*
849  *  Fix Command Arguments for Arm_Norcroft_Hint
850  */
851 const char* apzArm_Norcroft_HintPatch[] = { "sed",
852     "-e", "s/___type p_type/p_type/",
853     (char*)NULL };
854
855 /* * * * * * * * * * * * * * * * * * * * * * * * * *
856  *
857  *  Description of Arm_Wchar fix
858  */
859 #define ARM_WCHAR_FIXIDX                 17
860 tSCC zArm_WcharName[] =
861      "Arm_Wchar";
862 /*
863  *  File name selection pattern
864  */
865 tSCC zArm_WcharList[] =
866   "|stdlib.h|";
867 /*
868  *  Machine/OS name selection pattern
869  */
870 #define apzArm_WcharMachs (const char**)NULL
871
872 /*
873  *  content selection pattern - do fix if pattern found
874  */
875 tSCC zArm_WcharSelect0[] =
876        "#[ \t]*define[ \t]*__wchar_t";
877
878 #define    ARM_WCHAR_TEST_CT  1
879 #define    ARM_WCHAR_RE_CT    1
880 tTestDesc aArm_WcharTests[] = {
881   { TT_EGREP,    zArm_WcharSelect0, (regex_t*)NULL }, };
882
883 /*
884  *  Fix Command Arguments for Arm_Wchar
885  */
886 const char* apzArm_WcharPatch[] = { "sed",
887     "-e", "s/\\(#[ \t]*ifndef[ \t]*\\)__wchar_t/\\1_GCC_WCHAR_T/",
888     "-e", "s/\\(#[ \t]*define[ \t]*\\)__wchar_t/\\1_GCC_WCHAR_T/",
889     (char*)NULL };
890
891 /* * * * * * * * * * * * * * * * * * * * * * * * * *
892  *
893  *  Description of Aux_Asm fix
894  */
895 #define AUX_ASM_FIXIDX                   18
896 tSCC zAux_AsmName[] =
897      "Aux_Asm";
898 /*
899  *  File name selection pattern
900  */
901 tSCC zAux_AsmList[] =
902   "|sys/param.h|";
903 /*
904  *  Machine/OS name selection pattern
905  */
906 #define apzAux_AsmMachs (const char**)NULL
907
908 /*
909  *  content selection pattern - do fix if pattern found
910  */
911 tSCC zAux_AsmSelect0[] =
912        "#ifndef NOINLINE";
913
914 #define    AUX_ASM_TEST_CT  1
915 #define    AUX_ASM_RE_CT    1
916 tTestDesc aAux_AsmTests[] = {
917   { TT_EGREP,    zAux_AsmSelect0, (regex_t*)NULL }, };
918
919 /*
920  *  Fix Command Arguments for Aux_Asm
921  */
922 const char* apzAux_AsmPatch[] = { "sed",
923     "-e", "s|#ifndef NOINLINE|#if !defined(NOINLINE) \\&\\& !defined(__GNUC__)|",
924     (char*)NULL };
925
926 /* * * * * * * * * * * * * * * * * * * * * * * * * *
927  *
928  *  Description of Avoid_Bool fix
929  */
930 #define AVOID_BOOL_FIXIDX                19
931 tSCC zAvoid_BoolName[] =
932      "Avoid_Bool";
933 /*
934  *  File name selection pattern
935  */
936 tSCC zAvoid_BoolList[] =
937   "|curses.h|curses_colr/curses.h|term.h|tinfo.h|";
938 /*
939  *  Machine/OS name selection pattern
940  */
941 #define apzAvoid_BoolMachs (const char**)NULL
942 #define AVOID_BOOL_TEST_CT  0
943 #define AVOID_BOOL_RE_CT    0
944 #define aAvoid_BoolTests   (tTestDesc*)NULL
945
946 /*
947  *  Fix Command Arguments for Avoid_Bool
948  */
949 const char* apzAvoid_BoolPatch[] = { "sed",
950     "-e", "/^#[ \t]*define[ \t][ \t]*bool[ \t][ \t]*char[ \t]*$/i\\\n\
951 #ifndef __cplusplus\n",
952     "-e", "/^#[ \t]*define[ \t][ \t]*bool[ \t][ \t]*char[ \t]*$/a\\\n\
953 #endif\n",
954     "-e", "/^typedef[ \t][ \t]*char[ \t][ \t]*bool[ \t]*;/i\\\n\
955 #ifndef __cplusplus\n",
956     "-e", "/^typedef[ \t][ \t]*char[ \t][ \t]*bool[ \t]*;/a\\\n\
957 #endif\n",
958     "-e", "/^[ ]*typedef[ \t][ \t]*unsigned char[ \t][ \t]*bool[ \t]*;/i\\\n\
959 #ifndef __cplusplus\n",
960     "-e", "/^[ ]*typedef[ \t][ \t]*unsigned char[ \t][ \t]*bool[ \t]*;/a\\\n\
961 #endif\n",
962     "-e", "/^typedef[ \t][ \t]*int[ \t][ \t]*bool[ \t]*;/i\\\n\
963 #ifndef __cplusplus\n",
964     "-e", "/^typedef[ \t][ \t]*int[ \t][ \t]*bool[ \t]*;/a\\\n\
965 #endif\n",
966     "-e", "/^[ ]*typedef[ \t][ \t]*unsigned int[ \t][ \t]*bool[ \t]*;/i\\\n\
967 #ifndef __cplusplus\n",
968     "-e", "/^[ ]*typedef[ \t][ \t]*unsigned int[ \t][ \t]*bool[ \t]*;/a\\\n\
969 #endif\n",
970     (char*)NULL };
971
972 /* * * * * * * * * * * * * * * * * * * * * * * * * *
973  *
974  *  Description of Bad_Struct_Term fix
975  */
976 #define BAD_STRUCT_TERM_FIXIDX           20
977 tSCC zBad_Struct_TermName[] =
978      "Bad_Struct_Term";
979 /*
980  *  File name selection pattern
981  */
982 tSCC zBad_Struct_TermList[] =
983   "|curses.h|";
984 /*
985  *  Machine/OS name selection pattern
986  */
987 #define apzBad_Struct_TermMachs (const char**)NULL
988
989 /*
990  *  content selection pattern - do fix if pattern found
991  */
992 tSCC zBad_Struct_TermSelect0[] =
993        "^[ \t]*typedef[ \t]+struct[ \t]+term[ \t]*;";
994
995 #define    BAD_STRUCT_TERM_TEST_CT  1
996 #define    BAD_STRUCT_TERM_RE_CT    1
997 tTestDesc aBad_Struct_TermTests[] = {
998   { TT_EGREP,    zBad_Struct_TermSelect0, (regex_t*)NULL }, };
999
1000 /*
1001  *  Fix Command Arguments for Bad_Struct_Term
1002  */
1003 const char* apzBad_Struct_TermPatch[] = { "sed",
1004     "-e", "s/^[ \t]*typedef[ \t][ \t]*\\(struct[ \t][ \t]*term[ \t]*;[ \t]*\\)$/\\1/",
1005     (char*)NULL };
1006
1007 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1008  *
1009  *  Description of Badquote fix
1010  */
1011 #define BADQUOTE_FIXIDX                  21
1012 tSCC zBadquoteName[] =
1013      "Badquote";
1014 /*
1015  *  File name selection pattern
1016  */
1017 tSCC zBadquoteList[] =
1018   "|sundev/vuid_event.h|";
1019 /*
1020  *  Machine/OS name selection pattern
1021  */
1022 #define apzBadquoteMachs (const char**)NULL
1023 #define BADQUOTE_TEST_CT  0
1024 #define BADQUOTE_RE_CT    0
1025 #define aBadquoteTests   (tTestDesc*)NULL
1026
1027 /*
1028  *  Fix Command Arguments for Badquote
1029  */
1030 const char* apzBadquotePatch[] = { "sed",
1031     "-e", "s/doesn't/does not/",
1032     (char*)NULL };
1033
1034 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1035  *
1036  *  Description of Bad_Lval fix
1037  */
1038 #define BAD_LVAL_FIXIDX                  22
1039 tSCC zBad_LvalName[] =
1040      "Bad_Lval";
1041 /*
1042  *  File name selection pattern
1043  */
1044 tSCC zBad_LvalList[] =
1045   "|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|";
1046 /*
1047  *  Machine/OS name selection pattern
1048  */
1049 #define apzBad_LvalMachs (const char**)NULL
1050
1051 /*
1052  *  content selection pattern - do fix if pattern found
1053  */
1054 tSCC zBad_LvalSelect0[] =
1055        "^[ \t]*#[ \t]*pragma[ \t][ \t]*extern_prefix";
1056
1057 #define    BAD_LVAL_TEST_CT  1
1058 #define    BAD_LVAL_RE_CT    1
1059 tTestDesc aBad_LvalTests[] = {
1060   { TT_EGREP,    zBad_LvalSelect0, (regex_t*)NULL }, };
1061
1062 /*
1063  *  Fix Command Arguments for Bad_Lval
1064  */
1065 const char* apzBad_LvalPatch[] = { "sed",
1066     "-e", "s/^[ \t]*#[ \t]*define[ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
1067     (char*)NULL };
1068
1069 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1070  *
1071  *  Description of Broken_Assert_Stdio fix
1072  */
1073 #define BROKEN_ASSERT_STDIO_FIXIDX       23
1074 tSCC zBroken_Assert_StdioName[] =
1075      "Broken_Assert_Stdio";
1076 /*
1077  *  File name selection pattern
1078  */
1079 tSCC zBroken_Assert_StdioList[] =
1080   "|assert.h|";
1081 /*
1082  *  Machine/OS name selection pattern
1083  */
1084 #define apzBroken_Assert_StdioMachs (const char**)NULL
1085
1086 /*
1087  *  content selection pattern - do fix if pattern found
1088  */
1089 tSCC zBroken_Assert_StdioSelect0[] =
1090        "stderr";
1091
1092 /*
1093  *  content bypass pattern - skip fix if pattern found
1094  */
1095 tSCC zBroken_Assert_StdioBypass0[] =
1096        "include.*stdio.h";
1097
1098 #define    BROKEN_ASSERT_STDIO_TEST_CT  2
1099 #define    BROKEN_ASSERT_STDIO_RE_CT    2
1100 tTestDesc aBroken_Assert_StdioTests[] = {
1101   { TT_NEGREP,   zBroken_Assert_StdioBypass0, (regex_t*)NULL },
1102   { TT_EGREP,    zBroken_Assert_StdioSelect0, (regex_t*)NULL }, };
1103
1104 /*
1105  *  Fix Command Arguments for Broken_Assert_Stdio
1106  */
1107 const char* apzBroken_Assert_StdioPatch[] = { "sed",
1108     "-e", "1i\\\n\
1109 #include <stdio.h>\n",
1110     (char*)NULL };
1111
1112 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1113  *
1114  *  Description of Broken_Assert_Stdlib fix
1115  */
1116 #define BROKEN_ASSERT_STDLIB_FIXIDX      24
1117 tSCC zBroken_Assert_StdlibName[] =
1118      "Broken_Assert_Stdlib";
1119 /*
1120  *  File name selection pattern
1121  */
1122 tSCC zBroken_Assert_StdlibList[] =
1123   "|assert.h|";
1124 /*
1125  *  Machine/OS name selection pattern
1126  */
1127 #define apzBroken_Assert_StdlibMachs (const char**)NULL
1128
1129 /*
1130  *  content selection pattern - do fix if pattern found
1131  */
1132 tSCC zBroken_Assert_StdlibSelect0[] =
1133        "exit *\\(|abort *\\(";
1134
1135 /*
1136  *  content bypass pattern - skip fix if pattern found
1137  */
1138 tSCC zBroken_Assert_StdlibBypass0[] =
1139        "include.*stdlib.h";
1140
1141 #define    BROKEN_ASSERT_STDLIB_TEST_CT  2
1142 #define    BROKEN_ASSERT_STDLIB_RE_CT    2
1143 tTestDesc aBroken_Assert_StdlibTests[] = {
1144   { TT_NEGREP,   zBroken_Assert_StdlibBypass0, (regex_t*)NULL },
1145   { TT_EGREP,    zBroken_Assert_StdlibSelect0, (regex_t*)NULL }, };
1146
1147 /*
1148  *  Fix Command Arguments for Broken_Assert_Stdlib
1149  */
1150 const char* apzBroken_Assert_StdlibPatch[] = { "sed",
1151     "-e", "1i\\\n\
1152 #ifdef __cplusplus\\\n\
1153 #include <stdlib.h>\\\n\
1154 #endif\n",
1155     (char*)NULL };
1156
1157 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1158  *
1159  *  Description of Bsd43_Io_Macros fix
1160  */
1161 #define BSD43_IO_MACROS_FIXIDX           25
1162 tSCC zBsd43_Io_MacrosName[] =
1163      "Bsd43_Io_Macros";
1164 /*
1165  *  File name selection pattern
1166  */
1167 #define zBsd43_Io_MacrosList (char*)NULL
1168 /*
1169  *  Machine/OS name selection pattern
1170  */
1171 #define apzBsd43_Io_MacrosMachs (const char**)NULL
1172
1173 /*
1174  *  content selection pattern - do fix if pattern found
1175  */
1176 tSCC zBsd43_Io_MacrosSelect0[] =
1177        "BSD43__IO";
1178
1179 #define    BSD43_IO_MACROS_TEST_CT  1
1180 #define    BSD43_IO_MACROS_RE_CT    1
1181 tTestDesc aBsd43_Io_MacrosTests[] = {
1182   { TT_EGREP,    zBsd43_Io_MacrosSelect0, (regex_t*)NULL }, };
1183
1184 /*
1185  *  Fix Command Arguments for Bsd43_Io_Macros
1186  */
1187 const char* apzBsd43_Io_MacrosPatch[] = { "sed",
1188     "-e", "/[ \t]BSD43__IO[A-Z]*[ \t]*(/s/(\\(.\\),/('\\1',/",
1189     "-e", "/#[ \t]*define[ \t]*[ \t]BSD43__IO/s/'\\([cgx]\\)'/\\1/g",
1190     (char*)NULL };
1191
1192 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1193  *
1194  *  Description of Dec_Intern_Asm fix
1195  */
1196 #define DEC_INTERN_ASM_FIXIDX            26
1197 tSCC zDec_Intern_AsmName[] =
1198      "Dec_Intern_Asm";
1199 /*
1200  *  File name selection pattern
1201  */
1202 tSCC zDec_Intern_AsmList[] =
1203   "|c_asm.h|";
1204 /*
1205  *  Machine/OS name selection pattern
1206  */
1207 #define apzDec_Intern_AsmMachs (const char**)NULL
1208 #define DEC_INTERN_ASM_TEST_CT  0
1209 #define DEC_INTERN_ASM_RE_CT    0
1210 #define aDec_Intern_AsmTests   (tTestDesc*)NULL
1211
1212 /*
1213  *  Fix Command Arguments for Dec_Intern_Asm
1214  */
1215 const char* apzDec_Intern_AsmPatch[] = { "sed",
1216     "-e", "/^[ \t]*float[ \t]*fasm/i\\\n\
1217 #ifdef __DECC\n",
1218     "-e", "/^[ \t]*#[ \t]*pragma[ \t]*intrinsic([ \t]*dasm/a\\\n\
1219 #endif\n",
1220     (char*)NULL };
1221
1222 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1223  *
1224  *  Description of No_Double_Slash fix
1225  */
1226 #define NO_DOUBLE_SLASH_FIXIDX           27
1227 tSCC zNo_Double_SlashName[] =
1228      "No_Double_Slash";
1229 /*
1230  *  File name selection pattern
1231  */
1232 #define zNo_Double_SlashList (char*)NULL
1233 /*
1234  *  Machine/OS name selection pattern
1235  */
1236 #define apzNo_Double_SlashMachs (const char**)NULL
1237
1238 /*
1239  *  perform the C function call test
1240  */
1241 tSCC zNo_Double_SlashFTst0[] = "double_slash";
1242
1243 #define    NO_DOUBLE_SLASH_TEST_CT  1
1244 #define    NO_DOUBLE_SLASH_RE_CT    0
1245 tTestDesc aNo_Double_SlashTests[] = {
1246   { TT_FUNCTION, zNo_Double_SlashFTst0,   0 /* unused */ }, };
1247
1248 /*
1249  *  Fix Command Arguments for No_Double_Slash
1250  */
1251 const char* apzNo_Double_SlashPatch[] = {"no_double_slash",
1252     (char*)NULL };
1253
1254 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1255  *
1256  *  Description of Ecd_Cursor fix
1257  */
1258 #define ECD_CURSOR_FIXIDX                28
1259 tSCC zEcd_CursorName[] =
1260      "Ecd_Cursor";
1261 /*
1262  *  File name selection pattern
1263  */
1264 tSCC zEcd_CursorList[] =
1265   "|sunwindow/win_lock.h|sunwindow/win_cursor.h|";
1266 /*
1267  *  Machine/OS name selection pattern
1268  */
1269 #define apzEcd_CursorMachs (const char**)NULL
1270 #define ECD_CURSOR_TEST_CT  0
1271 #define ECD_CURSOR_RE_CT    0
1272 #define aEcd_CursorTests   (tTestDesc*)NULL
1273
1274 /*
1275  *  Fix Command Arguments for Ecd_Cursor
1276  */
1277 const char* apzEcd_CursorPatch[] = { "sed",
1278     "-e", "s/ecd.cursor/ecd_cursor/",
1279     (char*)NULL };
1280
1281 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1282  *
1283  *  Description of Sco5_Stat_Wrappers fix
1284  */
1285 #define SCO5_STAT_WRAPPERS_FIXIDX        29
1286 tSCC zSco5_Stat_WrappersName[] =
1287      "Sco5_Stat_Wrappers";
1288 /*
1289  *  File name selection pattern
1290  */
1291 tSCC zSco5_Stat_WrappersList[] =
1292   "|sys/stat.h|";
1293 /*
1294  *  Machine/OS name selection pattern
1295  */
1296 tSCC* apzSco5_Stat_WrappersMachs[] = {
1297         "i*86-*-sco3.2v5*",
1298         (const char*)NULL };
1299 #define SCO5_STAT_WRAPPERS_TEST_CT  0
1300 #define SCO5_STAT_WRAPPERS_RE_CT    0
1301 #define aSco5_Stat_WrappersTests   (tTestDesc*)NULL
1302
1303 /*
1304  *  Fix Command Arguments for Sco5_Stat_Wrappers
1305  */
1306 const char* apzSco5_Stat_WrappersPatch[] = { "sed",
1307     "-e", "/^static int[ \t]*[a-z]*stat(/i\\\n\
1308 #ifdef __cplusplus\\\n\
1309 extern \"C\"\\\n\
1310 {\\\n\
1311 #endif\\\n",
1312     "-e", "/^}$/a\\\n\
1313 #ifdef __cplusplus\\\n\
1314 }\\\n\
1315 #endif /* __cplusplus */\\\n",
1316     (char*)NULL };
1317
1318 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1319  *
1320  *  Description of End_Else_Label fix
1321  */
1322 #define END_ELSE_LABEL_FIXIDX            30
1323 tSCC zEnd_Else_LabelName[] =
1324      "End_Else_Label";
1325 /*
1326  *  File name selection pattern
1327  */
1328 #define zEnd_Else_LabelList (char*)NULL
1329 /*
1330  *  Machine/OS name selection pattern
1331  */
1332 #define apzEnd_Else_LabelMachs (const char**)NULL
1333
1334 /*
1335  *  perform the C function call test
1336  */
1337 tSCC zEnd_Else_LabelFTst0[] = "else_endif_label";
1338
1339 #define    END_ELSE_LABEL_TEST_CT  1
1340 #define    END_ELSE_LABEL_RE_CT    0
1341 tTestDesc aEnd_Else_LabelTests[] = {
1342   { TT_FUNCTION, zEnd_Else_LabelFTst0,   0 /* unused */ }, };
1343
1344 /*
1345  *  Fix Command Arguments for End_Else_Label
1346  */
1347 const char* apzEnd_Else_LabelPatch[] = {"else_endif_label",
1348     (char*)NULL };
1349
1350 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1351  *
1352  *  Description of Hp_Inline fix
1353  */
1354 #define HP_INLINE_FIXIDX                 31
1355 tSCC zHp_InlineName[] =
1356      "Hp_Inline";
1357 /*
1358  *  File name selection pattern
1359  */
1360 tSCC zHp_InlineList[] =
1361   "|sys/spinlock.h|";
1362 /*
1363  *  Machine/OS name selection pattern
1364  */
1365 #define apzHp_InlineMachs (const char**)NULL
1366
1367 /*
1368  *  content selection pattern - do fix if pattern found
1369  */
1370 tSCC zHp_InlineSelect0[] =
1371        "include.*\"\\.\\./machine/";
1372
1373 #define    HP_INLINE_TEST_CT  1
1374 #define    HP_INLINE_RE_CT    1
1375 tTestDesc aHp_InlineTests[] = {
1376   { TT_EGREP,    zHp_InlineSelect0, (regex_t*)NULL }, };
1377
1378 /*
1379  *  Fix Command Arguments for Hp_Inline
1380  */
1381 const char* apzHp_InlinePatch[] = { "sed",
1382     "-e", "s,\"../machine/inline.h\",<machine/inline.h>,",
1383     "-e", "s,\"../machine/psl.h\",<machine/psl.h>,",
1384     (char*)NULL };
1385
1386 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1387  *
1388  *  Description of Hp_Sysfile fix
1389  */
1390 #define HP_SYSFILE_FIXIDX                32
1391 tSCC zHp_SysfileName[] =
1392      "Hp_Sysfile";
1393 /*
1394  *  File name selection pattern
1395  */
1396 tSCC zHp_SysfileList[] =
1397   "|sys/file.h|";
1398 /*
1399  *  Machine/OS name selection pattern
1400  */
1401 #define apzHp_SysfileMachs (const char**)NULL
1402
1403 /*
1404  *  content selection pattern - do fix if pattern found
1405  */
1406 tSCC zHp_SysfileSelect0[] =
1407        "HPUX_SOURCE";
1408
1409 #define    HP_SYSFILE_TEST_CT  1
1410 #define    HP_SYSFILE_RE_CT    1
1411 tTestDesc aHp_SysfileTests[] = {
1412   { TT_EGREP,    zHp_SysfileSelect0, (regex_t*)NULL }, };
1413
1414 /*
1415  *  Fix Command Arguments for Hp_Sysfile
1416  */
1417 const char* apzHp_SysfilePatch[] = { "sed",
1418     "-e", "s/(\\.\\.\\.)/(struct file * ...)/",
1419     (char*)NULL };
1420
1421 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1422  *
1423  *  Description of Cxx_Unready fix
1424  */
1425 #define CXX_UNREADY_FIXIDX               33
1426 tSCC zCxx_UnreadyName[] =
1427      "Cxx_Unready";
1428 /*
1429  *  File name selection pattern
1430  */
1431 tSCC zCxx_UnreadyList[] =
1432   "|sys/mman.h|rpc/types.h|";
1433 /*
1434  *  Machine/OS name selection pattern
1435  */
1436 #define apzCxx_UnreadyMachs (const char**)NULL
1437
1438 /*
1439  *  content bypass pattern - skip fix if pattern found
1440  */
1441 tSCC zCxx_UnreadyBypass0[] =
1442        "\"C\"|__BEGIN_DECLS";
1443
1444 #define    CXX_UNREADY_TEST_CT  1
1445 #define    CXX_UNREADY_RE_CT    1
1446 tTestDesc aCxx_UnreadyTests[] = {
1447   { TT_NEGREP,   zCxx_UnreadyBypass0, (regex_t*)NULL }, };
1448
1449 /*
1450  *  Fix Command Arguments for Cxx_Unready
1451  */
1452 const char* apzCxx_UnreadyPatch[] = { "sed",
1453     "-e", "1i\\\n\
1454 #ifdef __cplusplus\\\n\
1455 extern \"C\" {\\\n\
1456 #endif\\\n\
1457 \n",
1458     "-e", "$a\\\n\
1459 #ifdef __cplusplus\\\n\
1460 }\\\n\
1461 #endif\n",
1462     (char*)NULL };
1463
1464 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1465  *
1466  *  Description of Hpux_Maxint fix
1467  */
1468 #define HPUX_MAXINT_FIXIDX               34
1469 tSCC zHpux_MaxintName[] =
1470      "Hpux_Maxint";
1471 /*
1472  *  File name selection pattern
1473  */
1474 tSCC zHpux_MaxintList[] =
1475   "|sys/param.h|";
1476 /*
1477  *  Machine/OS name selection pattern
1478  */
1479 #define apzHpux_MaxintMachs (const char**)NULL
1480 #define HPUX_MAXINT_TEST_CT  0
1481 #define HPUX_MAXINT_RE_CT    0
1482 #define aHpux_MaxintTests   (tTestDesc*)NULL
1483
1484 /*
1485  *  Fix Command Arguments for Hpux_Maxint
1486  */
1487 const char* apzHpux_MaxintPatch[] = { "sed",
1488     "-e", "/^#[ \t]*define[ \t]*MAXINT[ \t]/i\\\n\
1489 #ifndef MAXINT\n",
1490     "-e", "/^#[ \t]*define[ \t]*MAXINT[ \t]/a\\\n\
1491 #endif\n",
1492     (char*)NULL };
1493
1494 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1495  *
1496  *  Description of Hpux_Systime fix
1497  */
1498 #define HPUX_SYSTIME_FIXIDX              35
1499 tSCC zHpux_SystimeName[] =
1500      "Hpux_Systime";
1501 /*
1502  *  File name selection pattern
1503  */
1504 tSCC zHpux_SystimeList[] =
1505   "|sys/time.h|";
1506 /*
1507  *  Machine/OS name selection pattern
1508  */
1509 #define apzHpux_SystimeMachs (const char**)NULL
1510
1511 /*
1512  *  content selection pattern - do fix if pattern found
1513  */
1514 tSCC zHpux_SystimeSelect0[] =
1515        "^extern struct sigevent;";
1516
1517 #define    HPUX_SYSTIME_TEST_CT  1
1518 #define    HPUX_SYSTIME_RE_CT    1
1519 tTestDesc aHpux_SystimeTests[] = {
1520   { TT_EGREP,    zHpux_SystimeSelect0, (regex_t*)NULL }, };
1521
1522 /*
1523  *  Fix Command Arguments for Hpux_Systime
1524  */
1525 const char* apzHpux_SystimePatch[] = { "sed",
1526     "-e", "s/^extern struct sigevent;/struct sigevent;/",
1527     (char*)NULL };
1528
1529 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1530  *
1531  *  Description of Hpux8_Bogus_Inlines fix
1532  */
1533 #define HPUX8_BOGUS_INLINES_FIXIDX       36
1534 tSCC zHpux8_Bogus_InlinesName[] =
1535      "Hpux8_Bogus_Inlines";
1536 /*
1537  *  File name selection pattern
1538  */
1539 tSCC zHpux8_Bogus_InlinesList[] =
1540   "|math.h|";
1541 /*
1542  *  Machine/OS name selection pattern
1543  */
1544 #define apzHpux8_Bogus_InlinesMachs (const char**)NULL
1545
1546 /*
1547  *  content selection pattern - do fix if pattern found
1548  */
1549 tSCC zHpux8_Bogus_InlinesSelect0[] =
1550        "inline";
1551
1552 #define    HPUX8_BOGUS_INLINES_TEST_CT  1
1553 #define    HPUX8_BOGUS_INLINES_RE_CT    1
1554 tTestDesc aHpux8_Bogus_InlinesTests[] = {
1555   { TT_EGREP,    zHpux8_Bogus_InlinesSelect0, (regex_t*)NULL }, };
1556
1557 /*
1558  *  Fix Command Arguments for Hpux8_Bogus_Inlines
1559  */
1560 const char* apzHpux8_Bogus_InlinesPatch[] = { "sed",
1561     "-e", "s@inline int abs(int [a-z][a-z]*) {.*}@extern \"C\" int abs(int);@",
1562     "-e", "s@inline double abs(double [a-z][a-z]*) {.*}@@",
1563     "-e", "s@inline int sqr(int [a-z][a-z]*) {.*}@@",
1564     "-e", "s@inline double sqr(double [a-z][a-z]*) {.*}@@",
1565     (char*)NULL };
1566
1567 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1568  *
1569  *  Description of Hpux11_Uint32_C fix
1570  */
1571 #define HPUX11_UINT32_C_FIXIDX           37
1572 tSCC zHpux11_Uint32_CName[] =
1573      "Hpux11_Uint32_C";
1574 /*
1575  *  File name selection pattern
1576  */
1577 tSCC zHpux11_Uint32_CList[] =
1578   "|inttypes.h|";
1579 /*
1580  *  Machine/OS name selection pattern
1581  */
1582 #define apzHpux11_Uint32_CMachs (const char**)NULL
1583
1584 /*
1585  *  content selection pattern - do fix if pattern found
1586  */
1587 tSCC zHpux11_Uint32_CSelect0[] =
1588        "^#define UINT32_C\\(__c\\)[ \t]*__CONCAT__\\(__CONCAT_U__\\(__c\\),l\\)";
1589
1590 #define    HPUX11_UINT32_C_TEST_CT  1
1591 #define    HPUX11_UINT32_C_RE_CT    1
1592 tTestDesc aHpux11_Uint32_CTests[] = {
1593   { TT_EGREP,    zHpux11_Uint32_CSelect0, (regex_t*)NULL }, };
1594
1595 /*
1596  *  Fix Command Arguments for Hpux11_Uint32_C
1597  */
1598 const char* apzHpux11_Uint32_CPatch[] = { "sed",
1599     "-e", "s/^#define UINT32_C(__c)\\([ \t]*\\)__CONCAT__(__CONCAT_U__(__c),l)/#define UINT32_C(__c)\\1__CONCAT__(__c,ul)/",
1600     (char*)NULL };
1601
1602 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1603  *
1604  *  Description of Interactv_Add1 fix
1605  */
1606 #define INTERACTV_ADD1_FIXIDX            38
1607 tSCC zInteractv_Add1Name[] =
1608      "Interactv_Add1";
1609 /*
1610  *  File name selection pattern
1611  */
1612 tSCC zInteractv_Add1List[] =
1613   "|stdio.h|math.h|ctype.h|sys/limits.h|sys/fcntl.h|sys/dirent.h|";
1614 /*
1615  *  Machine/OS name selection pattern
1616  */
1617 #define apzInteractv_Add1Machs (const char**)NULL
1618
1619 /*
1620  *  perform the 'test' shell command - do fix on success
1621  */
1622 tSCC zInteractv_Add1Test0[] =
1623        " -d /etc/conf/kconfig.d";
1624 tSCC zInteractv_Add1Test1[] =
1625        " -n \"`grep _POSIX_VERSION /usr/include/sys/unistd.h`\"";
1626
1627 #define    INTERACTV_ADD1_TEST_CT  2
1628 #define    INTERACTV_ADD1_RE_CT    0
1629 tTestDesc aInteractv_Add1Tests[] = {
1630   { TT_TEST,     zInteractv_Add1Test0,   0 /* unused */ },
1631   { TT_TEST,     zInteractv_Add1Test1,   0 /* unused */ }, };
1632
1633 /*
1634  *  Fix Command Arguments for Interactv_Add1
1635  */
1636 const char* apzInteractv_Add1Patch[] = { "sed",
1637     "-e", "s/!defined(__STDC__) && !defined(_POSIX_SOURCE)/!defined(_POSIX_SOURCE)/",
1638     (char*)NULL };
1639
1640 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1641  *
1642  *  Description of Interactv_Add2 fix
1643  */
1644 #define INTERACTV_ADD2_FIXIDX            39
1645 tSCC zInteractv_Add2Name[] =
1646      "Interactv_Add2";
1647 /*
1648  *  File name selection pattern
1649  */
1650 tSCC zInteractv_Add2List[] =
1651   "|math.h|";
1652 /*
1653  *  Machine/OS name selection pattern
1654  */
1655 #define apzInteractv_Add2Machs (const char**)NULL
1656
1657 /*
1658  *  perform the 'test' shell command - do fix on success
1659  */
1660 tSCC zInteractv_Add2Test0[] =
1661        " -d /etc/conf/kconfig.d";
1662 tSCC zInteractv_Add2Test1[] =
1663        " -n \"`grep _POSIX_VERSION /usr/include/sys/unistd.h`\"";
1664
1665 #define    INTERACTV_ADD2_TEST_CT  2
1666 #define    INTERACTV_ADD2_RE_CT    0
1667 tTestDesc aInteractv_Add2Tests[] = {
1668   { TT_TEST,     zInteractv_Add2Test0,   0 /* unused */ },
1669   { TT_TEST,     zInteractv_Add2Test1,   0 /* unused */ }, };
1670
1671 /*
1672  *  Fix Command Arguments for Interactv_Add2
1673  */
1674 const char* apzInteractv_Add2Patch[] = { "sed",
1675     "-e", "s/fmod(double)/fmod(double, double)/",
1676     (char*)NULL };
1677
1678 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1679  *
1680  *  Description of Interactv_Add3 fix
1681  */
1682 #define INTERACTV_ADD3_FIXIDX            40
1683 tSCC zInteractv_Add3Name[] =
1684      "Interactv_Add3";
1685 /*
1686  *  File name selection pattern
1687  */
1688 tSCC zInteractv_Add3List[] =
1689   "|sys/limits.h|";
1690 /*
1691  *  Machine/OS name selection pattern
1692  */
1693 #define apzInteractv_Add3Machs (const char**)NULL
1694
1695 /*
1696  *  perform the 'test' shell command - do fix on success
1697  */
1698 tSCC zInteractv_Add3Test0[] =
1699        " -d /etc/conf/kconfig.d";
1700 tSCC zInteractv_Add3Test1[] =
1701        " -n \"`grep _POSIX_VERSION /usr/include/sys/unistd.h`\"";
1702
1703 #define    INTERACTV_ADD3_TEST_CT  2
1704 #define    INTERACTV_ADD3_RE_CT    0
1705 tTestDesc aInteractv_Add3Tests[] = {
1706   { TT_TEST,     zInteractv_Add3Test0,   0 /* unused */ },
1707   { TT_TEST,     zInteractv_Add3Test1,   0 /* unused */ }, };
1708
1709 /*
1710  *  Fix Command Arguments for Interactv_Add3
1711  */
1712 const char* apzInteractv_Add3Patch[] = { "sed",
1713     "-e", "/CHILD_MAX/s,/\\* Max, Max,",
1714     "-e", "/OPEN_MAX/s,/\\* Max, Max,",
1715     (char*)NULL };
1716
1717 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1718  *
1719  *  Description of Io_Def_Quotes fix
1720  */
1721 #define IO_DEF_QUOTES_FIXIDX             41
1722 tSCC zIo_Def_QuotesName[] =
1723      "Io_Def_Quotes";
1724 /*
1725  *  File name selection pattern
1726  */
1727 #define zIo_Def_QuotesList (char*)NULL
1728 /*
1729  *  Machine/OS name selection pattern
1730  */
1731 #define apzIo_Def_QuotesMachs (const char**)NULL
1732
1733 /*
1734  *  content selection pattern - do fix if pattern found
1735  */
1736 tSCC zIo_Def_QuotesSelect0[] =
1737        "[ \t]*[ \t](_|DES)IO[A-Z]*[ \t]*\\( *[^,']";
1738
1739 #define    IO_DEF_QUOTES_TEST_CT  1
1740 #define    IO_DEF_QUOTES_RE_CT    1
1741 tTestDesc aIo_Def_QuotesTests[] = {
1742   { TT_EGREP,    zIo_Def_QuotesSelect0, (regex_t*)NULL }, };
1743
1744 /*
1745  *  Fix Command Arguments for Io_Def_Quotes
1746  */
1747 const char* apzIo_Def_QuotesPatch[] = { "sed",
1748     "-e", "s/\\([ \t]*[ \t]_IO[A-Z]*[ \t]*(\\)\\([^,']\\),/\\1'\\2',/",
1749     "-e", "s/\\([ \t]*[ \t]DESIO[A-Z]*[ \t]*(\\)\\([^,']\\),/\\1'\\2',/",
1750     "-e", "/#[ \t]*define[ \t]*[ \t]_IO/s/'\\([cgxtf]\\)'/\\1/g",
1751     "-e", "/#[ \t]*define[ \t]*[ \t]DESIOC/s/'\\([cdgx]\\)'/\\1/g",
1752     (char*)NULL };
1753
1754 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1755  *
1756  *  Description of Ioctl_Fix_Ctrl fix
1757  */
1758 #define IOCTL_FIX_CTRL_FIXIDX            42
1759 tSCC zIoctl_Fix_CtrlName[] =
1760      "Ioctl_Fix_Ctrl";
1761 /*
1762  *  File name selection pattern
1763  */
1764 #define zIoctl_Fix_CtrlList (char*)NULL
1765 /*
1766  *  Machine/OS name selection pattern
1767  */
1768 #define apzIoctl_Fix_CtrlMachs (const char**)NULL
1769
1770 /*
1771  *  content selection pattern - do fix if pattern found
1772  */
1773 tSCC zIoctl_Fix_CtrlSelect0[] =
1774        "CTRL[ \t]*\\(";
1775
1776 #define    IOCTL_FIX_CTRL_TEST_CT  1
1777 #define    IOCTL_FIX_CTRL_RE_CT    1
1778 tTestDesc aIoctl_Fix_CtrlTests[] = {
1779   { TT_EGREP,    zIoctl_Fix_CtrlSelect0, (regex_t*)NULL }, };
1780
1781 /*
1782  *  Fix Command Arguments for Ioctl_Fix_Ctrl
1783  */
1784 const char* apzIoctl_Fix_CtrlPatch[] = { "sed",
1785     "-e", "/[^A-Z0-9_]CTRL[ \t]*(/s/\\([^']\\))/'\\1')/",
1786     "-e", "/[^A-Z0-9]_CTRL[ \t]*(/s/\\([^']\\))/'\\1')/",
1787     "-e", "/#[ \t]*define[ \t]*[ \t]CTRL/s/'\\([cgx]\\)'/\\1/g",
1788     "-e", "/#[ \t]*define[ \t]*[ \t]_CTRL/s/'\\([cgx]\\)'/\\1/g",
1789     "-e", "/#[ \t]*define[ \t]*[ \t]BSD43_CTRL/s/'\\([cgx]\\)'/\\1/g",
1790     "-e", "/#[ \t]*define[ \t]*[ \t][_]*ISCTRL/s/'\\([cgx]\\)'/\\1/g",
1791     (char*)NULL };
1792
1793 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1794  *
1795  *  Description of Ip_Missing_Semi fix
1796  */
1797 #define IP_MISSING_SEMI_FIXIDX           43
1798 tSCC zIp_Missing_SemiName[] =
1799      "Ip_Missing_Semi";
1800 /*
1801  *  File name selection pattern
1802  */
1803 tSCC zIp_Missing_SemiList[] =
1804   "|netinet/ip.h|";
1805 /*
1806  *  Machine/OS name selection pattern
1807  */
1808 #define apzIp_Missing_SemiMachs (const char**)NULL
1809
1810 /*
1811  *  content selection pattern - do fix if pattern found
1812  */
1813 tSCC zIp_Missing_SemiSelect0[] =
1814        "}$";
1815
1816 #define    IP_MISSING_SEMI_TEST_CT  1
1817 #define    IP_MISSING_SEMI_RE_CT    1
1818 tTestDesc aIp_Missing_SemiTests[] = {
1819   { TT_EGREP,    zIp_Missing_SemiSelect0, (regex_t*)NULL }, };
1820
1821 /*
1822  *  Fix Command Arguments for Ip_Missing_Semi
1823  */
1824 const char* apzIp_Missing_SemiPatch[] = { "sed",
1825     "-e", "/^struct/,/^};/s/}$/};/",
1826     (char*)NULL };
1827
1828 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1829  *
1830  *  Description of Irix_Multiline_Cmnt fix
1831  */
1832 #define IRIX_MULTILINE_CMNT_FIXIDX       44
1833 tSCC zIrix_Multiline_CmntName[] =
1834      "Irix_Multiline_Cmnt";
1835 /*
1836  *  File name selection pattern
1837  */
1838 tSCC zIrix_Multiline_CmntList[] =
1839   "|sys/types.h|";
1840 /*
1841  *  Machine/OS name selection pattern
1842  */
1843 #define apzIrix_Multiline_CmntMachs (const char**)NULL
1844 #define IRIX_MULTILINE_CMNT_TEST_CT  0
1845 #define IRIX_MULTILINE_CMNT_RE_CT    0
1846 #define aIrix_Multiline_CmntTests   (tTestDesc*)NULL
1847
1848 /*
1849  *  Fix Command Arguments for Irix_Multiline_Cmnt
1850  */
1851 const char* apzIrix_Multiline_CmntPatch[] = { "sed",
1852     "-e", "s@type of the result@type of the result */@",
1853     "-e", "s@of the sizeof@/* of the sizeof@",
1854     (char*)NULL };
1855
1856 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1857  *
1858  *  Description of Irix_Sockaddr fix
1859  */
1860 #define IRIX_SOCKADDR_FIXIDX             45
1861 tSCC zIrix_SockaddrName[] =
1862      "Irix_Sockaddr";
1863 /*
1864  *  File name selection pattern
1865  */
1866 tSCC zIrix_SockaddrList[] =
1867   "|rpc/auth.h|";
1868 /*
1869  *  Machine/OS name selection pattern
1870  */
1871 #define apzIrix_SockaddrMachs (const char**)NULL
1872
1873 /*
1874  *  content selection pattern - do fix if pattern found
1875  */
1876 tSCC zIrix_SockaddrSelect0[] =
1877        "authdes_create.*struct sockaddr";
1878
1879 #define    IRIX_SOCKADDR_TEST_CT  1
1880 #define    IRIX_SOCKADDR_RE_CT    1
1881 tTestDesc aIrix_SockaddrTests[] = {
1882   { TT_EGREP,    zIrix_SockaddrSelect0, (regex_t*)NULL }, };
1883
1884 /*
1885  *  Fix Command Arguments for Irix_Sockaddr
1886  */
1887 const char* apzIrix_SockaddrPatch[] = { "sed",
1888     "-e", "/authdes_create.*struct sockaddr/i\\\n\
1889 struct sockaddr;\n",
1890     (char*)NULL };
1891
1892 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1893  *
1894  *  Description of Irix_Struct__File fix
1895  */
1896 #define IRIX_STRUCT__FILE_FIXIDX         46
1897 tSCC zIrix_Struct__FileName[] =
1898      "Irix_Struct__File";
1899 /*
1900  *  File name selection pattern
1901  */
1902 tSCC zIrix_Struct__FileList[] =
1903   "|rpc/xdr.h|";
1904 /*
1905  *  Machine/OS name selection pattern
1906  */
1907 #define apzIrix_Struct__FileMachs (const char**)NULL
1908 #define IRIX_STRUCT__FILE_TEST_CT  0
1909 #define IRIX_STRUCT__FILE_RE_CT    0
1910 #define aIrix_Struct__FileTests   (tTestDesc*)NULL
1911
1912 /*
1913  *  Fix Command Arguments for Irix_Struct__File
1914  */
1915 const char* apzIrix_Struct__FilePatch[] = { "sed",
1916     "-e", "/xdrstdio_create.*struct __file_s/i\\\n\
1917 struct __file_s;\n",
1918     (char*)NULL };
1919
1920 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1921  *
1922  *  Description of Irix_Asm_Apostrophe fix
1923  */
1924 #define IRIX_ASM_APOSTROPHE_FIXIDX       47
1925 tSCC zIrix_Asm_ApostropheName[] =
1926      "Irix_Asm_Apostrophe";
1927 /*
1928  *  File name selection pattern
1929  */
1930 tSCC zIrix_Asm_ApostropheList[] =
1931   "|sys/asm.h|";
1932 /*
1933  *  Machine/OS name selection pattern
1934  */
1935 #define apzIrix_Asm_ApostropheMachs (const char**)NULL
1936
1937 /*
1938  *  content selection pattern - do fix if pattern found
1939  */
1940 tSCC zIrix_Asm_ApostropheSelect0[] =
1941        "^[ \t]*#.*[Ww]e're";
1942
1943 #define    IRIX_ASM_APOSTROPHE_TEST_CT  1
1944 #define    IRIX_ASM_APOSTROPHE_RE_CT    1
1945 tTestDesc aIrix_Asm_ApostropheTests[] = {
1946   { TT_EGREP,    zIrix_Asm_ApostropheSelect0, (regex_t*)NULL }, };
1947
1948 /*
1949  *  Fix Command Arguments for Irix_Asm_Apostrophe
1950  */
1951 const char* apzIrix_Asm_ApostrophePatch[] = { "sed",
1952     "-e", "/^[ \t]*#/s/\\([Ww]e\\)'re/\\1 are/",
1953     (char*)NULL };
1954
1955 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1956  *
1957  *  Description of Isc_Fmod fix
1958  */
1959 #define ISC_FMOD_FIXIDX                  48
1960 tSCC zIsc_FmodName[] =
1961      "Isc_Fmod";
1962 /*
1963  *  File name selection pattern
1964  */
1965 tSCC zIsc_FmodList[] =
1966   "|math.h|";
1967 /*
1968  *  Machine/OS name selection pattern
1969  */
1970 #define apzIsc_FmodMachs (const char**)NULL
1971
1972 /*
1973  *  content selection pattern - do fix if pattern found
1974  */
1975 tSCC zIsc_FmodSelect0[] =
1976        "fmod\\(double\\)";
1977
1978 #define    ISC_FMOD_TEST_CT  1
1979 #define    ISC_FMOD_RE_CT    1
1980 tTestDesc aIsc_FmodTests[] = {
1981   { TT_EGREP,    zIsc_FmodSelect0, (regex_t*)NULL }, };
1982
1983 /*
1984  *  Fix Command Arguments for Isc_Fmod
1985  */
1986 const char* apzIsc_FmodPatch[] = { "sed",
1987     "-e", "s/fmod(double)/fmod(double, double)/",
1988     (char*)NULL };
1989
1990 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1991  *
1992  *  Description of Motorola_Nested fix
1993  */
1994 #define MOTOROLA_NESTED_FIXIDX           49
1995 tSCC zMotorola_NestedName[] =
1996      "Motorola_Nested";
1997 /*
1998  *  File name selection pattern
1999  */
2000 tSCC zMotorola_NestedList[] =
2001   "|limits.h|sys/limits.h|";
2002 /*
2003  *  Machine/OS name selection pattern
2004  */
2005 tSCC* apzMotorola_NestedMachs[] = {
2006         "m68k-motorola-sysv*",
2007         (const char*)NULL };
2008 #define MOTOROLA_NESTED_TEST_CT  0
2009 #define MOTOROLA_NESTED_RE_CT    0
2010 #define aMotorola_NestedTests   (tTestDesc*)NULL
2011
2012 /*
2013  *  Fix Command Arguments for Motorola_Nested
2014  */
2015 const char* apzMotorola_NestedPatch[] = { "sed",
2016     "-e", "s@^\\(#undef[ \t][ \t]*PIPE_BUF[ \t]*/\\* max # bytes atomic in write to a\\)$@\\1 */@",
2017     "-e", "s@\\(/\\*#define\tHUGE_VAL\t3.40282346638528860e+38 \\)\\(/\\*error value returned by Math lib\\*/\\)$@\\1*/ \\2@",
2018     (char*)NULL };
2019
2020 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2021  *
2022  *  Description of Isc_Sys_Limits fix
2023  */
2024 #define ISC_SYS_LIMITS_FIXIDX            50
2025 tSCC zIsc_Sys_LimitsName[] =
2026      "Isc_Sys_Limits";
2027 /*
2028  *  File name selection pattern
2029  */
2030 tSCC zIsc_Sys_LimitsList[] =
2031   "|sys/limits.h|";
2032 /*
2033  *  Machine/OS name selection pattern
2034  */
2035 #define apzIsc_Sys_LimitsMachs (const char**)NULL
2036
2037 /*
2038  *  content selection pattern - do fix if pattern found
2039  */
2040 tSCC zIsc_Sys_LimitsSelect0[] =
2041        "CHILD_MAX";
2042
2043 #define    ISC_SYS_LIMITS_TEST_CT  1
2044 #define    ISC_SYS_LIMITS_RE_CT    1
2045 tTestDesc aIsc_Sys_LimitsTests[] = {
2046   { TT_EGREP,    zIsc_Sys_LimitsSelect0, (regex_t*)NULL }, };
2047
2048 /*
2049  *  Fix Command Arguments for Isc_Sys_Limits
2050  */
2051 const char* apzIsc_Sys_LimitsPatch[] = { "sed",
2052     "-e", "/CHILD_MAX/s,/\\* Max, Max,",
2053     "-e", "/OPEN_MAX/s,/\\* Max, Max,",
2054     (char*)NULL };
2055
2056 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2057  *
2058  *  Description of Kandr_Concat fix
2059  */
2060 #define KANDR_CONCAT_FIXIDX              51
2061 tSCC zKandr_ConcatName[] =
2062      "Kandr_Concat";
2063 /*
2064  *  File name selection pattern
2065  */
2066 tSCC zKandr_ConcatList[] =
2067   "|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|";
2068 /*
2069  *  Machine/OS name selection pattern
2070  */
2071 #define apzKandr_ConcatMachs (const char**)NULL
2072
2073 /*
2074  *  content selection pattern - do fix if pattern found
2075  */
2076 tSCC zKandr_ConcatSelect0[] =
2077        "/\\*\\*/";
2078
2079 #define    KANDR_CONCAT_TEST_CT  1
2080 #define    KANDR_CONCAT_RE_CT    1
2081 tTestDesc aKandr_ConcatTests[] = {
2082   { TT_EGREP,    zKandr_ConcatSelect0, (regex_t*)NULL }, };
2083
2084 /*
2085  *  Fix Command Arguments for Kandr_Concat
2086  */
2087 const char* apzKandr_ConcatPatch[] = { "sed",
2088     "-e", "s|/\\*\\*/|##|g",
2089     (char*)NULL };
2090
2091 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2092  *
2093  *  Description of Limits_Ifndefs fix
2094  */
2095 #define LIMITS_IFNDEFS_FIXIDX            52
2096 tSCC zLimits_IfndefsName[] =
2097      "Limits_Ifndefs";
2098 /*
2099  *  File name selection pattern
2100  */
2101 tSCC zLimits_IfndefsList[] =
2102   "|limits.h|sys/limits.h|";
2103 /*
2104  *  Machine/OS name selection pattern
2105  */
2106 #define apzLimits_IfndefsMachs (const char**)NULL
2107
2108 /*
2109  *  content bypass pattern - skip fix if pattern found
2110  */
2111 tSCC zLimits_IfndefsBypass0[] =
2112        "ifndef[ \t]+FLT_MIN";
2113
2114 #define    LIMITS_IFNDEFS_TEST_CT  1
2115 #define    LIMITS_IFNDEFS_RE_CT    1
2116 tTestDesc aLimits_IfndefsTests[] = {
2117   { TT_NEGREP,   zLimits_IfndefsBypass0, (regex_t*)NULL }, };
2118
2119 /*
2120  *  Fix Command Arguments for Limits_Ifndefs
2121  */
2122 const char* apzLimits_IfndefsPatch[] = { "sed",
2123     "-e", "/[ \t]FLT_MIN[ \t]/i\\\n\
2124 #ifndef FLT_MIN\n",
2125     "-e", "/[ \t]FLT_MIN[ \t]/a\\\n\
2126 #endif\n",
2127     "-e", "/[ \t]FLT_MAX[ \t]/i\\\n\
2128 #ifndef FLT_MAX\n",
2129     "-e", "/[ \t]FLT_MAX[ \t]/a\\\n\
2130 #endif\n",
2131     "-e", "/[ \t]FLT_DIG[ \t]/i\\\n\
2132 #ifndef FLT_DIG\n",
2133     "-e", "/[ \t]FLT_DIG[ \t]/a\\\n\
2134 #endif\n",
2135     "-e", "/[ \t]DBL_MIN[ \t]/i\\\n\
2136 #ifndef DBL_MIN\n",
2137     "-e", "/[ \t]DBL_MIN[ \t]/a\\\n\
2138 #endif\n",
2139     "-e", "/[ \t]DBL_MAX[ \t]/i\\\n\
2140 #ifndef DBL_MAX\n",
2141     "-e", "/[ \t]DBL_MAX[ \t]/a\\\n\
2142 #endif\n",
2143     "-e", "/[ \t]DBL_DIG[ \t]/i\\\n\
2144 #ifndef DBL_DIG\n",
2145     "-e", "/[ \t]DBL_DIG[ \t]/a\\\n\
2146 #endif\n",
2147     "-e", "/^\\(\\/\\*#define\tHUGE_VAL\t3\\.[0-9e+]* *\\)\\/\\*/s//\\1/",
2148     (char*)NULL };
2149
2150 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2151  *
2152  *  Description of Lynx_Void_Int fix
2153  */
2154 #define LYNX_VOID_INT_FIXIDX             53
2155 tSCC zLynx_Void_IntName[] =
2156      "Lynx_Void_Int";
2157 /*
2158  *  File name selection pattern
2159  */
2160 tSCC zLynx_Void_IntList[] =
2161   "|curses.h|";
2162 /*
2163  *  Machine/OS name selection pattern
2164  */
2165 #define apzLynx_Void_IntMachs (const char**)NULL
2166
2167 /*
2168  *  content selection pattern - do fix if pattern found
2169  */
2170 tSCC zLynx_Void_IntSelect0[] =
2171        "#[ \t]*define[ \t]+void[ \t]+int";
2172
2173 #define    LYNX_VOID_INT_TEST_CT  1
2174 #define    LYNX_VOID_INT_RE_CT    1
2175 tTestDesc aLynx_Void_IntTests[] = {
2176   { TT_EGREP,    zLynx_Void_IntSelect0, (regex_t*)NULL }, };
2177
2178 /*
2179  *  Fix Command Arguments for Lynx_Void_Int
2180  */
2181 const char* apzLynx_Void_IntPatch[] = { "sed",
2182     "-e", "/#[ \t]*define[ \t][ \t]*void[ \t]int/d",
2183     (char*)NULL };
2184
2185 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2186  *
2187  *  Description of Lynxos_Fcntl_Proto fix
2188  */
2189 #define LYNXOS_FCNTL_PROTO_FIXIDX        54
2190 tSCC zLynxos_Fcntl_ProtoName[] =
2191      "Lynxos_Fcntl_Proto";
2192 /*
2193  *  File name selection pattern
2194  */
2195 tSCC zLynxos_Fcntl_ProtoList[] =
2196   "|fcntl.h|";
2197 /*
2198  *  Machine/OS name selection pattern
2199  */
2200 #define apzLynxos_Fcntl_ProtoMachs (const char**)NULL
2201
2202 /*
2203  *  content selection pattern - do fix if pattern found
2204  */
2205 tSCC zLynxos_Fcntl_ProtoSelect0[] =
2206        "fcntl.*\\(int, int, int\\)";
2207
2208 #define    LYNXOS_FCNTL_PROTO_TEST_CT  1
2209 #define    LYNXOS_FCNTL_PROTO_RE_CT    1
2210 tTestDesc aLynxos_Fcntl_ProtoTests[] = {
2211   { TT_EGREP,    zLynxos_Fcntl_ProtoSelect0, (regex_t*)NULL }, };
2212
2213 /*
2214  *  Fix Command Arguments for Lynxos_Fcntl_Proto
2215  */
2216 const char* apzLynxos_Fcntl_ProtoPatch[] = { "sed",
2217     "-e", "s/\\(fcntl.*(int, int, \\)int)/\\1...)/",
2218     (char*)NULL };
2219
2220 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2221  *
2222  *  Description of M88k_Bad_Hypot_Opt fix
2223  */
2224 #define M88K_BAD_HYPOT_OPT_FIXIDX        55
2225 tSCC zM88k_Bad_Hypot_OptName[] =
2226      "M88k_Bad_Hypot_Opt";
2227 /*
2228  *  File name selection pattern
2229  */
2230 tSCC zM88k_Bad_Hypot_OptList[] =
2231   "|math.h|";
2232 /*
2233  *  Machine/OS name selection pattern
2234  */
2235 tSCC* apzM88k_Bad_Hypot_OptMachs[] = {
2236         "m88k-motorola-sysv3*",
2237         (const char*)NULL };
2238 #define M88K_BAD_HYPOT_OPT_TEST_CT  0
2239 #define M88K_BAD_HYPOT_OPT_RE_CT    0
2240 #define aM88k_Bad_Hypot_OptTests   (tTestDesc*)NULL
2241
2242 /*
2243  *  Fix Command Arguments for M88k_Bad_Hypot_Opt
2244  */
2245 const char* apzM88k_Bad_Hypot_OptPatch[] = { "sed",
2246     "-e", "s/extern double floor(), ceil(), fmod(), fabs();/extern double floor(), ceil(), fmod(), fabs _PARAMS((double));/",
2247     "-e", "/^extern double hypot();$/a\\\n\
2248 \\/* Workaround a stupid Motorola optimization if one\\\n\
2249    of x or y is 0.0 and the other is negative!  *\\/\\\n\
2250 #ifdef __STDC__\\\n\
2251 static __inline__ double fake_hypot (double x, double y)\\\n\
2252 #else\\\n\
2253 static __inline__ double fake_hypot (x, y)\\\n\
2254 \tdouble x, y;\\\n\
2255 #endif\\\n\
2256 {\\\n\
2257 \treturn fabs (hypot (x, y));\\\n\
2258 }\\\n\
2259 #define hypot\tfake_hypot\n",
2260     (char*)NULL };
2261
2262 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2263  *
2264  *  Description of M88k_Bad_S_If fix
2265  */
2266 #define M88K_BAD_S_IF_FIXIDX             56
2267 tSCC zM88k_Bad_S_IfName[] =
2268      "M88k_Bad_S_If";
2269 /*
2270  *  File name selection pattern
2271  */
2272 tSCC zM88k_Bad_S_IfList[] =
2273   "|sys/stat.h|";
2274 /*
2275  *  Machine/OS name selection pattern
2276  */
2277 tSCC* apzM88k_Bad_S_IfMachs[] = {
2278         "m88k-*-sysv3*",
2279         (const char*)NULL };
2280
2281 /*
2282  *  content selection pattern - do fix if pattern found
2283  */
2284 tSCC zM88k_Bad_S_IfSelect0[] =
2285        "#define[ \t]+S_IS[A-Z]*(m)[ \t]";
2286
2287 #define    M88K_BAD_S_IF_TEST_CT  1
2288 #define    M88K_BAD_S_IF_RE_CT    1
2289 tTestDesc aM88k_Bad_S_IfTests[] = {
2290   { TT_EGREP,    zM88k_Bad_S_IfSelect0, (regex_t*)NULL }, };
2291
2292 /*
2293  *  Fix Command Arguments for M88k_Bad_S_If
2294  */
2295 const char* apzM88k_Bad_S_IfPatch[] = { "sed",
2296     "-e", "s/^\\(#define[ \t]*S_IS[A-Z]*(m)\\)[ \t]*(m[ \t]*&[ \t]*\\(S_IF[A-Z][A-Z][A-Z][A-Z]*\\)[ \t]*)/\\1 (((m)\\&S_IFMT)==\\2)/",
2297     "-e", "s/^\\(#define[ \t]*S_IS[A-Z]*(m)\\)[ \t]*(m[ \t]*&[ \t]*\\(0[0-9]*\\)[ \t]*)/\\1 (((m)\\&S_IFMT)==\\2)/",
2298     (char*)NULL };
2299
2300 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2301  *
2302  *  Description of M88k_Multi_Incl fix
2303  */
2304 #define M88K_MULTI_INCL_FIXIDX           57
2305 tSCC zM88k_Multi_InclName[] =
2306      "M88k_Multi_Incl";
2307 /*
2308  *  File name selection pattern
2309  */
2310 tSCC zM88k_Multi_InclList[] =
2311   "|time.h|";
2312 /*
2313  *  Machine/OS name selection pattern
2314  */
2315 tSCC* apzM88k_Multi_InclMachs[] = {
2316         "m88k-tektronix-sysv3*",
2317         (const char*)NULL };
2318
2319 /*
2320  *  content bypass pattern - skip fix if pattern found
2321  */
2322 tSCC zM88k_Multi_InclBypass0[] =
2323        "#ifndef";
2324
2325 #define    M88K_MULTI_INCL_TEST_CT  1
2326 #define    M88K_MULTI_INCL_RE_CT    1
2327 tTestDesc aM88k_Multi_InclTests[] = {
2328   { TT_NEGREP,   zM88k_Multi_InclBypass0, (regex_t*)NULL }, };
2329
2330 /*
2331  *  Fix Command Arguments for M88k_Multi_Incl
2332  */
2333 const char* apzM88k_Multi_InclPatch[] = { "sh", "-c",
2334     "echo Fixing $file, to protect against multiple inclusion. >&2\n\
2335       cpp_wrapper=`echo $file | sed -e 's,\\.,_,g' -e 's,/,_,g'`\n\
2336       echo \"#ifndef __GCC_GOT_${cpp_wrapper}_\"\n\
2337       echo \"#define __GCC_GOT_${cpp_wrapper}_\"\n\
2338       cat\n\
2339       echo \"#endif /* ! __GCC_GOT_${cpp_wrapper}_ */\"",
2340     (char*)NULL };
2341
2342 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2343  *
2344  *  Description of Machine_Name fix
2345  */
2346 #define MACHINE_NAME_FIXIDX              58
2347 tSCC zMachine_NameName[] =
2348      "Machine_Name";
2349 /*
2350  *  File name selection pattern
2351  */
2352 #define zMachine_NameList (char*)NULL
2353 /*
2354  *  Machine/OS name selection pattern
2355  */
2356 #define apzMachine_NameMachs (const char**)NULL
2357
2358 /*
2359  *  content selection pattern - do fix if pattern found
2360  *  This is a special pattern that not all egrep commands
2361  *  are capable of coping with.  We use the GNU library, tho :)
2362  */
2363 tSCC zMachine_NameSelect0[] =
2364        "^#[ \t]*(if|elif).*[^a-zA-Z0-9_](M32|_*MIPSE[LB]|_*SYSTYPE_[A-Z0-9]|_*[Rr][34]000|_*host_mips|_*i386|_*mips|bsd4|is68k|m[68]8k|mc680|news|ns32000|pdp11|pyr|sel|sony_news|sparc|sun|tahoe|tower|u370|u3b|unix|vax)";
2365
2366 #define    MACHINE_NAME_TEST_CT  1
2367 #define    MACHINE_NAME_RE_CT    1
2368 tTestDesc aMachine_NameTests[] = {
2369   { TT_EGREP,    zMachine_NameSelect0, (regex_t*)NULL }, };
2370
2371 /*
2372  *  Fix Command Arguments for Machine_Name
2373  */
2374 const char* apzMachine_NamePatch[] = { "sed",
2375     "-e", ":loop\n\
2376 /\\\\$/N\n\
2377 s/\\\\$/\\\\+++fixinc_eol+++/\n\
2378 /\\\\$/b loop\n\
2379 s/\\\\+++fixinc_eol+++/\\\\/g\n\
2380 /#[\t ]*[el]*if/ {\n\
2381 \ts/[a-zA-Z0-9_][a-zA-Z0-9_]*/ & /g\n\
2382 \ts/ M32 / __M32__ /g\n\
2383 \ts/ _*MIPSE\\([LB]\\) / __MIPSE\\1__ /g\n\
2384 \ts/ _*SYSTYPE_\\([A-Z0-9]*\\) / __SYSTYPE_\\1__ /g\n\
2385 \ts/ _*\\([Rr][34]\\)000 / __\\1000__ /g\n\
2386 \ts/ _*host_mips / __host_mips__ /g\n\
2387 \ts/ _*i386 / __i386__ /g\n\
2388 \ts/ _*mips / __mips__ /g\n\
2389 \ts/ bsd4\\([0-9]\\) / __bsd4\\1__ /g\n\
2390 \ts/ is68k / __is68k__ /g\n\
2391 \ts/ m68k / __m68k__ /g\n\
2392 \ts/ m88k / __m88k__ /g\n\
2393 \ts/ mc680\\([0-9]\\)0 / __mc680\\10__ /g\n\
2394 \ts/ news\\([0-9]*\\) / __news\\1__ /g\n\
2395 \ts/ ns32000 / __ns32000__ /g\n\
2396 \ts/ pdp11 / __pdp11__ /g\n\
2397 \ts/ pyr / __pyr__ /g\n\
2398 \ts/ sel / __sel__ /g\n\
2399 \ts/ sony_news / __sony_news__ /g\n\
2400 \ts/ sparc / __sparc__ /g\n\
2401 \ts/ sun\\([a-z0-9]*\\) / __sun\\1__ /g\n\
2402 \ts/ tahoe / __tahoe__ /g\n\
2403 \ts/ tower\\([_0-9]*\\) / __tower\\1__ /g\n\
2404 \ts/ u370 / __u370__ /g\n\
2405 \ts/ u3b\\([0-9]*\\) / __u3b\\1__ /g\n\
2406 \ts/ unix / __unix__ /g\n\
2407 \ts/ vax / __vax__ /g\n\
2408 \ts/ \\([a-zA-Z0-9_][a-zA-Z0-9_]*\\) /\\1/g\n\
2409 \t}",
2410     (char*)NULL };
2411
2412 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2413  *
2414  *  Description of Math_Exception fix
2415  */
2416 #define MATH_EXCEPTION_FIXIDX            59
2417 tSCC zMath_ExceptionName[] =
2418      "Math_Exception";
2419 /*
2420  *  File name selection pattern
2421  */
2422 tSCC zMath_ExceptionList[] =
2423   "|math.h|";
2424 /*
2425  *  Machine/OS name selection pattern
2426  */
2427 #define apzMath_ExceptionMachs (const char**)NULL
2428
2429 /*
2430  *  content selection pattern - do fix if pattern found
2431  */
2432 tSCC zMath_ExceptionSelect0[] =
2433        "struct exception";
2434
2435 /*
2436  *  content bypass pattern - skip fix if pattern found
2437  */
2438 tSCC zMath_ExceptionBypass0[] =
2439        "We have a problem when using C++";
2440
2441 #define    MATH_EXCEPTION_TEST_CT  2
2442 #define    MATH_EXCEPTION_RE_CT    2
2443 tTestDesc aMath_ExceptionTests[] = {
2444   { TT_NEGREP,   zMath_ExceptionBypass0, (regex_t*)NULL },
2445   { TT_EGREP,    zMath_ExceptionSelect0, (regex_t*)NULL }, };
2446
2447 /*
2448  *  Fix Command Arguments for Math_Exception
2449  */
2450 const char* apzMath_ExceptionPatch[] = { "sed",
2451     "-e", "/struct exception/i\\\n\
2452 #ifdef __cplusplus\\\n\
2453 #define exception __math_exception\\\n\
2454 #endif\n",
2455     "-e", "/struct exception/a\\\n\
2456 #ifdef __cplusplus\\\n\
2457 #undef exception\\\n\
2458 #endif\n",
2459     (char*)NULL };
2460
2461 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2462  *
2463  *  Description of Math_Huge_Val_From_Dbl_Max fix
2464  */
2465 #define MATH_HUGE_VAL_FROM_DBL_MAX_FIXIDX 60
2466 tSCC zMath_Huge_Val_From_Dbl_MaxName[] =
2467      "Math_Huge_Val_From_Dbl_Max";
2468 /*
2469  *  File name selection pattern
2470  */
2471 tSCC zMath_Huge_Val_From_Dbl_MaxList[] =
2472   "|math.h|";
2473 /*
2474  *  Machine/OS name selection pattern
2475  */
2476 #define apzMath_Huge_Val_From_Dbl_MaxMachs (const char**)NULL
2477
2478 /*
2479  *  content selection pattern - do fix if pattern found
2480  */
2481 tSCC zMath_Huge_Val_From_Dbl_MaxSelect0[] =
2482        "define[ \t]*HUGE_VAL[ \t]*DBL_MAX";
2483
2484 /*
2485  *  content bypass pattern - skip fix if pattern found
2486  */
2487 tSCC zMath_Huge_Val_From_Dbl_MaxBypass0[] =
2488        "define[ \t]*DBL_MAX";
2489
2490 #define    MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT  2
2491 #define    MATH_HUGE_VAL_FROM_DBL_MAX_RE_CT    2
2492 tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = {
2493   { TT_NEGREP,   zMath_Huge_Val_From_Dbl_MaxBypass0, (regex_t*)NULL },
2494   { TT_EGREP,    zMath_Huge_Val_From_Dbl_MaxSelect0, (regex_t*)NULL }, };
2495
2496 /*
2497  *  Fix Command Arguments for Math_Huge_Val_From_Dbl_Max
2498  */
2499 const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c",
2500     "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h 2>/dev/null`\n\
2501 \n\
2502 \tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\
2503 \tthen sed -e '/define[ \t]*HUGE_VAL[ \t]*DBL_MAX/s/DBL_MAX/'\"$dbl_max_def/\"\n\
2504 \telse cat\n\
2505 \tfi",
2506     (char*)NULL };
2507
2508 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2509  *
2510  *  Description of Math_Huge_Val_Ifndef fix
2511  */
2512 #define MATH_HUGE_VAL_IFNDEF_FIXIDX      61
2513 tSCC zMath_Huge_Val_IfndefName[] =
2514      "Math_Huge_Val_Ifndef";
2515 /*
2516  *  File name selection pattern
2517  */
2518 tSCC zMath_Huge_Val_IfndefList[] =
2519   "|math/math.h|";
2520 /*
2521  *  Machine/OS name selection pattern
2522  */
2523 #define apzMath_Huge_Val_IfndefMachs (const char**)NULL
2524
2525 /*
2526  *  content selection pattern - do fix if pattern found
2527  */
2528 tSCC zMath_Huge_Val_IfndefSelect0[] =
2529        "define[ \t]*HUGE_VAL";
2530
2531 #define    MATH_HUGE_VAL_IFNDEF_TEST_CT  1
2532 #define    MATH_HUGE_VAL_IFNDEF_RE_CT    1
2533 tTestDesc aMath_Huge_Val_IfndefTests[] = {
2534   { TT_EGREP,    zMath_Huge_Val_IfndefSelect0, (regex_t*)NULL }, };
2535
2536 /*
2537  *  Fix Command Arguments for Math_Huge_Val_Ifndef
2538  */
2539 const char* apzMath_Huge_Val_IfndefPatch[] = { "sed",
2540     "-e", "/define[ \t]HUGE_VAL[ \t]/i\\\n\
2541 #ifndef HUGE_VAL\n",
2542     "-e", "/define[ \t]HUGE_VAL[ \t]/a\\\n\
2543 #endif\n",
2544     (char*)NULL };
2545
2546 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2547  *
2548  *  Description of Nested_Comment fix
2549  */
2550 #define NESTED_COMMENT_FIXIDX            62
2551 tSCC zNested_CommentName[] =
2552      "Nested_Comment";
2553 /*
2554  *  File name selection pattern
2555  */
2556 tSCC zNested_CommentList[] =
2557   "|rpc/rpc.h|";
2558 /*
2559  *  Machine/OS name selection pattern
2560  */
2561 #define apzNested_CommentMachs (const char**)NULL
2562 #define NESTED_COMMENT_TEST_CT  0
2563 #define NESTED_COMMENT_RE_CT    0
2564 #define aNested_CommentTests   (tTestDesc*)NULL
2565
2566 /*
2567  *  Fix Command Arguments for Nested_Comment
2568  */
2569 const char* apzNested_CommentPatch[] = { "sed",
2570     "-e", "s@^\\(/\\*.*rpc/auth_des.h>.*\\)/\\*@\\1*/ /*@",
2571     (char*)NULL };
2572
2573 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2574  *
2575  *  Description of News_Os_Recursion fix
2576  */
2577 #define NEWS_OS_RECURSION_FIXIDX         63
2578 tSCC zNews_Os_RecursionName[] =
2579      "News_Os_Recursion";
2580 /*
2581  *  File name selection pattern
2582  */
2583 tSCC zNews_Os_RecursionList[] =
2584   "|stdlib.h|";
2585 /*
2586  *  Machine/OS name selection pattern
2587  */
2588 #define apzNews_Os_RecursionMachs (const char**)NULL
2589
2590 /*
2591  *  content selection pattern - do fix if pattern found
2592  */
2593 tSCC zNews_Os_RecursionSelect0[] =
2594        "#include <stdlib.h>";
2595
2596 #define    NEWS_OS_RECURSION_TEST_CT  1
2597 #define    NEWS_OS_RECURSION_RE_CT    1
2598 tTestDesc aNews_Os_RecursionTests[] = {
2599   { TT_EGREP,    zNews_Os_RecursionSelect0, (regex_t*)NULL }, };
2600
2601 /*
2602  *  Fix Command Arguments for News_Os_Recursion
2603  */
2604 const char* apzNews_Os_RecursionPatch[] = { "sed",
2605     "-e", "/^#include <stdlib.h>/i\\\n\
2606 #ifdef BOGUS_RECURSION\n",
2607     "-e", "/^#include <stdlib.h>/a\\\n\
2608 #endif\n",
2609     (char*)NULL };
2610
2611 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2612  *
2613  *  Description of Next_Math_Prefix fix
2614  */
2615 #define NEXT_MATH_PREFIX_FIXIDX          64
2616 tSCC zNext_Math_PrefixName[] =
2617      "Next_Math_Prefix";
2618 /*
2619  *  File name selection pattern
2620  */
2621 tSCC zNext_Math_PrefixList[] =
2622   "|ansi/math.h|";
2623 /*
2624  *  Machine/OS name selection pattern
2625  */
2626 #define apzNext_Math_PrefixMachs (const char**)NULL
2627
2628 /*
2629  *  content selection pattern - do fix if pattern found
2630  */
2631 tSCC zNext_Math_PrefixSelect0[] =
2632        "^extern.*double.*__const__.*";
2633
2634 #define    NEXT_MATH_PREFIX_TEST_CT  1
2635 #define    NEXT_MATH_PREFIX_RE_CT    1
2636 tTestDesc aNext_Math_PrefixTests[] = {
2637   { TT_EGREP,    zNext_Math_PrefixSelect0, (regex_t*)NULL }, };
2638
2639 /*
2640  *  Fix Command Arguments for Next_Math_Prefix
2641  */
2642 const char* apzNext_Math_PrefixPatch[] = { "sed",
2643     "-e", "/^extern.*double.*__const__.*sqrt(/s/__const__//",
2644     "-e", "/^extern.*double.*__const__.*fabs(/s/__const__//",
2645     "-e", "/^extern.*double.*__const__.*cos(/s/__const__//",
2646     "-e", "/^extern.*double.*__const__.*hypot(/s/__const__//",
2647     "-e", "/^extern.*double.*__const__.*sin(/s/__const__//",
2648     (char*)NULL };
2649
2650 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2651  *
2652  *  Description of Next_Template fix
2653  */
2654 #define NEXT_TEMPLATE_FIXIDX             65
2655 tSCC zNext_TemplateName[] =
2656      "Next_Template";
2657 /*
2658  *  File name selection pattern
2659  */
2660 tSCC zNext_TemplateList[] =
2661   "|bsd/libc.h|";
2662 /*
2663  *  Machine/OS name selection pattern
2664  */
2665 #define apzNext_TemplateMachs (const char**)NULL
2666
2667 /*
2668  *  content selection pattern - do fix if pattern found
2669  */
2670 tSCC zNext_TemplateSelect0[] =
2671        "template";
2672
2673 #define    NEXT_TEMPLATE_TEST_CT  1
2674 #define    NEXT_TEMPLATE_RE_CT    1
2675 tTestDesc aNext_TemplateTests[] = {
2676   { TT_EGREP,    zNext_TemplateSelect0, (regex_t*)NULL }, };
2677
2678 /*
2679  *  Fix Command Arguments for Next_Template
2680  */
2681 const char* apzNext_TemplatePatch[] = { "sed",
2682     "-e", "/\\(.*template\\)/s/template//",
2683     "-e", "/extern.*volatile.*void.*abort/s/volatile//",
2684     (char*)NULL };
2685
2686 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2687  *
2688  *  Description of Next_Volitile fix
2689  */
2690 #define NEXT_VOLITILE_FIXIDX             66
2691 tSCC zNext_VolitileName[] =
2692      "Next_Volitile";
2693 /*
2694  *  File name selection pattern
2695  */
2696 tSCC zNext_VolitileList[] =
2697   "|ansi/stdlib.h|";
2698 /*
2699  *  Machine/OS name selection pattern
2700  */
2701 #define apzNext_VolitileMachs (const char**)NULL
2702
2703 /*
2704  *  content selection pattern - do fix if pattern found
2705  */
2706 tSCC zNext_VolitileSelect0[] =
2707        "volatile";
2708
2709 #define    NEXT_VOLITILE_TEST_CT  1
2710 #define    NEXT_VOLITILE_RE_CT    1
2711 tTestDesc aNext_VolitileTests[] = {
2712   { TT_EGREP,    zNext_VolitileSelect0, (regex_t*)NULL }, };
2713
2714 /*
2715  *  Fix Command Arguments for Next_Volitile
2716  */
2717 const char* apzNext_VolitilePatch[] = { "sed",
2718     "-e", "/extern.*volatile.*void.*exit/s/volatile//",
2719     "-e", "/extern.*volatile.*void.*abort/s/volatile//",
2720     (char*)NULL };
2721
2722 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2723  *
2724  *  Description of Next_Wait_Union fix
2725  */
2726 #define NEXT_WAIT_UNION_FIXIDX           67
2727 tSCC zNext_Wait_UnionName[] =
2728      "Next_Wait_Union";
2729 /*
2730  *  File name selection pattern
2731  */
2732 tSCC zNext_Wait_UnionList[] =
2733   "|sys/wait.h|";
2734 /*
2735  *  Machine/OS name selection pattern
2736  */
2737 #define apzNext_Wait_UnionMachs (const char**)NULL
2738
2739 /*
2740  *  content selection pattern - do fix if pattern found
2741  */
2742 tSCC zNext_Wait_UnionSelect0[] =
2743        "wait\\(union wait";
2744
2745 #define    NEXT_WAIT_UNION_TEST_CT  1
2746 #define    NEXT_WAIT_UNION_RE_CT    1
2747 tTestDesc aNext_Wait_UnionTests[] = {
2748   { TT_EGREP,    zNext_Wait_UnionSelect0, (regex_t*)NULL }, };
2749
2750 /*
2751  *  Fix Command Arguments for Next_Wait_Union
2752  */
2753 const char* apzNext_Wait_UnionPatch[] = { "sed",
2754     "-e", "s@wait(union wait@wait(void@",
2755     (char*)NULL };
2756
2757 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2758  *
2759  *  Description of Nodeent_Syntax fix
2760  */
2761 #define NODEENT_SYNTAX_FIXIDX            68
2762 tSCC zNodeent_SyntaxName[] =
2763      "Nodeent_Syntax";
2764 /*
2765  *  File name selection pattern
2766  */
2767 tSCC zNodeent_SyntaxList[] =
2768   "|netdnet/dnetdb.h|";
2769 /*
2770  *  Machine/OS name selection pattern
2771  */
2772 #define apzNodeent_SyntaxMachs (const char**)NULL
2773 #define NODEENT_SYNTAX_TEST_CT  0
2774 #define NODEENT_SYNTAX_RE_CT    0
2775 #define aNodeent_SyntaxTests   (tTestDesc*)NULL
2776
2777 /*
2778  *  Fix Command Arguments for Nodeent_Syntax
2779  */
2780 const char* apzNodeent_SyntaxPatch[] = { "sed",
2781     "-e", "s/char.*na_addr *$/char *na_addr;/",
2782     (char*)NULL };
2783
2784 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2785  *
2786  *  Description of Osf_Namespace_A fix
2787  */
2788 #define OSF_NAMESPACE_A_FIXIDX           69
2789 tSCC zOsf_Namespace_AName[] =
2790      "Osf_Namespace_A";
2791 /*
2792  *  File name selection pattern
2793  */
2794 tSCC zOsf_Namespace_AList[] =
2795   "|reg_types.h|sys/lc_core.h|";
2796 /*
2797  *  Machine/OS name selection pattern
2798  */
2799 #define apzOsf_Namespace_AMachs (const char**)NULL
2800
2801 /*
2802  *  perform the 'test' shell command - do fix on success
2803  */
2804 tSCC zOsf_Namespace_ATest0[] =
2805        " -r reg_types.h";
2806 tSCC zOsf_Namespace_ATest1[] =
2807        " -r sys/lc_core.h";
2808 tSCC zOsf_Namespace_ATest2[] =
2809        " -n \"`grep '} regex_t;' reg_types.h`\"";
2810 tSCC zOsf_Namespace_ATest3[] =
2811        " -z \"`grep __regex_t regex.h`\"";
2812
2813 #define    OSF_NAMESPACE_A_TEST_CT  4
2814 #define    OSF_NAMESPACE_A_RE_CT    0
2815 tTestDesc aOsf_Namespace_ATests[] = {
2816   { TT_TEST,     zOsf_Namespace_ATest0,   0 /* unused */ },
2817   { TT_TEST,     zOsf_Namespace_ATest1,   0 /* unused */ },
2818   { TT_TEST,     zOsf_Namespace_ATest2,   0 /* unused */ },
2819   { TT_TEST,     zOsf_Namespace_ATest3,   0 /* unused */ }, };
2820
2821 /*
2822  *  Fix Command Arguments for Osf_Namespace_A
2823  */
2824 const char* apzOsf_Namespace_APatch[] = { "sed",
2825     "-e", "s/regex_t/__regex_t/g",
2826     "-e", "s/regoff_t/__regoff_t/g",
2827     "-e", "s/regmatch_t/__regmatch_t/g",
2828     (char*)NULL };
2829
2830 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2831  *
2832  *  Description of Osf_Namespace_B fix
2833  */
2834 #define OSF_NAMESPACE_B_FIXIDX           70
2835 tSCC zOsf_Namespace_BName[] =
2836      "Osf_Namespace_B";
2837 /*
2838  *  File name selection pattern
2839  */
2840 tSCC zOsf_Namespace_BList[] =
2841   "|regex.h|";
2842 /*
2843  *  Machine/OS name selection pattern
2844  */
2845 #define apzOsf_Namespace_BMachs (const char**)NULL
2846
2847 /*
2848  *  perform the 'test' shell command - do fix on success
2849  */
2850 tSCC zOsf_Namespace_BTest0[] =
2851        " -r reg_types.h";
2852 tSCC zOsf_Namespace_BTest1[] =
2853        " -r sys/lc_core.h";
2854 tSCC zOsf_Namespace_BTest2[] =
2855        " -n \"`grep '} regex_t;' reg_types.h`\"";
2856 tSCC zOsf_Namespace_BTest3[] =
2857        " -z \"`grep __regex_t regex.h`\"";
2858
2859 #define    OSF_NAMESPACE_B_TEST_CT  4
2860 #define    OSF_NAMESPACE_B_RE_CT    0
2861 tTestDesc aOsf_Namespace_BTests[] = {
2862   { TT_TEST,     zOsf_Namespace_BTest0,   0 /* unused */ },
2863   { TT_TEST,     zOsf_Namespace_BTest1,   0 /* unused */ },
2864   { TT_TEST,     zOsf_Namespace_BTest2,   0 /* unused */ },
2865   { TT_TEST,     zOsf_Namespace_BTest3,   0 /* unused */ }, };
2866
2867 /*
2868  *  Fix Command Arguments for Osf_Namespace_B
2869  */
2870 const char* apzOsf_Namespace_BPatch[] = { "sed",
2871     "-e", "/#include <reg_types.h>/a\\\n\
2872 typedef __regex_t\tregex_t;\\\n\
2873 typedef __regoff_t\tregoff_t;\\\n\
2874 typedef __regmatch_t\tregmatch_t;\n",
2875     (char*)NULL };
2876
2877 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2878  *
2879  *  Description of Pthread_Page_Size fix
2880  */
2881 #define PTHREAD_PAGE_SIZE_FIXIDX         71
2882 tSCC zPthread_Page_SizeName[] =
2883      "Pthread_Page_Size";
2884 /*
2885  *  File name selection pattern
2886  */
2887 tSCC zPthread_Page_SizeList[] =
2888   "|pthread.h|";
2889 /*
2890  *  Machine/OS name selection pattern
2891  */
2892 #define apzPthread_Page_SizeMachs (const char**)NULL
2893
2894 /*
2895  *  content selection pattern - do fix if pattern found
2896  */
2897 tSCC zPthread_Page_SizeSelect0[] =
2898        "^int __page_size";
2899
2900 #define    PTHREAD_PAGE_SIZE_TEST_CT  1
2901 #define    PTHREAD_PAGE_SIZE_RE_CT    1
2902 tTestDesc aPthread_Page_SizeTests[] = {
2903   { TT_EGREP,    zPthread_Page_SizeSelect0, (regex_t*)NULL }, };
2904
2905 /*
2906  *  Fix Command Arguments for Pthread_Page_Size
2907  */
2908 const char* apzPthread_Page_SizePatch[] = { "sed",
2909     "-e", "s/^int __page_size/extern int __page_size/",
2910     (char*)NULL };
2911
2912 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2913  *
2914  *  Description of Read_Ret_Type fix
2915  */
2916 #define READ_RET_TYPE_FIXIDX             72
2917 tSCC zRead_Ret_TypeName[] =
2918      "Read_Ret_Type";
2919 /*
2920  *  File name selection pattern
2921  */
2922 tSCC zRead_Ret_TypeList[] =
2923   "|stdio.h|";
2924 /*
2925  *  Machine/OS name selection pattern
2926  */
2927 #define apzRead_Ret_TypeMachs (const char**)NULL
2928
2929 /*
2930  *  content selection pattern - do fix if pattern found
2931  */
2932 tSCC zRead_Ret_TypeSelect0[] =
2933        "extern int\t.*, fread\\(\\), fwrite\\(\\)";
2934
2935 #define    READ_RET_TYPE_TEST_CT  1
2936 #define    READ_RET_TYPE_RE_CT    1
2937 tTestDesc aRead_Ret_TypeTests[] = {
2938   { TT_EGREP,    zRead_Ret_TypeSelect0, (regex_t*)NULL }, };
2939
2940 /*
2941  *  Fix Command Arguments for Read_Ret_Type
2942  */
2943 const char* apzRead_Ret_TypePatch[] = { "sed",
2944     "-e", "s/^\\(extern int\tfclose(), fflush()\\), \\(fread(), fwrite()\\)\\(.*\\)$/extern unsigned int\t\\2;\\\n\
2945 \\1\\3/",
2946     (char*)NULL };
2947
2948 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2949  *
2950  *  Description of Rs6000_Double fix
2951  */
2952 #define RS6000_DOUBLE_FIXIDX             73
2953 tSCC zRs6000_DoubleName[] =
2954      "Rs6000_Double";
2955 /*
2956  *  File name selection pattern
2957  */
2958 tSCC zRs6000_DoubleList[] =
2959   "|math.h|";
2960 /*
2961  *  Machine/OS name selection pattern
2962  */
2963 #define apzRs6000_DoubleMachs (const char**)NULL
2964
2965 /*
2966  *  content selection pattern - do fix if pattern found
2967  */
2968 tSCC zRs6000_DoubleSelect0[] =
2969        "[^a-zA-Z_]class\\(";
2970
2971 #define    RS6000_DOUBLE_TEST_CT  1
2972 #define    RS6000_DOUBLE_RE_CT    1
2973 tTestDesc aRs6000_DoubleTests[] = {
2974   { TT_EGREP,    zRs6000_DoubleSelect0, (regex_t*)NULL }, };
2975
2976 /*
2977  *  Fix Command Arguments for Rs6000_Double
2978  */
2979 const char* apzRs6000_DoublePatch[] = { "sed",
2980     "-e", "/class[(]/i\\\n\
2981 #ifndef __cplusplus\n",
2982     "-e", "/class[(]/a\\\n\
2983 #endif\n",
2984     (char*)NULL };
2985
2986 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2987  *
2988  *  Description of Rs6000_Fchmod fix
2989  */
2990 #define RS6000_FCHMOD_FIXIDX             74
2991 tSCC zRs6000_FchmodName[] =
2992      "Rs6000_Fchmod";
2993 /*
2994  *  File name selection pattern
2995  */
2996 tSCC zRs6000_FchmodList[] =
2997   "|sys/stat.h|";
2998 /*
2999  *  Machine/OS name selection pattern
3000  */
3001 #define apzRs6000_FchmodMachs (const char**)NULL
3002
3003 /*
3004  *  content selection pattern - do fix if pattern found
3005  */
3006 tSCC zRs6000_FchmodSelect0[] =
3007        "fchmod\\(char";
3008
3009 #define    RS6000_FCHMOD_TEST_CT  1
3010 #define    RS6000_FCHMOD_RE_CT    1
3011 tTestDesc aRs6000_FchmodTests[] = {
3012   { TT_EGREP,    zRs6000_FchmodSelect0, (regex_t*)NULL }, };
3013
3014 /*
3015  *  Fix Command Arguments for Rs6000_Fchmod
3016  */
3017 const char* apzRs6000_FchmodPatch[] = { "sed",
3018     "-e", "s/fchmod(char \\*/fchmod(int/",
3019     (char*)NULL };
3020
3021 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3022  *
3023  *  Description of Rs6000_Param fix
3024  */
3025 #define RS6000_PARAM_FIXIDX              75
3026 tSCC zRs6000_ParamName[] =
3027      "Rs6000_Param";
3028 /*
3029  *  File name selection pattern
3030  */
3031 tSCC zRs6000_ParamList[] =
3032   "|stdio.h|unistd.h|";
3033 /*
3034  *  Machine/OS name selection pattern
3035  */
3036 #define apzRs6000_ParamMachs (const char**)NULL
3037
3038 /*
3039  *  content selection pattern - do fix if pattern found
3040  */
3041 tSCC zRs6000_ParamSelect0[] =
3042        "const char new";
3043
3044 #define    RS6000_PARAM_TEST_CT  1
3045 #define    RS6000_PARAM_RE_CT    1
3046 tTestDesc aRs6000_ParamTests[] = {
3047   { TT_EGREP,    zRs6000_ParamSelect0, (regex_t*)NULL }, };
3048
3049 /*
3050  *  Fix Command Arguments for Rs6000_Param
3051  */
3052 const char* apzRs6000_ParamPatch[] = { "sed",
3053     "-e", "s@rename(const char \\*old, const char \\*new)@rename(const char *_old, const char *_new)@",
3054     (char*)NULL };
3055
3056 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3057  *
3058  *  Description of Sony_Include fix
3059  */
3060 #define SONY_INCLUDE_FIXIDX              76
3061 tSCC zSony_IncludeName[] =
3062      "Sony_Include";
3063 /*
3064  *  File name selection pattern
3065  */
3066 tSCC zSony_IncludeList[] =
3067   "|machine/machparam.h|";
3068 /*
3069  *  Machine/OS name selection pattern
3070  */
3071 #define apzSony_IncludeMachs (const char**)NULL
3072
3073 /*
3074  *  content selection pattern - do fix if pattern found
3075  */
3076 tSCC zSony_IncludeSelect0[] =
3077        "\"\\.\\./machine/endian.h\"";
3078
3079 #define    SONY_INCLUDE_TEST_CT  1
3080 #define    SONY_INCLUDE_RE_CT    1
3081 tTestDesc aSony_IncludeTests[] = {
3082   { TT_EGREP,    zSony_IncludeSelect0, (regex_t*)NULL }, };
3083
3084 /*
3085  *  Fix Command Arguments for Sony_Include
3086  */
3087 const char* apzSony_IncludePatch[] = { "sed",
3088     "-e", "s@\"../machine/endian.h\"@<machine/endian.h>@",
3089     (char*)NULL };
3090
3091 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3092  *
3093  *  Description of Statsswtch fix
3094  */
3095 #define STATSSWTCH_FIXIDX                77
3096 tSCC zStatsswtchName[] =
3097      "Statsswtch";
3098 /*
3099  *  File name selection pattern
3100  */
3101 tSCC zStatsswtchList[] =
3102   "|rpcsvc/rstat.h|";
3103 /*
3104  *  Machine/OS name selection pattern
3105  */
3106 #define apzStatsswtchMachs (const char**)NULL
3107
3108 /*
3109  *  content selection pattern - do fix if pattern found
3110  */
3111 tSCC zStatsswtchSelect0[] =
3112        "boottime$";
3113
3114 #define    STATSSWTCH_TEST_CT  1
3115 #define    STATSSWTCH_RE_CT    1
3116 tTestDesc aStatsswtchTests[] = {
3117   { TT_EGREP,    zStatsswtchSelect0, (regex_t*)NULL }, };
3118
3119 /*
3120  *  Fix Command Arguments for Statsswtch
3121  */
3122 const char* apzStatsswtchPatch[] = { "sed",
3123     "-e", "s/boottime$/boottime;/",
3124     (char*)NULL };
3125
3126 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3127  *
3128  *  Description of Stdio_Va_List fix
3129  */
3130 #define STDIO_VA_LIST_FIXIDX             78
3131 tSCC zStdio_Va_ListName[] =
3132      "Stdio_Va_List";
3133 /*
3134  *  File name selection pattern
3135  */
3136 tSCC zStdio_Va_ListList[] =
3137   "|stdio.h|";
3138 /*
3139  *  Machine/OS name selection pattern
3140  */
3141 #define apzStdio_Va_ListMachs (const char**)NULL
3142
3143 /*
3144  *  content bypass pattern - skip fix if pattern found
3145  */
3146 tSCC zStdio_Va_ListBypass0[] =
3147        "__gnuc_va_list";
3148
3149 #define    STDIO_VA_LIST_TEST_CT  1
3150 #define    STDIO_VA_LIST_RE_CT    1
3151 tTestDesc aStdio_Va_ListTests[] = {
3152   { TT_NEGREP,   zStdio_Va_ListBypass0, (regex_t*)NULL }, };
3153
3154 /*
3155  *  Fix Command Arguments for Stdio_Va_List
3156  */
3157 const char* apzStdio_Va_ListPatch[] = { "sh", "-c",
3158     "if ( egrep \"__need___va_list\" $file ) > /dev/null 2>&1 ; then\n\
3159     :\n\
3160   else\n\
3161     echo \"#define __need___va_list\"\n\
3162     echo \"#include <stdarg.h>\"\n\
3163   fi\n\
3164 \n\
3165   sed -e 's@ va_list @ __gnuc_va_list @' \\\n\
3166       -e 's@ va_list)@ __gnuc_va_list)@' \\\n\
3167       -e 's@ _BSD_VA_LIST_))@ __gnuc_va_list))@' \\\n\
3168       -e 's@ _VA_LIST_));@ __gnuc_va_list));@' \\\n\
3169       -e 's@ va_list@ __va_list__@' \\\n\
3170       -e 's@\\*va_list@*__va_list__@' \\\n\
3171       -e 's@ __va_list)@ __gnuc_va_list)@' \\\n\
3172       -e 's@GNUC_VA_LIST@GNUC_Va_LIST@' \\\n\
3173       -e 's@_NEED___VA_LIST@_NEED___Va_LIST@' \\\n\
3174       -e 's@VA_LIST@DUMMY_VA_LIST@' \\\n\
3175       -e 's@_Va_LIST@_VA_LIST@'",
3176     (char*)NULL };
3177
3178 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3179  *
3180  *  Description of Sun_Bogus_Ifdef fix
3181  */
3182 #define SUN_BOGUS_IFDEF_FIXIDX           79
3183 tSCC zSun_Bogus_IfdefName[] =
3184      "Sun_Bogus_Ifdef";
3185 /*
3186  *  File name selection pattern
3187  */
3188 tSCC zSun_Bogus_IfdefList[] =
3189   "|hsfs/hsfs_spec.h|hsfs/iso_spec.h|";
3190 /*
3191  *  Machine/OS name selection pattern
3192  */
3193 #define apzSun_Bogus_IfdefMachs (const char**)NULL
3194
3195 /*
3196  *  content selection pattern - do fix if pattern found
3197  */
3198 tSCC zSun_Bogus_IfdefSelect0[] =
3199        "#ifdef __i386__ || __vax__";
3200
3201 #define    SUN_BOGUS_IFDEF_TEST_CT  1
3202 #define    SUN_BOGUS_IFDEF_RE_CT    1
3203 tTestDesc aSun_Bogus_IfdefTests[] = {
3204   { TT_EGREP,    zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };
3205
3206 /*
3207  *  Fix Command Arguments for Sun_Bogus_Ifdef
3208  */
3209 const char* apzSun_Bogus_IfdefPatch[] = { "sed",
3210     "-e", "s/\\#ifdef __i386__ || __vax__/\\#if __i386__ || __vax__/g",
3211     (char*)NULL };
3212
3213 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3214  *
3215  *  Description of Sun_Bogus_Ifdef_Sun4c fix
3216  */
3217 #define SUN_BOGUS_IFDEF_SUN4C_FIXIDX     80
3218 tSCC zSun_Bogus_Ifdef_Sun4cName[] =
3219      "Sun_Bogus_Ifdef_Sun4c";
3220 /*
3221  *  File name selection pattern
3222  */
3223 tSCC zSun_Bogus_Ifdef_Sun4cList[] =
3224   "|hsfs/hsnode.h|";
3225 /*
3226  *  Machine/OS name selection pattern
3227  */
3228 #define apzSun_Bogus_Ifdef_Sun4cMachs (const char**)NULL
3229
3230 /*
3231  *  content selection pattern - do fix if pattern found
3232  */
3233 tSCC zSun_Bogus_Ifdef_Sun4cSelect0[] =
3234        "#ifdef __i386__ || __sun4c__";
3235
3236 #define    SUN_BOGUS_IFDEF_SUN4C_TEST_CT  1
3237 #define    SUN_BOGUS_IFDEF_SUN4C_RE_CT    1
3238 tTestDesc aSun_Bogus_Ifdef_Sun4cTests[] = {
3239   { TT_EGREP,    zSun_Bogus_Ifdef_Sun4cSelect0, (regex_t*)NULL }, };
3240
3241 /*
3242  *  Fix Command Arguments for Sun_Bogus_Ifdef_Sun4c
3243  */
3244 const char* apzSun_Bogus_Ifdef_Sun4cPatch[] = { "sed",
3245     "-e", "s/\\#ifdef __i386__ || __sun4c__/\\#if __i386__ || __sun4c__/g",
3246     (char*)NULL };
3247
3248 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3249  *
3250  *  Description of Sun_Catmacro fix
3251  */
3252 #define SUN_CATMACRO_FIXIDX              81
3253 tSCC zSun_CatmacroName[] =
3254      "Sun_Catmacro";
3255 /*
3256  *  File name selection pattern
3257  */
3258 tSCC zSun_CatmacroList[] =
3259   "|pixrect/memvar.h|";
3260 /*
3261  *  Machine/OS name selection pattern
3262  */
3263 #define apzSun_CatmacroMachs (const char**)NULL
3264
3265 /*
3266  *  content selection pattern - do fix if pattern found
3267  */
3268 tSCC zSun_CatmacroSelect0[] =
3269        "^#define[ \t]+CAT\\(a,b\\)";
3270
3271 #define    SUN_CATMACRO_TEST_CT  1
3272 #define    SUN_CATMACRO_RE_CT    1
3273 tTestDesc aSun_CatmacroTests[] = {
3274   { TT_EGREP,    zSun_CatmacroSelect0, (regex_t*)NULL }, };
3275
3276 /*
3277  *  Fix Command Arguments for Sun_Catmacro
3278  */
3279 const char* apzSun_CatmacroPatch[] = { "sed",
3280     "-e", "/^#define[ \t]CAT(a,b)/ i\\\n\
3281 #ifdef __STDC__ \\\n\
3282 #define CAT(a,b) a##b\\\n\
3283 #else\n",
3284     "-e", "/^#define[ \t]CAT(a,b)/ a\\\n\
3285 #endif\n",
3286     (char*)NULL };
3287
3288 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3289  *
3290  *  Description of Sun_Malloc fix
3291  */
3292 #define SUN_MALLOC_FIXIDX                82
3293 tSCC zSun_MallocName[] =
3294      "Sun_Malloc";
3295 /*
3296  *  File name selection pattern
3297  */
3298 tSCC zSun_MallocList[] =
3299   "|malloc.h|";
3300 /*
3301  *  Machine/OS name selection pattern
3302  */
3303 #define apzSun_MallocMachs (const char**)NULL
3304 #define SUN_MALLOC_TEST_CT  0
3305 #define SUN_MALLOC_RE_CT    0
3306 #define aSun_MallocTests   (tTestDesc*)NULL
3307
3308 /*
3309  *  Fix Command Arguments for Sun_Malloc
3310  */
3311 const char* apzSun_MallocPatch[] = { "sed",
3312     "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
3313     "-e", "s/int[ \t][ \t]*free/void\tfree/g",
3314     "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
3315     "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
3316     (char*)NULL };
3317
3318 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3319  *
3320  *  Description of Sun_Memcpy fix
3321  */
3322 #define SUN_MEMCPY_FIXIDX                83
3323 tSCC zSun_MemcpyName[] =
3324      "Sun_Memcpy";
3325 /*
3326  *  File name selection pattern
3327  */
3328 tSCC zSun_MemcpyList[] =
3329   "|memory.h|";
3330 /*
3331  *  Machine/OS name selection pattern
3332  */
3333 #define apzSun_MemcpyMachs (const char**)NULL
3334
3335 /*
3336  *  content selection pattern - do fix if pattern found
3337  */
3338 tSCC zSun_MemcpySelect0[] =
3339        "/\\*\t@\\(#\\)(head/memory.h\t50.1\t |memory\\.h 1\\.[2-4] 8./../.. SMI; from S5R2 1\\.2\t)\\*/";
3340
3341 #define    SUN_MEMCPY_TEST_CT  1
3342 #define    SUN_MEMCPY_RE_CT    1
3343 tTestDesc aSun_MemcpyTests[] = {
3344   { TT_EGREP,    zSun_MemcpySelect0, (regex_t*)NULL }, };
3345
3346 /*
3347  *  Fix Command Arguments for Sun_Memcpy
3348  */
3349 const char* apzSun_MemcpyPatch[] = { "sed",
3350     "-e", "1i\\\n\
3351 /* This file was generated by fixincludes */\\\n\
3352 #ifndef __memory_h__\\\n\
3353 #define __memory_h__\\\n\
3354 \\\n\
3355 #ifdef __STDC__\\\n\
3356 extern void *memccpy();\\\n\
3357 extern void *memchr();\\\n\
3358 extern void *memcpy();\\\n\
3359 extern void *memset();\\\n\
3360 #else\\\n\
3361 extern char *memccpy();\\\n\
3362 extern char *memchr();\\\n\
3363 extern char *memcpy();\\\n\
3364 extern char *memset();\\\n\
3365 #endif /* __STDC__ */\\\n\
3366 \\\n\
3367 extern int memcmp();\\\n\
3368 \\\n\
3369 #endif /* __memory_h__ */\n",
3370     "-e", "1,$d",
3371     (char*)NULL };
3372
3373 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3374  *
3375  *  Description of Sun_Rusers_Semi fix
3376  */
3377 #define SUN_RUSERS_SEMI_FIXIDX           84
3378 tSCC zSun_Rusers_SemiName[] =
3379      "Sun_Rusers_Semi";
3380 /*
3381  *  File name selection pattern
3382  */
3383 tSCC zSun_Rusers_SemiList[] =
3384   "|rpcsvc/rusers.h|";
3385 /*
3386  *  Machine/OS name selection pattern
3387  */
3388 #define apzSun_Rusers_SemiMachs (const char**)NULL
3389
3390 /*
3391  *  content selection pattern - do fix if pattern found
3392  */
3393 tSCC zSun_Rusers_SemiSelect0[] =
3394        "_cnt$";
3395
3396 #define    SUN_RUSERS_SEMI_TEST_CT  1
3397 #define    SUN_RUSERS_SEMI_RE_CT    1
3398 tTestDesc aSun_Rusers_SemiTests[] = {
3399   { TT_EGREP,    zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };
3400
3401 /*
3402  *  Fix Command Arguments for Sun_Rusers_Semi
3403  */
3404 const char* apzSun_Rusers_SemiPatch[] = { "sed",
3405     "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
3406     (char*)NULL };
3407
3408 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3409  *
3410  *  Description of Sun_Signal fix
3411  */
3412 #define SUN_SIGNAL_FIXIDX                85
3413 tSCC zSun_SignalName[] =
3414      "Sun_Signal";
3415 /*
3416  *  File name selection pattern
3417  */
3418 tSCC zSun_SignalList[] =
3419   "|sys/signal.h|signal.h|";
3420 /*
3421  *  Machine/OS name selection pattern
3422  */
3423 #define apzSun_SignalMachs (const char**)NULL
3424
3425 /*
3426  *  content selection pattern - do fix if pattern found
3427  */
3428 tSCC zSun_SignalSelect0[] =
3429        "^void\t\\(\\*signal\\(\\)\\)\\(\\);";
3430
3431 #define    SUN_SIGNAL_TEST_CT  1
3432 #define    SUN_SIGNAL_RE_CT    1
3433 tTestDesc aSun_SignalTests[] = {
3434   { TT_EGREP,    zSun_SignalSelect0, (regex_t*)NULL }, };
3435
3436 /*
3437  *  Fix Command Arguments for Sun_Signal
3438  */
3439 const char* apzSun_SignalPatch[] = { "sed",
3440     "-e", "/^void\t(\\*signal())();$/i\\\n\
3441 #ifdef __cplusplus\\\n\
3442 void\t(*signal(...))(...);\\\n\
3443 #else\n",
3444     "-e", "/^void\t(\\*signal())();$/a\\\n\
3445 #endif\n",
3446     (char*)NULL };
3447
3448 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3449  *
3450  *  Description of Sun_Auth_Proto fix
3451  */
3452 #define SUN_AUTH_PROTO_FIXIDX            86
3453 tSCC zSun_Auth_ProtoName[] =
3454      "Sun_Auth_Proto";
3455 /*
3456  *  File name selection pattern
3457  */
3458 tSCC zSun_Auth_ProtoList[] =
3459   "|rpc/auth.h|rpc/clnt.h|rpc/svc.h|rpc/xdr.h|";
3460 /*
3461  *  Machine/OS name selection pattern
3462  */
3463 #define apzSun_Auth_ProtoMachs (const char**)NULL
3464
3465 /*
3466  *  content selection pattern - do fix if pattern found
3467  */
3468 tSCC zSun_Auth_ProtoSelect0[] =
3469        "\\(\\*[a-z][a-z_]*\\)\\(\\)";
3470
3471 #define    SUN_AUTH_PROTO_TEST_CT  1
3472 #define    SUN_AUTH_PROTO_RE_CT    1
3473 tTestDesc aSun_Auth_ProtoTests[] = {
3474   { TT_EGREP,    zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };
3475
3476 /*
3477  *  Fix Command Arguments for Sun_Auth_Proto
3478  */
3479 const char* apzSun_Auth_ProtoPatch[] = { "sed",
3480     "-e", "s/^\\(.*(\\*[a-z][a-z_]*)(\\)\\();.*\\)/\\\n\
3481 #ifdef __cplusplus\\\n\
3482 \\1...\\2\\\n\
3483 #else\\\n\
3484 \\1\\2\\\n\
3485 #endif/",
3486     (char*)NULL };
3487
3488 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3489  *
3490  *  Description of Sunos_Matherr_Decl fix
3491  */
3492 #define SUNOS_MATHERR_DECL_FIXIDX        87
3493 tSCC zSunos_Matherr_DeclName[] =
3494      "Sunos_Matherr_Decl";
3495 /*
3496  *  File name selection pattern
3497  */
3498 tSCC zSunos_Matherr_DeclList[] =
3499   "|math.h|";
3500 /*
3501  *  Machine/OS name selection pattern
3502  */
3503 #define apzSunos_Matherr_DeclMachs (const char**)NULL
3504
3505 /*
3506  *  content bypass pattern - skip fix if pattern found
3507  */
3508 tSCC zSunos_Matherr_DeclBypass0[] =
3509        "matherr.*struct exception";
3510
3511 #define    SUNOS_MATHERR_DECL_TEST_CT  1
3512 #define    SUNOS_MATHERR_DECL_RE_CT    1
3513 tTestDesc aSunos_Matherr_DeclTests[] = {
3514   { TT_NEGREP,   zSunos_Matherr_DeclBypass0, (regex_t*)NULL }, };
3515
3516 /*
3517  *  Fix Command Arguments for Sunos_Matherr_Decl
3518  */
3519 const char* apzSunos_Matherr_DeclPatch[] = { "sed",
3520     "-e", "/^struct exception/,$b",
3521     "-e", "/matherr/i\\\n\
3522 struct exception;\n",
3523     (char*)NULL };
3524
3525 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3526  *
3527  *  Description of Sunos_Strlen fix
3528  */
3529 #define SUNOS_STRLEN_FIXIDX              88
3530 tSCC zSunos_StrlenName[] =
3531      "Sunos_Strlen";
3532 /*
3533  *  File name selection pattern
3534  */
3535 tSCC zSunos_StrlenList[] =
3536   "|strings.h|";
3537 /*
3538  *  Machine/OS name selection pattern
3539  */
3540 #define apzSunos_StrlenMachs (const char**)NULL
3541
3542 /*
3543  *  content selection pattern - do fix if pattern found
3544  */
3545 tSCC zSunos_StrlenSelect0[] =
3546        "int[ \t]*strlen";
3547
3548 #define    SUNOS_STRLEN_TEST_CT  1
3549 #define    SUNOS_STRLEN_RE_CT    1
3550 tTestDesc aSunos_StrlenTests[] = {
3551   { TT_EGREP,    zSunos_StrlenSelect0, (regex_t*)NULL }, };
3552
3553 /*
3554  *  Fix Command Arguments for Sunos_Strlen
3555  */
3556 const char* apzSunos_StrlenPatch[] = { "sed",
3557     "-e", "s/int[ \t]*strlen();/__SIZE_TYPE__ strlen();/",
3558     (char*)NULL };
3559
3560 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3561  *
3562  *  Description of Systypes fix
3563  */
3564 #define SYSTYPES_FIXIDX                  89
3565 tSCC zSystypesName[] =
3566      "Systypes";
3567 /*
3568  *  File name selection pattern
3569  */
3570 tSCC zSystypesList[] =
3571   "|sys/types.h|stdlib.h|sys/stdtypes.h|stddef.h|memory.h|unistd.h|";
3572 /*
3573  *  Machine/OS name selection pattern
3574  */
3575 #define apzSystypesMachs (const char**)NULL
3576
3577 /*
3578  *  content selection pattern - do fix if pattern found
3579  */
3580 tSCC zSystypesSelect0[] =
3581        "typedef[ \t]+[a-z_][ \ta-z_]*[ \t](size|ptrdiff|wchar)_t";
3582
3583 #define    SYSTYPES_TEST_CT  1
3584 #define    SYSTYPES_RE_CT    1
3585 tTestDesc aSystypesTests[] = {
3586   { TT_EGREP,    zSystypesSelect0, (regex_t*)NULL }, };
3587
3588 /*
3589  *  Fix Command Arguments for Systypes
3590  */
3591 const char* apzSystypesPatch[] = { "sed",
3592     "-e", "/^[ \t]*\\*[ \t]*typedef unsigned int size_t;/N",
3593     "-e", "s/^\\([ \t]*\\*[ \t]*typedef unsigned int size_t;\\n[ \t]*\\*\\/\\)/\\1\\\n\
3594 #ifndef __SIZE_TYPE__\\\n\
3595 #define __SIZE_TYPE__ long unsigned int\\\n\
3596 #endif\\\n\
3597 typedef __SIZE_TYPE__ size_t;\\\n\
3598 /",
3599     "-e", "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]size_t/i\\\n\
3600 #ifndef __SIZE_TYPE__\\\n\
3601 #define __SIZE_TYPE__ long unsigned int\\\n\
3602 #endif\n",
3603     "-e", "s/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]size_t/typedef __SIZE_TYPE__ size_t/",
3604     "-e", "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]ptrdiff_t/i\\\n\
3605 #ifndef __PTRDIFF_TYPE__\\\n\
3606 #define __PTRDIFF_TYPE__ long int\\\n\
3607 #endif\n",
3608     "-e", "s/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]ptrdiff_t/typedef __PTRDIFF_TYPE__ ptrdiff_t/",
3609     "-e", "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]wchar_t/i\\\n\
3610 #ifndef __WCHAR_TYPE__\\\n\
3611 #define __WCHAR_TYPE__ int\\\n\
3612 #endif\\\n\
3613 #ifndef __cplusplus\n",
3614     "-e", "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]wchar_t/a\\\n\
3615 #endif\n",
3616     "-e", "s/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]wchar_t/typedef __WCHAR_TYPE__ wchar_t/",
3617     (char*)NULL };
3618
3619 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3620  *
3621  *  Description of Systypes_For_Aix fix
3622  */
3623 #define SYSTYPES_FOR_AIX_FIXIDX          90
3624 tSCC zSystypes_For_AixName[] =
3625      "Systypes_For_Aix";
3626 /*
3627  *  File name selection pattern
3628  */
3629 tSCC zSystypes_For_AixList[] =
3630   "|sys/types.h|";
3631 /*
3632  *  Machine/OS name selection pattern
3633  */
3634 #define apzSystypes_For_AixMachs (const char**)NULL
3635
3636 /*
3637  *  content selection pattern - do fix if pattern found
3638  */
3639 tSCC zSystypes_For_AixSelect0[] =
3640        "typedef[ \t][ \t]*[A-Za-z_][ \tA-Za-z_]*[ \t]size_t";
3641
3642 /*
3643  *  content bypass pattern - skip fix if pattern found
3644  */
3645 tSCC zSystypes_For_AixBypass0[] =
3646        "_GCC_SIZE_T";
3647
3648 #define    SYSTYPES_FOR_AIX_TEST_CT  2
3649 #define    SYSTYPES_FOR_AIX_RE_CT    2
3650 tTestDesc aSystypes_For_AixTests[] = {
3651   { TT_NEGREP,   zSystypes_For_AixBypass0, (regex_t*)NULL },
3652   { TT_EGREP,    zSystypes_For_AixSelect0, (regex_t*)NULL }, };
3653
3654 /*
3655  *  Fix Command Arguments for Systypes_For_Aix
3656  */
3657 const char* apzSystypes_For_AixPatch[] = { "sed",
3658     "-e", "/typedef[ \t][ \t]*[A-Za-z_][ \tA-Za-z_]*[ \t]size_t/i\\\n\
3659 #ifndef _GCC_SIZE_T\\\n\
3660 #define _GCC_SIZE_T\n",
3661     "-e", "/typedef[ \t][ \t]*[A-Za-z_][ \tA-Za-z_]*[ \t]size_t/a\\\n\
3662 #endif\n",
3663     (char*)NULL };
3664
3665 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3666  *
3667  *  Description of Sysv68_String fix
3668  */
3669 #define SYSV68_STRING_FIXIDX             91
3670 tSCC zSysv68_StringName[] =
3671      "Sysv68_String";
3672 /*
3673  *  File name selection pattern
3674  */
3675 tSCC zSysv68_StringList[] =
3676   "|string.h|";
3677 /*
3678  *  Machine/OS name selection pattern
3679  */
3680 #define apzSysv68_StringMachs (const char**)NULL
3681 #define SYSV68_STRING_TEST_CT  0
3682 #define SYSV68_STRING_RE_CT    0
3683 #define aSysv68_StringTests   (tTestDesc*)NULL
3684
3685 /*
3686  *  Fix Command Arguments for Sysv68_String
3687  */
3688 const char* apzSysv68_StringPatch[] = { "sed",
3689     "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
3690     "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
3691     "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
3692     "-e", "/^extern char$/N",
3693     "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
3694     "-e", "/^\tstrncmp(),$/N",
3695     "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
3696 extern unsigned int\\\n\
3697 \\2/",
3698     "-e", "/^extern int$/N",
3699     "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
3700     (char*)NULL };
3701
3702 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3703  *
3704  *  Description of Sysz_Stdlib_For_Sun fix
3705  */
3706 #define SYSZ_STDLIB_FOR_SUN_FIXIDX       92
3707 tSCC zSysz_Stdlib_For_SunName[] =
3708      "Sysz_Stdlib_For_Sun";
3709 /*
3710  *  File name selection pattern
3711  */
3712 tSCC zSysz_Stdlib_For_SunList[] =
3713   "|stdlib.h|";
3714 /*
3715  *  Machine/OS name selection pattern
3716  */
3717 #define apzSysz_Stdlib_For_SunMachs (const char**)NULL
3718 #define SYSZ_STDLIB_FOR_SUN_TEST_CT  0
3719 #define SYSZ_STDLIB_FOR_SUN_RE_CT    0
3720 #define aSysz_Stdlib_For_SunTests   (tTestDesc*)NULL
3721
3722 /*
3723  *  Fix Command Arguments for Sysz_Stdlib_For_Sun
3724  */
3725 const char* apzSysz_Stdlib_For_SunPatch[] = { "sed",
3726     "-e", "s/int\tabort/void\tabort/g",
3727     "-e", "s/int\tfree/void\tfree/g",
3728     "-e", "s/char[ \t]*\\*[ \t]*calloc/void \\*\tcalloc/g",
3729     "-e", "s/char[ \t]*\\*[ \t]*malloc/void \\*\tmalloc/g",
3730     "-e", "s/char[ \t]*\\*[ \t]*realloc/void \\*\trealloc/g",
3731     "-e", "s/char[ \t]*\\*[ \t]*bsearch/void \\*\tbsearch/g",
3732     "-e", "s/int[ \t][ \t]*exit/void\texit/g",
3733     "-e", "/typedef[ \ta-zA-Z_]*[ \t]size_t[ \t]*;/i\\\n\
3734 #ifndef _GCC_SIZE_T\\\n\
3735 #define _GCC_SIZE_T\n",
3736     "-e", "/typedef[ \ta-zA-Z_]*[ \t]size_t[ \t]*;/a\\\n\
3737 #endif\n",
3738     (char*)NULL };
3739
3740 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3741  *
3742  *  Description of Sysz_Stdtypes_For_Sun fix
3743  */
3744 #define SYSZ_STDTYPES_FOR_SUN_FIXIDX     93
3745 tSCC zSysz_Stdtypes_For_SunName[] =
3746      "Sysz_Stdtypes_For_Sun";
3747 /*
3748  *  File name selection pattern
3749  */
3750 tSCC zSysz_Stdtypes_For_SunList[] =
3751   "|sys/stdtypes.h|";
3752 /*
3753  *  Machine/OS name selection pattern
3754  */
3755 #define apzSysz_Stdtypes_For_SunMachs (const char**)NULL
3756 #define SYSZ_STDTYPES_FOR_SUN_TEST_CT  0
3757 #define SYSZ_STDTYPES_FOR_SUN_RE_CT    0
3758 #define aSysz_Stdtypes_For_SunTests   (tTestDesc*)NULL
3759
3760 /*
3761  *  Fix Command Arguments for Sysz_Stdtypes_For_Sun
3762  */
3763 const char* apzSysz_Stdtypes_For_SunPatch[] = { "sed",
3764     "-e", "/[\t ]size_t.*;/i\\\n\
3765 #ifndef _GCC_SIZE_T\\\n\
3766 #define _GCC_SIZE_T\n",
3767     "-e", "/[\t ]size_t.*;/a\\\n\
3768 #endif\n",
3769     "-e", "/[\t ]ptrdiff_t.*;/i\\\n\
3770 #ifndef _GCC_PTRDIFF_T\\\n\
3771 #define _GCC_PTRDIFF_T\n",
3772     "-e", "/[\t ]ptrdiff_t.*;/a\\\n\
3773 #endif\n",
3774     "-e", "/[\t ]wchar_t.*;/i\\\n\
3775 #ifndef _GCC_WCHAR_T\\\n\
3776 #define _GCC_WCHAR_T\n",
3777     "-e", "/[\t ]wchar_t.*;/a\\\n\
3778 #endif\n",
3779     (char*)NULL };
3780
3781 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3782  *
3783  *  Description of Tinfo_Cplusplus fix
3784  */
3785 #define TINFO_CPLUSPLUS_FIXIDX           94
3786 tSCC zTinfo_CplusplusName[] =
3787      "Tinfo_Cplusplus";
3788 /*
3789  *  File name selection pattern
3790  */
3791 tSCC zTinfo_CplusplusList[] =
3792   "|tinfo.h|";
3793 /*
3794  *  Machine/OS name selection pattern
3795  */
3796 #define apzTinfo_CplusplusMachs (const char**)NULL
3797
3798 /*
3799  *  content selection pattern - do fix if pattern found
3800  */
3801 tSCC zTinfo_CplusplusSelect0[] =
3802        "[ \t]_cplusplus";
3803
3804 #define    TINFO_CPLUSPLUS_TEST_CT  1
3805 #define    TINFO_CPLUSPLUS_RE_CT    1
3806 tTestDesc aTinfo_CplusplusTests[] = {
3807   { TT_EGREP,    zTinfo_CplusplusSelect0, (regex_t*)NULL }, };
3808
3809 /*
3810  *  Fix Command Arguments for Tinfo_Cplusplus
3811  */
3812 const char* apzTinfo_CplusplusPatch[] = { "sed",
3813     "-e", "s/[ \t]_cplusplus/ __cplusplus/",
3814     (char*)NULL };
3815
3816 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3817  *
3818  *  Description of Ultrix_Ansi_Compat fix
3819  */
3820 #define ULTRIX_ANSI_COMPAT_FIXIDX        95
3821 tSCC zUltrix_Ansi_CompatName[] =
3822      "Ultrix_Ansi_Compat";
3823 /*
3824  *  File name selection pattern
3825  */
3826 tSCC zUltrix_Ansi_CompatList[] =
3827   "|ansi_compat.h|";
3828 /*
3829  *  Machine/OS name selection pattern
3830  */
3831 #define apzUltrix_Ansi_CompatMachs (const char**)NULL
3832
3833 /*
3834  *  content selection pattern - do fix if pattern found
3835  */
3836 tSCC zUltrix_Ansi_CompatSelect0[] =
3837        "ULTRIX";
3838
3839 #define    ULTRIX_ANSI_COMPAT_TEST_CT  1
3840 #define    ULTRIX_ANSI_COMPAT_RE_CT    1
3841 tTestDesc aUltrix_Ansi_CompatTests[] = {
3842   { TT_EGREP,    zUltrix_Ansi_CompatSelect0, (regex_t*)NULL }, };
3843
3844 /*
3845  *  Fix Command Arguments for Ultrix_Ansi_Compat
3846  */
3847 const char* apzUltrix_Ansi_CompatPatch[] = { "sed",
3848     "-e", "1i\\\n\
3849 /* This file intentionally left blank. */\n",
3850     "-e", "1,$d",
3851     (char*)NULL };
3852
3853 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3854  *
3855  *  Description of Ultrix_Fix_Fixproto fix
3856  */
3857 #define ULTRIX_FIX_FIXPROTO_FIXIDX       96
3858 tSCC zUltrix_Fix_FixprotoName[] =
3859      "Ultrix_Fix_Fixproto";
3860 /*
3861  *  File name selection pattern
3862  */
3863 tSCC zUltrix_Fix_FixprotoList[] =
3864   "|sys/utsname.h|";
3865 /*
3866  *  Machine/OS name selection pattern
3867  */
3868 #define apzUltrix_Fix_FixprotoMachs (const char**)NULL
3869
3870 /*
3871  *  content selection pattern - do fix if pattern found
3872  */
3873 tSCC zUltrix_Fix_FixprotoSelect0[] =
3874        "ULTRIX";
3875
3876 #define    ULTRIX_FIX_FIXPROTO_TEST_CT  1
3877 #define    ULTRIX_FIX_FIXPROTO_RE_CT    1
3878 tTestDesc aUltrix_Fix_FixprotoTests[] = {
3879   { TT_EGREP,    zUltrix_Fix_FixprotoSelect0, (regex_t*)NULL }, };
3880
3881 /*
3882  *  Fix Command Arguments for Ultrix_Fix_Fixproto
3883  */
3884 const char* apzUltrix_Fix_FixprotoPatch[] = { "sed",
3885     "-e", "/^[ \t]*extern[ \t]*int[ \t]*uname();$/i\\\n\
3886 struct utsname;\n",
3887     (char*)NULL };
3888
3889 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3890  *
3891  *  Description of Ultrix_Atof_Param fix
3892  */
3893 #define ULTRIX_ATOF_PARAM_FIXIDX         97
3894 tSCC zUltrix_Atof_ParamName[] =
3895      "Ultrix_Atof_Param";
3896 /*
3897  *  File name selection pattern
3898  */
3899 tSCC zUltrix_Atof_ParamList[] =
3900   "|math.h|";
3901 /*
3902  *  Machine/OS name selection pattern
3903  */
3904 #define apzUltrix_Atof_ParamMachs (const char**)NULL
3905
3906 /*
3907  *  content selection pattern - do fix if pattern found
3908  */
3909 tSCC zUltrix_Atof_ParamSelect0[] =
3910        "atof\\([ \t]*char";
3911
3912 #define    ULTRIX_ATOF_PARAM_TEST_CT  1
3913 #define    ULTRIX_ATOF_PARAM_RE_CT    1
3914 tTestDesc aUltrix_Atof_ParamTests[] = {
3915   { TT_EGREP,    zUltrix_Atof_ParamSelect0, (regex_t*)NULL }, };
3916
3917 /*
3918  *  Fix Command Arguments for Ultrix_Atof_Param
3919  */
3920 const char* apzUltrix_Atof_ParamPatch[] = { "sed",
3921     "-e", "s@atof(\\([ \t]*char[ \t]*\\*[^)]*\\))@atof(const \\1)@",
3922     (char*)NULL };
3923
3924 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3925  *
3926  *  Description of Ultrix_Const fix
3927  */
3928 #define ULTRIX_CONST_FIXIDX              98
3929 tSCC zUltrix_ConstName[] =
3930      "Ultrix_Const";
3931 /*
3932  *  File name selection pattern
3933  */
3934 tSCC zUltrix_ConstList[] =
3935   "|stdio.h|";
3936 /*
3937  *  Machine/OS name selection pattern
3938  */
3939 #define apzUltrix_ConstMachs (const char**)NULL
3940 #define ULTRIX_CONST_TEST_CT  0
3941 #define ULTRIX_CONST_RE_CT    0
3942 #define aUltrix_ConstTests   (tTestDesc*)NULL
3943
3944 /*
3945  *  Fix Command Arguments for Ultrix_Const
3946  */
3947 const char* apzUltrix_ConstPatch[] = { "sed",
3948     "-e", "s@perror( char \\*__s );@perror( const char *__s );@",
3949     "-e", "s@fputs( char \\*__s,@fputs( const char *__s,@",
3950     "-e", "s@fopen( char \\*__filename, char \\*__type );@fopen( const char *__filename, const char *__type );@",
3951     "-e", "s@fwrite( void \\*__ptr,@fwrite( const void *__ptr,@",
3952     "-e", "s@fscanf( FILE \\*__stream, char \\*__format,@fscanf( FILE *__stream, const char *__format,@",
3953     "-e", "s@scanf( char \\*__format,@scanf( const char *__format,@",
3954     "-e", "s@sscanf( char \\*__s, char \\*__format,@sscanf( const char *__s, const char *__format,@",
3955     "-e", "s@popen(char \\*, char \\*);@popen(const char *, const char *);@",
3956     "-e", "s@tempnam(char\\*,char\\*);@tempnam(const char*,const char*);@",
3957     (char*)NULL };
3958
3959 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3960  *
3961  *  Description of Ultrix_Ifdef fix
3962  */
3963 #define ULTRIX_IFDEF_FIXIDX              99
3964 tSCC zUltrix_IfdefName[] =
3965      "Ultrix_Ifdef";
3966 /*
3967  *  File name selection pattern
3968  */
3969 tSCC zUltrix_IfdefList[] =
3970   "|sys/file.h|";
3971 /*
3972  *  Machine/OS name selection pattern
3973  */
3974 #define apzUltrix_IfdefMachs (const char**)NULL
3975
3976 /*
3977  *  content selection pattern - do fix if pattern found
3978  */
3979 tSCC zUltrix_IfdefSelect0[] =
3980        "#ifdef KERNEL";
3981
3982 #define    ULTRIX_IFDEF_TEST_CT  1
3983 #define    ULTRIX_IFDEF_RE_CT    1
3984 tTestDesc aUltrix_IfdefTests[] = {
3985   { TT_EGREP,    zUltrix_IfdefSelect0, (regex_t*)NULL }, };
3986
3987 /*
3988  *  Fix Command Arguments for Ultrix_Ifdef
3989  */
3990 const char* apzUltrix_IfdefPatch[] = { "sed",
3991     "-e", "s/#ifdef KERNEL/#if defined(KERNEL)/",
3992     (char*)NULL };
3993
3994 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3995  *
3996  *  Description of Ultrix_Nested_Cmnt fix
3997  */
3998 #define ULTRIX_NESTED_CMNT_FIXIDX        100
3999 tSCC zUltrix_Nested_CmntName[] =
4000      "Ultrix_Nested_Cmnt";
4001 /*
4002  *  File name selection pattern
4003  */
4004 tSCC zUltrix_Nested_CmntList[] =
4005   "|rpc/svc.h|";
4006 /*
4007  *  Machine/OS name selection pattern
4008  */
4009 #define apzUltrix_Nested_CmntMachs (const char**)NULL
4010 #define ULTRIX_NESTED_CMNT_TEST_CT  0
4011 #define ULTRIX_NESTED_CMNT_RE_CT    0
4012 #define aUltrix_Nested_CmntTests   (tTestDesc*)NULL
4013
4014 /*
4015  *  Fix Command Arguments for Ultrix_Nested_Cmnt
4016  */
4017 const char* apzUltrix_Nested_CmntPatch[] = { "sed",
4018     "-e", "s@^\\( \\*\tint protocol;  \\)/\\*@\\1*/ /*@",
4019     (char*)NULL };
4020
4021 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4022  *
4023  *  Description of Ultrix_Static fix
4024  */
4025 #define ULTRIX_STATIC_FIXIDX             101
4026 tSCC zUltrix_StaticName[] =
4027      "Ultrix_Static";
4028 /*
4029  *  File name selection pattern
4030  */
4031 tSCC zUltrix_StaticList[] =
4032   "|machine/cpu.h|";
4033 /*
4034  *  Machine/OS name selection pattern
4035  */
4036 #define apzUltrix_StaticMachs (const char**)NULL
4037
4038 /*
4039  *  content selection pattern - do fix if pattern found
4040  */
4041 tSCC zUltrix_StaticSelect0[] =
4042        "#include \"r[34]_cpu";
4043
4044 #define    ULTRIX_STATIC_TEST_CT  1
4045 #define    ULTRIX_STATIC_RE_CT    1
4046 tTestDesc aUltrix_StaticTests[] = {
4047   { TT_EGREP,    zUltrix_StaticSelect0, (regex_t*)NULL }, };
4048
4049 /*
4050  *  Fix Command Arguments for Ultrix_Static
4051  */
4052 const char* apzUltrix_StaticPatch[] = { "sed",
4053     "-e", "s/^static struct tlb_pid_state/struct tlb_pid_state/",
4054     "-e", "s/^#include \"r3_cpu\\.h\"$/#include <machine\\/r3_cpu\\.h>/",
4055     "-e", "s/^#include \"r4_cpu\\.h\"$/#include <machine\\/r4_cpu\\.h>/",
4056     (char*)NULL };
4057
4058 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4059  *
4060  *  Description of Undefine_Null fix
4061  */
4062 #define UNDEFINE_NULL_FIXIDX             102
4063 tSCC zUndefine_NullName[] =
4064      "Undefine_Null";
4065 /*
4066  *  File name selection pattern
4067  */
4068 #define zUndefine_NullList (char*)NULL
4069 /*
4070  *  Machine/OS name selection pattern
4071  */
4072 #define apzUndefine_NullMachs (const char**)NULL
4073
4074 /*
4075  *  content selection pattern - do fix if pattern found
4076  */
4077 tSCC zUndefine_NullSelect0[] =
4078        "^#[ \t]*define[ \t]*[ \t]NULL[ \t]";
4079
4080 /*
4081  *  content bypass pattern - skip fix if pattern found
4082  */
4083 tSCC zUndefine_NullBypass0[] =
4084        "#[ \t]*(ifn|un)def[ \t]*[ \t]NULL($|[ \t])";
4085
4086 #define    UNDEFINE_NULL_TEST_CT  2
4087 #define    UNDEFINE_NULL_RE_CT    2
4088 tTestDesc aUndefine_NullTests[] = {
4089   { TT_NEGREP,   zUndefine_NullBypass0, (regex_t*)NULL },
4090   { TT_EGREP,    zUndefine_NullSelect0, (regex_t*)NULL }, };
4091
4092 /*
4093  *  Fix Command Arguments for Undefine_Null
4094  */
4095 const char* apzUndefine_NullPatch[] = { "sed",
4096     "-e", "/^#[ \t]*define[ \t][ \t]*NULL[ \t]/i\\\n\
4097 #undef NULL\n",
4098     (char*)NULL };
4099
4100 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4101  *
4102  *  Description of Unixware7_Byteorder_Fix fix
4103  */
4104 #define UNIXWARE7_BYTEORDER_FIX_FIXIDX   103
4105 tSCC zUnixware7_Byteorder_FixName[] =
4106      "Unixware7_Byteorder_Fix";
4107 /*
4108  *  File name selection pattern
4109  */
4110 tSCC zUnixware7_Byteorder_FixList[] =
4111   "|arpa/inet.h|";
4112 /*
4113  *  Machine/OS name selection pattern
4114  */
4115 tSCC* apzUnixware7_Byteorder_FixMachs[] = {
4116         "*-*-sysv4*",
4117         "i[34567]86-*-sysv5*",
4118         "i[34567]86-*-udk*",
4119         "i[34567]86-*-solaris2.[0-4]",
4120         "powerpcle-*-solaris2.[0-4]",
4121         "sparc-*-solaris2.[0-4]",
4122         (const char*)NULL };
4123
4124 /*
4125  *  content selection pattern - do fix if pattern found
4126  */
4127 tSCC zUnixware7_Byteorder_FixSelect0[] =
4128        "in_port_t";
4129
4130 #define    UNIXWARE7_BYTEORDER_FIX_TEST_CT  1
4131 #define    UNIXWARE7_BYTEORDER_FIX_RE_CT    1
4132 tTestDesc aUnixware7_Byteorder_FixTests[] = {
4133   { TT_EGREP,    zUnixware7_Byteorder_FixSelect0, (regex_t*)NULL }, };
4134
4135 /*
4136  *  Fix Command Arguments for Unixware7_Byteorder_Fix
4137  */
4138 const char* apzUnixware7_Byteorder_FixPatch[] = { "sed",
4139     "-e", "/^extern.*htons.*(in_port_t)/d",
4140     "-e", "/^extern.*ntohs.*(in_port_t)/d",
4141     (char*)NULL };
4142
4143 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4144  *
4145  *  Description of Va_I960_Macro fix
4146  */
4147 #define VA_I960_MACRO_FIXIDX             104
4148 tSCC zVa_I960_MacroName[] =
4149      "Va_I960_Macro";
4150 /*
4151  *  File name selection pattern
4152  */
4153 tSCC zVa_I960_MacroList[] =
4154   "|arch/i960/archI960.h|";
4155 /*
4156  *  Machine/OS name selection pattern
4157  */
4158 #define apzVa_I960_MacroMachs (const char**)NULL
4159
4160 /*
4161  *  content selection pattern - do fix if pattern found
4162  */
4163 tSCC zVa_I960_MacroSelect0[] =
4164        "__(vsiz|vali|vpad|alignof__)";
4165
4166 #define    VA_I960_MACRO_TEST_CT  1
4167 #define    VA_I960_MACRO_RE_CT    1
4168 tTestDesc aVa_I960_MacroTests[] = {
4169   { TT_EGREP,    zVa_I960_MacroSelect0, (regex_t*)NULL }, };
4170
4171 /*
4172  *  Fix Command Arguments for Va_I960_Macro
4173  */
4174 const char* apzVa_I960_MacroPatch[] = { "sed",
4175     "-e", "s/__vsiz/__vxvsiz/",
4176     "-e", "s/__vali/__vxvali/",
4177     "-e", "s/__vpad/__vxvpad/",
4178     "-e", "s/__alignof__/__vxalignof__/",
4179     (char*)NULL };
4180
4181 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4182  *
4183  *  Description of Void_Null fix
4184  */
4185 #define VOID_NULL_FIXIDX                 105
4186 tSCC zVoid_NullName[] =
4187      "Void_Null";
4188 /*
4189  *  File name selection pattern
4190  */
4191 tSCC zVoid_NullList[] =
4192   "|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|";
4193 /*
4194  *  Machine/OS name selection pattern
4195  */
4196 #define apzVoid_NullMachs (const char**)NULL
4197
4198 /*
4199  *  content selection pattern - do fix if pattern found
4200  */
4201 tSCC zVoid_NullSelect0[] =
4202        "#[ \t]*define[ \t][ \t]*NULL[ \t].*void";
4203
4204 #define    VOID_NULL_TEST_CT  1
4205 #define    VOID_NULL_RE_CT    1
4206 tTestDesc aVoid_NullTests[] = {
4207   { TT_EGREP,    zVoid_NullSelect0, (regex_t*)NULL }, };
4208
4209 /*
4210  *  Fix Command Arguments for Void_Null
4211  */
4212 const char* apzVoid_NullPatch[] = { "sed",
4213     "-e", "s/^#[ \t]*define[ \t]*NULL[ \t]*((void[ \t]*\\*)0)/#define NULL 0/",
4214     (char*)NULL };
4215
4216 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4217  *
4218  *  Description of Vxworks_Gcc_Problem fix
4219  */
4220 #define VXWORKS_GCC_PROBLEM_FIXIDX       106
4221 tSCC zVxworks_Gcc_ProblemName[] =
4222      "Vxworks_Gcc_Problem";
4223 /*
4224  *  File name selection pattern
4225  */
4226 tSCC zVxworks_Gcc_ProblemList[] =
4227   "|types/vxTypesBase.h|";
4228 /*
4229  *  Machine/OS name selection pattern
4230  */
4231 #define apzVxworks_Gcc_ProblemMachs (const char**)NULL
4232
4233 /*
4234  *  content selection pattern - do fix if pattern found
4235  */
4236 tSCC zVxworks_Gcc_ProblemSelect0[] =
4237        "__GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__";
4238
4239 #define    VXWORKS_GCC_PROBLEM_TEST_CT  1
4240 #define    VXWORKS_GCC_PROBLEM_RE_CT    1
4241 tTestDesc aVxworks_Gcc_ProblemTests[] = {
4242   { TT_EGREP,    zVxworks_Gcc_ProblemSelect0, (regex_t*)NULL }, };
4243
4244 /*
4245  *  Fix Command Arguments for Vxworks_Gcc_Problem
4246  */
4247 const char* apzVxworks_Gcc_ProblemPatch[] = { "sed",
4248     "-e", "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
4249     "-e", "/[ \t]size_t/i\\\n\
4250 #ifndef _GCC_SIZE_T\\\n\
4251 #define _GCC_SIZE_T\n",
4252     "-e", "/[ \t]size_t/a\\\n\
4253 #endif\n",
4254     "-e", "/[ \t]ptrdiff_t/i\\\n\
4255 #ifndef _GCC_PTRDIFF_T\\\n\
4256 #define _GCC_PTRDIFF_T\n",
4257     "-e", "/[ \t]ptrdiff_t/a\\\n\
4258 #endif\n",
4259     "-e", "/[ \t]wchar_t/i\\\n\
4260 #ifndef _GCC_WCHAR_T\\\n\
4261 #define _GCC_WCHAR_T\n",
4262     "-e", "/[ \t]wchar_t/a\\\n\
4263 #endif\n",
4264     (char*)NULL };
4265
4266 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4267  *
4268  *  Description of Vxworks_Needs_Vxtypes fix
4269  */
4270 #define VXWORKS_NEEDS_VXTYPES_FIXIDX     107
4271 tSCC zVxworks_Needs_VxtypesName[] =
4272      "Vxworks_Needs_Vxtypes";
4273 /*
4274  *  File name selection pattern
4275  */
4276 tSCC zVxworks_Needs_VxtypesList[] =
4277   "|time.h|";
4278 /*
4279  *  Machine/OS name selection pattern
4280  */
4281 #define apzVxworks_Needs_VxtypesMachs (const char**)NULL
4282
4283 /*
4284  *  content selection pattern - do fix if pattern found
4285  */
4286 tSCC zVxworks_Needs_VxtypesSelect0[] =
4287        "uint_t[ \t][ \t]*_clocks_per_sec";
4288
4289 #define    VXWORKS_NEEDS_VXTYPES_TEST_CT  1
4290 #define    VXWORKS_NEEDS_VXTYPES_RE_CT    1
4291 tTestDesc aVxworks_Needs_VxtypesTests[] = {
4292   { TT_EGREP,    zVxworks_Needs_VxtypesSelect0, (regex_t*)NULL }, };
4293
4294 /*
4295  *  Fix Command Arguments for Vxworks_Needs_Vxtypes
4296  */
4297 const char* apzVxworks_Needs_VxtypesPatch[] = { "sed",
4298     "-e", "s/uint_t/unsigned int/",
4299     (char*)NULL };
4300
4301 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4302  *
4303  *  Description of Vxworks_Needs_Vxworks fix
4304  */
4305 #define VXWORKS_NEEDS_VXWORKS_FIXIDX     108
4306 tSCC zVxworks_Needs_VxworksName[] =
4307      "Vxworks_Needs_Vxworks";
4308 /*
4309  *  File name selection pattern
4310  */
4311 tSCC zVxworks_Needs_VxworksList[] =
4312   "|sys/stat.h|";
4313 /*
4314  *  Machine/OS name selection pattern
4315  */
4316 #define apzVxworks_Needs_VxworksMachs (const char**)NULL
4317
4318 /*
4319  *  content selection pattern - do fix if pattern found
4320  */
4321 tSCC zVxworks_Needs_VxworksSelect0[] =
4322        "#[ \t]define[ \t][ \t]*__INCstath";
4323
4324 /*
4325  *  perform the 'test' shell command - do fix on success
4326  */
4327 tSCC zVxworks_Needs_VxworksTest0[] =
4328        " -r types/vxTypesOld.h";
4329 tSCC zVxworks_Needs_VxworksTest1[] =
4330        " -n \"`egrep '#include' $file`\"";
4331 tSCC zVxworks_Needs_VxworksTest2[] =
4332        " -n \"`egrep ULONG $file`\"";
4333
4334 #define    VXWORKS_NEEDS_VXWORKS_TEST_CT  4
4335 #define    VXWORKS_NEEDS_VXWORKS_RE_CT    1
4336 tTestDesc aVxworks_Needs_VxworksTests[] = {
4337   { TT_TEST,     zVxworks_Needs_VxworksTest0,   0 /* unused */ },
4338   { TT_TEST,     zVxworks_Needs_VxworksTest1,   0 /* unused */ },
4339   { TT_TEST,     zVxworks_Needs_VxworksTest2,   0 /* unused */ },
4340   { TT_EGREP,    zVxworks_Needs_VxworksSelect0, (regex_t*)NULL }, };
4341
4342 /*
4343  *  Fix Command Arguments for Vxworks_Needs_Vxworks
4344  */
4345 const char* apzVxworks_Needs_VxworksPatch[] = { "sed",
4346     "-e", "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n\
4347 #include <types/vxTypesOld.h>\n",
4348     (char*)NULL };
4349
4350 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4351  *
4352  *  Description of Vxworks_Time fix
4353  */
4354 #define VXWORKS_TIME_FIXIDX              109
4355 tSCC zVxworks_TimeName[] =
4356      "Vxworks_Time";
4357 /*
4358  *  File name selection pattern
4359  */
4360 tSCC zVxworks_TimeList[] =
4361   "|time.h|";
4362 /*
4363  *  Machine/OS name selection pattern
4364  */
4365 #define apzVxworks_TimeMachs (const char**)NULL
4366
4367 /*
4368  *  content selection pattern - do fix if pattern found
4369  */
4370 tSCC zVxworks_TimeSelect0[] =
4371        "VOIDFUNCPTR";
4372
4373 /*
4374  *  perform the 'test' shell command - do fix on success
4375  */
4376 tSCC zVxworks_TimeTest0[] =
4377        " -r vxWorks.h";
4378
4379 #define    VXWORKS_TIME_TEST_CT  2
4380 #define    VXWORKS_TIME_RE_CT    1
4381 tTestDesc aVxworks_TimeTests[] = {
4382   { TT_TEST,     zVxworks_TimeTest0,   0 /* unused */ },
4383   { TT_EGREP,    zVxworks_TimeSelect0, (regex_t*)NULL }, };
4384
4385 /*
4386  *  Fix Command Arguments for Vxworks_Time
4387  */
4388 const char* apzVxworks_TimePatch[] = { "sed",
4389     "-e", "/VOIDFUNCPTR/i\\\n\
4390 #ifndef __gcc_VOIDFUNCPTR_defined\\\n\
4391 #ifdef __cplusplus\\\n\
4392 typedef void (*__gcc_VOIDFUNCPTR) (...);\\\n\
4393 #else\\\n\
4394 typedef void (*__gcc_VOIDFUNCPTR) ();\\\n\
4395 #endif\\\n\
4396 #define __gcc_VOIDFUNCPTR_defined\\\n\
4397 #endif\n",
4398     "-e", "s/VOIDFUNCPTR/__gcc_VOIDFUNCPTR/g",
4399     (char*)NULL };
4400
4401 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4402  *
4403  *  Description of X11_Class fix
4404  */
4405 #define X11_CLASS_FIXIDX                 110
4406 tSCC zX11_ClassName[] =
4407      "X11_Class";
4408 /*
4409  *  File name selection pattern
4410  */
4411 tSCC zX11_ClassList[] =
4412   "|X11/ShellP.h|";
4413 /*
4414  *  Machine/OS name selection pattern
4415  */
4416 #define apzX11_ClassMachs (const char**)NULL
4417
4418 /*
4419  *  content bypass pattern - skip fix if pattern found
4420  */
4421 tSCC zX11_ClassBypass0[] =
4422        "__cplusplus";
4423
4424 #define    X11_CLASS_TEST_CT  1
4425 #define    X11_CLASS_RE_CT    1
4426 tTestDesc aX11_ClassTests[] = {
4427   { TT_NEGREP,   zX11_ClassBypass0, (regex_t*)NULL }, };
4428
4429 /*
4430  *  Fix Command Arguments for X11_Class
4431  */
4432 const char* apzX11_ClassPatch[] = { "sed",
4433     "-e", "/char \\*class;/i\\\n\
4434 #ifdef __cplusplus\\\n\
4435 \tchar *c_class;\\\n\
4436 #else\n",
4437     "-e", "/char \\*class;/a\\\n\
4438 #endif\n",
4439     (char*)NULL };
4440
4441 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4442  *
4443  *  Description of X11_Class_Usage fix
4444  */
4445 #define X11_CLASS_USAGE_FIXIDX           111
4446 tSCC zX11_Class_UsageName[] =
4447      "X11_Class_Usage";
4448 /*
4449  *  File name selection pattern
4450  */
4451 tSCC zX11_Class_UsageList[] =
4452   "|Xm/BaseClassI.h|";
4453 /*
4454  *  Machine/OS name selection pattern
4455  */
4456 #define apzX11_Class_UsageMachs (const char**)NULL
4457
4458 /*
4459  *  content bypass pattern - skip fix if pattern found
4460  */
4461 tSCC zX11_Class_UsageBypass0[] =
4462        "__cplusplus";
4463
4464 #define    X11_CLASS_USAGE_TEST_CT  1
4465 #define    X11_CLASS_USAGE_RE_CT    1
4466 tTestDesc aX11_Class_UsageTests[] = {
4467   { TT_NEGREP,   zX11_Class_UsageBypass0, (regex_t*)NULL }, };
4468
4469 /*
4470  *  Fix Command Arguments for X11_Class_Usage
4471  */
4472 const char* apzX11_Class_UsagePatch[] = { "sed",
4473     "-e", "s/ class[)]/ c_class)/g",
4474     (char*)NULL };
4475
4476 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4477  *
4478  *  Description of X11_New fix
4479  */
4480 #define X11_NEW_FIXIDX                   112
4481 tSCC zX11_NewName[] =
4482      "X11_New";
4483 /*
4484  *  File name selection pattern
4485  */
4486 tSCC zX11_NewList[] =
4487   "|Xm/Traversal.h|";
4488 /*
4489  *  Machine/OS name selection pattern
4490  */
4491 #define apzX11_NewMachs (const char**)NULL
4492
4493 /*
4494  *  content bypass pattern - skip fix if pattern found
4495  */
4496 tSCC zX11_NewBypass0[] =
4497        "__cplusplus";
4498
4499 #define    X11_NEW_TEST_CT  1
4500 #define    X11_NEW_RE_CT    1
4501 tTestDesc aX11_NewTests[] = {
4502   { TT_NEGREP,   zX11_NewBypass0, (regex_t*)NULL }, };
4503
4504 /*
4505  *  Fix Command Arguments for X11_New
4506  */
4507 const char* apzX11_NewPatch[] = { "sed",
4508     "-e", "/Widget\told, new;/i\\\n\
4509 #ifdef __cplusplus\\\n\
4510 \tWidget\told, c_new;\\\n\
4511 #else\n",
4512     "-e", "/Widget\told, new;/a\\\n\
4513 #endif\n",
4514     "-e", "s/Widget new,/Widget c_new,/g",
4515     (char*)NULL };
4516
4517 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4518  *
4519  *  Description of X11_Sprintf fix
4520  */
4521 #define X11_SPRINTF_FIXIDX               113
4522 tSCC zX11_SprintfName[] =
4523      "X11_Sprintf";
4524 /*
4525  *  File name selection pattern
4526  */
4527 tSCC zX11_SprintfList[] =
4528   "|X11*/Xmu.h|";
4529 /*
4530  *  Machine/OS name selection pattern
4531  */
4532 #define apzX11_SprintfMachs (const char**)NULL
4533 #define X11_SPRINTF_TEST_CT  0
4534 #define X11_SPRINTF_RE_CT    0
4535 #define aX11_SprintfTests   (tTestDesc*)NULL
4536
4537 /*
4538  *  Fix Command Arguments for X11_Sprintf
4539  */
4540 const char* apzX11_SprintfPatch[] = { "sed",
4541     "-e", "s,^extern char \\*\tsprintf();$,#ifndef __STDC__\\\n\
4542 extern char *\tsprintf();\\\n\
4543 #endif /* !defined __STDC__ */,",
4544     (char*)NULL };
4545
4546 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4547  *
4548  *  List of all fixes
4549  */
4550 #define REGEX_COUNT          89
4551 #define MACH_LIST_SIZE_LIMIT 279
4552 #define FIX_COUNT            114
4553
4554 tFixDesc fixDescList[ FIX_COUNT ] = {
4555   {  zAaa_Ki_IfaceName,    zAaa_Ki_IfaceList,
4556      apzAaa_Ki_IfaceMachs, (regex_t*)NULL,
4557      AAA_KI_IFACE_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4558      aAaa_Ki_IfaceTests,   apzAaa_Ki_IfacePatch },
4559
4560   {  zAaa_KiName,    zAaa_KiList,
4561      apzAaa_KiMachs, (regex_t*)NULL,
4562      AAA_KI_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4563      aAaa_KiTests,   apzAaa_KiPatch },
4564
4565   {  zAaa_Ki_CallsName,    zAaa_Ki_CallsList,
4566      apzAaa_Ki_CallsMachs, (regex_t*)NULL,
4567      AAA_KI_CALLS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4568      aAaa_Ki_CallsTests,   apzAaa_Ki_CallsPatch },
4569
4570   {  zAaa_Ki_DefsName,    zAaa_Ki_DefsList,
4571      apzAaa_Ki_DefsMachs, (regex_t*)NULL,
4572      AAA_KI_DEFS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4573      aAaa_Ki_DefsTests,   apzAaa_Ki_DefsPatch },
4574
4575   {  zAaa_Bad_FixesName,    zAaa_Bad_FixesList,
4576      apzAaa_Bad_FixesMachs, (regex_t*)NULL,
4577      AAA_BAD_FIXES_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4578      aAaa_Bad_FixesTests,   apzAaa_Bad_FixesPatch },
4579
4580   {  zAaa_TimeName,    zAaa_TimeList,
4581      apzAaa_TimeMachs, (regex_t*)NULL,
4582      AAA_TIME_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4583      aAaa_TimeTests,   apzAaa_TimePatch },
4584
4585   {  zAab_Dgux_Int_VarargsName,    zAab_Dgux_Int_VarargsList,
4586      apzAab_Dgux_Int_VarargsMachs, (regex_t*)NULL,
4587      AAB_DGUX_INT_VARARGS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4588      aAab_Dgux_Int_VarargsTests,   apzAab_Dgux_Int_VarargsPatch },
4589
4590   {  zAab_Fd_Zero_Asm_Posix_Types_HName,    zAab_Fd_Zero_Asm_Posix_Types_HList,
4591      apzAab_Fd_Zero_Asm_Posix_Types_HMachs, (regex_t*)NULL,
4592      AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4593      aAab_Fd_Zero_Asm_Posix_Types_HTests,   apzAab_Fd_Zero_Asm_Posix_Types_HPatch },
4594
4595   {  zAab_Fd_Zero_Gnu_Types_HName,    zAab_Fd_Zero_Gnu_Types_HList,
4596      apzAab_Fd_Zero_Gnu_Types_HMachs, (regex_t*)NULL,
4597      AAB_FD_ZERO_GNU_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4598      aAab_Fd_Zero_Gnu_Types_HTests,   apzAab_Fd_Zero_Gnu_Types_HPatch },
4599
4600   {  zAab_Fd_Zero_Selectbits_HName,    zAab_Fd_Zero_Selectbits_HList,
4601      apzAab_Fd_Zero_Selectbits_HMachs, (regex_t*)NULL,
4602      AAB_FD_ZERO_SELECTBITS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4603      aAab_Fd_Zero_Selectbits_HTests,   apzAab_Fd_Zero_Selectbits_HPatch },
4604
4605   {  zAab_Svr4_Replace_ByteorderName,    zAab_Svr4_Replace_ByteorderList,
4606      apzAab_Svr4_Replace_ByteorderMachs, (regex_t*)NULL,
4607      AAB_SVR4_REPLACE_BYTEORDER_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4608      aAab_Svr4_Replace_ByteorderTests,   apzAab_Svr4_Replace_ByteorderPatch },
4609
4610   {  zAix_SyswaitName,    zAix_SyswaitList,
4611      apzAix_SyswaitMachs, (regex_t*)NULL,
4612      AIX_SYSWAIT_TEST_CT, FD_MACH_ONLY,
4613      aAix_SyswaitTests,   apzAix_SyswaitPatch },
4614
4615   {  zAix_VolatileName,    zAix_VolatileList,
4616      apzAix_VolatileMachs, (regex_t*)NULL,
4617      AIX_VOLATILE_TEST_CT, FD_MACH_ONLY,
4618      aAix_VolatileTests,   apzAix_VolatilePatch },
4619
4620   {  zAlpha_GetoptName,    zAlpha_GetoptList,
4621      apzAlpha_GetoptMachs, (regex_t*)NULL,
4622      ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY,
4623      aAlpha_GetoptTests,   apzAlpha_GetoptPatch },
4624
4625   {  zAlpha_ParensName,    zAlpha_ParensList,
4626      apzAlpha_ParensMachs, (regex_t*)NULL,
4627      ALPHA_PARENS_TEST_CT, FD_MACH_ONLY,
4628      aAlpha_ParensTests,   apzAlpha_ParensPatch },
4629
4630   {  zAlpha_SbrkName,    zAlpha_SbrkList,
4631      apzAlpha_SbrkMachs, (regex_t*)NULL,
4632      ALPHA_SBRK_TEST_CT, FD_MACH_ONLY,
4633      aAlpha_SbrkTests,   apzAlpha_SbrkPatch },
4634
4635   {  zArm_Norcroft_HintName,    zArm_Norcroft_HintList,
4636      apzArm_Norcroft_HintMachs, (regex_t*)NULL,
4637      ARM_NORCROFT_HINT_TEST_CT, FD_MACH_ONLY,
4638      aArm_Norcroft_HintTests,   apzArm_Norcroft_HintPatch },
4639
4640   {  zArm_WcharName,    zArm_WcharList,
4641      apzArm_WcharMachs, (regex_t*)NULL,
4642      ARM_WCHAR_TEST_CT, FD_MACH_ONLY,
4643      aArm_WcharTests,   apzArm_WcharPatch },
4644
4645   {  zAux_AsmName,    zAux_AsmList,
4646      apzAux_AsmMachs, (regex_t*)NULL,
4647      AUX_ASM_TEST_CT, FD_MACH_ONLY,
4648      aAux_AsmTests,   apzAux_AsmPatch },
4649
4650   {  zAvoid_BoolName,    zAvoid_BoolList,
4651      apzAvoid_BoolMachs, (regex_t*)NULL,
4652      AVOID_BOOL_TEST_CT, FD_MACH_ONLY,
4653      aAvoid_BoolTests,   apzAvoid_BoolPatch },
4654
4655   {  zBad_Struct_TermName,    zBad_Struct_TermList,
4656      apzBad_Struct_TermMachs, (regex_t*)NULL,
4657      BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY,
4658      aBad_Struct_TermTests,   apzBad_Struct_TermPatch },
4659
4660   {  zBadquoteName,    zBadquoteList,
4661      apzBadquoteMachs, (regex_t*)NULL,
4662      BADQUOTE_TEST_CT, FD_MACH_ONLY,
4663      aBadquoteTests,   apzBadquotePatch },
4664
4665   {  zBad_LvalName,    zBad_LvalList,
4666      apzBad_LvalMachs, (regex_t*)NULL,
4667      BAD_LVAL_TEST_CT, FD_MACH_ONLY,
4668      aBad_LvalTests,   apzBad_LvalPatch },
4669
4670   {  zBroken_Assert_StdioName,    zBroken_Assert_StdioList,
4671      apzBroken_Assert_StdioMachs, (regex_t*)NULL,
4672      BROKEN_ASSERT_STDIO_TEST_CT, FD_MACH_ONLY,
4673      aBroken_Assert_StdioTests,   apzBroken_Assert_StdioPatch },
4674
4675   {  zBroken_Assert_StdlibName,    zBroken_Assert_StdlibList,
4676      apzBroken_Assert_StdlibMachs, (regex_t*)NULL,
4677      BROKEN_ASSERT_STDLIB_TEST_CT, FD_MACH_ONLY,
4678      aBroken_Assert_StdlibTests,   apzBroken_Assert_StdlibPatch },
4679
4680   {  zBsd43_Io_MacrosName,    zBsd43_Io_MacrosList,
4681      apzBsd43_Io_MacrosMachs, (regex_t*)NULL,
4682      BSD43_IO_MACROS_TEST_CT, FD_MACH_ONLY,
4683      aBsd43_Io_MacrosTests,   apzBsd43_Io_MacrosPatch },
4684
4685   {  zDec_Intern_AsmName,    zDec_Intern_AsmList,
4686      apzDec_Intern_AsmMachs, (regex_t*)NULL,
4687      DEC_INTERN_ASM_TEST_CT, FD_MACH_ONLY,
4688      aDec_Intern_AsmTests,   apzDec_Intern_AsmPatch },
4689
4690   {  zNo_Double_SlashName,    zNo_Double_SlashList,
4691      apzNo_Double_SlashMachs, (regex_t*)NULL,
4692      NO_DOUBLE_SLASH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
4693      aNo_Double_SlashTests,   apzNo_Double_SlashPatch },
4694
4695   {  zEcd_CursorName,    zEcd_CursorList,
4696      apzEcd_CursorMachs, (regex_t*)NULL,
4697      ECD_CURSOR_TEST_CT, FD_MACH_ONLY,
4698      aEcd_CursorTests,   apzEcd_CursorPatch },
4699
4700   {  zSco5_Stat_WrappersName,    zSco5_Stat_WrappersList,
4701      apzSco5_Stat_WrappersMachs, (regex_t*)NULL,
4702      SCO5_STAT_WRAPPERS_TEST_CT, FD_MACH_ONLY,
4703      aSco5_Stat_WrappersTests,   apzSco5_Stat_WrappersPatch },
4704
4705   {  zEnd_Else_LabelName,    zEnd_Else_LabelList,
4706      apzEnd_Else_LabelMachs, (regex_t*)NULL,
4707      END_ELSE_LABEL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
4708      aEnd_Else_LabelTests,   apzEnd_Else_LabelPatch },
4709
4710   {  zHp_InlineName,    zHp_InlineList,
4711      apzHp_InlineMachs, (regex_t*)NULL,
4712      HP_INLINE_TEST_CT, FD_MACH_ONLY,
4713      aHp_InlineTests,   apzHp_InlinePatch },
4714
4715   {  zHp_SysfileName,    zHp_SysfileList,
4716      apzHp_SysfileMachs, (regex_t*)NULL,
4717      HP_SYSFILE_TEST_CT, FD_MACH_ONLY,
4718      aHp_SysfileTests,   apzHp_SysfilePatch },
4719
4720   {  zCxx_UnreadyName,    zCxx_UnreadyList,
4721      apzCxx_UnreadyMachs, (regex_t*)NULL,
4722      CXX_UNREADY_TEST_CT, FD_MACH_ONLY,
4723      aCxx_UnreadyTests,   apzCxx_UnreadyPatch },
4724
4725   {  zHpux_MaxintName,    zHpux_MaxintList,
4726      apzHpux_MaxintMachs, (regex_t*)NULL,
4727      HPUX_MAXINT_TEST_CT, FD_MACH_ONLY,
4728      aHpux_MaxintTests,   apzHpux_MaxintPatch },
4729
4730   {  zHpux_SystimeName,    zHpux_SystimeList,
4731      apzHpux_SystimeMachs, (regex_t*)NULL,
4732      HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY,
4733      aHpux_SystimeTests,   apzHpux_SystimePatch },
4734
4735   {  zHpux8_Bogus_InlinesName,    zHpux8_Bogus_InlinesList,
4736      apzHpux8_Bogus_InlinesMachs, (regex_t*)NULL,
4737      HPUX8_BOGUS_INLINES_TEST_CT, FD_MACH_ONLY,
4738      aHpux8_Bogus_InlinesTests,   apzHpux8_Bogus_InlinesPatch },
4739
4740   {  zHpux11_Uint32_CName,    zHpux11_Uint32_CList,
4741      apzHpux11_Uint32_CMachs, (regex_t*)NULL,
4742      HPUX11_UINT32_C_TEST_CT, FD_MACH_ONLY,
4743      aHpux11_Uint32_CTests,   apzHpux11_Uint32_CPatch },
4744
4745   {  zInteractv_Add1Name,    zInteractv_Add1List,
4746      apzInteractv_Add1Machs, (regex_t*)NULL,
4747      INTERACTV_ADD1_TEST_CT, FD_MACH_ONLY,
4748      aInteractv_Add1Tests,   apzInteractv_Add1Patch },
4749
4750   {  zInteractv_Add2Name,    zInteractv_Add2List,
4751      apzInteractv_Add2Machs, (regex_t*)NULL,
4752      INTERACTV_ADD2_TEST_CT, FD_MACH_ONLY,
4753      aInteractv_Add2Tests,   apzInteractv_Add2Patch },
4754
4755   {  zInteractv_Add3Name,    zInteractv_Add3List,
4756      apzInteractv_Add3Machs, (regex_t*)NULL,
4757      INTERACTV_ADD3_TEST_CT, FD_MACH_ONLY,
4758      aInteractv_Add3Tests,   apzInteractv_Add3Patch },
4759
4760   {  zIo_Def_QuotesName,    zIo_Def_QuotesList,
4761      apzIo_Def_QuotesMachs, (regex_t*)NULL,
4762      IO_DEF_QUOTES_TEST_CT, FD_MACH_ONLY,
4763      aIo_Def_QuotesTests,   apzIo_Def_QuotesPatch },
4764
4765   {  zIoctl_Fix_CtrlName,    zIoctl_Fix_CtrlList,
4766      apzIoctl_Fix_CtrlMachs, (regex_t*)NULL,
4767      IOCTL_FIX_CTRL_TEST_CT, FD_MACH_ONLY,
4768      aIoctl_Fix_CtrlTests,   apzIoctl_Fix_CtrlPatch },
4769
4770   {  zIp_Missing_SemiName,    zIp_Missing_SemiList,
4771      apzIp_Missing_SemiMachs, (regex_t*)NULL,
4772      IP_MISSING_SEMI_TEST_CT, FD_MACH_ONLY,
4773      aIp_Missing_SemiTests,   apzIp_Missing_SemiPatch },
4774
4775   {  zIrix_Multiline_CmntName,    zIrix_Multiline_CmntList,
4776      apzIrix_Multiline_CmntMachs, (regex_t*)NULL,
4777      IRIX_MULTILINE_CMNT_TEST_CT, FD_MACH_ONLY,
4778      aIrix_Multiline_CmntTests,   apzIrix_Multiline_CmntPatch },
4779
4780   {  zIrix_SockaddrName,    zIrix_SockaddrList,
4781      apzIrix_SockaddrMachs, (regex_t*)NULL,
4782      IRIX_SOCKADDR_TEST_CT, FD_MACH_ONLY,
4783      aIrix_SockaddrTests,   apzIrix_SockaddrPatch },
4784
4785   {  zIrix_Struct__FileName,    zIrix_Struct__FileList,
4786      apzIrix_Struct__FileMachs, (regex_t*)NULL,
4787      IRIX_STRUCT__FILE_TEST_CT, FD_MACH_ONLY,
4788      aIrix_Struct__FileTests,   apzIrix_Struct__FilePatch },
4789
4790   {  zIrix_Asm_ApostropheName,    zIrix_Asm_ApostropheList,
4791      apzIrix_Asm_ApostropheMachs, (regex_t*)NULL,
4792      IRIX_ASM_APOSTROPHE_TEST_CT, FD_MACH_ONLY,
4793      aIrix_Asm_ApostropheTests,   apzIrix_Asm_ApostrophePatch },
4794
4795   {  zIsc_FmodName,    zIsc_FmodList,
4796      apzIsc_FmodMachs, (regex_t*)NULL,
4797      ISC_FMOD_TEST_CT, FD_MACH_ONLY,
4798      aIsc_FmodTests,   apzIsc_FmodPatch },
4799
4800   {  zMotorola_NestedName,    zMotorola_NestedList,
4801      apzMotorola_NestedMachs, (regex_t*)NULL,
4802      MOTOROLA_NESTED_TEST_CT, FD_MACH_ONLY,
4803      aMotorola_NestedTests,   apzMotorola_NestedPatch },
4804
4805   {  zIsc_Sys_LimitsName,    zIsc_Sys_LimitsList,
4806      apzIsc_Sys_LimitsMachs, (regex_t*)NULL,
4807      ISC_SYS_LIMITS_TEST_CT, FD_MACH_ONLY,
4808      aIsc_Sys_LimitsTests,   apzIsc_Sys_LimitsPatch },
4809
4810   {  zKandr_ConcatName,    zKandr_ConcatList,
4811      apzKandr_ConcatMachs, (regex_t*)NULL,
4812      KANDR_CONCAT_TEST_CT, FD_MACH_ONLY,
4813      aKandr_ConcatTests,   apzKandr_ConcatPatch },
4814
4815   {  zLimits_IfndefsName,    zLimits_IfndefsList,
4816      apzLimits_IfndefsMachs, (regex_t*)NULL,
4817      LIMITS_IFNDEFS_TEST_CT, FD_MACH_ONLY,
4818      aLimits_IfndefsTests,   apzLimits_IfndefsPatch },
4819
4820   {  zLynx_Void_IntName,    zLynx_Void_IntList,
4821      apzLynx_Void_IntMachs, (regex_t*)NULL,
4822      LYNX_VOID_INT_TEST_CT, FD_MACH_ONLY,
4823      aLynx_Void_IntTests,   apzLynx_Void_IntPatch },
4824
4825   {  zLynxos_Fcntl_ProtoName,    zLynxos_Fcntl_ProtoList,
4826      apzLynxos_Fcntl_ProtoMachs, (regex_t*)NULL,
4827      LYNXOS_FCNTL_PROTO_TEST_CT, FD_MACH_ONLY,
4828      aLynxos_Fcntl_ProtoTests,   apzLynxos_Fcntl_ProtoPatch },
4829
4830   {  zM88k_Bad_Hypot_OptName,    zM88k_Bad_Hypot_OptList,
4831      apzM88k_Bad_Hypot_OptMachs, (regex_t*)NULL,
4832      M88K_BAD_HYPOT_OPT_TEST_CT, FD_MACH_ONLY,
4833      aM88k_Bad_Hypot_OptTests,   apzM88k_Bad_Hypot_OptPatch },
4834
4835   {  zM88k_Bad_S_IfName,    zM88k_Bad_S_IfList,
4836      apzM88k_Bad_S_IfMachs, (regex_t*)NULL,
4837      M88K_BAD_S_IF_TEST_CT, FD_MACH_ONLY,
4838      aM88k_Bad_S_IfTests,   apzM88k_Bad_S_IfPatch },
4839
4840   {  zM88k_Multi_InclName,    zM88k_Multi_InclList,
4841      apzM88k_Multi_InclMachs, (regex_t*)NULL,
4842      M88K_MULTI_INCL_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
4843      aM88k_Multi_InclTests,   apzM88k_Multi_InclPatch },
4844
4845   {  zMachine_NameName,    zMachine_NameList,
4846      apzMachine_NameMachs, (regex_t*)NULL,
4847      MACHINE_NAME_TEST_CT, FD_MACH_ONLY,
4848      aMachine_NameTests,   apzMachine_NamePatch },
4849
4850   {  zMath_ExceptionName,    zMath_ExceptionList,
4851      apzMath_ExceptionMachs, (regex_t*)NULL,
4852      MATH_EXCEPTION_TEST_CT, FD_MACH_ONLY,
4853      aMath_ExceptionTests,   apzMath_ExceptionPatch },
4854
4855   {  zMath_Huge_Val_From_Dbl_MaxName,    zMath_Huge_Val_From_Dbl_MaxList,
4856      apzMath_Huge_Val_From_Dbl_MaxMachs, (regex_t*)NULL,
4857      MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
4858      aMath_Huge_Val_From_Dbl_MaxTests,   apzMath_Huge_Val_From_Dbl_MaxPatch },
4859
4860   {  zMath_Huge_Val_IfndefName,    zMath_Huge_Val_IfndefList,
4861      apzMath_Huge_Val_IfndefMachs, (regex_t*)NULL,
4862      MATH_HUGE_VAL_IFNDEF_TEST_CT, FD_MACH_ONLY,
4863      aMath_Huge_Val_IfndefTests,   apzMath_Huge_Val_IfndefPatch },
4864
4865   {  zNested_CommentName,    zNested_CommentList,
4866      apzNested_CommentMachs, (regex_t*)NULL,
4867      NESTED_COMMENT_TEST_CT, FD_MACH_ONLY,
4868      aNested_CommentTests,   apzNested_CommentPatch },
4869
4870   {  zNews_Os_RecursionName,    zNews_Os_RecursionList,
4871      apzNews_Os_RecursionMachs, (regex_t*)NULL,
4872      NEWS_OS_RECURSION_TEST_CT, FD_MACH_ONLY,
4873      aNews_Os_RecursionTests,   apzNews_Os_RecursionPatch },
4874
4875   {  zNext_Math_PrefixName,    zNext_Math_PrefixList,
4876      apzNext_Math_PrefixMachs, (regex_t*)NULL,
4877      NEXT_MATH_PREFIX_TEST_CT, FD_MACH_ONLY,
4878      aNext_Math_PrefixTests,   apzNext_Math_PrefixPatch },
4879
4880   {  zNext_TemplateName,    zNext_TemplateList,
4881      apzNext_TemplateMachs, (regex_t*)NULL,
4882      NEXT_TEMPLATE_TEST_CT, FD_MACH_ONLY,
4883      aNext_TemplateTests,   apzNext_TemplatePatch },
4884
4885   {  zNext_VolitileName,    zNext_VolitileList,
4886      apzNext_VolitileMachs, (regex_t*)NULL,
4887      NEXT_VOLITILE_TEST_CT, FD_MACH_ONLY,
4888      aNext_VolitileTests,   apzNext_VolitilePatch },
4889
4890   {  zNext_Wait_UnionName,    zNext_Wait_UnionList,
4891      apzNext_Wait_UnionMachs, (regex_t*)NULL,
4892      NEXT_WAIT_UNION_TEST_CT, FD_MACH_ONLY,
4893      aNext_Wait_UnionTests,   apzNext_Wait_UnionPatch },
4894
4895   {  zNodeent_SyntaxName,    zNodeent_SyntaxList,
4896      apzNodeent_SyntaxMachs, (regex_t*)NULL,
4897      NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY,
4898      aNodeent_SyntaxTests,   apzNodeent_SyntaxPatch },
4899
4900   {  zOsf_Namespace_AName,    zOsf_Namespace_AList,
4901      apzOsf_Namespace_AMachs, (regex_t*)NULL,
4902      OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY,
4903      aOsf_Namespace_ATests,   apzOsf_Namespace_APatch },
4904
4905   {  zOsf_Namespace_BName,    zOsf_Namespace_BList,
4906      apzOsf_Namespace_BMachs, (regex_t*)NULL,
4907      OSF_NAMESPACE_B_TEST_CT, FD_MACH_ONLY,
4908      aOsf_Namespace_BTests,   apzOsf_Namespace_BPatch },
4909
4910   {  zPthread_Page_SizeName,    zPthread_Page_SizeList,
4911      apzPthread_Page_SizeMachs, (regex_t*)NULL,
4912      PTHREAD_PAGE_SIZE_TEST_CT, FD_MACH_ONLY,
4913      aPthread_Page_SizeTests,   apzPthread_Page_SizePatch },
4914
4915   {  zRead_Ret_TypeName,    zRead_Ret_TypeList,
4916      apzRead_Ret_TypeMachs, (regex_t*)NULL,
4917      READ_RET_TYPE_TEST_CT, FD_MACH_ONLY,
4918      aRead_Ret_TypeTests,   apzRead_Ret_TypePatch },
4919
4920   {  zRs6000_DoubleName,    zRs6000_DoubleList,
4921      apzRs6000_DoubleMachs, (regex_t*)NULL,
4922      RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY,
4923      aRs6000_DoubleTests,   apzRs6000_DoublePatch },
4924
4925   {  zRs6000_FchmodName,    zRs6000_FchmodList,
4926      apzRs6000_FchmodMachs, (regex_t*)NULL,
4927      RS6000_FCHMOD_TEST_CT, FD_MACH_ONLY,
4928      aRs6000_FchmodTests,   apzRs6000_FchmodPatch },
4929
4930   {  zRs6000_ParamName,    zRs6000_ParamList,
4931      apzRs6000_ParamMachs, (regex_t*)NULL,
4932      RS6000_PARAM_TEST_CT, FD_MACH_ONLY,
4933      aRs6000_ParamTests,   apzRs6000_ParamPatch },
4934
4935   {  zSony_IncludeName,    zSony_IncludeList,
4936      apzSony_IncludeMachs, (regex_t*)NULL,
4937      SONY_INCLUDE_TEST_CT, FD_MACH_ONLY,
4938      aSony_IncludeTests,   apzSony_IncludePatch },
4939
4940   {  zStatsswtchName,    zStatsswtchList,
4941      apzStatsswtchMachs, (regex_t*)NULL,
4942      STATSSWTCH_TEST_CT, FD_MACH_ONLY,
4943      aStatsswtchTests,   apzStatsswtchPatch },
4944
4945   {  zStdio_Va_ListName,    zStdio_Va_ListList,
4946      apzStdio_Va_ListMachs, (regex_t*)NULL,
4947      STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
4948      aStdio_Va_ListTests,   apzStdio_Va_ListPatch },
4949
4950   {  zSun_Bogus_IfdefName,    zSun_Bogus_IfdefList,
4951      apzSun_Bogus_IfdefMachs, (regex_t*)NULL,
4952      SUN_BOGUS_IFDEF_TEST_CT, FD_MACH_ONLY,
4953      aSun_Bogus_IfdefTests,   apzSun_Bogus_IfdefPatch },
4954
4955   {  zSun_Bogus_Ifdef_Sun4cName,    zSun_Bogus_Ifdef_Sun4cList,
4956      apzSun_Bogus_Ifdef_Sun4cMachs, (regex_t*)NULL,
4957      SUN_BOGUS_IFDEF_SUN4C_TEST_CT, FD_MACH_ONLY,
4958      aSun_Bogus_Ifdef_Sun4cTests,   apzSun_Bogus_Ifdef_Sun4cPatch },
4959
4960   {  zSun_CatmacroName,    zSun_CatmacroList,
4961      apzSun_CatmacroMachs, (regex_t*)NULL,
4962      SUN_CATMACRO_TEST_CT, FD_MACH_ONLY,
4963      aSun_CatmacroTests,   apzSun_CatmacroPatch },
4964
4965   {  zSun_MallocName,    zSun_MallocList,
4966      apzSun_MallocMachs, (regex_t*)NULL,
4967      SUN_MALLOC_TEST_CT, FD_MACH_ONLY,
4968      aSun_MallocTests,   apzSun_MallocPatch },
4969
4970   {  zSun_MemcpyName,    zSun_MemcpyList,
4971      apzSun_MemcpyMachs, (regex_t*)NULL,
4972      SUN_MEMCPY_TEST_CT, FD_MACH_ONLY,
4973      aSun_MemcpyTests,   apzSun_MemcpyPatch },
4974
4975   {  zSun_Rusers_SemiName,    zSun_Rusers_SemiList,
4976      apzSun_Rusers_SemiMachs, (regex_t*)NULL,
4977      SUN_RUSERS_SEMI_TEST_CT, FD_MACH_ONLY,
4978      aSun_Rusers_SemiTests,   apzSun_Rusers_SemiPatch },
4979
4980   {  zSun_SignalName,    zSun_SignalList,
4981      apzSun_SignalMachs, (regex_t*)NULL,
4982      SUN_SIGNAL_TEST_CT, FD_MACH_ONLY,
4983      aSun_SignalTests,   apzSun_SignalPatch },
4984
4985   {  zSun_Auth_ProtoName,    zSun_Auth_ProtoList,
4986      apzSun_Auth_ProtoMachs, (regex_t*)NULL,
4987      SUN_AUTH_PROTO_TEST_CT, FD_MACH_ONLY,
4988      aSun_Auth_ProtoTests,   apzSun_Auth_ProtoPatch },
4989
4990   {  zSunos_Matherr_DeclName,    zSunos_Matherr_DeclList,
4991      apzSunos_Matherr_DeclMachs, (regex_t*)NULL,
4992      SUNOS_MATHERR_DECL_TEST_CT, FD_MACH_ONLY,
4993      aSunos_Matherr_DeclTests,   apzSunos_Matherr_DeclPatch },
4994
4995   {  zSunos_StrlenName,    zSunos_StrlenList,
4996      apzSunos_StrlenMachs, (regex_t*)NULL,
4997      SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY,
4998      aSunos_StrlenTests,   apzSunos_StrlenPatch },
4999
5000   {  zSystypesName,    zSystypesList,
5001      apzSystypesMachs, (regex_t*)NULL,
5002      SYSTYPES_TEST_CT, FD_MACH_ONLY,
5003      aSystypesTests,   apzSystypesPatch },
5004
5005   {  zSystypes_For_AixName,    zSystypes_For_AixList,
5006      apzSystypes_For_AixMachs, (regex_t*)NULL,
5007      SYSTYPES_FOR_AIX_TEST_CT, FD_MACH_ONLY,
5008      aSystypes_For_AixTests,   apzSystypes_For_AixPatch },
5009
5010   {  zSysv68_StringName,    zSysv68_StringList,
5011      apzSysv68_StringMachs, (regex_t*)NULL,
5012      SYSV68_STRING_TEST_CT, FD_MACH_ONLY,
5013      aSysv68_StringTests,   apzSysv68_StringPatch },
5014
5015   {  zSysz_Stdlib_For_SunName,    zSysz_Stdlib_For_SunList,
5016      apzSysz_Stdlib_For_SunMachs, (regex_t*)NULL,
5017      SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY,
5018      aSysz_Stdlib_For_SunTests,   apzSysz_Stdlib_For_SunPatch },
5019
5020   {  zSysz_Stdtypes_For_SunName,    zSysz_Stdtypes_For_SunList,
5021      apzSysz_Stdtypes_For_SunMachs, (regex_t*)NULL,
5022      SYSZ_STDTYPES_FOR_SUN_TEST_CT, FD_MACH_ONLY,
5023      aSysz_Stdtypes_For_SunTests,   apzSysz_Stdtypes_For_SunPatch },
5024
5025   {  zTinfo_CplusplusName,    zTinfo_CplusplusList,
5026      apzTinfo_CplusplusMachs, (regex_t*)NULL,
5027      TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY,
5028      aTinfo_CplusplusTests,   apzTinfo_CplusplusPatch },
5029
5030   {  zUltrix_Ansi_CompatName,    zUltrix_Ansi_CompatList,
5031      apzUltrix_Ansi_CompatMachs, (regex_t*)NULL,
5032      ULTRIX_ANSI_COMPAT_TEST_CT, FD_MACH_ONLY,
5033      aUltrix_Ansi_CompatTests,   apzUltrix_Ansi_CompatPatch },
5034
5035   {  zUltrix_Fix_FixprotoName,    zUltrix_Fix_FixprotoList,
5036      apzUltrix_Fix_FixprotoMachs, (regex_t*)NULL,
5037      ULTRIX_FIX_FIXPROTO_TEST_CT, FD_MACH_ONLY,
5038      aUltrix_Fix_FixprotoTests,   apzUltrix_Fix_FixprotoPatch },
5039
5040   {  zUltrix_Atof_ParamName,    zUltrix_Atof_ParamList,
5041      apzUltrix_Atof_ParamMachs, (regex_t*)NULL,
5042      ULTRIX_ATOF_PARAM_TEST_CT, FD_MACH_ONLY,
5043      aUltrix_Atof_ParamTests,   apzUltrix_Atof_ParamPatch },
5044
5045   {  zUltrix_ConstName,    zUltrix_ConstList,
5046      apzUltrix_ConstMachs, (regex_t*)NULL,
5047      ULTRIX_CONST_TEST_CT, FD_MACH_ONLY,
5048      aUltrix_ConstTests,   apzUltrix_ConstPatch },
5049
5050   {  zUltrix_IfdefName,    zUltrix_IfdefList,
5051      apzUltrix_IfdefMachs, (regex_t*)NULL,
5052      ULTRIX_IFDEF_TEST_CT, FD_MACH_ONLY,
5053      aUltrix_IfdefTests,   apzUltrix_IfdefPatch },
5054
5055   {  zUltrix_Nested_CmntName,    zUltrix_Nested_CmntList,
5056      apzUltrix_Nested_CmntMachs, (regex_t*)NULL,
5057      ULTRIX_NESTED_CMNT_TEST_CT, FD_MACH_ONLY,
5058      aUltrix_Nested_CmntTests,   apzUltrix_Nested_CmntPatch },
5059
5060   {  zUltrix_StaticName,    zUltrix_StaticList,
5061      apzUltrix_StaticMachs, (regex_t*)NULL,
5062      ULTRIX_STATIC_TEST_CT, FD_MACH_ONLY,
5063      aUltrix_StaticTests,   apzUltrix_StaticPatch },
5064
5065   {  zUndefine_NullName,    zUndefine_NullList,
5066      apzUndefine_NullMachs, (regex_t*)NULL,
5067      UNDEFINE_NULL_TEST_CT, FD_MACH_ONLY,
5068      aUndefine_NullTests,   apzUndefine_NullPatch },
5069
5070   {  zUnixware7_Byteorder_FixName,    zUnixware7_Byteorder_FixList,
5071      apzUnixware7_Byteorder_FixMachs, (regex_t*)NULL,
5072      UNIXWARE7_BYTEORDER_FIX_TEST_CT, FD_MACH_ONLY,
5073      aUnixware7_Byteorder_FixTests,   apzUnixware7_Byteorder_FixPatch },
5074
5075   {  zVa_I960_MacroName,    zVa_I960_MacroList,
5076      apzVa_I960_MacroMachs, (regex_t*)NULL,
5077      VA_I960_MACRO_TEST_CT, FD_MACH_ONLY,
5078      aVa_I960_MacroTests,   apzVa_I960_MacroPatch },
5079
5080   {  zVoid_NullName,    zVoid_NullList,
5081      apzVoid_NullMachs, (regex_t*)NULL,
5082      VOID_NULL_TEST_CT, FD_MACH_ONLY,
5083      aVoid_NullTests,   apzVoid_NullPatch },
5084
5085   {  zVxworks_Gcc_ProblemName,    zVxworks_Gcc_ProblemList,
5086      apzVxworks_Gcc_ProblemMachs, (regex_t*)NULL,
5087      VXWORKS_GCC_PROBLEM_TEST_CT, FD_MACH_ONLY,
5088      aVxworks_Gcc_ProblemTests,   apzVxworks_Gcc_ProblemPatch },
5089
5090   {  zVxworks_Needs_VxtypesName,    zVxworks_Needs_VxtypesList,
5091      apzVxworks_Needs_VxtypesMachs, (regex_t*)NULL,
5092      VXWORKS_NEEDS_VXTYPES_TEST_CT, FD_MACH_ONLY,
5093      aVxworks_Needs_VxtypesTests,   apzVxworks_Needs_VxtypesPatch },
5094
5095   {  zVxworks_Needs_VxworksName,    zVxworks_Needs_VxworksList,
5096      apzVxworks_Needs_VxworksMachs, (regex_t*)NULL,
5097      VXWORKS_NEEDS_VXWORKS_TEST_CT, FD_MACH_ONLY,
5098      aVxworks_Needs_VxworksTests,   apzVxworks_Needs_VxworksPatch },
5099
5100   {  zVxworks_TimeName,    zVxworks_TimeList,
5101      apzVxworks_TimeMachs, (regex_t*)NULL,
5102      VXWORKS_TIME_TEST_CT, FD_MACH_ONLY,
5103      aVxworks_TimeTests,   apzVxworks_TimePatch },
5104
5105   {  zX11_ClassName,    zX11_ClassList,
5106      apzX11_ClassMachs, (regex_t*)NULL,
5107      X11_CLASS_TEST_CT, FD_MACH_ONLY,
5108      aX11_ClassTests,   apzX11_ClassPatch },
5109
5110   {  zX11_Class_UsageName,    zX11_Class_UsageList,
5111      apzX11_Class_UsageMachs, (regex_t*)NULL,
5112      X11_CLASS_USAGE_TEST_CT, FD_MACH_ONLY,
5113      aX11_Class_UsageTests,   apzX11_Class_UsagePatch },
5114
5115   {  zX11_NewName,    zX11_NewList,
5116      apzX11_NewMachs, (regex_t*)NULL,
5117      X11_NEW_TEST_CT, FD_MACH_ONLY,
5118      aX11_NewTests,   apzX11_NewPatch },
5119
5120   {  zX11_SprintfName,    zX11_SprintfList,
5121      apzX11_SprintfMachs, (regex_t*)NULL,
5122      X11_SPRINTF_TEST_CT, FD_MACH_ONLY,
5123      aX11_SprintfTests,   apzX11_SprintfPatch }
5124 };