OSDN Git Service

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