OSDN Git Service

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