OSDN Git Service

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