* haifa-sched.c (find_rgns): Replace uses of alloca with xmalloc.
[official-gcc.git] / gcc / fixinc / fixincl.x
blobc6c8460061848a92f3192746e8594240c8c69aac
1 /*
2  *  DO NOT EDIT THIS FILE - it has been generated
3  *
4  * Install modified versions of certain ANSI-incompatible system header
5  * files which are fixed to work correctly with ANSI C and placed in a
6  * directory that GNU C will search.
7  *
8  * This file contains 107 fixup descriptions.
9  *
10  * See README-fixinc for more information.
11  *
12  *  inclhack copyright (c) 1999 The Free Software Foundation, Inc.
13  *
14  *  inclhack is free software.
15  *  
16  *  You may redistribute it and/or modify it under the terms of the
17  *  GNU General Public License, as published by the Free Software
18  *  Foundation; either version 2, or (at your option) any later version.
19  *  
20  *  inclhack is distributed in the hope that it will be useful,
21  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
22  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
23  *  See the GNU General Public License for more details.
24  *  
25  *  You should have received a copy of the GNU General Public License
26  *  along with inclhack.  See the file "COPYING".  If not,
27  *  write to:  The Free Software Foundation, Inc.,
28  *             59 Temple Place - Suite 330,
29  *             Boston,  MA  02111-1307, USA.
30  *
31  *
32  *  Description of Aaa_Ki_Iface fix
33  */
34 #define AAA_KI_IFACE_FIXIDX              0
35 tSCC zAaa_Ki_IfaceName[] =
36      "Aaa_Ki_Iface";
38  *  File name selection pattern
39  */
40 tSCC zAaa_Ki_IfaceList[] =
41   "|sys/ki_iface.h|";
43  *  Machine/OS name selection pattern
44  */
45 #define apzAaa_Ki_IfaceMachs (const char**)NULL
48  *  content selection pattern - do fix if pattern found
49  */
50 tSCC zAaa_Ki_IfaceSelect0[] =
51        "These definitions are for HP Internal developers";
53 #define    AAA_KI_IFACE_TEST_CT  1
54 #define    AAA_KI_IFACE_RE_CT    1
55 tTestDesc aAaa_Ki_IfaceTests[] = {
56   { TT_EGREP,    zAaa_Ki_IfaceSelect0, (regex_t*)NULL }, };
59  *  Fix Command Arguments for Aaa_Ki_Iface
60  */
61 const char* apzAaa_Ki_IfacePatch[] = {
62     (char*)NULL };
64 /* * * * * * * * * * * * * * * * * * * * * * * * * *
65  *
66  *  Description of Aaa_Ki fix
67  */
68 #define AAA_KI_FIXIDX                    1
69 tSCC zAaa_KiName[] =
70      "Aaa_Ki";
72  *  File name selection pattern
73  */
74 tSCC zAaa_KiList[] =
75   "|sys/ki.h|";
77  *  Machine/OS name selection pattern
78  */
79 #define apzAaa_KiMachs (const char**)NULL
82  *  content selection pattern - do fix if pattern found
83  */
84 tSCC zAaa_KiSelect0[] =
85        "11.00 HP-UX LP64";
87 #define    AAA_KI_TEST_CT  1
88 #define    AAA_KI_RE_CT    1
89 tTestDesc aAaa_KiTests[] = {
90   { TT_EGREP,    zAaa_KiSelect0, (regex_t*)NULL }, };
93  *  Fix Command Arguments for Aaa_Ki
94  */
95 const char* apzAaa_KiPatch[] = {
96     (char*)NULL };
98 /* * * * * * * * * * * * * * * * * * * * * * * * * *
99  *
100  *  Description of Aaa_Ki_Calls fix
101  */
102 #define AAA_KI_CALLS_FIXIDX              2
103 tSCC zAaa_Ki_CallsName[] =
104      "Aaa_Ki_Calls";
106  *  File name selection pattern
107  */
108 tSCC zAaa_Ki_CallsList[] =
109   "|sys/ki_calls.h|";
111  *  Machine/OS name selection pattern
112  */
113 #define apzAaa_Ki_CallsMachs (const char**)NULL
116  *  content selection pattern - do fix if pattern found
117  */
118 tSCC zAaa_Ki_CallsSelect0[] =
119        "kthread_create_caller_t";
121 #define    AAA_KI_CALLS_TEST_CT  1
122 #define    AAA_KI_CALLS_RE_CT    1
123 tTestDesc aAaa_Ki_CallsTests[] = {
124   { TT_EGREP,    zAaa_Ki_CallsSelect0, (regex_t*)NULL }, };
127  *  Fix Command Arguments for Aaa_Ki_Calls
128  */
129 const char* apzAaa_Ki_CallsPatch[] = {
130     (char*)NULL };
132 /* * * * * * * * * * * * * * * * * * * * * * * * * *
134  *  Description of Aaa_Ki_Defs fix
135  */
136 #define AAA_KI_DEFS_FIXIDX               3
137 tSCC zAaa_Ki_DefsName[] =
138      "Aaa_Ki_Defs";
140  *  File name selection pattern
141  */
142 tSCC zAaa_Ki_DefsList[] =
143   "|sys/ki_defs.h|";
145  *  Machine/OS name selection pattern
146  */
147 #define apzAaa_Ki_DefsMachs (const char**)NULL
150  *  content selection pattern - do fix if pattern found
151  */
152 tSCC zAaa_Ki_DefsSelect0[] =
153        "Kernel Instrumentation Definitions";
155 #define    AAA_KI_DEFS_TEST_CT  1
156 #define    AAA_KI_DEFS_RE_CT    1
157 tTestDesc aAaa_Ki_DefsTests[] = {
158   { TT_EGREP,    zAaa_Ki_DefsSelect0, (regex_t*)NULL }, };
161  *  Fix Command Arguments for Aaa_Ki_Defs
162  */
163 const char* apzAaa_Ki_DefsPatch[] = {
164     (char*)NULL };
166 /* * * * * * * * * * * * * * * * * * * * * * * * * *
168  *  Description of Aaa_Bad_Fixes fix
169  */
170 #define AAA_BAD_FIXES_FIXIDX             4
171 tSCC zAaa_Bad_FixesName[] =
172      "Aaa_Bad_Fixes";
174  *  File name selection pattern
175  */
176 tSCC zAaa_Bad_FixesList[] =
177   "|sundev/ipi_error.h|";
179  *  Machine/OS name selection pattern
180  */
181 #define apzAaa_Bad_FixesMachs (const char**)NULL
182 #define AAA_BAD_FIXES_TEST_CT  0
183 #define AAA_BAD_FIXES_RE_CT    0
184 #define aAaa_Bad_FixesTests   (tTestDesc*)NULL
187  *  Fix Command Arguments for Aaa_Bad_Fixes
188  */
189 const char* apzAaa_Bad_FixesPatch[] = {
190     (char*)NULL };
192 /* * * * * * * * * * * * * * * * * * * * * * * * * *
194  *  Description of Aaa_Time fix
195  */
196 #define AAA_TIME_FIXIDX                  5
197 tSCC zAaa_TimeName[] =
198      "Aaa_Time";
200  *  File name selection pattern
201  */
202 tSCC zAaa_TimeList[] =
203   "|sys/time.h|";
205  *  Machine/OS name selection pattern
206  */
207 #define apzAaa_TimeMachs (const char**)NULL
210  *  content selection pattern - do fix if pattern found
211  */
212 tSCC zAaa_TimeSelect0[] =
213        "11.0 and later representation of ki time";
215 #define    AAA_TIME_TEST_CT  1
216 #define    AAA_TIME_RE_CT    1
217 tTestDesc aAaa_TimeTests[] = {
218   { TT_EGREP,    zAaa_TimeSelect0, (regex_t*)NULL }, };
221  *  Fix Command Arguments for Aaa_Time
222  */
223 const char* apzAaa_TimePatch[] = {
224     (char*)NULL };
226 /* * * * * * * * * * * * * * * * * * * * * * * * * *
228  *  Description of Aab_Dgux_Int_Varargs fix
229  */
230 #define AAB_DGUX_INT_VARARGS_FIXIDX      6
231 tSCC zAab_Dgux_Int_VarargsName[] =
232      "Aab_Dgux_Int_Varargs";
234  *  File name selection pattern
235  */
236 tSCC zAab_Dgux_Int_VarargsList[] =
237   "|_int_varargs.h|";
239  *  Machine/OS name selection pattern
240  */
241 #define apzAab_Dgux_Int_VarargsMachs (const char**)NULL
242 #define AAB_DGUX_INT_VARARGS_TEST_CT  0
243 #define AAB_DGUX_INT_VARARGS_RE_CT    0
244 #define aAab_Dgux_Int_VarargsTests   (tTestDesc*)NULL
247  *  Fix Command Arguments for Aab_Dgux_Int_Varargs
248  */
249 const char* apzAab_Dgux_Int_VarargsPatch[] = {
250 "#ifndef __INT_VARARGS_H\n\
251 #define __INT_VARARGS_H\n\
253 /************************************************************************/\n\
254 /* _INT_VARARGS.H - Define the common stuff for varargs/stdarg/stdio.   */\n\
255 /************************************************************************/\n\
257 /*\n\
258 ** This file is a DG internal header.  Never include this\n\
259 ** file directly.\n\
260 */\n\
262 #ifndef ___int_features_h\n\
263 #include <sys/_int_features.h>\n\
264 #endif\n\
266 #if !(defined(_VA_LIST) || defined(_VA_LIST_))\n\
267 #define _VA_LIST\n\
268 #define _VA_LIST_\n\
270 #ifdef __LINT__\n\
272 #ifdef __STDC__\n\
273 typedef void * va_list;\n\
274 #else\n\
275 typedef char * va_list;\n\
276 #endif\n\
278 #else\n\
279 #if _M88K_ANY\n\
281 #if defined(__DCC__)\n\
283 typedef struct {\n\
284       int     next_arg;\n\
285       int     *mem_ptr;\n\
286       int     *reg_ptr;\n\
287 } va_list;\n\
289 #else  /* ! defined(__DCC__) */\n\
291 typedef struct {\n\
292       int  __va_arg;       /* argument number */\n\
293       int *__va_stk;       /* start of args passed on stack */\n\
294       int *__va_reg;       /* start of args passed in regs */\n\
295 } va_list;\n\
297 #endif  /* ! defined(__DCC__) */\n\
299 #elif _IX86_ANY\n\
301 #if defined(__GNUC__) || defined(__STDC__)\n\
302 typedef void * va_list;\n\
303 #else\n\
304 typedef char * va_list;\n\
305 #endif\n\
307 #endif  /*  _IX86_ANY */\n\
309 #endif /* __LINT__ */\n\
310 #endif /*  !(defined(_VA_LIST) || defined(_VA_LIST_)) */\n\
311 #endif /*  #ifndef __INT_VARARGS_H  */\n",
312     (char*)NULL };
314 /* * * * * * * * * * * * * * * * * * * * * * * * * *
316  *  Description of Aix_Syswait fix
317  */
318 #define AIX_SYSWAIT_FIXIDX               7
319 tSCC zAix_SyswaitName[] =
320      "Aix_Syswait";
322  *  File name selection pattern
323  */
324 tSCC zAix_SyswaitList[] =
325   "|sys/wait.h|";
327  *  Machine/OS name selection pattern
328  */
329 #define apzAix_SyswaitMachs (const char**)NULL
332  *  content selection pattern - do fix if pattern found
333  */
334 tSCC zAix_SyswaitSelect0[] =
335        "bos325,";
337 #define    AIX_SYSWAIT_TEST_CT  1
338 #define    AIX_SYSWAIT_RE_CT    1
339 tTestDesc aAix_SyswaitTests[] = {
340   { TT_EGREP,    zAix_SyswaitSelect0, (regex_t*)NULL }, };
343  *  Fix Command Arguments for Aix_Syswait
344  */
345 const char* apzAix_SyswaitPatch[] = { "sed",
346     "-e", "/^extern pid_t wait3();$/i\\\n\
347 struct rusage;\n",
348     (char*)NULL };
350 /* * * * * * * * * * * * * * * * * * * * * * * * * *
352  *  Description of Aix_Volatile fix
353  */
354 #define AIX_VOLATILE_FIXIDX              8
355 tSCC zAix_VolatileName[] =
356      "Aix_Volatile";
358  *  File name selection pattern
359  */
360 tSCC zAix_VolatileList[] =
361   "|sys/signal.h|";
363  *  Machine/OS name selection pattern
364  */
365 #define apzAix_VolatileMachs (const char**)NULL
368  *  content selection pattern - do fix if pattern found
369  */
370 tSCC zAix_VolatileSelect0[] =
371        "typedef volatile int sig_atomic_t";
373 #define    AIX_VOLATILE_TEST_CT  1
374 #define    AIX_VOLATILE_RE_CT    1
375 tTestDesc aAix_VolatileTests[] = {
376   { TT_EGREP,    zAix_VolatileSelect0, (regex_t*)NULL }, };
379  *  Fix Command Arguments for Aix_Volatile
380  */
381 const char* apzAix_VolatilePatch[] = { "sed",
382     "-e", "s/typedef volatile int sig_atomic_t/typedef int sig_atomic_t/",
383     (char*)NULL };
385 /* * * * * * * * * * * * * * * * * * * * * * * * * *
387  *  Description of Alpha_Getopt fix
388  */
389 #define ALPHA_GETOPT_FIXIDX              9
390 tSCC zAlpha_GetoptName[] =
391      "Alpha_Getopt";
393  *  File name selection pattern
394  */
395 tSCC zAlpha_GetoptList[] =
396   "|stdio.h|stdlib.h|";
398  *  Machine/OS name selection pattern
399  */
400 #define apzAlpha_GetoptMachs (const char**)NULL
403  *  content selection pattern - do fix if pattern found
404  */
405 tSCC zAlpha_GetoptSelect0[] =
406        "getopt\\(int, char \\*\\[";
408 #define    ALPHA_GETOPT_TEST_CT  1
409 #define    ALPHA_GETOPT_RE_CT    1
410 tTestDesc aAlpha_GetoptTests[] = {
411   { TT_EGREP,    zAlpha_GetoptSelect0, (regex_t*)NULL }, };
414  *  Fix Command Arguments for Alpha_Getopt
415  */
416 const char* apzAlpha_GetoptPatch[] = { "sed",
417     "-e", "s/getopt(int, char \\*\\[\\],[ ]*char \\*)/getopt(int, char *const[], const char *)/",
418     (char*)NULL };
420 /* * * * * * * * * * * * * * * * * * * * * * * * * *
422  *  Description of Alpha_Parens fix
423  */
424 #define ALPHA_PARENS_FIXIDX              10
425 tSCC zAlpha_ParensName[] =
426      "Alpha_Parens";
428  *  File name selection pattern
429  */
430 tSCC zAlpha_ParensList[] =
431   "|sym.h|";
433  *  Machine/OS name selection pattern
434  */
435 #define apzAlpha_ParensMachs (const char**)NULL
438  *  content selection pattern - do fix if pattern found
439  */
440 tSCC zAlpha_ParensSelect0[] =
441        "#ifndef\\(__mips64\\)";
443 #define    ALPHA_PARENS_TEST_CT  1
444 #define    ALPHA_PARENS_RE_CT    1
445 tTestDesc aAlpha_ParensTests[] = {
446   { TT_EGREP,    zAlpha_ParensSelect0, (regex_t*)NULL }, };
449  *  Fix Command Arguments for Alpha_Parens
450  */
451 const char* apzAlpha_ParensPatch[] = { "sed",
452     "-e", "s/#ifndef(__mips64)/#ifndef __mips64/",
453     (char*)NULL };
455 /* * * * * * * * * * * * * * * * * * * * * * * * * *
457  *  Description of Alpha_Sbrk fix
458  */
459 #define ALPHA_SBRK_FIXIDX                11
460 tSCC zAlpha_SbrkName[] =
461      "Alpha_Sbrk";
463  *  File name selection pattern
464  */
465 tSCC zAlpha_SbrkList[] =
466   "|unistd.h|";
468  *  Machine/OS name selection pattern
469  */
470 #define apzAlpha_SbrkMachs (const char**)NULL
473  *  content selection pattern - do fix if pattern found
474  */
475 tSCC zAlpha_SbrkSelect0[] =
476        "char[ \t]*\\*[\t ]*sbrk[ \t]*\\(";
478 #define    ALPHA_SBRK_TEST_CT  1
479 #define    ALPHA_SBRK_RE_CT    1
480 tTestDesc aAlpha_SbrkTests[] = {
481   { TT_EGREP,    zAlpha_SbrkSelect0, (regex_t*)NULL }, };
484  *  Fix Command Arguments for Alpha_Sbrk
485  */
486 const char* apzAlpha_SbrkPatch[] = { "sed",
487     "-e", "s/char\\([ \t]*\\*[\t ]*sbrk[ \t]*(\\)/void\\1/",
488     (char*)NULL };
490 /* * * * * * * * * * * * * * * * * * * * * * * * * *
492  *  Description of Arm_Norcroft_Hint fix
493  */
494 #define ARM_NORCROFT_HINT_FIXIDX         12
495 tSCC zArm_Norcroft_HintName[] =
496      "Arm_Norcroft_Hint";
498  *  File name selection pattern
499  */
500 tSCC zArm_Norcroft_HintList[] =
501   "|X11/Intrinsic.h|";
503  *  Machine/OS name selection pattern
504  */
505 #define apzArm_Norcroft_HintMachs (const char**)NULL
508  *  content selection pattern - do fix if pattern found
509  */
510 tSCC zArm_Norcroft_HintSelect0[] =
511        "___type p_type";
513 #define    ARM_NORCROFT_HINT_TEST_CT  1
514 #define    ARM_NORCROFT_HINT_RE_CT    1
515 tTestDesc aArm_Norcroft_HintTests[] = {
516   { TT_EGREP,    zArm_Norcroft_HintSelect0, (regex_t*)NULL }, };
519  *  Fix Command Arguments for Arm_Norcroft_Hint
520  */
521 const char* apzArm_Norcroft_HintPatch[] = { "sed",
522     "-e", "s/___type p_type/p_type/",
523     (char*)NULL };
525 /* * * * * * * * * * * * * * * * * * * * * * * * * *
527  *  Description of Arm_Wchar fix
528  */
529 #define ARM_WCHAR_FIXIDX                 13
530 tSCC zArm_WcharName[] =
531      "Arm_Wchar";
533  *  File name selection pattern
534  */
535 tSCC zArm_WcharList[] =
536   "|stdlib.h|";
538  *  Machine/OS name selection pattern
539  */
540 #define apzArm_WcharMachs (const char**)NULL
543  *  content selection pattern - do fix if pattern found
544  */
545 tSCC zArm_WcharSelect0[] =
546        "#[ \t]*define[ \t]*__wchar_t";
548 #define    ARM_WCHAR_TEST_CT  1
549 #define    ARM_WCHAR_RE_CT    1
550 tTestDesc aArm_WcharTests[] = {
551   { TT_EGREP,    zArm_WcharSelect0, (regex_t*)NULL }, };
554  *  Fix Command Arguments for Arm_Wchar
555  */
556 const char* apzArm_WcharPatch[] = { "sed",
557     "-e", "s/\\(#[ \t]*ifndef[ \t]*\\)__wchar_t/\\1_GCC_WCHAR_T/",
558     "-e", "s/\\(#[ \t]*define[ \t]*\\)__wchar_t/\\1_GCC_WCHAR_T/",
559     (char*)NULL };
561 /* * * * * * * * * * * * * * * * * * * * * * * * * *
563  *  Description of Aux_Asm fix
564  */
565 #define AUX_ASM_FIXIDX                   14
566 tSCC zAux_AsmName[] =
567      "Aux_Asm";
569  *  File name selection pattern
570  */
571 tSCC zAux_AsmList[] =
572   "|sys/param.h|";
574  *  Machine/OS name selection pattern
575  */
576 #define apzAux_AsmMachs (const char**)NULL
579  *  content selection pattern - do fix if pattern found
580  */
581 tSCC zAux_AsmSelect0[] =
582        "#ifndef NOINLINE";
584 #define    AUX_ASM_TEST_CT  1
585 #define    AUX_ASM_RE_CT    1
586 tTestDesc aAux_AsmTests[] = {
587   { TT_EGREP,    zAux_AsmSelect0, (regex_t*)NULL }, };
590  *  Fix Command Arguments for Aux_Asm
591  */
592 const char* apzAux_AsmPatch[] = { "sed",
593     "-e", "s|#ifndef NOINLINE|#if !defined(NOINLINE) \\&\\& !defined(__GNUC__)|",
594     (char*)NULL };
596 /* * * * * * * * * * * * * * * * * * * * * * * * * *
598  *  Description of Avoid_Bool fix
599  */
600 #define AVOID_BOOL_FIXIDX                15
601 tSCC zAvoid_BoolName[] =
602      "Avoid_Bool";
604  *  File name selection pattern
605  */
606 tSCC zAvoid_BoolList[] =
607   "|curses.h|curses_colr/curses.h|term.h|tinfo.h|";
609  *  Machine/OS name selection pattern
610  */
611 #define apzAvoid_BoolMachs (const char**)NULL
612 #define AVOID_BOOL_TEST_CT  0
613 #define AVOID_BOOL_RE_CT    0
614 #define aAvoid_BoolTests   (tTestDesc*)NULL
617  *  Fix Command Arguments for Avoid_Bool
618  */
619 const char* apzAvoid_BoolPatch[] = { "sed",
620     "-e", "/^#[ \t]*define[ \t][ \t]*bool[ \t][ \t]*char[ \t]*$/i\\\n\
621 #ifndef __cplusplus\n",
622     "-e", "/^#[ \t]*define[ \t][ \t]*bool[ \t][ \t]*char[ \t]*$/a\\\n\
623 #endif\n",
624     "-e", "/^typedef[ \t][ \t]*char[ \t][ \t]*bool[ \t]*;/i\\\n\
625 #ifndef __cplusplus\n",
626     "-e", "/^typedef[ \t][ \t]*char[ \t][ \t]*bool[ \t]*;/a\\\n\
627 #endif\n",
628     "-e", "/^[ ]*typedef[ \t][ \t]*unsigned char[ \t][ \t]*bool[ \t]*;/i\\\n\
629 #ifndef __cplusplus\n",
630     "-e", "/^[ ]*typedef[ \t][ \t]*unsigned char[ \t][ \t]*bool[ \t]*;/a\\\n\
631 #endif\n",
632     "-e", "/^typedef[ \t][ \t]*int[ \t][ \t]*bool[ \t]*;/i\\\n\
633 #ifndef __cplusplus\n",
634     "-e", "/^typedef[ \t][ \t]*int[ \t][ \t]*bool[ \t]*;/a\\\n\
635 #endif\n",
636     "-e", "/^[ ]*typedef[ \t][ \t]*unsigned int[ \t][ \t]*bool[ \t]*;/i\\\n\
637 #ifndef __cplusplus\n",
638     "-e", "/^[ ]*typedef[ \t][ \t]*unsigned int[ \t][ \t]*bool[ \t]*;/a\\\n\
639 #endif\n",
640     (char*)NULL };
642 /* * * * * * * * * * * * * * * * * * * * * * * * * *
644  *  Description of Bad_Struct_Term fix
645  */
646 #define BAD_STRUCT_TERM_FIXIDX           16
647 tSCC zBad_Struct_TermName[] =
648      "Bad_Struct_Term";
650  *  File name selection pattern
651  */
652 tSCC zBad_Struct_TermList[] =
653   "|curses.h|";
655  *  Machine/OS name selection pattern
656  */
657 #define apzBad_Struct_TermMachs (const char**)NULL
660  *  content selection pattern - do fix if pattern found
661  */
662 tSCC zBad_Struct_TermSelect0[] =
663        "^[ \t]*typedef[ \t]+struct[ \t]+term[ \t]*;";
665 #define    BAD_STRUCT_TERM_TEST_CT  1
666 #define    BAD_STRUCT_TERM_RE_CT    1
667 tTestDesc aBad_Struct_TermTests[] = {
668   { TT_EGREP,    zBad_Struct_TermSelect0, (regex_t*)NULL }, };
671  *  Fix Command Arguments for Bad_Struct_Term
672  */
673 const char* apzBad_Struct_TermPatch[] = { "sed",
674     "-e", "s/^[ \t]*typedef[ \t][ \t]*\\(struct[ \t][ \t]*term[ \t]*;[ \t]*\\)$/\\1/",
675     (char*)NULL };
677 /* * * * * * * * * * * * * * * * * * * * * * * * * *
679  *  Description of Badquote fix
680  */
681 #define BADQUOTE_FIXIDX                  17
682 tSCC zBadquoteName[] =
683      "Badquote";
685  *  File name selection pattern
686  */
687 tSCC zBadquoteList[] =
688   "|sundev/vuid_event.h|";
690  *  Machine/OS name selection pattern
691  */
692 #define apzBadquoteMachs (const char**)NULL
693 #define BADQUOTE_TEST_CT  0
694 #define BADQUOTE_RE_CT    0
695 #define aBadquoteTests   (tTestDesc*)NULL
698  *  Fix Command Arguments for Badquote
699  */
700 const char* apzBadquotePatch[] = { "sed",
701     "-e", "s/doesn't/does not/",
702     (char*)NULL };
704 /* * * * * * * * * * * * * * * * * * * * * * * * * *
706  *  Description of Bad_Lval fix
707  */
708 #define BAD_LVAL_FIXIDX                  18
709 tSCC zBad_LvalName[] =
710      "Bad_Lval";
712  *  File name selection pattern
713  */
714 tSCC zBad_LvalList[] =
715   "|libgen.h|dirent.h|ftw.h|grp.h|ndbm.h|pthread.h|pwd.h|signal.h|standards.h|stdlib.h|string.h|stropts.h|time.h|unistd.h|";
717  *  Machine/OS name selection pattern
718  */
719 #define apzBad_LvalMachs (const char**)NULL
720 #define BAD_LVAL_TEST_CT  0
721 #define BAD_LVAL_RE_CT    0
722 #define aBad_LvalTests   (tTestDesc*)NULL
725  *  Fix Command Arguments for Bad_Lval
726  */
727 const char* apzBad_LvalPatch[] = { "sed",
728     "-e", "s/^[ \t]*#[ \t]*define[ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
729     (char*)NULL };
731 /* * * * * * * * * * * * * * * * * * * * * * * * * *
733  *  Description of Broken_Assert_Stdio fix
734  */
735 #define BROKEN_ASSERT_STDIO_FIXIDX       19
736 tSCC zBroken_Assert_StdioName[] =
737      "Broken_Assert_Stdio";
739  *  File name selection pattern
740  */
741 tSCC zBroken_Assert_StdioList[] =
742   "|assert.h|";
744  *  Machine/OS name selection pattern
745  */
746 #define apzBroken_Assert_StdioMachs (const char**)NULL
749  *  content selection pattern - do fix if pattern found
750  */
751 tSCC zBroken_Assert_StdioSelect0[] =
752        "stderr";
755  *  content bypass pattern - skip fix if pattern found
756  */
757 tSCC zBroken_Assert_StdioBypass0[] =
758        "include.*stdio.h";
760 #define    BROKEN_ASSERT_STDIO_TEST_CT  2
761 #define    BROKEN_ASSERT_STDIO_RE_CT    2
762 tTestDesc aBroken_Assert_StdioTests[] = {
763   { TT_NEGREP,   zBroken_Assert_StdioBypass0, (regex_t*)NULL },
764   { TT_EGREP,    zBroken_Assert_StdioSelect0, (regex_t*)NULL }, };
767  *  Fix Command Arguments for Broken_Assert_Stdio
768  */
769 const char* apzBroken_Assert_StdioPatch[] = { "sed",
770     "-e", "1i\\\n\
771 #include <stdio.h>\n",
772     (char*)NULL };
774 /* * * * * * * * * * * * * * * * * * * * * * * * * *
776  *  Description of Broken_Assert_Stdlib fix
777  */
778 #define BROKEN_ASSERT_STDLIB_FIXIDX      20
779 tSCC zBroken_Assert_StdlibName[] =
780      "Broken_Assert_Stdlib";
782  *  File name selection pattern
783  */
784 tSCC zBroken_Assert_StdlibList[] =
785   "|assert.h|";
787  *  Machine/OS name selection pattern
788  */
789 #define apzBroken_Assert_StdlibMachs (const char**)NULL
792  *  content selection pattern - do fix if pattern found
793  */
794 tSCC zBroken_Assert_StdlibSelect0[] =
795        "exit *\\(|abort *\\(";
798  *  content bypass pattern - skip fix if pattern found
799  */
800 tSCC zBroken_Assert_StdlibBypass0[] =
801        "include.*stdlib.h";
803 #define    BROKEN_ASSERT_STDLIB_TEST_CT  2
804 #define    BROKEN_ASSERT_STDLIB_RE_CT    2
805 tTestDesc aBroken_Assert_StdlibTests[] = {
806   { TT_NEGREP,   zBroken_Assert_StdlibBypass0, (regex_t*)NULL },
807   { TT_EGREP,    zBroken_Assert_StdlibSelect0, (regex_t*)NULL }, };
810  *  Fix Command Arguments for Broken_Assert_Stdlib
811  */
812 const char* apzBroken_Assert_StdlibPatch[] = { "sed",
813     "-e", "1i\\\n\
814 #ifdef __cplusplus\\\n\
815 #include <stdlib.h>\\\n\
816 #endif\n",
817     (char*)NULL };
819 /* * * * * * * * * * * * * * * * * * * * * * * * * *
821  *  Description of Bsd43_Io_Macros fix
822  */
823 #define BSD43_IO_MACROS_FIXIDX           21
824 tSCC zBsd43_Io_MacrosName[] =
825      "Bsd43_Io_Macros";
827  *  File name selection pattern
828  */
829 #define zBsd43_Io_MacrosList (char*)NULL
831  *  Machine/OS name selection pattern
832  */
833 #define apzBsd43_Io_MacrosMachs (const char**)NULL
836  *  content selection pattern - do fix if pattern found
837  */
838 tSCC zBsd43_Io_MacrosSelect0[] =
839        "BSD43__IO";
841 #define    BSD43_IO_MACROS_TEST_CT  1
842 #define    BSD43_IO_MACROS_RE_CT    1
843 tTestDesc aBsd43_Io_MacrosTests[] = {
844   { TT_EGREP,    zBsd43_Io_MacrosSelect0, (regex_t*)NULL }, };
847  *  Fix Command Arguments for Bsd43_Io_Macros
848  */
849 const char* apzBsd43_Io_MacrosPatch[] = { "sed",
850     "-e", "/[ \t]BSD43__IO[A-Z]*[ \t]*(/s/(\\(.\\),/('\\1',/",
851     "-e", "/#[ \t]*define[ \t]*[ \t]BSD43__IO/s/'\\([cgx]\\)'/\\1/g",
852     (char*)NULL };
854 /* * * * * * * * * * * * * * * * * * * * * * * * * *
856  *  Description of Dec_Intern_Asm fix
857  */
858 #define DEC_INTERN_ASM_FIXIDX            22
859 tSCC zDec_Intern_AsmName[] =
860      "Dec_Intern_Asm";
862  *  File name selection pattern
863  */
864 tSCC zDec_Intern_AsmList[] =
865   "|c_asm.h|";
867  *  Machine/OS name selection pattern
868  */
869 #define apzDec_Intern_AsmMachs (const char**)NULL
870 #define DEC_INTERN_ASM_TEST_CT  0
871 #define DEC_INTERN_ASM_RE_CT    0
872 #define aDec_Intern_AsmTests   (tTestDesc*)NULL
875  *  Fix Command Arguments for Dec_Intern_Asm
876  */
877 const char* apzDec_Intern_AsmPatch[] = { "sed",
878     "-e", "/^[ \t]*float[ \t]*fasm/i\\\n\
879 #ifdef __DECC\n",
880     "-e", "/^[ \t]*#[ \t]*pragma[ \t]*intrinsic([ \t]*dasm/a\\\n\
881 #endif\n",
882     (char*)NULL };
884 /* * * * * * * * * * * * * * * * * * * * * * * * * *
886  *  Description of No_Double_Slash fix
887  */
888 #define NO_DOUBLE_SLASH_FIXIDX           23
889 tSCC zNo_Double_SlashName[] =
890      "No_Double_Slash";
892  *  File name selection pattern
893  */
894 #define zNo_Double_SlashList (char*)NULL
896  *  Machine/OS name selection pattern
897  */
898 #define apzNo_Double_SlashMachs (const char**)NULL
901  *  perform the C function call test
902  */
903 tSCC zNo_Double_SlashFTst0[] = "double_slash";
905 #define    NO_DOUBLE_SLASH_TEST_CT  1
906 #define    NO_DOUBLE_SLASH_RE_CT    0
907 tTestDesc aNo_Double_SlashTests[] = {
908   { TT_FUNCTION, zNo_Double_SlashFTst0,   0 /* unused */ }, };
911  *  Fix Command Arguments for No_Double_Slash
912  */
913 const char* apzNo_Double_SlashPatch[] = {"no_double_slash",
914     (char*)NULL };
916 /* * * * * * * * * * * * * * * * * * * * * * * * * *
918  *  Description of Ecd_Cursor fix
919  */
920 #define ECD_CURSOR_FIXIDX                24
921 tSCC zEcd_CursorName[] =
922      "Ecd_Cursor";
924  *  File name selection pattern
925  */
926 tSCC zEcd_CursorList[] =
927   "|sunwindow/win_lock.h|sunwindow/win_cursor.h|";
929  *  Machine/OS name selection pattern
930  */
931 #define apzEcd_CursorMachs (const char**)NULL
932 #define ECD_CURSOR_TEST_CT  0
933 #define ECD_CURSOR_RE_CT    0
934 #define aEcd_CursorTests   (tTestDesc*)NULL
937  *  Fix Command Arguments for Ecd_Cursor
938  */
939 const char* apzEcd_CursorPatch[] = { "sed",
940     "-e", "s/ecd.cursor/ecd_cursor/",
941     (char*)NULL };
943 /* * * * * * * * * * * * * * * * * * * * * * * * * *
945  *  Description of Sco5_Stat_Wrappers fix
946  */
947 #define SCO5_STAT_WRAPPERS_FIXIDX        25
948 tSCC zSco5_Stat_WrappersName[] =
949      "Sco5_Stat_Wrappers";
951  *  File name selection pattern
952  */
953 tSCC zSco5_Stat_WrappersList[] =
954   "|sys/stat.h|";
956  *  Machine/OS name selection pattern
957  */
958 tSCC* apzSco5_Stat_WrappersMachs[] = {
959         "i*86-*-sco3.2v5*",
960         (const char*)NULL };
961 #define SCO5_STAT_WRAPPERS_TEST_CT  0
962 #define SCO5_STAT_WRAPPERS_RE_CT    0
963 #define aSco5_Stat_WrappersTests   (tTestDesc*)NULL
966  *  Fix Command Arguments for Sco5_Stat_Wrappers
967  */
968 const char* apzSco5_Stat_WrappersPatch[] = { "sed",
969     "-e", "/^static int[ \t]*[a-z]*stat(/i\\\n\
970 #ifdef __cplusplus\\\n\
971 extern \"C\"\\\n\
972 {\\\n\
973 #endif\\\n",
974     "-e", "/^}$/a\\\n\
975 #ifdef __cplusplus\\\n\
976 }\\\n\
977 #endif /* __cplusplus */\\\n",
978     (char*)NULL };
980 /* * * * * * * * * * * * * * * * * * * * * * * * * *
982  *  Description of End_Else_Label fix
983  */
984 #define END_ELSE_LABEL_FIXIDX            26
985 tSCC zEnd_Else_LabelName[] =
986      "End_Else_Label";
988  *  File name selection pattern
989  */
990 #define zEnd_Else_LabelList (char*)NULL
992  *  Machine/OS name selection pattern
993  */
994 #define apzEnd_Else_LabelMachs (const char**)NULL
997  *  perform the C function call test
998  */
999 tSCC zEnd_Else_LabelFTst0[] = "else_endif_label";
1001 #define    END_ELSE_LABEL_TEST_CT  1
1002 #define    END_ELSE_LABEL_RE_CT    0
1003 tTestDesc aEnd_Else_LabelTests[] = {
1004   { TT_FUNCTION, zEnd_Else_LabelFTst0,   0 /* unused */ }, };
1007  *  Fix Command Arguments for End_Else_Label
1008  */
1009 const char* apzEnd_Else_LabelPatch[] = {"else_endif_label",
1010     (char*)NULL };
1012 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1014  *  Description of Hp_Inline fix
1015  */
1016 #define HP_INLINE_FIXIDX                 27
1017 tSCC zHp_InlineName[] =
1018      "Hp_Inline";
1020  *  File name selection pattern
1021  */
1022 tSCC zHp_InlineList[] =
1023   "|sys/spinlock.h|";
1025  *  Machine/OS name selection pattern
1026  */
1027 #define apzHp_InlineMachs (const char**)NULL
1030  *  content selection pattern - do fix if pattern found
1031  */
1032 tSCC zHp_InlineSelect0[] =
1033        "include.*\"\\.\\./machine/";
1035 #define    HP_INLINE_TEST_CT  1
1036 #define    HP_INLINE_RE_CT    1
1037 tTestDesc aHp_InlineTests[] = {
1038   { TT_EGREP,    zHp_InlineSelect0, (regex_t*)NULL }, };
1041  *  Fix Command Arguments for Hp_Inline
1042  */
1043 const char* apzHp_InlinePatch[] = { "sed",
1044     "-e", "s,\"../machine/inline.h\",<machine/inline.h>,",
1045     "-e", "s,\"../machine/psl.h\",<machine/psl.h>,",
1046     (char*)NULL };
1048 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1050  *  Description of Hp_Sysfile fix
1051  */
1052 #define HP_SYSFILE_FIXIDX                28
1053 tSCC zHp_SysfileName[] =
1054      "Hp_Sysfile";
1056  *  File name selection pattern
1057  */
1058 tSCC zHp_SysfileList[] =
1059   "|sys/file.h|";
1061  *  Machine/OS name selection pattern
1062  */
1063 #define apzHp_SysfileMachs (const char**)NULL
1066  *  content selection pattern - do fix if pattern found
1067  */
1068 tSCC zHp_SysfileSelect0[] =
1069        "HPUX_SOURCE";
1071 #define    HP_SYSFILE_TEST_CT  1
1072 #define    HP_SYSFILE_RE_CT    1
1073 tTestDesc aHp_SysfileTests[] = {
1074   { TT_EGREP,    zHp_SysfileSelect0, (regex_t*)NULL }, };
1077  *  Fix Command Arguments for Hp_Sysfile
1078  */
1079 const char* apzHp_SysfilePatch[] = { "sed",
1080     "-e", "s/(\\.\\.\\.)/(struct file * ...)/",
1081     (char*)NULL };
1083 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1085  *  Description of Cxx_Unready fix
1086  */
1087 #define CXX_UNREADY_FIXIDX               29
1088 tSCC zCxx_UnreadyName[] =
1089      "Cxx_Unready";
1091  *  File name selection pattern
1092  */
1093 tSCC zCxx_UnreadyList[] =
1094   "|sys/mman.h|rpc/types.h|";
1096  *  Machine/OS name selection pattern
1097  */
1098 #define apzCxx_UnreadyMachs (const char**)NULL
1101  *  content bypass pattern - skip fix if pattern found
1102  */
1103 tSCC zCxx_UnreadyBypass0[] =
1104        "\"C\"|__BEGIN_DECLS";
1106 #define    CXX_UNREADY_TEST_CT  1
1107 #define    CXX_UNREADY_RE_CT    1
1108 tTestDesc aCxx_UnreadyTests[] = {
1109   { TT_NEGREP,   zCxx_UnreadyBypass0, (regex_t*)NULL }, };
1112  *  Fix Command Arguments for Cxx_Unready
1113  */
1114 const char* apzCxx_UnreadyPatch[] = { "sed",
1115     "-e", "1i\\\n\
1116 #ifdef __cplusplus\\\n\
1117 extern \"C\" {\\\n\
1118 #endif\\\n\
1119 \n",
1120     "-e", "$a\\\n\
1121 #ifdef __cplusplus\\\n\
1122 }\\\n\
1123 #endif\n",
1124     (char*)NULL };
1126 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1128  *  Description of Hpux_Maxint fix
1129  */
1130 #define HPUX_MAXINT_FIXIDX               30
1131 tSCC zHpux_MaxintName[] =
1132      "Hpux_Maxint";
1134  *  File name selection pattern
1135  */
1136 tSCC zHpux_MaxintList[] =
1137   "|sys/param.h|";
1139  *  Machine/OS name selection pattern
1140  */
1141 #define apzHpux_MaxintMachs (const char**)NULL
1142 #define HPUX_MAXINT_TEST_CT  0
1143 #define HPUX_MAXINT_RE_CT    0
1144 #define aHpux_MaxintTests   (tTestDesc*)NULL
1147  *  Fix Command Arguments for Hpux_Maxint
1148  */
1149 const char* apzHpux_MaxintPatch[] = { "sed",
1150     "-e", "/^#[ \t]*define[ \t]*MAXINT[ \t]/i\\\n\
1151 #ifndef MAXINT\n",
1152     "-e", "/^#[ \t]*define[ \t]*MAXINT[ \t]/a\\\n\
1153 #endif\n",
1154     (char*)NULL };
1156 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1158  *  Description of Hpux_Systime fix
1159  */
1160 #define HPUX_SYSTIME_FIXIDX              31
1161 tSCC zHpux_SystimeName[] =
1162      "Hpux_Systime";
1164  *  File name selection pattern
1165  */
1166 tSCC zHpux_SystimeList[] =
1167   "|sys/time.h|";
1169  *  Machine/OS name selection pattern
1170  */
1171 #define apzHpux_SystimeMachs (const char**)NULL
1174  *  content selection pattern - do fix if pattern found
1175  */
1176 tSCC zHpux_SystimeSelect0[] =
1177        "^extern struct sigevent;";
1179 #define    HPUX_SYSTIME_TEST_CT  1
1180 #define    HPUX_SYSTIME_RE_CT    1
1181 tTestDesc aHpux_SystimeTests[] = {
1182   { TT_EGREP,    zHpux_SystimeSelect0, (regex_t*)NULL }, };
1185  *  Fix Command Arguments for Hpux_Systime
1186  */
1187 const char* apzHpux_SystimePatch[] = { "sed",
1188     "-e", "s/^extern struct sigevent;/struct sigevent;/",
1189     (char*)NULL };
1191 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1193  *  Description of Hpux11_Uint32_C fix
1194  */
1195 #define HPUX11_UINT32_C_FIXIDX           32
1196 tSCC zHpux11_Uint32_CName[] =
1197      "Hpux11_Uint32_C";
1199  *  File name selection pattern
1200  */
1201 tSCC zHpux11_Uint32_CList[] =
1202   "|inttypes.h|";
1204  *  Machine/OS name selection pattern
1205  */
1206 #define apzHpux11_Uint32_CMachs (const char**)NULL
1209  *  content selection pattern - do fix if pattern found
1210  */
1211 tSCC zHpux11_Uint32_CSelect0[] =
1212        "^#define UINT32_C\\(__c\\)[ \t]*__CONCAT__\\(__CONCAT_U__\\(__c\\),l\\)";
1214 #define    HPUX11_UINT32_C_TEST_CT  1
1215 #define    HPUX11_UINT32_C_RE_CT    1
1216 tTestDesc aHpux11_Uint32_CTests[] = {
1217   { TT_EGREP,    zHpux11_Uint32_CSelect0, (regex_t*)NULL }, };
1220  *  Fix Command Arguments for Hpux11_Uint32_C
1221  */
1222 const char* apzHpux11_Uint32_CPatch[] = { "sed",
1223     "-e", "s/^#define UINT32_C(__c)\\([ \t]*\\)__CONCAT__(__CONCAT_U__(__c),l)/#define UINT32_C(__c)\\1__CONCAT__(__c,ul)/",
1224     (char*)NULL };
1226 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1228  *  Description of Interactv_Add1 fix
1229  */
1230 #define INTERACTV_ADD1_FIXIDX            33
1231 tSCC zInteractv_Add1Name[] =
1232      "Interactv_Add1";
1234  *  File name selection pattern
1235  */
1236 tSCC zInteractv_Add1List[] =
1237   "|stdio.h|math.h|ctype.h|sys/limits.h|sys/fcntl.h|sys/dirent.h|";
1239  *  Machine/OS name selection pattern
1240  */
1241 #define apzInteractv_Add1Machs (const char**)NULL
1244  *  perform the 'test' shell command - do fix on success
1245  */
1246 tSCC zInteractv_Add1Test0[] =
1247        " -d /etc/conf/kconfig.d";
1248 tSCC zInteractv_Add1Test1[] =
1249        " -n \"`grep _POSIX_VERSION /usr/include/sys/unistd.h`\"";
1251 #define    INTERACTV_ADD1_TEST_CT  2
1252 #define    INTERACTV_ADD1_RE_CT    0
1253 tTestDesc aInteractv_Add1Tests[] = {
1254   { TT_TEST,     zInteractv_Add1Test0,   0 /* unused */ },
1255   { TT_TEST,     zInteractv_Add1Test1,   0 /* unused */ }, };
1258  *  Fix Command Arguments for Interactv_Add1
1259  */
1260 const char* apzInteractv_Add1Patch[] = { "sed",
1261     "-e", "s/!defined(__STDC__) && !defined(_POSIX_SOURCE)/!defined(_POSIX_SOURCE)/",
1262     (char*)NULL };
1264 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1266  *  Description of Interactv_Add2 fix
1267  */
1268 #define INTERACTV_ADD2_FIXIDX            34
1269 tSCC zInteractv_Add2Name[] =
1270      "Interactv_Add2";
1272  *  File name selection pattern
1273  */
1274 tSCC zInteractv_Add2List[] =
1275   "|math.h|";
1277  *  Machine/OS name selection pattern
1278  */
1279 #define apzInteractv_Add2Machs (const char**)NULL
1282  *  perform the 'test' shell command - do fix on success
1283  */
1284 tSCC zInteractv_Add2Test0[] =
1285        " -d /etc/conf/kconfig.d";
1286 tSCC zInteractv_Add2Test1[] =
1287        " -n \"`grep _POSIX_VERSION /usr/include/sys/unistd.h`\"";
1289 #define    INTERACTV_ADD2_TEST_CT  2
1290 #define    INTERACTV_ADD2_RE_CT    0
1291 tTestDesc aInteractv_Add2Tests[] = {
1292   { TT_TEST,     zInteractv_Add2Test0,   0 /* unused */ },
1293   { TT_TEST,     zInteractv_Add2Test1,   0 /* unused */ }, };
1296  *  Fix Command Arguments for Interactv_Add2
1297  */
1298 const char* apzInteractv_Add2Patch[] = { "sed",
1299     "-e", "s/fmod(double)/fmod(double, double)/",
1300     (char*)NULL };
1302 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1304  *  Description of Interactv_Add3 fix
1305  */
1306 #define INTERACTV_ADD3_FIXIDX            35
1307 tSCC zInteractv_Add3Name[] =
1308      "Interactv_Add3";
1310  *  File name selection pattern
1311  */
1312 tSCC zInteractv_Add3List[] =
1313   "|sys/limits.h|";
1315  *  Machine/OS name selection pattern
1316  */
1317 #define apzInteractv_Add3Machs (const char**)NULL
1320  *  perform the 'test' shell command - do fix on success
1321  */
1322 tSCC zInteractv_Add3Test0[] =
1323        " -d /etc/conf/kconfig.d";
1324 tSCC zInteractv_Add3Test1[] =
1325        " -n \"`grep _POSIX_VERSION /usr/include/sys/unistd.h`\"";
1327 #define    INTERACTV_ADD3_TEST_CT  2
1328 #define    INTERACTV_ADD3_RE_CT    0
1329 tTestDesc aInteractv_Add3Tests[] = {
1330   { TT_TEST,     zInteractv_Add3Test0,   0 /* unused */ },
1331   { TT_TEST,     zInteractv_Add3Test1,   0 /* unused */ }, };
1334  *  Fix Command Arguments for Interactv_Add3
1335  */
1336 const char* apzInteractv_Add3Patch[] = { "sed",
1337     "-e", "/CHILD_MAX/s,/\\* Max, Max,",
1338     "-e", "/OPEN_MAX/s,/\\* Max, Max,",
1339     (char*)NULL };
1341 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1343  *  Description of Io_Def_Quotes fix
1344  */
1345 #define IO_DEF_QUOTES_FIXIDX             36
1346 tSCC zIo_Def_QuotesName[] =
1347      "Io_Def_Quotes";
1349  *  File name selection pattern
1350  */
1351 #define zIo_Def_QuotesList (char*)NULL
1353  *  Machine/OS name selection pattern
1354  */
1355 #define apzIo_Def_QuotesMachs (const char**)NULL
1358  *  content selection pattern - do fix if pattern found
1359  */
1360 tSCC zIo_Def_QuotesSelect0[] =
1361        "[ \t]*[ \t](_|DES)IO[A-Z]*[ \t]*\\( *[^,']";
1363 #define    IO_DEF_QUOTES_TEST_CT  1
1364 #define    IO_DEF_QUOTES_RE_CT    1
1365 tTestDesc aIo_Def_QuotesTests[] = {
1366   { TT_EGREP,    zIo_Def_QuotesSelect0, (regex_t*)NULL }, };
1369  *  Fix Command Arguments for Io_Def_Quotes
1370  */
1371 const char* apzIo_Def_QuotesPatch[] = { "sed",
1372     "-e", "s/\\([ \t]*[ \t]_IO[A-Z]*[ \t]*(\\)\\([^,']\\),/\\1'\\2',/",
1373     "-e", "s/\\([ \t]*[ \t]DESIO[A-Z]*[ \t]*(\\)\\([^,']\\),/\\1'\\2',/",
1374     "-e", "/#[ \t]*define[ \t]*[ \t]_IO/s/'\\([cgxtf]\\)'/\\1/g",
1375     "-e", "/#[ \t]*define[ \t]*[ \t]DESIOC/s/'\\([cdgx]\\)'/\\1/g",
1376     (char*)NULL };
1378 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1380  *  Description of Ioctl_Fix_Ctrl fix
1381  */
1382 #define IOCTL_FIX_CTRL_FIXIDX            37
1383 tSCC zIoctl_Fix_CtrlName[] =
1384      "Ioctl_Fix_Ctrl";
1386  *  File name selection pattern
1387  */
1388 #define zIoctl_Fix_CtrlList (char*)NULL
1390  *  Machine/OS name selection pattern
1391  */
1392 #define apzIoctl_Fix_CtrlMachs (const char**)NULL
1395  *  content selection pattern - do fix if pattern found
1396  */
1397 tSCC zIoctl_Fix_CtrlSelect0[] =
1398        "CTRL[ \t]*\\(";
1400 #define    IOCTL_FIX_CTRL_TEST_CT  1
1401 #define    IOCTL_FIX_CTRL_RE_CT    1
1402 tTestDesc aIoctl_Fix_CtrlTests[] = {
1403   { TT_EGREP,    zIoctl_Fix_CtrlSelect0, (regex_t*)NULL }, };
1406  *  Fix Command Arguments for Ioctl_Fix_Ctrl
1407  */
1408 const char* apzIoctl_Fix_CtrlPatch[] = { "sed",
1409     "-e", "/[^A-Z0-9_]CTRL[ \t]*(/s/\\([^']\\))/'\\1')/",
1410     "-e", "/[^A-Z0-9]_CTRL[ \t]*(/s/\\([^']\\))/'\\1')/",
1411     "-e", "/#[ \t]*define[ \t]*[ \t]CTRL/s/'\\([cgx]\\)'/\\1/g",
1412     "-e", "/#[ \t]*define[ \t]*[ \t]_CTRL/s/'\\([cgx]\\)'/\\1/g",
1413     "-e", "/#[ \t]*define[ \t]*[ \t]BSD43_CTRL/s/'\\([cgx]\\)'/\\1/g",
1414     "-e", "/#[ \t]*define[ \t]*[ \t][_]*ISCTRL/s/'\\([cgx]\\)'/\\1/g",
1415     (char*)NULL };
1417 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1419  *  Description of Ip_Missing_Semi fix
1420  */
1421 #define IP_MISSING_SEMI_FIXIDX           38
1422 tSCC zIp_Missing_SemiName[] =
1423      "Ip_Missing_Semi";
1425  *  File name selection pattern
1426  */
1427 tSCC zIp_Missing_SemiList[] =
1428   "|netinet/ip.h|";
1430  *  Machine/OS name selection pattern
1431  */
1432 #define apzIp_Missing_SemiMachs (const char**)NULL
1433 #define IP_MISSING_SEMI_TEST_CT  0
1434 #define IP_MISSING_SEMI_RE_CT    0
1435 #define aIp_Missing_SemiTests   (tTestDesc*)NULL
1438  *  Fix Command Arguments for Ip_Missing_Semi
1439  */
1440 const char* apzIp_Missing_SemiPatch[] = { "sed",
1441     "-e", "/^struct/,/^};/s/}$/};/",
1442     (char*)NULL };
1444 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1446  *  Description of Irix_Multiline_Cmnt fix
1447  */
1448 #define IRIX_MULTILINE_CMNT_FIXIDX       39
1449 tSCC zIrix_Multiline_CmntName[] =
1450      "Irix_Multiline_Cmnt";
1452  *  File name selection pattern
1453  */
1454 tSCC zIrix_Multiline_CmntList[] =
1455   "|sys/types.h|";
1457  *  Machine/OS name selection pattern
1458  */
1459 #define apzIrix_Multiline_CmntMachs (const char**)NULL
1460 #define IRIX_MULTILINE_CMNT_TEST_CT  0
1461 #define IRIX_MULTILINE_CMNT_RE_CT    0
1462 #define aIrix_Multiline_CmntTests   (tTestDesc*)NULL
1465  *  Fix Command Arguments for Irix_Multiline_Cmnt
1466  */
1467 const char* apzIrix_Multiline_CmntPatch[] = { "sed",
1468     "-e", "s@type of the result@type of the result */@",
1469     "-e", "s@of the sizeof@/* of the sizeof@",
1470     (char*)NULL };
1472 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1474  *  Description of Irix_Sockaddr fix
1475  */
1476 #define IRIX_SOCKADDR_FIXIDX             40
1477 tSCC zIrix_SockaddrName[] =
1478      "Irix_Sockaddr";
1480  *  File name selection pattern
1481  */
1482 tSCC zIrix_SockaddrList[] =
1483   "|rpc/auth.h|";
1485  *  Machine/OS name selection pattern
1486  */
1487 #define apzIrix_SockaddrMachs (const char**)NULL
1490  *  content selection pattern - do fix if pattern found
1491  */
1492 tSCC zIrix_SockaddrSelect0[] =
1493        "authdes_create.*struct sockaddr";
1495 #define    IRIX_SOCKADDR_TEST_CT  1
1496 #define    IRIX_SOCKADDR_RE_CT    1
1497 tTestDesc aIrix_SockaddrTests[] = {
1498   { TT_EGREP,    zIrix_SockaddrSelect0, (regex_t*)NULL }, };
1501  *  Fix Command Arguments for Irix_Sockaddr
1502  */
1503 const char* apzIrix_SockaddrPatch[] = { "sed",
1504     "-e", "/authdes_create.*struct sockaddr/i\\\n\
1505 struct sockaddr;\n",
1506     (char*)NULL };
1508 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1510  *  Description of Irix_Struct__File fix
1511  */
1512 #define IRIX_STRUCT__FILE_FIXIDX         41
1513 tSCC zIrix_Struct__FileName[] =
1514      "Irix_Struct__File";
1516  *  File name selection pattern
1517  */
1518 tSCC zIrix_Struct__FileList[] =
1519   "|rpc/xdr.h|";
1521  *  Machine/OS name selection pattern
1522  */
1523 #define apzIrix_Struct__FileMachs (const char**)NULL
1524 #define IRIX_STRUCT__FILE_TEST_CT  0
1525 #define IRIX_STRUCT__FILE_RE_CT    0
1526 #define aIrix_Struct__FileTests   (tTestDesc*)NULL
1529  *  Fix Command Arguments for Irix_Struct__File
1530  */
1531 const char* apzIrix_Struct__FilePatch[] = { "sed",
1532     "-e", "/xdrstdio_create.*struct __file_s/i\\\n\
1533 struct __file_s;\n",
1534     (char*)NULL };
1536 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1538  *  Description of Irix_Asm_Apostrophe fix
1539  */
1540 #define IRIX_ASM_APOSTROPHE_FIXIDX       42
1541 tSCC zIrix_Asm_ApostropheName[] =
1542      "Irix_Asm_Apostrophe";
1544  *  File name selection pattern
1545  */
1546 tSCC zIrix_Asm_ApostropheList[] =
1547   "|sys/asm.h|";
1549  *  Machine/OS name selection pattern
1550  */
1551 #define apzIrix_Asm_ApostropheMachs (const char**)NULL
1554  *  content selection pattern - do fix if pattern found
1555  */
1556 tSCC zIrix_Asm_ApostropheSelect0[] =
1557        "^[ \t]*#.*[Ww]e're";
1559 #define    IRIX_ASM_APOSTROPHE_TEST_CT  1
1560 #define    IRIX_ASM_APOSTROPHE_RE_CT    1
1561 tTestDesc aIrix_Asm_ApostropheTests[] = {
1562   { TT_EGREP,    zIrix_Asm_ApostropheSelect0, (regex_t*)NULL }, };
1565  *  Fix Command Arguments for Irix_Asm_Apostrophe
1566  */
1567 const char* apzIrix_Asm_ApostrophePatch[] = { "sed",
1568     "-e", "/^[ \t]*#/s/\\([Ww]e\\)'re/\\1 are/",
1569     (char*)NULL };
1571 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1573  *  Description of Isc_Fmod fix
1574  */
1575 #define ISC_FMOD_FIXIDX                  43
1576 tSCC zIsc_FmodName[] =
1577      "Isc_Fmod";
1579  *  File name selection pattern
1580  */
1581 tSCC zIsc_FmodList[] =
1582   "|math.h|";
1584  *  Machine/OS name selection pattern
1585  */
1586 #define apzIsc_FmodMachs (const char**)NULL
1589  *  content selection pattern - do fix if pattern found
1590  */
1591 tSCC zIsc_FmodSelect0[] =
1592        "fmod\\(double\\)";
1594 #define    ISC_FMOD_TEST_CT  1
1595 #define    ISC_FMOD_RE_CT    1
1596 tTestDesc aIsc_FmodTests[] = {
1597   { TT_EGREP,    zIsc_FmodSelect0, (regex_t*)NULL }, };
1600  *  Fix Command Arguments for Isc_Fmod
1601  */
1602 const char* apzIsc_FmodPatch[] = { "sed",
1603     "-e", "s/fmod(double)/fmod(double, double)/",
1604     (char*)NULL };
1606 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1608  *  Description of Motorola_Nested fix
1609  */
1610 #define MOTOROLA_NESTED_FIXIDX           44
1611 tSCC zMotorola_NestedName[] =
1612      "Motorola_Nested";
1614  *  File name selection pattern
1615  */
1616 tSCC zMotorola_NestedList[] =
1617   "|limits.h|sys/limits.h|";
1619  *  Machine/OS name selection pattern
1620  */
1621 tSCC* apzMotorola_NestedMachs[] = {
1622         "m68k-motorola-sysv*",
1623         (const char*)NULL };
1624 #define MOTOROLA_NESTED_TEST_CT  0
1625 #define MOTOROLA_NESTED_RE_CT    0
1626 #define aMotorola_NestedTests   (tTestDesc*)NULL
1629  *  Fix Command Arguments for Motorola_Nested
1630  */
1631 const char* apzMotorola_NestedPatch[] = { "sed",
1632     "-e", "s@^\\(#undef[ \t][ \t]*PIPE_BUF[ \t]*/\\* max # bytes atomic in write to a\\)$@\\1 */@",
1633     "-e", "s@\\(/\\*#define\tHUGE_VAL\t3.40282346638528860e+38 \\)\\(/\\*error value returned by Math lib\\*/\\)$@\\1*/ \\2@",
1634     (char*)NULL };
1636 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1638  *  Description of Isc_Sys_Limits fix
1639  */
1640 #define ISC_SYS_LIMITS_FIXIDX            45
1641 tSCC zIsc_Sys_LimitsName[] =
1642      "Isc_Sys_Limits";
1644  *  File name selection pattern
1645  */
1646 tSCC zIsc_Sys_LimitsList[] =
1647   "|sys/limits.h|";
1649  *  Machine/OS name selection pattern
1650  */
1651 #define apzIsc_Sys_LimitsMachs (const char**)NULL
1654  *  content selection pattern - do fix if pattern found
1655  */
1656 tSCC zIsc_Sys_LimitsSelect0[] =
1657        "CHILD_MAX";
1659 #define    ISC_SYS_LIMITS_TEST_CT  1
1660 #define    ISC_SYS_LIMITS_RE_CT    1
1661 tTestDesc aIsc_Sys_LimitsTests[] = {
1662   { TT_EGREP,    zIsc_Sys_LimitsSelect0, (regex_t*)NULL }, };
1665  *  Fix Command Arguments for Isc_Sys_Limits
1666  */
1667 const char* apzIsc_Sys_LimitsPatch[] = { "sed",
1668     "-e", "/CHILD_MAX/s,/\\* Max, Max,",
1669     "-e", "/OPEN_MAX/s,/\\* Max, Max,",
1670     (char*)NULL };
1672 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1674  *  Description of Kandr_Concat fix
1675  */
1676 #define KANDR_CONCAT_FIXIDX              46
1677 tSCC zKandr_ConcatName[] =
1678      "Kandr_Concat";
1680  *  File name selection pattern
1681  */
1682 tSCC zKandr_ConcatList[] =
1683   "|sparc/asm_linkage.h|sun3/asm_linkage.h|sun3x/asm_linkage.h|sun4/asm_linkage.h|sun4c/asm_linkage.h|sun4m/asm_linkage.h|sun4c/debug/asm_linkage.h|sun4m/debug/asm_linkage.h|arm/as_support.h|arm/mc_type.h|arm/xcb.h|dev/chardefmac.h|dev/ps_irq.h|dev/screen.h|dev/scsi.h|sys/tty.h|Xm.acorn/XmP.h|bsd43/bsd43_.h|";
1685  *  Machine/OS name selection pattern
1686  */
1687 #define apzKandr_ConcatMachs (const char**)NULL
1690  *  content selection pattern - do fix if pattern found
1691  */
1692 tSCC zKandr_ConcatSelect0[] =
1693        "/\\*\\*/";
1695 #define    KANDR_CONCAT_TEST_CT  1
1696 #define    KANDR_CONCAT_RE_CT    1
1697 tTestDesc aKandr_ConcatTests[] = {
1698   { TT_EGREP,    zKandr_ConcatSelect0, (regex_t*)NULL }, };
1701  *  Fix Command Arguments for Kandr_Concat
1702  */
1703 const char* apzKandr_ConcatPatch[] = { "sed",
1704     "-e", "s|/\\*\\*/|##|g",
1705     (char*)NULL };
1707 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1709  *  Description of Limits_Ifndefs fix
1710  */
1711 #define LIMITS_IFNDEFS_FIXIDX            47
1712 tSCC zLimits_IfndefsName[] =
1713      "Limits_Ifndefs";
1715  *  File name selection pattern
1716  */
1717 tSCC zLimits_IfndefsList[] =
1718   "|limits.h|sys/limits.h|";
1720  *  Machine/OS name selection pattern
1721  */
1722 #define apzLimits_IfndefsMachs (const char**)NULL
1725  *  content bypass pattern - skip fix if pattern found
1726  */
1727 tSCC zLimits_IfndefsBypass0[] =
1728        "ifndef[ \t]+FLT_MIN";
1730 #define    LIMITS_IFNDEFS_TEST_CT  1
1731 #define    LIMITS_IFNDEFS_RE_CT    1
1732 tTestDesc aLimits_IfndefsTests[] = {
1733   { TT_NEGREP,   zLimits_IfndefsBypass0, (regex_t*)NULL }, };
1736  *  Fix Command Arguments for Limits_Ifndefs
1737  */
1738 const char* apzLimits_IfndefsPatch[] = { "sed",
1739     "-e", "/[ \t]FLT_MIN[ \t]/i\\\n\
1740 #ifndef FLT_MIN\n",
1741     "-e", "/[ \t]FLT_MIN[ \t]/a\\\n\
1742 #endif\n",
1743     "-e", "/[ \t]FLT_MAX[ \t]/i\\\n\
1744 #ifndef FLT_MAX\n",
1745     "-e", "/[ \t]FLT_MAX[ \t]/a\\\n\
1746 #endif\n",
1747     "-e", "/[ \t]FLT_DIG[ \t]/i\\\n\
1748 #ifndef FLT_DIG\n",
1749     "-e", "/[ \t]FLT_DIG[ \t]/a\\\n\
1750 #endif\n",
1751     "-e", "/[ \t]DBL_MIN[ \t]/i\\\n\
1752 #ifndef DBL_MIN\n",
1753     "-e", "/[ \t]DBL_MIN[ \t]/a\\\n\
1754 #endif\n",
1755     "-e", "/[ \t]DBL_MAX[ \t]/i\\\n\
1756 #ifndef DBL_MAX\n",
1757     "-e", "/[ \t]DBL_MAX[ \t]/a\\\n\
1758 #endif\n",
1759     "-e", "/[ \t]DBL_DIG[ \t]/i\\\n\
1760 #ifndef DBL_DIG\n",
1761     "-e", "/[ \t]DBL_DIG[ \t]/a\\\n\
1762 #endif\n",
1763     "-e", "/^\\(\\/\\*#define\tHUGE_VAL\t3\\.[0-9e+]* *\\)\\/\\*/s//\\1/",
1764     (char*)NULL };
1766 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1768  *  Description of Lynx_Void_Int fix
1769  */
1770 #define LYNX_VOID_INT_FIXIDX             48
1771 tSCC zLynx_Void_IntName[] =
1772      "Lynx_Void_Int";
1774  *  File name selection pattern
1775  */
1776 tSCC zLynx_Void_IntList[] =
1777   "|curses.h|";
1779  *  Machine/OS name selection pattern
1780  */
1781 #define apzLynx_Void_IntMachs (const char**)NULL
1784  *  content selection pattern - do fix if pattern found
1785  */
1786 tSCC zLynx_Void_IntSelect0[] =
1787        "#[ \t]*define[ \t]+void[ \t]+int";
1789 #define    LYNX_VOID_INT_TEST_CT  1
1790 #define    LYNX_VOID_INT_RE_CT    1
1791 tTestDesc aLynx_Void_IntTests[] = {
1792   { TT_EGREP,    zLynx_Void_IntSelect0, (regex_t*)NULL }, };
1795  *  Fix Command Arguments for Lynx_Void_Int
1796  */
1797 const char* apzLynx_Void_IntPatch[] = { "sed",
1798     "-e", "/#[ \t]*define[ \t][ \t]*void[ \t]int/d",
1799     (char*)NULL };
1801 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1803  *  Description of Lynxos_Fcntl_Proto fix
1804  */
1805 #define LYNXOS_FCNTL_PROTO_FIXIDX        49
1806 tSCC zLynxos_Fcntl_ProtoName[] =
1807      "Lynxos_Fcntl_Proto";
1809  *  File name selection pattern
1810  */
1811 tSCC zLynxos_Fcntl_ProtoList[] =
1812   "|fcntl.h|";
1814  *  Machine/OS name selection pattern
1815  */
1816 #define apzLynxos_Fcntl_ProtoMachs (const char**)NULL
1819  *  content selection pattern - do fix if pattern found
1820  */
1821 tSCC zLynxos_Fcntl_ProtoSelect0[] =
1822        "fcntl.*\\(int, int, int\\)";
1824 #define    LYNXOS_FCNTL_PROTO_TEST_CT  1
1825 #define    LYNXOS_FCNTL_PROTO_RE_CT    1
1826 tTestDesc aLynxos_Fcntl_ProtoTests[] = {
1827   { TT_EGREP,    zLynxos_Fcntl_ProtoSelect0, (regex_t*)NULL }, };
1830  *  Fix Command Arguments for Lynxos_Fcntl_Proto
1831  */
1832 const char* apzLynxos_Fcntl_ProtoPatch[] = { "sed",
1833     "-e", "s/\\(fcntl.*(int, int, \\)int)/\\1...)/",
1834     (char*)NULL };
1836 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1838  *  Description of M88k_Bad_Hypot_Opt fix
1839  */
1840 #define M88K_BAD_HYPOT_OPT_FIXIDX        50
1841 tSCC zM88k_Bad_Hypot_OptName[] =
1842      "M88k_Bad_Hypot_Opt";
1844  *  File name selection pattern
1845  */
1846 tSCC zM88k_Bad_Hypot_OptList[] =
1847   "|math.h|";
1849  *  Machine/OS name selection pattern
1850  */
1851 tSCC* apzM88k_Bad_Hypot_OptMachs[] = {
1852         "m88k-motorola-sysv3*",
1853         (const char*)NULL };
1854 #define M88K_BAD_HYPOT_OPT_TEST_CT  0
1855 #define M88K_BAD_HYPOT_OPT_RE_CT    0
1856 #define aM88k_Bad_Hypot_OptTests   (tTestDesc*)NULL
1859  *  Fix Command Arguments for M88k_Bad_Hypot_Opt
1860  */
1861 const char* apzM88k_Bad_Hypot_OptPatch[] = { "sed",
1862     "-e", "s/extern double floor(), ceil(), fmod(), fabs();/extern double floor(), ceil(), fmod(), fabs _PARAMS((double));/",
1863     "-e", "/^extern double hypot();$/a\\\n\
1864 \\/* Workaround a stupid Motorola optimization if one\\\n\
1865    of x or y is 0.0 and the other is negative!  *\\/\\\n\
1866 #ifdef __STDC__\\\n\
1867 static __inline__ double fake_hypot (double x, double y)\\\n\
1868 #else\\\n\
1869 static __inline__ double fake_hypot (x, y)\\\n\
1870 \tdouble x, y;\\\n\
1871 #endif\\\n\
1872 {\\\n\
1873 \treturn fabs (hypot (x, y));\\\n\
1874 }\\\n\
1875 #define hypot\tfake_hypot\n",
1876     (char*)NULL };
1878 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1880  *  Description of M88k_Bad_S_If fix
1881  */
1882 #define M88K_BAD_S_IF_FIXIDX             51
1883 tSCC zM88k_Bad_S_IfName[] =
1884      "M88k_Bad_S_If";
1886  *  File name selection pattern
1887  */
1888 tSCC zM88k_Bad_S_IfList[] =
1889   "|sys/stat.h|";
1891  *  Machine/OS name selection pattern
1892  */
1893 tSCC* apzM88k_Bad_S_IfMachs[] = {
1894         "m88k-*-sysv3*",
1895         (const char*)NULL };
1898  *  content selection pattern - do fix if pattern found
1899  */
1900 tSCC zM88k_Bad_S_IfSelect0[] =
1901        "#define[ \t]+S_IS[A-Z]*(m)[ \t]";
1903 #define    M88K_BAD_S_IF_TEST_CT  1
1904 #define    M88K_BAD_S_IF_RE_CT    1
1905 tTestDesc aM88k_Bad_S_IfTests[] = {
1906   { TT_EGREP,    zM88k_Bad_S_IfSelect0, (regex_t*)NULL }, };
1909  *  Fix Command Arguments for M88k_Bad_S_If
1910  */
1911 const char* apzM88k_Bad_S_IfPatch[] = { "sed",
1912     "-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)/",
1913     "-e", "s/^\\(#define[ \t]*S_IS[A-Z]*(m)\\)[ \t]*(m[ \t]*&[ \t]*\\(0[0-9]*\\)[ \t]*)/\\1 (((m)\\&S_IFMT)==\\2)/",
1914     (char*)NULL };
1916 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1918  *  Description of M88k_Multi_Incl fix
1919  */
1920 #define M88K_MULTI_INCL_FIXIDX           52
1921 tSCC zM88k_Multi_InclName[] =
1922      "M88k_Multi_Incl";
1924  *  File name selection pattern
1925  */
1926 tSCC zM88k_Multi_InclList[] =
1927   "|time.h|";
1929  *  Machine/OS name selection pattern
1930  */
1931 tSCC* apzM88k_Multi_InclMachs[] = {
1932         "m88k-tektronix-sysv3*",
1933         (const char*)NULL };
1936  *  content bypass pattern - skip fix if pattern found
1937  */
1938 tSCC zM88k_Multi_InclBypass0[] =
1939        "#ifndef";
1941 #define    M88K_MULTI_INCL_TEST_CT  1
1942 #define    M88K_MULTI_INCL_RE_CT    1
1943 tTestDesc aM88k_Multi_InclTests[] = {
1944   { TT_NEGREP,   zM88k_Multi_InclBypass0, (regex_t*)NULL }, };
1947  *  Fix Command Arguments for M88k_Multi_Incl
1948  */
1949 const char* apzM88k_Multi_InclPatch[] = { "sh", "-c",
1950     "echo Fixing $file, to protect against multiple inclusion. >&2\n\
1951       cpp_wrapper=`echo $file | sed -e 's,\\.,_,g' -e 's,/,_,g'`\n\
1952       echo \"#ifndef __GCC_GOT_${cpp_wrapper}_\"\n\
1953       echo \"#define __GCC_GOT_${cpp_wrapper}_\"\n\
1954       cat\n\
1955       echo \"#endif /* ! __GCC_GOT_${cpp_wrapper}_ */\"",
1956     (char*)NULL };
1958 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1960  *  Description of Machine_Name fix
1961  */
1962 #define MACHINE_NAME_FIXIDX              53
1963 tSCC zMachine_NameName[] =
1964      "Machine_Name";
1966  *  File name selection pattern
1967  */
1968 #define zMachine_NameList (char*)NULL
1970  *  Machine/OS name selection pattern
1971  */
1972 #define apzMachine_NameMachs (const char**)NULL
1975  *  content selection pattern - do fix if pattern found
1976  *  This is a special pattern that not all egrep commands
1977  *  are capable of coping with.  We use the GNU library, tho :)
1978  */
1979 tSCC zMachine_NameSelect0[] =
1980        "^#[ \t]*(if|elif).*[^a-zA-Z0-9_](M32|_*MIPSE[LB]|_*SYSTYPE_[A-Z0-9]|_*[Rr][34]000|_*host_mips|_*i386|_*mips|bsd4|is68k|m[68]8k|mc680|news|ns32000|pdp11|pyr|sel|sony_news|sparc|sun|tahoe|tower|u370|u3b|unix|vax)";
1982 #define    MACHINE_NAME_TEST_CT  1
1983 #define    MACHINE_NAME_RE_CT    1
1984 tTestDesc aMachine_NameTests[] = {
1985   { TT_EGREP,    zMachine_NameSelect0, (regex_t*)NULL }, };
1988  *  Fix Command Arguments for Machine_Name
1989  */
1990 const char* apzMachine_NamePatch[] = { "sed",
1991     "-e", ":loop\n\
1992 /\\\\$/N\n\
1993 s/\\\\$/\\\\+++fixinc_eol+++/\n\
1994 /\\\\$/b loop\n\
1995 s/\\\\+++fixinc_eol+++/\\\\/g\n\
1996 /#[\t ]*[el]*if/ {\n\
1997 \ts/[a-zA-Z0-9_][a-zA-Z0-9_]*/ & /g\n\
1998 \ts/ M32 / __M32__ /g\n\
1999 \ts/ _*MIPSE\\([LB]\\) / __MIPSE\\1__ /g\n\
2000 \ts/ _*SYSTYPE_\\([A-Z0-9]*\\) / __SYSTYPE_\\1__ /g\n\
2001 \ts/ _*\\([Rr][34]\\)000 / __\\1000__ /g\n\
2002 \ts/ _*host_mips / __host_mips__ /g\n\
2003 \ts/ _*i386 / __i386__ /g\n\
2004 \ts/ _*mips / __mips__ /g\n\
2005 \ts/ bsd4\\([0-9]\\) / __bsd4\\1__ /g\n\
2006 \ts/ is68k / __is68k__ /g\n\
2007 \ts/ m68k / __m68k__ /g\n\
2008 \ts/ m88k / __m88k__ /g\n\
2009 \ts/ mc680\\([0-9]\\)0 / __mc680\\10__ /g\n\
2010 \ts/ news\\([0-9]*\\) / __news\\1__ /g\n\
2011 \ts/ ns32000 / __ns32000__ /g\n\
2012 \ts/ pdp11 / __pdp11__ /g\n\
2013 \ts/ pyr / __pyr__ /g\n\
2014 \ts/ sel / __sel__ /g\n\
2015 \ts/ sony_news / __sony_news__ /g\n\
2016 \ts/ sparc / __sparc__ /g\n\
2017 \ts/ sun\\([a-z0-9]*\\) / __sun\\1__ /g\n\
2018 \ts/ tahoe / __tahoe__ /g\n\
2019 \ts/ tower\\([_0-9]*\\) / __tower\\1__ /g\n\
2020 \ts/ u370 / __u370__ /g\n\
2021 \ts/ u3b\\([0-9]*\\) / __u3b\\1__ /g\n\
2022 \ts/ unix / __unix__ /g\n\
2023 \ts/ vax / __vax__ /g\n\
2024 \ts/ \\([a-zA-Z0-9_][a-zA-Z0-9_]*\\) /\\1/g\n\
2025 \t}",
2026     (char*)NULL };
2028 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2030  *  Description of Math_Exception fix
2031  */
2032 #define MATH_EXCEPTION_FIXIDX            54
2033 tSCC zMath_ExceptionName[] =
2034      "Math_Exception";
2036  *  File name selection pattern
2037  */
2038 tSCC zMath_ExceptionList[] =
2039   "|math.h|";
2041  *  Machine/OS name selection pattern
2042  */
2043 #define apzMath_ExceptionMachs (const char**)NULL
2046  *  content selection pattern - do fix if pattern found
2047  */
2048 tSCC zMath_ExceptionSelect0[] =
2049        "struct exception";
2051 #define    MATH_EXCEPTION_TEST_CT  1
2052 #define    MATH_EXCEPTION_RE_CT    1
2053 tTestDesc aMath_ExceptionTests[] = {
2054   { TT_EGREP,    zMath_ExceptionSelect0, (regex_t*)NULL }, };
2057  *  Fix Command Arguments for Math_Exception
2058  */
2059 const char* apzMath_ExceptionPatch[] = { "sed",
2060     "-e", "/struct exception/i\\\n\
2061 #ifdef __cplusplus\\\n\
2062 #define exception __math_exception\\\n\
2063 #endif\n",
2064     "-e", "/struct exception/a\\\n\
2065 #ifdef __cplusplus\\\n\
2066 #undef exception\\\n\
2067 #endif\n",
2068     "-e", "/matherr/i\\\n\
2069 #ifdef __cplusplus\\\n\
2070 #define exception __math_exception\\\n\
2071 #endif\n",
2072     "-e", "/matherr/a\\\n\
2073 #ifdef __cplusplus\\\n\
2074 #undef exception\\\n\
2075 #endif\n",
2076     (char*)NULL };
2078 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2080  *  Description of Math_Gcc_Ifndefs fix
2081  */
2082 #define MATH_GCC_IFNDEFS_FIXIDX          55
2083 tSCC zMath_Gcc_IfndefsName[] =
2084      "Math_Gcc_Ifndefs";
2086  *  File name selection pattern
2087  */
2088 tSCC zMath_Gcc_IfndefsList[] =
2089   "|math.h|";
2091  *  Machine/OS name selection pattern
2092  */
2093 #define apzMath_Gcc_IfndefsMachs (const char**)NULL
2094 #define MATH_GCC_IFNDEFS_TEST_CT  0
2095 #define MATH_GCC_IFNDEFS_RE_CT    0
2096 #define aMath_Gcc_IfndefsTests   (tTestDesc*)NULL
2099  *  Fix Command Arguments for Math_Gcc_Ifndefs
2100  */
2101 const char* apzMath_Gcc_IfndefsPatch[] = { "sh", "-c",
2102     "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h 2>/dev/null`\n\
2104 \tif ( test -n \"${dbl_max_def}\" \\\n\
2105 \t\t-a -n \"`egrep '#define[ \t]*HUGE_VAL[ \t]+DBL_MAX' $file`\" \\\n\
2106 \t\t-a -z \"`egrep '#define[ \t]+DBL_MAX[ \t]+' $file`\"\n\
2107 \t   ) > /dev/null 2>&1\n\
2108 \tthen sed -e '/define[ \t]HUGE_VAL[ \t]DBL_MAX/s/DBL_MAX/$dbl_max_def/'\n\
2109 \telse cat ; fi |\n\
2110 \tsed -e '/define[ \t]HUGE_VAL[ \t]/i\\\n\
2111 #ifndef HUGE_VAL\n\
2112 ' -e '/define[ \t]HUGE_VAL[ \t]/a\\\n\
2113 #endif\n\
2115     (char*)NULL };
2117 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2119  *  Description of Nested_Comment fix
2120  */
2121 #define NESTED_COMMENT_FIXIDX            56
2122 tSCC zNested_CommentName[] =
2123      "Nested_Comment";
2125  *  File name selection pattern
2126  */
2127 tSCC zNested_CommentList[] =
2128   "|rpc/rpc.h|";
2130  *  Machine/OS name selection pattern
2131  */
2132 #define apzNested_CommentMachs (const char**)NULL
2133 #define NESTED_COMMENT_TEST_CT  0
2134 #define NESTED_COMMENT_RE_CT    0
2135 #define aNested_CommentTests   (tTestDesc*)NULL
2138  *  Fix Command Arguments for Nested_Comment
2139  */
2140 const char* apzNested_CommentPatch[] = { "sed",
2141     "-e", "s@^\\(/\\*.*rpc/auth_des.h>.*\\)/\\*@\\1*/ /*@",
2142     (char*)NULL };
2144 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2146  *  Description of News_Os_Recursion fix
2147  */
2148 #define NEWS_OS_RECURSION_FIXIDX         57
2149 tSCC zNews_Os_RecursionName[] =
2150      "News_Os_Recursion";
2152  *  File name selection pattern
2153  */
2154 tSCC zNews_Os_RecursionList[] =
2155   "|stdlib.h|";
2157  *  Machine/OS name selection pattern
2158  */
2159 #define apzNews_Os_RecursionMachs (const char**)NULL
2162  *  content selection pattern - do fix if pattern found
2163  */
2164 tSCC zNews_Os_RecursionSelect0[] =
2165        "#include <stdlib.h>";
2167 #define    NEWS_OS_RECURSION_TEST_CT  1
2168 #define    NEWS_OS_RECURSION_RE_CT    1
2169 tTestDesc aNews_Os_RecursionTests[] = {
2170   { TT_EGREP,    zNews_Os_RecursionSelect0, (regex_t*)NULL }, };
2173  *  Fix Command Arguments for News_Os_Recursion
2174  */
2175 const char* apzNews_Os_RecursionPatch[] = { "sed",
2176     "-e", "/^#include <stdlib.h>/i\\\n\
2177 #ifdef BOGUS_RECURSION\n",
2178     "-e", "/^#include <stdlib.h>/a\\\n\
2179 #endif\n",
2180     (char*)NULL };
2182 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2184  *  Description of Next_Math_Prefix fix
2185  */
2186 #define NEXT_MATH_PREFIX_FIXIDX          58
2187 tSCC zNext_Math_PrefixName[] =
2188      "Next_Math_Prefix";
2190  *  File name selection pattern
2191  */
2192 tSCC zNext_Math_PrefixList[] =
2193   "|ansi/math.h|";
2195  *  Machine/OS name selection pattern
2196  */
2197 #define apzNext_Math_PrefixMachs (const char**)NULL
2200  *  content selection pattern - do fix if pattern found
2201  */
2202 tSCC zNext_Math_PrefixSelect0[] =
2203        "^extern.*double.*__const__.*";
2205 #define    NEXT_MATH_PREFIX_TEST_CT  1
2206 #define    NEXT_MATH_PREFIX_RE_CT    1
2207 tTestDesc aNext_Math_PrefixTests[] = {
2208   { TT_EGREP,    zNext_Math_PrefixSelect0, (regex_t*)NULL }, };
2211  *  Fix Command Arguments for Next_Math_Prefix
2212  */
2213 const char* apzNext_Math_PrefixPatch[] = { "sed",
2214     "-e", "/^extern.*double.*__const__.*sqrt(/s/__const__//",
2215     "-e", "/^extern.*double.*__const__.*fabs(/s/__const__//",
2216     "-e", "/^extern.*double.*__const__.*cos(/s/__const__//",
2217     "-e", "/^extern.*double.*__const__.*hypot(/s/__const__//",
2218     "-e", "/^extern.*double.*__const__.*sin(/s/__const__//",
2219     (char*)NULL };
2221 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2223  *  Description of Next_Template fix
2224  */
2225 #define NEXT_TEMPLATE_FIXIDX             59
2226 tSCC zNext_TemplateName[] =
2227      "Next_Template";
2229  *  File name selection pattern
2230  */
2231 tSCC zNext_TemplateList[] =
2232   "|bsd/libc.h|";
2234  *  Machine/OS name selection pattern
2235  */
2236 #define apzNext_TemplateMachs (const char**)NULL
2239  *  content selection pattern - do fix if pattern found
2240  */
2241 tSCC zNext_TemplateSelect0[] =
2242        "template";
2244 #define    NEXT_TEMPLATE_TEST_CT  1
2245 #define    NEXT_TEMPLATE_RE_CT    1
2246 tTestDesc aNext_TemplateTests[] = {
2247   { TT_EGREP,    zNext_TemplateSelect0, (regex_t*)NULL }, };
2250  *  Fix Command Arguments for Next_Template
2251  */
2252 const char* apzNext_TemplatePatch[] = { "sed",
2253     "-e", "/\\(.*template\\)/s/template//",
2254     "-e", "/extern.*volatile.*void.*abort/s/volatile//",
2255     (char*)NULL };
2257 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2259  *  Description of Next_Volitile fix
2260  */
2261 #define NEXT_VOLITILE_FIXIDX             60
2262 tSCC zNext_VolitileName[] =
2263      "Next_Volitile";
2265  *  File name selection pattern
2266  */
2267 tSCC zNext_VolitileList[] =
2268   "|ansi/stdlib.h|";
2270  *  Machine/OS name selection pattern
2271  */
2272 #define apzNext_VolitileMachs (const char**)NULL
2275  *  content selection pattern - do fix if pattern found
2276  */
2277 tSCC zNext_VolitileSelect0[] =
2278        "volatile";
2280 #define    NEXT_VOLITILE_TEST_CT  1
2281 #define    NEXT_VOLITILE_RE_CT    1
2282 tTestDesc aNext_VolitileTests[] = {
2283   { TT_EGREP,    zNext_VolitileSelect0, (regex_t*)NULL }, };
2286  *  Fix Command Arguments for Next_Volitile
2287  */
2288 const char* apzNext_VolitilePatch[] = { "sed",
2289     "-e", "/extern.*volatile.*void.*exit/s/volatile//",
2290     "-e", "/extern.*volatile.*void.*abort/s/volatile//",
2291     (char*)NULL };
2293 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2295  *  Description of Next_Wait_Union fix
2296  */
2297 #define NEXT_WAIT_UNION_FIXIDX           61
2298 tSCC zNext_Wait_UnionName[] =
2299      "Next_Wait_Union";
2301  *  File name selection pattern
2302  */
2303 tSCC zNext_Wait_UnionList[] =
2304   "|sys/wait.h|";
2306  *  Machine/OS name selection pattern
2307  */
2308 #define apzNext_Wait_UnionMachs (const char**)NULL
2311  *  content selection pattern - do fix if pattern found
2312  */
2313 tSCC zNext_Wait_UnionSelect0[] =
2314        "wait\\(union wait";
2316 #define    NEXT_WAIT_UNION_TEST_CT  1
2317 #define    NEXT_WAIT_UNION_RE_CT    1
2318 tTestDesc aNext_Wait_UnionTests[] = {
2319   { TT_EGREP,    zNext_Wait_UnionSelect0, (regex_t*)NULL }, };
2322  *  Fix Command Arguments for Next_Wait_Union
2323  */
2324 const char* apzNext_Wait_UnionPatch[] = { "sed",
2325     "-e", "s@wait(union wait@wait(void@",
2326     (char*)NULL };
2328 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2330  *  Description of Nodeent_Syntax fix
2331  */
2332 #define NODEENT_SYNTAX_FIXIDX            62
2333 tSCC zNodeent_SyntaxName[] =
2334      "Nodeent_Syntax";
2336  *  File name selection pattern
2337  */
2338 tSCC zNodeent_SyntaxList[] =
2339   "|netdnet/dnetdb.h|";
2341  *  Machine/OS name selection pattern
2342  */
2343 #define apzNodeent_SyntaxMachs (const char**)NULL
2344 #define NODEENT_SYNTAX_TEST_CT  0
2345 #define NODEENT_SYNTAX_RE_CT    0
2346 #define aNodeent_SyntaxTests   (tTestDesc*)NULL
2349  *  Fix Command Arguments for Nodeent_Syntax
2350  */
2351 const char* apzNodeent_SyntaxPatch[] = { "sed",
2352     "-e", "s/char.*na_addr *$/char *na_addr;/",
2353     (char*)NULL };
2355 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2357  *  Description of Osf_Namespace_A fix
2358  */
2359 #define OSF_NAMESPACE_A_FIXIDX           63
2360 tSCC zOsf_Namespace_AName[] =
2361      "Osf_Namespace_A";
2363  *  File name selection pattern
2364  */
2365 tSCC zOsf_Namespace_AList[] =
2366   "|reg_types.h|sys/lc_core.h|";
2368  *  Machine/OS name selection pattern
2369  */
2370 #define apzOsf_Namespace_AMachs (const char**)NULL
2373  *  perform the 'test' shell command - do fix on success
2374  */
2375 tSCC zOsf_Namespace_ATest0[] =
2376        " -r reg_types.h";
2377 tSCC zOsf_Namespace_ATest1[] =
2378        " -r sys/lc_core.h";
2379 tSCC zOsf_Namespace_ATest2[] =
2380        " -n \"`grep '} regex_t;' reg_types.h`\"";
2381 tSCC zOsf_Namespace_ATest3[] =
2382        " -z \"`grep __regex_t regex.h`\"";
2384 #define    OSF_NAMESPACE_A_TEST_CT  4
2385 #define    OSF_NAMESPACE_A_RE_CT    0
2386 tTestDesc aOsf_Namespace_ATests[] = {
2387   { TT_TEST,     zOsf_Namespace_ATest0,   0 /* unused */ },
2388   { TT_TEST,     zOsf_Namespace_ATest1,   0 /* unused */ },
2389   { TT_TEST,     zOsf_Namespace_ATest2,   0 /* unused */ },
2390   { TT_TEST,     zOsf_Namespace_ATest3,   0 /* unused */ }, };
2393  *  Fix Command Arguments for Osf_Namespace_A
2394  */
2395 const char* apzOsf_Namespace_APatch[] = { "sed",
2396     "-e", "s/regex_t/__regex_t/g",
2397     "-e", "s/regoff_t/__regoff_t/g",
2398     "-e", "s/regmatch_t/__regmatch_t/g",
2399     (char*)NULL };
2401 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2403  *  Description of Osf_Namespace_B fix
2404  */
2405 #define OSF_NAMESPACE_B_FIXIDX           64
2406 tSCC zOsf_Namespace_BName[] =
2407      "Osf_Namespace_B";
2409  *  File name selection pattern
2410  */
2411 tSCC zOsf_Namespace_BList[] =
2412   "|regex.h|";
2414  *  Machine/OS name selection pattern
2415  */
2416 #define apzOsf_Namespace_BMachs (const char**)NULL
2419  *  perform the 'test' shell command - do fix on success
2420  */
2421 tSCC zOsf_Namespace_BTest0[] =
2422        " -r reg_types.h";
2423 tSCC zOsf_Namespace_BTest1[] =
2424        " -r sys/lc_core.h";
2425 tSCC zOsf_Namespace_BTest2[] =
2426        " -n \"`grep '} regex_t;' reg_types.h`\"";
2427 tSCC zOsf_Namespace_BTest3[] =
2428        " -z \"`grep __regex_t regex.h`\"";
2430 #define    OSF_NAMESPACE_B_TEST_CT  4
2431 #define    OSF_NAMESPACE_B_RE_CT    0
2432 tTestDesc aOsf_Namespace_BTests[] = {
2433   { TT_TEST,     zOsf_Namespace_BTest0,   0 /* unused */ },
2434   { TT_TEST,     zOsf_Namespace_BTest1,   0 /* unused */ },
2435   { TT_TEST,     zOsf_Namespace_BTest2,   0 /* unused */ },
2436   { TT_TEST,     zOsf_Namespace_BTest3,   0 /* unused */ }, };
2439  *  Fix Command Arguments for Osf_Namespace_B
2440  */
2441 const char* apzOsf_Namespace_BPatch[] = { "sed",
2442     "-e", "/#include <reg_types.h>/a\\\n\
2443 typedef __regex_t\tregex_t;\\\n\
2444 typedef __regoff_t\tregoff_t;\\\n\
2445 typedef __regmatch_t\tregmatch_t;\n",
2446     (char*)NULL };
2448 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2450  *  Description of Pthread_Page_Size fix
2451  */
2452 #define PTHREAD_PAGE_SIZE_FIXIDX         65
2453 tSCC zPthread_Page_SizeName[] =
2454      "Pthread_Page_Size";
2456  *  File name selection pattern
2457  */
2458 tSCC zPthread_Page_SizeList[] =
2459   "|pthread.h|";
2461  *  Machine/OS name selection pattern
2462  */
2463 #define apzPthread_Page_SizeMachs (const char**)NULL
2466  *  content selection pattern - do fix if pattern found
2467  */
2468 tSCC zPthread_Page_SizeSelect0[] =
2469        "^int __page_size";
2471 #define    PTHREAD_PAGE_SIZE_TEST_CT  1
2472 #define    PTHREAD_PAGE_SIZE_RE_CT    1
2473 tTestDesc aPthread_Page_SizeTests[] = {
2474   { TT_EGREP,    zPthread_Page_SizeSelect0, (regex_t*)NULL }, };
2477  *  Fix Command Arguments for Pthread_Page_Size
2478  */
2479 const char* apzPthread_Page_SizePatch[] = { "sed",
2480     "-e", "s/^int __page_size/extern int __page_size/",
2481     (char*)NULL };
2483 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2485  *  Description of Read_Ret_Type fix
2486  */
2487 #define READ_RET_TYPE_FIXIDX             66
2488 tSCC zRead_Ret_TypeName[] =
2489      "Read_Ret_Type";
2491  *  File name selection pattern
2492  */
2493 tSCC zRead_Ret_TypeList[] =
2494   "|stdio.h|";
2496  *  Machine/OS name selection pattern
2497  */
2498 #define apzRead_Ret_TypeMachs (const char**)NULL
2501  *  content selection pattern - do fix if pattern found
2502  */
2503 tSCC zRead_Ret_TypeSelect0[] =
2504        "extern int\t.*, fread\\(\\), fwrite\\(\\)";
2506 #define    READ_RET_TYPE_TEST_CT  1
2507 #define    READ_RET_TYPE_RE_CT    1
2508 tTestDesc aRead_Ret_TypeTests[] = {
2509   { TT_EGREP,    zRead_Ret_TypeSelect0, (regex_t*)NULL }, };
2512  *  Fix Command Arguments for Read_Ret_Type
2513  */
2514 const char* apzRead_Ret_TypePatch[] = { "sed",
2515     "-e", "s/^\\(extern int\tfclose(), fflush()\\), \\(fread(), fwrite()\\)\\(.*\\)$/extern unsigned int\t\\2;\\\n\
2516 \\1\\3/",
2517     (char*)NULL };
2519 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2521  *  Description of Rs6000_Double fix
2522  */
2523 #define RS6000_DOUBLE_FIXIDX             67
2524 tSCC zRs6000_DoubleName[] =
2525      "Rs6000_Double";
2527  *  File name selection pattern
2528  */
2529 tSCC zRs6000_DoubleList[] =
2530   "|math.h|";
2532  *  Machine/OS name selection pattern
2533  */
2534 #define apzRs6000_DoubleMachs (const char**)NULL
2537  *  content selection pattern - do fix if pattern found
2538  */
2539 tSCC zRs6000_DoubleSelect0[] =
2540        "[^a-zA-Z_]class\\(";
2542 #define    RS6000_DOUBLE_TEST_CT  1
2543 #define    RS6000_DOUBLE_RE_CT    1
2544 tTestDesc aRs6000_DoubleTests[] = {
2545   { TT_EGREP,    zRs6000_DoubleSelect0, (regex_t*)NULL }, };
2548  *  Fix Command Arguments for Rs6000_Double
2549  */
2550 const char* apzRs6000_DoublePatch[] = { "sed",
2551     "-e", "/class[(]/i\\\n\
2552 #ifndef __cplusplus\n",
2553     "-e", "/class[(]/a\\\n\
2554 #endif\n",
2555     (char*)NULL };
2557 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2559  *  Description of Rs6000_Fchmod fix
2560  */
2561 #define RS6000_FCHMOD_FIXIDX             68
2562 tSCC zRs6000_FchmodName[] =
2563      "Rs6000_Fchmod";
2565  *  File name selection pattern
2566  */
2567 tSCC zRs6000_FchmodList[] =
2568   "|sys/stat.h|";
2570  *  Machine/OS name selection pattern
2571  */
2572 #define apzRs6000_FchmodMachs (const char**)NULL
2575  *  content selection pattern - do fix if pattern found
2576  */
2577 tSCC zRs6000_FchmodSelect0[] =
2578        "fchmod\\(char";
2580 #define    RS6000_FCHMOD_TEST_CT  1
2581 #define    RS6000_FCHMOD_RE_CT    1
2582 tTestDesc aRs6000_FchmodTests[] = {
2583   { TT_EGREP,    zRs6000_FchmodSelect0, (regex_t*)NULL }, };
2586  *  Fix Command Arguments for Rs6000_Fchmod
2587  */
2588 const char* apzRs6000_FchmodPatch[] = { "sed",
2589     "-e", "s/fchmod(char \\*/fchmod(int/",
2590     (char*)NULL };
2592 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2594  *  Description of Rs6000_Param fix
2595  */
2596 #define RS6000_PARAM_FIXIDX              69
2597 tSCC zRs6000_ParamName[] =
2598      "Rs6000_Param";
2600  *  File name selection pattern
2601  */
2602 tSCC zRs6000_ParamList[] =
2603   "|stdio.h|unistd.h|";
2605  *  Machine/OS name selection pattern
2606  */
2607 #define apzRs6000_ParamMachs (const char**)NULL
2608 #define RS6000_PARAM_TEST_CT  0
2609 #define RS6000_PARAM_RE_CT    0
2610 #define aRs6000_ParamTests   (tTestDesc*)NULL
2613  *  Fix Command Arguments for Rs6000_Param
2614  */
2615 const char* apzRs6000_ParamPatch[] = { "sed",
2616     "-e", "s@rename(const char \\*old, const char \\*new)@rename(const char *_old, const char *_new)@",
2617     (char*)NULL };
2619 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2621  *  Description of Sony_Include fix
2622  */
2623 #define SONY_INCLUDE_FIXIDX              70
2624 tSCC zSony_IncludeName[] =
2625      "Sony_Include";
2627  *  File name selection pattern
2628  */
2629 tSCC zSony_IncludeList[] =
2630   "|machine/machparam.h|";
2632  *  Machine/OS name selection pattern
2633  */
2634 #define apzSony_IncludeMachs (const char**)NULL
2637  *  content selection pattern - do fix if pattern found
2638  */
2639 tSCC zSony_IncludeSelect0[] =
2640        "\"\\.\\./machine/endian.h\"";
2642 #define    SONY_INCLUDE_TEST_CT  1
2643 #define    SONY_INCLUDE_RE_CT    1
2644 tTestDesc aSony_IncludeTests[] = {
2645   { TT_EGREP,    zSony_IncludeSelect0, (regex_t*)NULL }, };
2648  *  Fix Command Arguments for Sony_Include
2649  */
2650 const char* apzSony_IncludePatch[] = { "sed",
2651     "-e", "s@\"../machine/endian.h\"@<machine/endian.h>@",
2652     (char*)NULL };
2654 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2656  *  Description of Statsswtch fix
2657  */
2658 #define STATSSWTCH_FIXIDX                71
2659 tSCC zStatsswtchName[] =
2660      "Statsswtch";
2662  *  File name selection pattern
2663  */
2664 tSCC zStatsswtchList[] =
2665   "|rpcsvc/rstat.h|";
2667  *  Machine/OS name selection pattern
2668  */
2669 #define apzStatsswtchMachs (const char**)NULL
2672  *  content selection pattern - do fix if pattern found
2673  */
2674 tSCC zStatsswtchSelect0[] =
2675        "boottime$";
2677 #define    STATSSWTCH_TEST_CT  1
2678 #define    STATSSWTCH_RE_CT    1
2679 tTestDesc aStatsswtchTests[] = {
2680   { TT_EGREP,    zStatsswtchSelect0, (regex_t*)NULL }, };
2683  *  Fix Command Arguments for Statsswtch
2684  */
2685 const char* apzStatsswtchPatch[] = { "sed",
2686     "-e", "s/boottime$/boottime;/",
2687     (char*)NULL };
2689 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2691  *  Description of Stdio_Va_List fix
2692  */
2693 #define STDIO_VA_LIST_FIXIDX             72
2694 tSCC zStdio_Va_ListName[] =
2695      "Stdio_Va_List";
2697  *  File name selection pattern
2698  */
2699 tSCC zStdio_Va_ListList[] =
2700   "|stdio.h|";
2702  *  Machine/OS name selection pattern
2703  */
2704 #define apzStdio_Va_ListMachs (const char**)NULL
2705 #define STDIO_VA_LIST_TEST_CT  0
2706 #define STDIO_VA_LIST_RE_CT    0
2707 #define aStdio_Va_ListTests   (tTestDesc*)NULL
2710  *  Fix Command Arguments for Stdio_Va_List
2711  */
2712 const char* apzStdio_Va_ListPatch[] = { "sh", "-c",
2713     "if ( egrep \"__need___va_list\" $file ) > /dev/null 2>&1 ; then\n\
2714     :\n\
2715   else\n\
2716     echo \"#define __need___va_list\"\n\
2717     echo \"#include <stdarg.h>\"\n\
2718   fi\n\
2720   sed -e 's@ va_list @ __gnuc_va_list @' \\\n\
2721       -e 's@ va_list)@ __gnuc_va_list)@' \\\n\
2722       -e 's@ _BSD_VA_LIST_))@ __gnuc_va_list))@' \\\n\
2723       -e 's@ _VA_LIST_));@ __gnuc_va_list));@' \\\n\
2724       -e 's@ va_list@ __va_list__@' \\\n\
2725       -e 's@\\*va_list@*__va_list__@' \\\n\
2726       -e 's@ __va_list)@ __gnuc_va_list)@' \\\n\
2727       -e 's@GNUC_VA_LIST@GNUC_Va_LIST@' \\\n\
2728       -e 's@_NEED___VA_LIST@_NEED___Va_LIST@' \\\n\
2729       -e 's@VA_LIST@DUMMY_VA_LIST@' \\\n\
2730       -e 's@_Va_LIST@_VA_LIST@'",
2731     (char*)NULL };
2733 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2735  *  Description of Sun_Bogus_Ifdef fix
2736  */
2737 #define SUN_BOGUS_IFDEF_FIXIDX           73
2738 tSCC zSun_Bogus_IfdefName[] =
2739      "Sun_Bogus_Ifdef";
2741  *  File name selection pattern
2742  */
2743 tSCC zSun_Bogus_IfdefList[] =
2744   "|hsfs/hsfs_spec.h|hsfs/iso_spec.h|";
2746  *  Machine/OS name selection pattern
2747  */
2748 #define apzSun_Bogus_IfdefMachs (const char**)NULL
2751  *  content selection pattern - do fix if pattern found
2752  */
2753 tSCC zSun_Bogus_IfdefSelect0[] =
2754        "#ifdef __i386__ || __vax__";
2756 #define    SUN_BOGUS_IFDEF_TEST_CT  1
2757 #define    SUN_BOGUS_IFDEF_RE_CT    1
2758 tTestDesc aSun_Bogus_IfdefTests[] = {
2759   { TT_EGREP,    zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };
2762  *  Fix Command Arguments for Sun_Bogus_Ifdef
2763  */
2764 const char* apzSun_Bogus_IfdefPatch[] = { "sed",
2765     "-e", "s/\\#ifdef __i386__ || __vax__/\\#if __i386__ || __vax__/g",
2766     (char*)NULL };
2768 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2770  *  Description of Sun_Bogus_Ifdef_Sun4c fix
2771  */
2772 #define SUN_BOGUS_IFDEF_SUN4C_FIXIDX     74
2773 tSCC zSun_Bogus_Ifdef_Sun4cName[] =
2774      "Sun_Bogus_Ifdef_Sun4c";
2776  *  File name selection pattern
2777  */
2778 tSCC zSun_Bogus_Ifdef_Sun4cList[] =
2779   "|hsfs/hsnode.h|";
2781  *  Machine/OS name selection pattern
2782  */
2783 #define apzSun_Bogus_Ifdef_Sun4cMachs (const char**)NULL
2786  *  content selection pattern - do fix if pattern found
2787  */
2788 tSCC zSun_Bogus_Ifdef_Sun4cSelect0[] =
2789        "#ifdef __i386__ || __sun4c__";
2791 #define    SUN_BOGUS_IFDEF_SUN4C_TEST_CT  1
2792 #define    SUN_BOGUS_IFDEF_SUN4C_RE_CT    1
2793 tTestDesc aSun_Bogus_Ifdef_Sun4cTests[] = {
2794   { TT_EGREP,    zSun_Bogus_Ifdef_Sun4cSelect0, (regex_t*)NULL }, };
2797  *  Fix Command Arguments for Sun_Bogus_Ifdef_Sun4c
2798  */
2799 const char* apzSun_Bogus_Ifdef_Sun4cPatch[] = { "sed",
2800     "-e", "s/\\#ifdef __i386__ || __sun4c__/\\#if __i386__ || __sun4c__/g",
2801     (char*)NULL };
2803 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2805  *  Description of Sun_Catmacro fix
2806  */
2807 #define SUN_CATMACRO_FIXIDX              75
2808 tSCC zSun_CatmacroName[] =
2809      "Sun_Catmacro";
2811  *  File name selection pattern
2812  */
2813 tSCC zSun_CatmacroList[] =
2814   "|pixrect/memvar.h|";
2816  *  Machine/OS name selection pattern
2817  */
2818 #define apzSun_CatmacroMachs (const char**)NULL
2821  *  content selection pattern - do fix if pattern found
2822  */
2823 tSCC zSun_CatmacroSelect0[] =
2824        "^#define[ \t]+CAT\\(a,b\\)";
2826 #define    SUN_CATMACRO_TEST_CT  1
2827 #define    SUN_CATMACRO_RE_CT    1
2828 tTestDesc aSun_CatmacroTests[] = {
2829   { TT_EGREP,    zSun_CatmacroSelect0, (regex_t*)NULL }, };
2832  *  Fix Command Arguments for Sun_Catmacro
2833  */
2834 const char* apzSun_CatmacroPatch[] = { "sed",
2835     "-e", "/^#define[ \t]CAT(a,b)/ i\\\n\
2836 #ifdef __STDC__ \\\n\
2837 #define CAT(a,b) a##b\\\n\
2838 #else\n",
2839     "-e", "/^#define[ \t]CAT(a,b)/ a\\\n\
2840 #endif\n",
2841     (char*)NULL };
2843 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2845  *  Description of Sun_Malloc fix
2846  */
2847 #define SUN_MALLOC_FIXIDX                76
2848 tSCC zSun_MallocName[] =
2849      "Sun_Malloc";
2851  *  File name selection pattern
2852  */
2853 tSCC zSun_MallocList[] =
2854   "|malloc.h|";
2856  *  Machine/OS name selection pattern
2857  */
2858 #define apzSun_MallocMachs (const char**)NULL
2859 #define SUN_MALLOC_TEST_CT  0
2860 #define SUN_MALLOC_RE_CT    0
2861 #define aSun_MallocTests   (tTestDesc*)NULL
2864  *  Fix Command Arguments for Sun_Malloc
2865  */
2866 const char* apzSun_MallocPatch[] = { "sed",
2867     "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
2868     "-e", "s/int[ \t][ \t]*free/void\tfree/g",
2869     "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
2870     "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
2871     (char*)NULL };
2873 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2875  *  Description of Sun_Memcpy fix
2876  */
2877 #define SUN_MEMCPY_FIXIDX                77
2878 tSCC zSun_MemcpyName[] =
2879      "Sun_Memcpy";
2881  *  File name selection pattern
2882  */
2883 tSCC zSun_MemcpyList[] =
2884   "|memory.h|";
2886  *  Machine/OS name selection pattern
2887  */
2888 #define apzSun_MemcpyMachs (const char**)NULL
2891  *  content selection pattern - do fix if pattern found
2892  */
2893 tSCC zSun_MemcpySelect0[] =
2894        "/\\*\t@\\(#\\)(head/memory.h\t50.1\t |memory\\.h 1\\.[2-4] 8./../.. SMI; from S5R2 1\\.2\t)\\*/";
2896 #define    SUN_MEMCPY_TEST_CT  1
2897 #define    SUN_MEMCPY_RE_CT    1
2898 tTestDesc aSun_MemcpyTests[] = {
2899   { TT_EGREP,    zSun_MemcpySelect0, (regex_t*)NULL }, };
2902  *  Fix Command Arguments for Sun_Memcpy
2903  */
2904 const char* apzSun_MemcpyPatch[] = { "sed",
2905     "-e", "1i\\\n\
2906 /* This file was generated by fixincludes */\\\n\
2907 #ifndef __memory_h__\\\n\
2908 #define __memory_h__\\\n\
2909 \\\n\
2910 #ifdef __STDC__\\\n\
2911 extern void *memccpy();\\\n\
2912 extern void *memchr();\\\n\
2913 extern void *memcpy();\\\n\
2914 extern void *memset();\\\n\
2915 #else\\\n\
2916 extern char *memccpy();\\\n\
2917 extern char *memchr();\\\n\
2918 extern char *memcpy();\\\n\
2919 extern char *memset();\\\n\
2920 #endif /* __STDC__ */\\\n\
2921 \\\n\
2922 extern int memcmp();\\\n\
2923 \\\n\
2924 #endif /* __memory_h__ */\n",
2925     "-e", "1,$d",
2926     (char*)NULL };
2928 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2930  *  Description of Sun_Rusers_Semi fix
2931  */
2932 #define SUN_RUSERS_SEMI_FIXIDX           78
2933 tSCC zSun_Rusers_SemiName[] =
2934      "Sun_Rusers_Semi";
2936  *  File name selection pattern
2937  */
2938 tSCC zSun_Rusers_SemiList[] =
2939   "|rpcsvc/rusers.h|";
2941  *  Machine/OS name selection pattern
2942  */
2943 #define apzSun_Rusers_SemiMachs (const char**)NULL
2946  *  content selection pattern - do fix if pattern found
2947  */
2948 tSCC zSun_Rusers_SemiSelect0[] =
2949        "_cnt$";
2951 #define    SUN_RUSERS_SEMI_TEST_CT  1
2952 #define    SUN_RUSERS_SEMI_RE_CT    1
2953 tTestDesc aSun_Rusers_SemiTests[] = {
2954   { TT_EGREP,    zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };
2957  *  Fix Command Arguments for Sun_Rusers_Semi
2958  */
2959 const char* apzSun_Rusers_SemiPatch[] = { "sed",
2960     "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
2961     (char*)NULL };
2963 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2965  *  Description of Sun_Signal fix
2966  */
2967 #define SUN_SIGNAL_FIXIDX                79
2968 tSCC zSun_SignalName[] =
2969      "Sun_Signal";
2971  *  File name selection pattern
2972  */
2973 tSCC zSun_SignalList[] =
2974   "|sys/signal.h|signal.h|";
2976  *  Machine/OS name selection pattern
2977  */
2978 #define apzSun_SignalMachs (const char**)NULL
2981  *  content selection pattern - do fix if pattern found
2982  */
2983 tSCC zSun_SignalSelect0[] =
2984        "^void\t\\(\\*signal\\(\\)\\)\\(\\);";
2986 #define    SUN_SIGNAL_TEST_CT  1
2987 #define    SUN_SIGNAL_RE_CT    1
2988 tTestDesc aSun_SignalTests[] = {
2989   { TT_EGREP,    zSun_SignalSelect0, (regex_t*)NULL }, };
2992  *  Fix Command Arguments for Sun_Signal
2993  */
2994 const char* apzSun_SignalPatch[] = { "sed",
2995     "-e", "/^void\t(\\*signal())();$/i\\\n\
2996 #ifdef __cplusplus\\\n\
2997 void\t(*signal(...))(...);\\\n\
2998 #else\n",
2999     "-e", "/^void\t(\\*signal())();$/a\\\n\
3000 #endif\n",
3001     (char*)NULL };
3003 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3005  *  Description of Sun_Auth_Proto fix
3006  */
3007 #define SUN_AUTH_PROTO_FIXIDX            80
3008 tSCC zSun_Auth_ProtoName[] =
3009      "Sun_Auth_Proto";
3011  *  File name selection pattern
3012  */
3013 tSCC zSun_Auth_ProtoList[] =
3014   "|rpc/auth.h|rpc/clnt.h|rpc/svc.h|rpc/xdr.h|";
3016  *  Machine/OS name selection pattern
3017  */
3018 #define apzSun_Auth_ProtoMachs (const char**)NULL
3021  *  content selection pattern - do fix if pattern found
3022  */
3023 tSCC zSun_Auth_ProtoSelect0[] =
3024        "\\(\\*[a-z][a-z_]*\\)\\(\\)";
3026 #define    SUN_AUTH_PROTO_TEST_CT  1
3027 #define    SUN_AUTH_PROTO_RE_CT    1
3028 tTestDesc aSun_Auth_ProtoTests[] = {
3029   { TT_EGREP,    zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };
3032  *  Fix Command Arguments for Sun_Auth_Proto
3033  */
3034 const char* apzSun_Auth_ProtoPatch[] = { "sed",
3035     "-e", "s/^\\(.*(\\*[a-z][a-z_]*)(\\)\\();.*\\)/\\\n\
3036 #ifdef __cplusplus\\\n\
3037 \\1...\\2\\\n\
3038 #else\\\n\
3039 \\1\\2\\\n\
3040 #endif/",
3041     (char*)NULL };
3043 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3045  *  Description of Sunos_Matherr_Decl fix
3046  */
3047 #define SUNOS_MATHERR_DECL_FIXIDX        81
3048 tSCC zSunos_Matherr_DeclName[] =
3049      "Sunos_Matherr_Decl";
3051  *  File name selection pattern
3052  */
3053 tSCC zSunos_Matherr_DeclList[] =
3054   "|math.h|";
3056  *  Machine/OS name selection pattern
3057  */
3058 #define apzSunos_Matherr_DeclMachs (const char**)NULL
3059 #define SUNOS_MATHERR_DECL_TEST_CT  0
3060 #define SUNOS_MATHERR_DECL_RE_CT    0
3061 #define aSunos_Matherr_DeclTests   (tTestDesc*)NULL
3064  *  Fix Command Arguments for Sunos_Matherr_Decl
3065  */
3066 const char* apzSunos_Matherr_DeclPatch[] = { "sed",
3067     "-e", "/^struct exception/,$b",
3068     "-e", "/matherr/i\\\n\
3069 struct exception;\n",
3070     (char*)NULL };
3072 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3074  *  Description of Sunos_Strlen fix
3075  */
3076 #define SUNOS_STRLEN_FIXIDX              82
3077 tSCC zSunos_StrlenName[] =
3078      "Sunos_Strlen";
3080  *  File name selection pattern
3081  */
3082 tSCC zSunos_StrlenList[] =
3083   "|strings.h|";
3085  *  Machine/OS name selection pattern
3086  */
3087 #define apzSunos_StrlenMachs (const char**)NULL
3088 #define SUNOS_STRLEN_TEST_CT  0
3089 #define SUNOS_STRLEN_RE_CT    0
3090 #define aSunos_StrlenTests   (tTestDesc*)NULL
3093  *  Fix Command Arguments for Sunos_Strlen
3094  */
3095 const char* apzSunos_StrlenPatch[] = { "sed",
3096     "-e", "s/int[ \t]*strlen();/__SIZE_TYPE__ strlen();/",
3097     (char*)NULL };
3099 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3101  *  Description of Systypes fix
3102  */
3103 #define SYSTYPES_FIXIDX                  83
3104 tSCC zSystypesName[] =
3105      "Systypes";
3107  *  File name selection pattern
3108  */
3109 tSCC zSystypesList[] =
3110   "|sys/types.h|stdlib.h|sys/stdtypes.h|stddef.h|memory.h|unistd.h|";
3112  *  Machine/OS name selection pattern
3113  */
3114 #define apzSystypesMachs (const char**)NULL
3117  *  content selection pattern - do fix if pattern found
3118  */
3119 tSCC zSystypesSelect0[] =
3120        "typedef[ \t]+[a-z_][ \ta-z_]*[ \t](size|ptrdiff|wchar)_t";
3122 #define    SYSTYPES_TEST_CT  1
3123 #define    SYSTYPES_RE_CT    1
3124 tTestDesc aSystypesTests[] = {
3125   { TT_EGREP,    zSystypesSelect0, (regex_t*)NULL }, };
3128  *  Fix Command Arguments for Systypes
3129  */
3130 const char* apzSystypesPatch[] = { "sed",
3131     "-e", "/^[ \t]*\\*[ \t]*typedef unsigned int size_t;/N",
3132     "-e", "s/^\\([ \t]*\\*[ \t]*typedef unsigned int size_t;\\n[ \t]*\\*\\/\\)/\\1\\\n\
3133 #ifndef __SIZE_TYPE__\\\n\
3134 #define __SIZE_TYPE__ long unsigned int\\\n\
3135 #endif\\\n\
3136 typedef __SIZE_TYPE__ size_t;\\\n\
3138     "-e", "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]size_t/i\\\n\
3139 #ifndef __SIZE_TYPE__\\\n\
3140 #define __SIZE_TYPE__ long unsigned int\\\n\
3141 #endif\n",
3142     "-e", "s/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]size_t/typedef __SIZE_TYPE__ size_t/",
3143     "-e", "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]ptrdiff_t/i\\\n\
3144 #ifndef __PTRDIFF_TYPE__\\\n\
3145 #define __PTRDIFF_TYPE__ long int\\\n\
3146 #endif\n",
3147     "-e", "s/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]ptrdiff_t/typedef __PTRDIFF_TYPE__ ptrdiff_t/",
3148     "-e", "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]wchar_t/i\\\n\
3149 #ifndef __WCHAR_TYPE__\\\n\
3150 #define __WCHAR_TYPE__ int\\\n\
3151 #endif\\\n\
3152 #ifndef __cplusplus\n",
3153     "-e", "/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]wchar_t/a\\\n\
3154 #endif\n",
3155     "-e", "s/typedef[ \t][ \t]*[a-z_][ \ta-z_]*[ \t]wchar_t/typedef __WCHAR_TYPE__ wchar_t/",
3156     (char*)NULL };
3158 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3160  *  Description of Systypes_For_Aix fix
3161  */
3162 #define SYSTYPES_FOR_AIX_FIXIDX          84
3163 tSCC zSystypes_For_AixName[] =
3164      "Systypes_For_Aix";
3166  *  File name selection pattern
3167  */
3168 tSCC zSystypes_For_AixList[] =
3169   "|sys/types.h|";
3171  *  Machine/OS name selection pattern
3172  */
3173 #define apzSystypes_For_AixMachs (const char**)NULL
3176  *  content selection pattern - do fix if pattern found
3177  */
3178 tSCC zSystypes_For_AixSelect0[] =
3179        "typedef[ \t][ \t]*[A-Za-z_][ \tA-Za-z_]*[ \t]size_t";
3182  *  content bypass pattern - skip fix if pattern found
3183  */
3184 tSCC zSystypes_For_AixBypass0[] =
3185        "_GCC_SIZE_T";
3187 #define    SYSTYPES_FOR_AIX_TEST_CT  2
3188 #define    SYSTYPES_FOR_AIX_RE_CT    2
3189 tTestDesc aSystypes_For_AixTests[] = {
3190   { TT_NEGREP,   zSystypes_For_AixBypass0, (regex_t*)NULL },
3191   { TT_EGREP,    zSystypes_For_AixSelect0, (regex_t*)NULL }, };
3194  *  Fix Command Arguments for Systypes_For_Aix
3195  */
3196 const char* apzSystypes_For_AixPatch[] = { "sed",
3197     "-e", "/typedef[ \t][ \t]*[A-Za-z_][ \tA-Za-z_]*[ \t]size_t/i\\\n\
3198 #ifndef _GCC_SIZE_T\\\n\
3199 #define _GCC_SIZE_T\n",
3200     "-e", "/typedef[ \t][ \t]*[A-Za-z_][ \tA-Za-z_]*[ \t]size_t/a\\\n\
3201 #endif\n",
3202     (char*)NULL };
3204 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3206  *  Description of Sysv68_String fix
3207  */
3208 #define SYSV68_STRING_FIXIDX             85
3209 tSCC zSysv68_StringName[] =
3210      "Sysv68_String";
3212  *  File name selection pattern
3213  */
3214 tSCC zSysv68_StringList[] =
3215   "|string.h|";
3217  *  Machine/OS name selection pattern
3218  */
3219 #define apzSysv68_StringMachs (const char**)NULL
3220 #define SYSV68_STRING_TEST_CT  0
3221 #define SYSV68_STRING_RE_CT    0
3222 #define aSysv68_StringTests   (tTestDesc*)NULL
3225  *  Fix Command Arguments for Sysv68_String
3226  */
3227 const char* apzSysv68_StringPatch[] = { "sed",
3228     "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
3229     "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
3230     "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
3231     "-e", "/^extern char$/N",
3232     "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
3233     "-e", "/^\tstrncmp(),$/N",
3234     "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
3235 extern unsigned int\\\n\
3236 \\2/",
3237     "-e", "/^extern int$/N",
3238     "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
3239     (char*)NULL };
3241 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3243  *  Description of Sysz_Stdlib_For_Sun fix
3244  */
3245 #define SYSZ_STDLIB_FOR_SUN_FIXIDX       86
3246 tSCC zSysz_Stdlib_For_SunName[] =
3247      "Sysz_Stdlib_For_Sun";
3249  *  File name selection pattern
3250  */
3251 tSCC zSysz_Stdlib_For_SunList[] =
3252   "|stdlib.h|";
3254  *  Machine/OS name selection pattern
3255  */
3256 #define apzSysz_Stdlib_For_SunMachs (const char**)NULL
3257 #define SYSZ_STDLIB_FOR_SUN_TEST_CT  0
3258 #define SYSZ_STDLIB_FOR_SUN_RE_CT    0
3259 #define aSysz_Stdlib_For_SunTests   (tTestDesc*)NULL
3262  *  Fix Command Arguments for Sysz_Stdlib_For_Sun
3263  */
3264 const char* apzSysz_Stdlib_For_SunPatch[] = { "sed",
3265     "-e", "s/int\tabort/void\tabort/g",
3266     "-e", "s/int\tfree/void\tfree/g",
3267     "-e", "s/char[ \t]*\\*[ \t]*calloc/void \\*\tcalloc/g",
3268     "-e", "s/char[ \t]*\\*[ \t]*malloc/void \\*\tmalloc/g",
3269     "-e", "s/char[ \t]*\\*[ \t]*realloc/void \\*\trealloc/g",
3270     "-e", "s/char[ \t]*\\*[ \t]*bsearch/void \\*\tbsearch/g",
3271     "-e", "s/int[ \t][ \t]*exit/void\texit/g",
3272     "-e", "/typedef[ \ta-zA-Z_]*[ \t]size_t[ \t]*;/i\\\n\
3273 #ifndef _GCC_SIZE_T\\\n\
3274 #define _GCC_SIZE_T\n",
3275     "-e", "/typedef[ \ta-zA-Z_]*[ \t]size_t[ \t]*;/a\\\n\
3276 #endif\n",
3277     (char*)NULL };
3279 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3281  *  Description of Sysz_Stdtypes_For_Sun fix
3282  */
3283 #define SYSZ_STDTYPES_FOR_SUN_FIXIDX     87
3284 tSCC zSysz_Stdtypes_For_SunName[] =
3285      "Sysz_Stdtypes_For_Sun";
3287  *  File name selection pattern
3288  */
3289 tSCC zSysz_Stdtypes_For_SunList[] =
3290   "|sys/stdtypes.h|";
3292  *  Machine/OS name selection pattern
3293  */
3294 #define apzSysz_Stdtypes_For_SunMachs (const char**)NULL
3295 #define SYSZ_STDTYPES_FOR_SUN_TEST_CT  0
3296 #define SYSZ_STDTYPES_FOR_SUN_RE_CT    0
3297 #define aSysz_Stdtypes_For_SunTests   (tTestDesc*)NULL
3300  *  Fix Command Arguments for Sysz_Stdtypes_For_Sun
3301  */
3302 const char* apzSysz_Stdtypes_For_SunPatch[] = { "sed",
3303     "-e", "/[\t ]size_t.*;/i\\\n\
3304 #ifndef _GCC_SIZE_T\\\n\
3305 #define _GCC_SIZE_T\n",
3306     "-e", "/[\t ]size_t.*;/a\\\n\
3307 #endif\n",
3308     "-e", "/[\t ]ptrdiff_t.*;/i\\\n\
3309 #ifndef _GCC_PTRDIFF_T\\\n\
3310 #define _GCC_PTRDIFF_T\n",
3311     "-e", "/[\t ]ptrdiff_t.*;/a\\\n\
3312 #endif\n",
3313     "-e", "/[\t ]wchar_t.*;/i\\\n\
3314 #ifndef _GCC_WCHAR_T\\\n\
3315 #define _GCC_WCHAR_T\n",
3316     "-e", "/[\t ]wchar_t.*;/a\\\n\
3317 #endif\n",
3318     (char*)NULL };
3320 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3322  *  Description of Tinfo_Cplusplus fix
3323  */
3324 #define TINFO_CPLUSPLUS_FIXIDX           88
3325 tSCC zTinfo_CplusplusName[] =
3326      "Tinfo_Cplusplus";
3328  *  File name selection pattern
3329  */
3330 tSCC zTinfo_CplusplusList[] =
3331   "|tinfo.h|";
3333  *  Machine/OS name selection pattern
3334  */
3335 #define apzTinfo_CplusplusMachs (const char**)NULL
3336 #define TINFO_CPLUSPLUS_TEST_CT  0
3337 #define TINFO_CPLUSPLUS_RE_CT    0
3338 #define aTinfo_CplusplusTests   (tTestDesc*)NULL
3341  *  Fix Command Arguments for Tinfo_Cplusplus
3342  */
3343 const char* apzTinfo_CplusplusPatch[] = { "sed",
3344     "-e", "s/[ \t]_cplusplus/ __cplusplus/",
3345     (char*)NULL };
3347 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3349  *  Description of Ultrix_Ansi_Compat fix
3350  */
3351 #define ULTRIX_ANSI_COMPAT_FIXIDX        89
3352 tSCC zUltrix_Ansi_CompatName[] =
3353      "Ultrix_Ansi_Compat";
3355  *  File name selection pattern
3356  */
3357 tSCC zUltrix_Ansi_CompatList[] =
3358   "|ansi_compat.h|";
3360  *  Machine/OS name selection pattern
3361  */
3362 #define apzUltrix_Ansi_CompatMachs (const char**)NULL
3365  *  content selection pattern - do fix if pattern found
3366  */
3367 tSCC zUltrix_Ansi_CompatSelect0[] =
3368        "ULTRIX";
3370 #define    ULTRIX_ANSI_COMPAT_TEST_CT  1
3371 #define    ULTRIX_ANSI_COMPAT_RE_CT    1
3372 tTestDesc aUltrix_Ansi_CompatTests[] = {
3373   { TT_EGREP,    zUltrix_Ansi_CompatSelect0, (regex_t*)NULL }, };
3376  *  Fix Command Arguments for Ultrix_Ansi_Compat
3377  */
3378 const char* apzUltrix_Ansi_CompatPatch[] = { "sed",
3379     "-e", "1i\\\n\
3380 /* This file intentionally left blank. */\n",
3381     "-e", "1,$d",
3382     (char*)NULL };
3384 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3386  *  Description of Ultrix_Fix_Fixproto fix
3387  */
3388 #define ULTRIX_FIX_FIXPROTO_FIXIDX       90
3389 tSCC zUltrix_Fix_FixprotoName[] =
3390      "Ultrix_Fix_Fixproto";
3392  *  File name selection pattern
3393  */
3394 tSCC zUltrix_Fix_FixprotoList[] =
3395   "|sys/utsname.h|";
3397  *  Machine/OS name selection pattern
3398  */
3399 #define apzUltrix_Fix_FixprotoMachs (const char**)NULL
3402  *  content selection pattern - do fix if pattern found
3403  */
3404 tSCC zUltrix_Fix_FixprotoSelect0[] =
3405        "ULTRIX";
3407 #define    ULTRIX_FIX_FIXPROTO_TEST_CT  1
3408 #define    ULTRIX_FIX_FIXPROTO_RE_CT    1
3409 tTestDesc aUltrix_Fix_FixprotoTests[] = {
3410   { TT_EGREP,    zUltrix_Fix_FixprotoSelect0, (regex_t*)NULL }, };
3413  *  Fix Command Arguments for Ultrix_Fix_Fixproto
3414  */
3415 const char* apzUltrix_Fix_FixprotoPatch[] = { "sed",
3416     "-e", "/^[ \t]*extern[ \t]*int[ \t]*uname();$/i\\\n\
3417 struct utsname;\n",
3418     (char*)NULL };
3420 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3422  *  Description of Ultrix_Atof_Param fix
3423  */
3424 #define ULTRIX_ATOF_PARAM_FIXIDX         91
3425 tSCC zUltrix_Atof_ParamName[] =
3426      "Ultrix_Atof_Param";
3428  *  File name selection pattern
3429  */
3430 tSCC zUltrix_Atof_ParamList[] =
3431   "|math.h|";
3433  *  Machine/OS name selection pattern
3434  */
3435 #define apzUltrix_Atof_ParamMachs (const char**)NULL
3436 #define ULTRIX_ATOF_PARAM_TEST_CT  0
3437 #define ULTRIX_ATOF_PARAM_RE_CT    0
3438 #define aUltrix_Atof_ParamTests   (tTestDesc*)NULL
3441  *  Fix Command Arguments for Ultrix_Atof_Param
3442  */
3443 const char* apzUltrix_Atof_ParamPatch[] = { "sed",
3444     "-e", "s@atof(\\([ \t]*char[ \t]*\\*[^)]*\\))@atof(const \\1)@",
3445     "-e", "s@inline int abs(int [a-z][a-z]*) {.*}@extern \"C\" int abs(int);@",
3446     "-e", "s@inline double abs(double [a-z][a-z]*) {.*}@@",
3447     "-e", "s@inline int sqr(int [a-z][a-z]*) {.*}@@",
3448     "-e", "s@inline double sqr(double [a-z][a-z]*) {.*}@@",
3449     (char*)NULL };
3451 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3453  *  Description of Ultrix_Const fix
3454  */
3455 #define ULTRIX_CONST_FIXIDX              92
3456 tSCC zUltrix_ConstName[] =
3457      "Ultrix_Const";
3459  *  File name selection pattern
3460  */
3461 tSCC zUltrix_ConstList[] =
3462   "|stdio.h|";
3464  *  Machine/OS name selection pattern
3465  */
3466 #define apzUltrix_ConstMachs (const char**)NULL
3467 #define ULTRIX_CONST_TEST_CT  0
3468 #define ULTRIX_CONST_RE_CT    0
3469 #define aUltrix_ConstTests   (tTestDesc*)NULL
3472  *  Fix Command Arguments for Ultrix_Const
3473  */
3474 const char* apzUltrix_ConstPatch[] = { "sed",
3475     "-e", "s@perror( char \\*__s );@perror( const char *__s );@",
3476     "-e", "s@fputs( char \\*__s,@fputs( const char *__s,@",
3477     "-e", "s@fopen( char \\*__filename, char \\*__type );@fopen( const char *__filename, const char *__type );@",
3478     "-e", "s@fwrite( void \\*__ptr,@fwrite( const void *__ptr,@",
3479     "-e", "s@fscanf( FILE \\*__stream, char \\*__format,@fscanf( FILE *__stream, const char *__format,@",
3480     "-e", "s@scanf( char \\*__format,@scanf( const char *__format,@",
3481     "-e", "s@sscanf( char \\*__s, char \\*__format,@sscanf( const char *__s, const char *__format,@",
3482     "-e", "s@popen(char \\*, char \\*);@popen(const char *, const char *);@",
3483     "-e", "s@tempnam(char\\*,char\\*);@tempnam(const char*,const char*);@",
3484     (char*)NULL };
3486 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3488  *  Description of Ultrix_Ifdef fix
3489  */
3490 #define ULTRIX_IFDEF_FIXIDX              93
3491 tSCC zUltrix_IfdefName[] =
3492      "Ultrix_Ifdef";
3494  *  File name selection pattern
3495  */
3496 tSCC zUltrix_IfdefList[] =
3497   "|sys/file.h|";
3499  *  Machine/OS name selection pattern
3500  */
3501 #define apzUltrix_IfdefMachs (const char**)NULL
3504  *  content selection pattern - do fix if pattern found
3505  */
3506 tSCC zUltrix_IfdefSelect0[] =
3507        "#ifdef KERNEL";
3509 #define    ULTRIX_IFDEF_TEST_CT  1
3510 #define    ULTRIX_IFDEF_RE_CT    1
3511 tTestDesc aUltrix_IfdefTests[] = {
3512   { TT_EGREP,    zUltrix_IfdefSelect0, (regex_t*)NULL }, };
3515  *  Fix Command Arguments for Ultrix_Ifdef
3516  */
3517 const char* apzUltrix_IfdefPatch[] = { "sed",
3518     "-e", "s/#ifdef KERNEL/#if defined(KERNEL)/",
3519     (char*)NULL };
3521 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3523  *  Description of Ultrix_Nested_Cmnt fix
3524  */
3525 #define ULTRIX_NESTED_CMNT_FIXIDX        94
3526 tSCC zUltrix_Nested_CmntName[] =
3527      "Ultrix_Nested_Cmnt";
3529  *  File name selection pattern
3530  */
3531 tSCC zUltrix_Nested_CmntList[] =
3532   "|rpc/svc.h|";
3534  *  Machine/OS name selection pattern
3535  */
3536 #define apzUltrix_Nested_CmntMachs (const char**)NULL
3537 #define ULTRIX_NESTED_CMNT_TEST_CT  0
3538 #define ULTRIX_NESTED_CMNT_RE_CT    0
3539 #define aUltrix_Nested_CmntTests   (tTestDesc*)NULL
3542  *  Fix Command Arguments for Ultrix_Nested_Cmnt
3543  */
3544 const char* apzUltrix_Nested_CmntPatch[] = { "sed",
3545     "-e", "s@^\\( \\*\tint protocol;  \\)/\\*@\\1*/ /*@",
3546     (char*)NULL };
3548 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3550  *  Description of Ultrix_Static fix
3551  */
3552 #define ULTRIX_STATIC_FIXIDX             95
3553 tSCC zUltrix_StaticName[] =
3554      "Ultrix_Static";
3556  *  File name selection pattern
3557  */
3558 tSCC zUltrix_StaticList[] =
3559   "|machine/cpu.h|";
3561  *  Machine/OS name selection pattern
3562  */
3563 #define apzUltrix_StaticMachs (const char**)NULL
3566  *  content selection pattern - do fix if pattern found
3567  */
3568 tSCC zUltrix_StaticSelect0[] =
3569        "#include \"r[34]_cpu";
3571 #define    ULTRIX_STATIC_TEST_CT  1
3572 #define    ULTRIX_STATIC_RE_CT    1
3573 tTestDesc aUltrix_StaticTests[] = {
3574   { TT_EGREP,    zUltrix_StaticSelect0, (regex_t*)NULL }, };
3577  *  Fix Command Arguments for Ultrix_Static
3578  */
3579 const char* apzUltrix_StaticPatch[] = { "sed",
3580     "-e", "s/^static struct tlb_pid_state/struct tlb_pid_state/",
3581     "-e", "s/^#include \"r3_cpu\\.h\"$/#include <machine\\/r3_cpu\\.h>/",
3582     "-e", "s/^#include \"r4_cpu\\.h\"$/#include <machine\\/r4_cpu\\.h>/",
3583     (char*)NULL };
3585 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3587  *  Description of Undefine_Null fix
3588  */
3589 #define UNDEFINE_NULL_FIXIDX             96
3590 tSCC zUndefine_NullName[] =
3591      "Undefine_Null";
3593  *  File name selection pattern
3594  */
3595 #define zUndefine_NullList (char*)NULL
3597  *  Machine/OS name selection pattern
3598  */
3599 #define apzUndefine_NullMachs (const char**)NULL
3602  *  content selection pattern - do fix if pattern found
3603  */
3604 tSCC zUndefine_NullSelect0[] =
3605        "^#[ \t]*define[ \t]*[ \t]NULL[ \t]";
3608  *  content bypass pattern - skip fix if pattern found
3609  */
3610 tSCC zUndefine_NullBypass0[] =
3611        "#[ \t]*(ifn|un)def[ \t]*[ \t]NULL($|[ \t])";
3613 #define    UNDEFINE_NULL_TEST_CT  2
3614 #define    UNDEFINE_NULL_RE_CT    2
3615 tTestDesc aUndefine_NullTests[] = {
3616   { TT_NEGREP,   zUndefine_NullBypass0, (regex_t*)NULL },
3617   { TT_EGREP,    zUndefine_NullSelect0, (regex_t*)NULL }, };
3620  *  Fix Command Arguments for Undefine_Null
3621  */
3622 const char* apzUndefine_NullPatch[] = { "sed",
3623     "-e", "/^#[ \t]*define[ \t][ \t]*NULL[ \t]/i\\\n\
3624 #undef NULL\n",
3625     (char*)NULL };
3627 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3629  *  Description of Va_I960_Macro fix
3630  */
3631 #define VA_I960_MACRO_FIXIDX             97
3632 tSCC zVa_I960_MacroName[] =
3633      "Va_I960_Macro";
3635  *  File name selection pattern
3636  */
3637 tSCC zVa_I960_MacroList[] =
3638   "|arch/i960/archI960.h|";
3640  *  Machine/OS name selection pattern
3641  */
3642 #define apzVa_I960_MacroMachs (const char**)NULL
3645  *  content selection pattern - do fix if pattern found
3646  */
3647 tSCC zVa_I960_MacroSelect0[] =
3648        "__(vsiz|vali|vpad|alignof__)";
3650 #define    VA_I960_MACRO_TEST_CT  1
3651 #define    VA_I960_MACRO_RE_CT    1
3652 tTestDesc aVa_I960_MacroTests[] = {
3653   { TT_EGREP,    zVa_I960_MacroSelect0, (regex_t*)NULL }, };
3656  *  Fix Command Arguments for Va_I960_Macro
3657  */
3658 const char* apzVa_I960_MacroPatch[] = { "sed",
3659     "-e", "s/__vsiz/__vxvsiz/",
3660     "-e", "s/__vali/__vxvali/",
3661     "-e", "s/__vpad/__vxvpad/",
3662     "-e", "s/__alignof__/__vxalignof__/",
3663     (char*)NULL };
3665 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3667  *  Description of Void_Null fix
3668  */
3669 #define VOID_NULL_FIXIDX                 98
3670 tSCC zVoid_NullName[] =
3671      "Void_Null";
3673  *  File name selection pattern
3674  */
3675 tSCC zVoid_NullList[] =
3676   "|curses.h|dbm.h|locale.h|stdio.h|stdlib.h|string.h|time.h|unistd.h|sys/dir.h|sys/param.h|sys/types.h|";
3678  *  Machine/OS name selection pattern
3679  */
3680 #define apzVoid_NullMachs (const char**)NULL
3683  *  content selection pattern - do fix if pattern found
3684  */
3685 tSCC zVoid_NullSelect0[] =
3686        "#[ \t]*define[ \t][ \t]*NULL[ \t].*void";
3688 #define    VOID_NULL_TEST_CT  1
3689 #define    VOID_NULL_RE_CT    1
3690 tTestDesc aVoid_NullTests[] = {
3691   { TT_EGREP,    zVoid_NullSelect0, (regex_t*)NULL }, };
3694  *  Fix Command Arguments for Void_Null
3695  */
3696 const char* apzVoid_NullPatch[] = { "sed",
3697     "-e", "s/^#[ \t]*define[ \t]*NULL[ \t]*((void[ \t]*\\*)0)/#define NULL 0/",
3698     (char*)NULL };
3700 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3702  *  Description of Vxworks_Gcc_Problem fix
3703  */
3704 #define VXWORKS_GCC_PROBLEM_FIXIDX       99
3705 tSCC zVxworks_Gcc_ProblemName[] =
3706      "Vxworks_Gcc_Problem";
3708  *  File name selection pattern
3709  */
3710 tSCC zVxworks_Gcc_ProblemList[] =
3711   "|types/vxTypesBase.h|";
3713  *  Machine/OS name selection pattern
3714  */
3715 #define apzVxworks_Gcc_ProblemMachs (const char**)NULL
3718  *  content selection pattern - do fix if pattern found
3719  */
3720 tSCC zVxworks_Gcc_ProblemSelect0[] =
3721        "__GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__";
3723 #define    VXWORKS_GCC_PROBLEM_TEST_CT  1
3724 #define    VXWORKS_GCC_PROBLEM_RE_CT    1
3725 tTestDesc aVxworks_Gcc_ProblemTests[] = {
3726   { TT_EGREP,    zVxworks_Gcc_ProblemSelect0, (regex_t*)NULL }, };
3729  *  Fix Command Arguments for Vxworks_Gcc_Problem
3730  */
3731 const char* apzVxworks_Gcc_ProblemPatch[] = { "sed",
3732     "-e", "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
3733     "-e", "/[ \t]size_t/i\\\n\
3734 #ifndef _GCC_SIZE_T\\\n\
3735 #define _GCC_SIZE_T\n",
3736     "-e", "/[ \t]size_t/a\\\n\
3737 #endif\n",
3738     "-e", "/[ \t]ptrdiff_t/i\\\n\
3739 #ifndef _GCC_PTRDIFF_T\\\n\
3740 #define _GCC_PTRDIFF_T\n",
3741     "-e", "/[ \t]ptrdiff_t/a\\\n\
3742 #endif\n",
3743     "-e", "/[ \t]wchar_t/i\\\n\
3744 #ifndef _GCC_WCHAR_T\\\n\
3745 #define _GCC_WCHAR_T\n",
3746     "-e", "/[ \t]wchar_t/a\\\n\
3747 #endif\n",
3748     (char*)NULL };
3750 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3752  *  Description of Vxworks_Needs_Vxtypes fix
3753  */
3754 #define VXWORKS_NEEDS_VXTYPES_FIXIDX     100
3755 tSCC zVxworks_Needs_VxtypesName[] =
3756      "Vxworks_Needs_Vxtypes";
3758  *  File name selection pattern
3759  */
3760 tSCC zVxworks_Needs_VxtypesList[] =
3761   "|time.h|";
3763  *  Machine/OS name selection pattern
3764  */
3765 #define apzVxworks_Needs_VxtypesMachs (const char**)NULL
3768  *  content selection pattern - do fix if pattern found
3769  */
3770 tSCC zVxworks_Needs_VxtypesSelect0[] =
3771        "uint_t[ \t][ \t]*_clocks_per_sec";
3773 #define    VXWORKS_NEEDS_VXTYPES_TEST_CT  1
3774 #define    VXWORKS_NEEDS_VXTYPES_RE_CT    1
3775 tTestDesc aVxworks_Needs_VxtypesTests[] = {
3776   { TT_EGREP,    zVxworks_Needs_VxtypesSelect0, (regex_t*)NULL }, };
3779  *  Fix Command Arguments for Vxworks_Needs_Vxtypes
3780  */
3781 const char* apzVxworks_Needs_VxtypesPatch[] = { "sed",
3782     "-e", "s/uint_t/unsigned int/",
3783     (char*)NULL };
3785 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3787  *  Description of Vxworks_Needs_Vxworks fix
3788  */
3789 #define VXWORKS_NEEDS_VXWORKS_FIXIDX     101
3790 tSCC zVxworks_Needs_VxworksName[] =
3791      "Vxworks_Needs_Vxworks";
3793  *  File name selection pattern
3794  */
3795 tSCC zVxworks_Needs_VxworksList[] =
3796   "|sys/stat.h|";
3798  *  Machine/OS name selection pattern
3799  */
3800 #define apzVxworks_Needs_VxworksMachs (const char**)NULL
3803  *  content selection pattern - do fix if pattern found
3804  */
3805 tSCC zVxworks_Needs_VxworksSelect0[] =
3806        "#[ \t]define[ \t][ \t]*__INCstath";
3809  *  perform the 'test' shell command - do fix on success
3810  */
3811 tSCC zVxworks_Needs_VxworksTest0[] =
3812        " -r types/vxTypesOld.h";
3813 tSCC zVxworks_Needs_VxworksTest1[] =
3814        " -n \"`egrep '#include' $file`\"";
3815 tSCC zVxworks_Needs_VxworksTest2[] =
3816        " -n \"`egrep ULONG $file`\"";
3818 #define    VXWORKS_NEEDS_VXWORKS_TEST_CT  4
3819 #define    VXWORKS_NEEDS_VXWORKS_RE_CT    1
3820 tTestDesc aVxworks_Needs_VxworksTests[] = {
3821   { TT_TEST,     zVxworks_Needs_VxworksTest0,   0 /* unused */ },
3822   { TT_TEST,     zVxworks_Needs_VxworksTest1,   0 /* unused */ },
3823   { TT_TEST,     zVxworks_Needs_VxworksTest2,   0 /* unused */ },
3824   { TT_EGREP,    zVxworks_Needs_VxworksSelect0, (regex_t*)NULL }, };
3827  *  Fix Command Arguments for Vxworks_Needs_Vxworks
3828  */
3829 const char* apzVxworks_Needs_VxworksPatch[] = { "sed",
3830     "-e", "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n\
3831 #include <types/vxTypesOld.h>\n",
3832     (char*)NULL };
3834 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3836  *  Description of Vxworks_Time fix
3837  */
3838 #define VXWORKS_TIME_FIXIDX              102
3839 tSCC zVxworks_TimeName[] =
3840      "Vxworks_Time";
3842  *  File name selection pattern
3843  */
3844 tSCC zVxworks_TimeList[] =
3845   "|time.h|";
3847  *  Machine/OS name selection pattern
3848  */
3849 #define apzVxworks_TimeMachs (const char**)NULL
3852  *  content selection pattern - do fix if pattern found
3853  */
3854 tSCC zVxworks_TimeSelect0[] =
3855        "VOIDFUNCPTR";
3858  *  perform the 'test' shell command - do fix on success
3859  */
3860 tSCC zVxworks_TimeTest0[] =
3861        " -r vxWorks.h";
3863 #define    VXWORKS_TIME_TEST_CT  2
3864 #define    VXWORKS_TIME_RE_CT    1
3865 tTestDesc aVxworks_TimeTests[] = {
3866   { TT_TEST,     zVxworks_TimeTest0,   0 /* unused */ },
3867   { TT_EGREP,    zVxworks_TimeSelect0, (regex_t*)NULL }, };
3870  *  Fix Command Arguments for Vxworks_Time
3871  */
3872 const char* apzVxworks_TimePatch[] = { "sed",
3873     "-e", "/VOIDFUNCPTR/i\\\n\
3874 #ifndef __gcc_VOIDFUNCPTR_defined\\\n\
3875 #ifdef __cplusplus\\\n\
3876 typedef void (*__gcc_VOIDFUNCPTR) (...);\\\n\
3877 #else\\\n\
3878 typedef void (*__gcc_VOIDFUNCPTR) ();\\\n\
3879 #endif\\\n\
3880 #define __gcc_VOIDFUNCPTR_defined\\\n\
3881 #endif\n",
3882     "-e", "s/VOIDFUNCPTR/__gcc_VOIDFUNCPTR/g",
3883     (char*)NULL };
3885 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3887  *  Description of X11_Class fix
3888  */
3889 #define X11_CLASS_FIXIDX                 103
3890 tSCC zX11_ClassName[] =
3891      "X11_Class";
3893  *  File name selection pattern
3894  */
3895 tSCC zX11_ClassList[] =
3896   "|X11/ShellP.h|";
3898  *  Machine/OS name selection pattern
3899  */
3900 #define apzX11_ClassMachs (const char**)NULL
3903  *  content bypass pattern - skip fix if pattern found
3904  */
3905 tSCC zX11_ClassBypass0[] =
3906        "__cplusplus";
3908 #define    X11_CLASS_TEST_CT  1
3909 #define    X11_CLASS_RE_CT    1
3910 tTestDesc aX11_ClassTests[] = {
3911   { TT_NEGREP,   zX11_ClassBypass0, (regex_t*)NULL }, };
3914  *  Fix Command Arguments for X11_Class
3915  */
3916 const char* apzX11_ClassPatch[] = { "sed",
3917     "-e", "/char \\*class;/i\\\n\
3918 #ifdef __cplusplus\\\n\
3919 \tchar *c_class;\\\n\
3920 #else\n",
3921     "-e", "/char \\*class;/a\\\n\
3922 #endif\n",
3923     (char*)NULL };
3925 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3927  *  Description of X11_Class_Usage fix
3928  */
3929 #define X11_CLASS_USAGE_FIXIDX           104
3930 tSCC zX11_Class_UsageName[] =
3931      "X11_Class_Usage";
3933  *  File name selection pattern
3934  */
3935 tSCC zX11_Class_UsageList[] =
3936   "|Xm/BaseClassI.h|";
3938  *  Machine/OS name selection pattern
3939  */
3940 #define apzX11_Class_UsageMachs (const char**)NULL
3943  *  content bypass pattern - skip fix if pattern found
3944  */
3945 tSCC zX11_Class_UsageBypass0[] =
3946        "__cplusplus";
3948 #define    X11_CLASS_USAGE_TEST_CT  1
3949 #define    X11_CLASS_USAGE_RE_CT    1
3950 tTestDesc aX11_Class_UsageTests[] = {
3951   { TT_NEGREP,   zX11_Class_UsageBypass0, (regex_t*)NULL }, };
3954  *  Fix Command Arguments for X11_Class_Usage
3955  */
3956 const char* apzX11_Class_UsagePatch[] = { "sed",
3957     "-e", "s/ class[)]/ c_class)/g",
3958     (char*)NULL };
3960 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3962  *  Description of X11_New fix
3963  */
3964 #define X11_NEW_FIXIDX                   105
3965 tSCC zX11_NewName[] =
3966      "X11_New";
3968  *  File name selection pattern
3969  */
3970 tSCC zX11_NewList[] =
3971   "|Xm/Traversal.h|";
3973  *  Machine/OS name selection pattern
3974  */
3975 #define apzX11_NewMachs (const char**)NULL
3978  *  content bypass pattern - skip fix if pattern found
3979  */
3980 tSCC zX11_NewBypass0[] =
3981        "__cplusplus";
3983 #define    X11_NEW_TEST_CT  1
3984 #define    X11_NEW_RE_CT    1
3985 tTestDesc aX11_NewTests[] = {
3986   { TT_NEGREP,   zX11_NewBypass0, (regex_t*)NULL }, };
3989  *  Fix Command Arguments for X11_New
3990  */
3991 const char* apzX11_NewPatch[] = { "sed",
3992     "-e", "/Widget\told, new;/i\\\n\
3993 #ifdef __cplusplus\\\n\
3994 \tWidget\told, c_new;\\\n\
3995 #else\n",
3996     "-e", "/Widget\told, new;/a\\\n\
3997 #endif\n",
3998     "-e", "s/Widget new,/Widget c_new,/g",
3999     (char*)NULL };
4001 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4003  *  Description of X11_Sprintf fix
4004  */
4005 #define X11_SPRINTF_FIXIDX               106
4006 tSCC zX11_SprintfName[] =
4007      "X11_Sprintf";
4009  *  File name selection pattern
4010  */
4011 tSCC zX11_SprintfList[] =
4012   "|X11*/Xmu.h|";
4014  *  Machine/OS name selection pattern
4015  */
4016 #define apzX11_SprintfMachs (const char**)NULL
4017 #define X11_SPRINTF_TEST_CT  0
4018 #define X11_SPRINTF_RE_CT    0
4019 #define aX11_SprintfTests   (tTestDesc*)NULL
4022  *  Fix Command Arguments for X11_Sprintf
4023  */
4024 const char* apzX11_SprintfPatch[] = { "sed",
4025     "-e", "s,^extern char \\*\tsprintf();$,#ifndef __STDC__\\\n\
4026 extern char *\tsprintf();\\\n\
4027 #endif /* !defined __STDC__ */,",
4028     (char*)NULL };
4030 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4032  *  List of all fixes
4033  */
4034 #define REGEX_COUNT          74
4035 #define MACH_LIST_SIZE_LIMIT 154
4036 #define FIX_COUNT            107
4038 tFixDesc fixDescList[ FIX_COUNT ] = {
4039   {  zAaa_Ki_IfaceName,    zAaa_Ki_IfaceList,
4040      apzAaa_Ki_IfaceMachs, (regex_t*)NULL,
4041      AAA_KI_IFACE_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4042      aAaa_Ki_IfaceTests,   apzAaa_Ki_IfacePatch },
4044   {  zAaa_KiName,    zAaa_KiList,
4045      apzAaa_KiMachs, (regex_t*)NULL,
4046      AAA_KI_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4047      aAaa_KiTests,   apzAaa_KiPatch },
4049   {  zAaa_Ki_CallsName,    zAaa_Ki_CallsList,
4050      apzAaa_Ki_CallsMachs, (regex_t*)NULL,
4051      AAA_KI_CALLS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4052      aAaa_Ki_CallsTests,   apzAaa_Ki_CallsPatch },
4054   {  zAaa_Ki_DefsName,    zAaa_Ki_DefsList,
4055      apzAaa_Ki_DefsMachs, (regex_t*)NULL,
4056      AAA_KI_DEFS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4057      aAaa_Ki_DefsTests,   apzAaa_Ki_DefsPatch },
4059   {  zAaa_Bad_FixesName,    zAaa_Bad_FixesList,
4060      apzAaa_Bad_FixesMachs, (regex_t*)NULL,
4061      AAA_BAD_FIXES_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4062      aAaa_Bad_FixesTests,   apzAaa_Bad_FixesPatch },
4064   {  zAaa_TimeName,    zAaa_TimeList,
4065      apzAaa_TimeMachs, (regex_t*)NULL,
4066      AAA_TIME_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4067      aAaa_TimeTests,   apzAaa_TimePatch },
4069   {  zAab_Dgux_Int_VarargsName,    zAab_Dgux_Int_VarargsList,
4070      apzAab_Dgux_Int_VarargsMachs, (regex_t*)NULL,
4071      AAB_DGUX_INT_VARARGS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
4072      aAab_Dgux_Int_VarargsTests,   apzAab_Dgux_Int_VarargsPatch },
4074   {  zAix_SyswaitName,    zAix_SyswaitList,
4075      apzAix_SyswaitMachs, (regex_t*)NULL,
4076      AIX_SYSWAIT_TEST_CT, FD_MACH_ONLY,
4077      aAix_SyswaitTests,   apzAix_SyswaitPatch },
4079   {  zAix_VolatileName,    zAix_VolatileList,
4080      apzAix_VolatileMachs, (regex_t*)NULL,
4081      AIX_VOLATILE_TEST_CT, FD_MACH_ONLY,
4082      aAix_VolatileTests,   apzAix_VolatilePatch },
4084   {  zAlpha_GetoptName,    zAlpha_GetoptList,
4085      apzAlpha_GetoptMachs, (regex_t*)NULL,
4086      ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY,
4087      aAlpha_GetoptTests,   apzAlpha_GetoptPatch },
4089   {  zAlpha_ParensName,    zAlpha_ParensList,
4090      apzAlpha_ParensMachs, (regex_t*)NULL,
4091      ALPHA_PARENS_TEST_CT, FD_MACH_ONLY,
4092      aAlpha_ParensTests,   apzAlpha_ParensPatch },
4094   {  zAlpha_SbrkName,    zAlpha_SbrkList,
4095      apzAlpha_SbrkMachs, (regex_t*)NULL,
4096      ALPHA_SBRK_TEST_CT, FD_MACH_ONLY,
4097      aAlpha_SbrkTests,   apzAlpha_SbrkPatch },
4099   {  zArm_Norcroft_HintName,    zArm_Norcroft_HintList,
4100      apzArm_Norcroft_HintMachs, (regex_t*)NULL,
4101      ARM_NORCROFT_HINT_TEST_CT, FD_MACH_ONLY,
4102      aArm_Norcroft_HintTests,   apzArm_Norcroft_HintPatch },
4104   {  zArm_WcharName,    zArm_WcharList,
4105      apzArm_WcharMachs, (regex_t*)NULL,
4106      ARM_WCHAR_TEST_CT, FD_MACH_ONLY,
4107      aArm_WcharTests,   apzArm_WcharPatch },
4109   {  zAux_AsmName,    zAux_AsmList,
4110      apzAux_AsmMachs, (regex_t*)NULL,
4111      AUX_ASM_TEST_CT, FD_MACH_ONLY,
4112      aAux_AsmTests,   apzAux_AsmPatch },
4114   {  zAvoid_BoolName,    zAvoid_BoolList,
4115      apzAvoid_BoolMachs, (regex_t*)NULL,
4116      AVOID_BOOL_TEST_CT, FD_MACH_ONLY,
4117      aAvoid_BoolTests,   apzAvoid_BoolPatch },
4119   {  zBad_Struct_TermName,    zBad_Struct_TermList,
4120      apzBad_Struct_TermMachs, (regex_t*)NULL,
4121      BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY,
4122      aBad_Struct_TermTests,   apzBad_Struct_TermPatch },
4124   {  zBadquoteName,    zBadquoteList,
4125      apzBadquoteMachs, (regex_t*)NULL,
4126      BADQUOTE_TEST_CT, FD_MACH_ONLY,
4127      aBadquoteTests,   apzBadquotePatch },
4129   {  zBad_LvalName,    zBad_LvalList,
4130      apzBad_LvalMachs, (regex_t*)NULL,
4131      BAD_LVAL_TEST_CT, FD_MACH_ONLY,
4132      aBad_LvalTests,   apzBad_LvalPatch },
4134   {  zBroken_Assert_StdioName,    zBroken_Assert_StdioList,
4135      apzBroken_Assert_StdioMachs, (regex_t*)NULL,
4136      BROKEN_ASSERT_STDIO_TEST_CT, FD_MACH_ONLY,
4137      aBroken_Assert_StdioTests,   apzBroken_Assert_StdioPatch },
4139   {  zBroken_Assert_StdlibName,    zBroken_Assert_StdlibList,
4140      apzBroken_Assert_StdlibMachs, (regex_t*)NULL,
4141      BROKEN_ASSERT_STDLIB_TEST_CT, FD_MACH_ONLY,
4142      aBroken_Assert_StdlibTests,   apzBroken_Assert_StdlibPatch },
4144   {  zBsd43_Io_MacrosName,    zBsd43_Io_MacrosList,
4145      apzBsd43_Io_MacrosMachs, (regex_t*)NULL,
4146      BSD43_IO_MACROS_TEST_CT, FD_MACH_ONLY,
4147      aBsd43_Io_MacrosTests,   apzBsd43_Io_MacrosPatch },
4149   {  zDec_Intern_AsmName,    zDec_Intern_AsmList,
4150      apzDec_Intern_AsmMachs, (regex_t*)NULL,
4151      DEC_INTERN_ASM_TEST_CT, FD_MACH_ONLY,
4152      aDec_Intern_AsmTests,   apzDec_Intern_AsmPatch },
4154   {  zNo_Double_SlashName,    zNo_Double_SlashList,
4155      apzNo_Double_SlashMachs, (regex_t*)NULL,
4156      NO_DOUBLE_SLASH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
4157      aNo_Double_SlashTests,   apzNo_Double_SlashPatch },
4159   {  zEcd_CursorName,    zEcd_CursorList,
4160      apzEcd_CursorMachs, (regex_t*)NULL,
4161      ECD_CURSOR_TEST_CT, FD_MACH_ONLY,
4162      aEcd_CursorTests,   apzEcd_CursorPatch },
4164   {  zSco5_Stat_WrappersName,    zSco5_Stat_WrappersList,
4165      apzSco5_Stat_WrappersMachs, (regex_t*)NULL,
4166      SCO5_STAT_WRAPPERS_TEST_CT, FD_MACH_ONLY,
4167      aSco5_Stat_WrappersTests,   apzSco5_Stat_WrappersPatch },
4169   {  zEnd_Else_LabelName,    zEnd_Else_LabelList,
4170      apzEnd_Else_LabelMachs, (regex_t*)NULL,
4171      END_ELSE_LABEL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
4172      aEnd_Else_LabelTests,   apzEnd_Else_LabelPatch },
4174   {  zHp_InlineName,    zHp_InlineList,
4175      apzHp_InlineMachs, (regex_t*)NULL,
4176      HP_INLINE_TEST_CT, FD_MACH_ONLY,
4177      aHp_InlineTests,   apzHp_InlinePatch },
4179   {  zHp_SysfileName,    zHp_SysfileList,
4180      apzHp_SysfileMachs, (regex_t*)NULL,
4181      HP_SYSFILE_TEST_CT, FD_MACH_ONLY,
4182      aHp_SysfileTests,   apzHp_SysfilePatch },
4184   {  zCxx_UnreadyName,    zCxx_UnreadyList,
4185      apzCxx_UnreadyMachs, (regex_t*)NULL,
4186      CXX_UNREADY_TEST_CT, FD_MACH_ONLY,
4187      aCxx_UnreadyTests,   apzCxx_UnreadyPatch },
4189   {  zHpux_MaxintName,    zHpux_MaxintList,
4190      apzHpux_MaxintMachs, (regex_t*)NULL,
4191      HPUX_MAXINT_TEST_CT, FD_MACH_ONLY,
4192      aHpux_MaxintTests,   apzHpux_MaxintPatch },
4194   {  zHpux_SystimeName,    zHpux_SystimeList,
4195      apzHpux_SystimeMachs, (regex_t*)NULL,
4196      HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY,
4197      aHpux_SystimeTests,   apzHpux_SystimePatch },
4199   {  zHpux11_Uint32_CName,    zHpux11_Uint32_CList,
4200      apzHpux11_Uint32_CMachs, (regex_t*)NULL,
4201      HPUX11_UINT32_C_TEST_CT, FD_MACH_ONLY,
4202      aHpux11_Uint32_CTests,   apzHpux11_Uint32_CPatch },
4204   {  zInteractv_Add1Name,    zInteractv_Add1List,
4205      apzInteractv_Add1Machs, (regex_t*)NULL,
4206      INTERACTV_ADD1_TEST_CT, FD_MACH_ONLY,
4207      aInteractv_Add1Tests,   apzInteractv_Add1Patch },
4209   {  zInteractv_Add2Name,    zInteractv_Add2List,
4210      apzInteractv_Add2Machs, (regex_t*)NULL,
4211      INTERACTV_ADD2_TEST_CT, FD_MACH_ONLY,
4212      aInteractv_Add2Tests,   apzInteractv_Add2Patch },
4214   {  zInteractv_Add3Name,    zInteractv_Add3List,
4215      apzInteractv_Add3Machs, (regex_t*)NULL,
4216      INTERACTV_ADD3_TEST_CT, FD_MACH_ONLY,
4217      aInteractv_Add3Tests,   apzInteractv_Add3Patch },
4219   {  zIo_Def_QuotesName,    zIo_Def_QuotesList,
4220      apzIo_Def_QuotesMachs, (regex_t*)NULL,
4221      IO_DEF_QUOTES_TEST_CT, FD_MACH_ONLY,
4222      aIo_Def_QuotesTests,   apzIo_Def_QuotesPatch },
4224   {  zIoctl_Fix_CtrlName,    zIoctl_Fix_CtrlList,
4225      apzIoctl_Fix_CtrlMachs, (regex_t*)NULL,
4226      IOCTL_FIX_CTRL_TEST_CT, FD_MACH_ONLY,
4227      aIoctl_Fix_CtrlTests,   apzIoctl_Fix_CtrlPatch },
4229   {  zIp_Missing_SemiName,    zIp_Missing_SemiList,
4230      apzIp_Missing_SemiMachs, (regex_t*)NULL,
4231      IP_MISSING_SEMI_TEST_CT, FD_MACH_ONLY,
4232      aIp_Missing_SemiTests,   apzIp_Missing_SemiPatch },
4234   {  zIrix_Multiline_CmntName,    zIrix_Multiline_CmntList,
4235      apzIrix_Multiline_CmntMachs, (regex_t*)NULL,
4236      IRIX_MULTILINE_CMNT_TEST_CT, FD_MACH_ONLY,
4237      aIrix_Multiline_CmntTests,   apzIrix_Multiline_CmntPatch },
4239   {  zIrix_SockaddrName,    zIrix_SockaddrList,
4240      apzIrix_SockaddrMachs, (regex_t*)NULL,
4241      IRIX_SOCKADDR_TEST_CT, FD_MACH_ONLY,
4242      aIrix_SockaddrTests,   apzIrix_SockaddrPatch },
4244   {  zIrix_Struct__FileName,    zIrix_Struct__FileList,
4245      apzIrix_Struct__FileMachs, (regex_t*)NULL,
4246      IRIX_STRUCT__FILE_TEST_CT, FD_MACH_ONLY,
4247      aIrix_Struct__FileTests,   apzIrix_Struct__FilePatch },
4249   {  zIrix_Asm_ApostropheName,    zIrix_Asm_ApostropheList,
4250      apzIrix_Asm_ApostropheMachs, (regex_t*)NULL,
4251      IRIX_ASM_APOSTROPHE_TEST_CT, FD_MACH_ONLY,
4252      aIrix_Asm_ApostropheTests,   apzIrix_Asm_ApostrophePatch },
4254   {  zIsc_FmodName,    zIsc_FmodList,
4255      apzIsc_FmodMachs, (regex_t*)NULL,
4256      ISC_FMOD_TEST_CT, FD_MACH_ONLY,
4257      aIsc_FmodTests,   apzIsc_FmodPatch },
4259   {  zMotorola_NestedName,    zMotorola_NestedList,
4260      apzMotorola_NestedMachs, (regex_t*)NULL,
4261      MOTOROLA_NESTED_TEST_CT, FD_MACH_ONLY,
4262      aMotorola_NestedTests,   apzMotorola_NestedPatch },
4264   {  zIsc_Sys_LimitsName,    zIsc_Sys_LimitsList,
4265      apzIsc_Sys_LimitsMachs, (regex_t*)NULL,
4266      ISC_SYS_LIMITS_TEST_CT, FD_MACH_ONLY,
4267      aIsc_Sys_LimitsTests,   apzIsc_Sys_LimitsPatch },
4269   {  zKandr_ConcatName,    zKandr_ConcatList,
4270      apzKandr_ConcatMachs, (regex_t*)NULL,
4271      KANDR_CONCAT_TEST_CT, FD_MACH_ONLY,
4272      aKandr_ConcatTests,   apzKandr_ConcatPatch },
4274   {  zLimits_IfndefsName,    zLimits_IfndefsList,
4275      apzLimits_IfndefsMachs, (regex_t*)NULL,
4276      LIMITS_IFNDEFS_TEST_CT, FD_MACH_ONLY,
4277      aLimits_IfndefsTests,   apzLimits_IfndefsPatch },
4279   {  zLynx_Void_IntName,    zLynx_Void_IntList,
4280      apzLynx_Void_IntMachs, (regex_t*)NULL,
4281      LYNX_VOID_INT_TEST_CT, FD_MACH_ONLY,
4282      aLynx_Void_IntTests,   apzLynx_Void_IntPatch },
4284   {  zLynxos_Fcntl_ProtoName,    zLynxos_Fcntl_ProtoList,
4285      apzLynxos_Fcntl_ProtoMachs, (regex_t*)NULL,
4286      LYNXOS_FCNTL_PROTO_TEST_CT, FD_MACH_ONLY,
4287      aLynxos_Fcntl_ProtoTests,   apzLynxos_Fcntl_ProtoPatch },
4289   {  zM88k_Bad_Hypot_OptName,    zM88k_Bad_Hypot_OptList,
4290      apzM88k_Bad_Hypot_OptMachs, (regex_t*)NULL,
4291      M88K_BAD_HYPOT_OPT_TEST_CT, FD_MACH_ONLY,
4292      aM88k_Bad_Hypot_OptTests,   apzM88k_Bad_Hypot_OptPatch },
4294   {  zM88k_Bad_S_IfName,    zM88k_Bad_S_IfList,
4295      apzM88k_Bad_S_IfMachs, (regex_t*)NULL,
4296      M88K_BAD_S_IF_TEST_CT, FD_MACH_ONLY,
4297      aM88k_Bad_S_IfTests,   apzM88k_Bad_S_IfPatch },
4299   {  zM88k_Multi_InclName,    zM88k_Multi_InclList,
4300      apzM88k_Multi_InclMachs, (regex_t*)NULL,
4301      M88K_MULTI_INCL_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
4302      aM88k_Multi_InclTests,   apzM88k_Multi_InclPatch },
4304   {  zMachine_NameName,    zMachine_NameList,
4305      apzMachine_NameMachs, (regex_t*)NULL,
4306      MACHINE_NAME_TEST_CT, FD_MACH_ONLY,
4307      aMachine_NameTests,   apzMachine_NamePatch },
4309   {  zMath_ExceptionName,    zMath_ExceptionList,
4310      apzMath_ExceptionMachs, (regex_t*)NULL,
4311      MATH_EXCEPTION_TEST_CT, FD_MACH_ONLY,
4312      aMath_ExceptionTests,   apzMath_ExceptionPatch },
4314   {  zMath_Gcc_IfndefsName,    zMath_Gcc_IfndefsList,
4315      apzMath_Gcc_IfndefsMachs, (regex_t*)NULL,
4316      MATH_GCC_IFNDEFS_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
4317      aMath_Gcc_IfndefsTests,   apzMath_Gcc_IfndefsPatch },
4319   {  zNested_CommentName,    zNested_CommentList,
4320      apzNested_CommentMachs, (regex_t*)NULL,
4321      NESTED_COMMENT_TEST_CT, FD_MACH_ONLY,
4322      aNested_CommentTests,   apzNested_CommentPatch },
4324   {  zNews_Os_RecursionName,    zNews_Os_RecursionList,
4325      apzNews_Os_RecursionMachs, (regex_t*)NULL,
4326      NEWS_OS_RECURSION_TEST_CT, FD_MACH_ONLY,
4327      aNews_Os_RecursionTests,   apzNews_Os_RecursionPatch },
4329   {  zNext_Math_PrefixName,    zNext_Math_PrefixList,
4330      apzNext_Math_PrefixMachs, (regex_t*)NULL,
4331      NEXT_MATH_PREFIX_TEST_CT, FD_MACH_ONLY,
4332      aNext_Math_PrefixTests,   apzNext_Math_PrefixPatch },
4334   {  zNext_TemplateName,    zNext_TemplateList,
4335      apzNext_TemplateMachs, (regex_t*)NULL,
4336      NEXT_TEMPLATE_TEST_CT, FD_MACH_ONLY,
4337      aNext_TemplateTests,   apzNext_TemplatePatch },
4339   {  zNext_VolitileName,    zNext_VolitileList,
4340      apzNext_VolitileMachs, (regex_t*)NULL,
4341      NEXT_VOLITILE_TEST_CT, FD_MACH_ONLY,
4342      aNext_VolitileTests,   apzNext_VolitilePatch },
4344   {  zNext_Wait_UnionName,    zNext_Wait_UnionList,
4345      apzNext_Wait_UnionMachs, (regex_t*)NULL,
4346      NEXT_WAIT_UNION_TEST_CT, FD_MACH_ONLY,
4347      aNext_Wait_UnionTests,   apzNext_Wait_UnionPatch },
4349   {  zNodeent_SyntaxName,    zNodeent_SyntaxList,
4350      apzNodeent_SyntaxMachs, (regex_t*)NULL,
4351      NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY,
4352      aNodeent_SyntaxTests,   apzNodeent_SyntaxPatch },
4354   {  zOsf_Namespace_AName,    zOsf_Namespace_AList,
4355      apzOsf_Namespace_AMachs, (regex_t*)NULL,
4356      OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY,
4357      aOsf_Namespace_ATests,   apzOsf_Namespace_APatch },
4359   {  zOsf_Namespace_BName,    zOsf_Namespace_BList,
4360      apzOsf_Namespace_BMachs, (regex_t*)NULL,
4361      OSF_NAMESPACE_B_TEST_CT, FD_MACH_ONLY,
4362      aOsf_Namespace_BTests,   apzOsf_Namespace_BPatch },
4364   {  zPthread_Page_SizeName,    zPthread_Page_SizeList,
4365      apzPthread_Page_SizeMachs, (regex_t*)NULL,
4366      PTHREAD_PAGE_SIZE_TEST_CT, FD_MACH_ONLY,
4367      aPthread_Page_SizeTests,   apzPthread_Page_SizePatch },
4369   {  zRead_Ret_TypeName,    zRead_Ret_TypeList,
4370      apzRead_Ret_TypeMachs, (regex_t*)NULL,
4371      READ_RET_TYPE_TEST_CT, FD_MACH_ONLY,
4372      aRead_Ret_TypeTests,   apzRead_Ret_TypePatch },
4374   {  zRs6000_DoubleName,    zRs6000_DoubleList,
4375      apzRs6000_DoubleMachs, (regex_t*)NULL,
4376      RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY,
4377      aRs6000_DoubleTests,   apzRs6000_DoublePatch },
4379   {  zRs6000_FchmodName,    zRs6000_FchmodList,
4380      apzRs6000_FchmodMachs, (regex_t*)NULL,
4381      RS6000_FCHMOD_TEST_CT, FD_MACH_ONLY,
4382      aRs6000_FchmodTests,   apzRs6000_FchmodPatch },
4384   {  zRs6000_ParamName,    zRs6000_ParamList,
4385      apzRs6000_ParamMachs, (regex_t*)NULL,
4386      RS6000_PARAM_TEST_CT, FD_MACH_ONLY,
4387      aRs6000_ParamTests,   apzRs6000_ParamPatch },
4389   {  zSony_IncludeName,    zSony_IncludeList,
4390      apzSony_IncludeMachs, (regex_t*)NULL,
4391      SONY_INCLUDE_TEST_CT, FD_MACH_ONLY,
4392      aSony_IncludeTests,   apzSony_IncludePatch },
4394   {  zStatsswtchName,    zStatsswtchList,
4395      apzStatsswtchMachs, (regex_t*)NULL,
4396      STATSSWTCH_TEST_CT, FD_MACH_ONLY,
4397      aStatsswtchTests,   apzStatsswtchPatch },
4399   {  zStdio_Va_ListName,    zStdio_Va_ListList,
4400      apzStdio_Va_ListMachs, (regex_t*)NULL,
4401      STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
4402      aStdio_Va_ListTests,   apzStdio_Va_ListPatch },
4404   {  zSun_Bogus_IfdefName,    zSun_Bogus_IfdefList,
4405      apzSun_Bogus_IfdefMachs, (regex_t*)NULL,
4406      SUN_BOGUS_IFDEF_TEST_CT, FD_MACH_ONLY,
4407      aSun_Bogus_IfdefTests,   apzSun_Bogus_IfdefPatch },
4409   {  zSun_Bogus_Ifdef_Sun4cName,    zSun_Bogus_Ifdef_Sun4cList,
4410      apzSun_Bogus_Ifdef_Sun4cMachs, (regex_t*)NULL,
4411      SUN_BOGUS_IFDEF_SUN4C_TEST_CT, FD_MACH_ONLY,
4412      aSun_Bogus_Ifdef_Sun4cTests,   apzSun_Bogus_Ifdef_Sun4cPatch },
4414   {  zSun_CatmacroName,    zSun_CatmacroList,
4415      apzSun_CatmacroMachs, (regex_t*)NULL,
4416      SUN_CATMACRO_TEST_CT, FD_MACH_ONLY,
4417      aSun_CatmacroTests,   apzSun_CatmacroPatch },
4419   {  zSun_MallocName,    zSun_MallocList,
4420      apzSun_MallocMachs, (regex_t*)NULL,
4421      SUN_MALLOC_TEST_CT, FD_MACH_ONLY,
4422      aSun_MallocTests,   apzSun_MallocPatch },
4424   {  zSun_MemcpyName,    zSun_MemcpyList,
4425      apzSun_MemcpyMachs, (regex_t*)NULL,
4426      SUN_MEMCPY_TEST_CT, FD_MACH_ONLY,
4427      aSun_MemcpyTests,   apzSun_MemcpyPatch },
4429   {  zSun_Rusers_SemiName,    zSun_Rusers_SemiList,
4430      apzSun_Rusers_SemiMachs, (regex_t*)NULL,
4431      SUN_RUSERS_SEMI_TEST_CT, FD_MACH_ONLY,
4432      aSun_Rusers_SemiTests,   apzSun_Rusers_SemiPatch },
4434   {  zSun_SignalName,    zSun_SignalList,
4435      apzSun_SignalMachs, (regex_t*)NULL,
4436      SUN_SIGNAL_TEST_CT, FD_MACH_ONLY,
4437      aSun_SignalTests,   apzSun_SignalPatch },
4439   {  zSun_Auth_ProtoName,    zSun_Auth_ProtoList,
4440      apzSun_Auth_ProtoMachs, (regex_t*)NULL,
4441      SUN_AUTH_PROTO_TEST_CT, FD_MACH_ONLY,
4442      aSun_Auth_ProtoTests,   apzSun_Auth_ProtoPatch },
4444   {  zSunos_Matherr_DeclName,    zSunos_Matherr_DeclList,
4445      apzSunos_Matherr_DeclMachs, (regex_t*)NULL,
4446      SUNOS_MATHERR_DECL_TEST_CT, FD_MACH_ONLY,
4447      aSunos_Matherr_DeclTests,   apzSunos_Matherr_DeclPatch },
4449   {  zSunos_StrlenName,    zSunos_StrlenList,
4450      apzSunos_StrlenMachs, (regex_t*)NULL,
4451      SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY,
4452      aSunos_StrlenTests,   apzSunos_StrlenPatch },
4454   {  zSystypesName,    zSystypesList,
4455      apzSystypesMachs, (regex_t*)NULL,
4456      SYSTYPES_TEST_CT, FD_MACH_ONLY,
4457      aSystypesTests,   apzSystypesPatch },
4459   {  zSystypes_For_AixName,    zSystypes_For_AixList,
4460      apzSystypes_For_AixMachs, (regex_t*)NULL,
4461      SYSTYPES_FOR_AIX_TEST_CT, FD_MACH_ONLY,
4462      aSystypes_For_AixTests,   apzSystypes_For_AixPatch },
4464   {  zSysv68_StringName,    zSysv68_StringList,
4465      apzSysv68_StringMachs, (regex_t*)NULL,
4466      SYSV68_STRING_TEST_CT, FD_MACH_ONLY,
4467      aSysv68_StringTests,   apzSysv68_StringPatch },
4469   {  zSysz_Stdlib_For_SunName,    zSysz_Stdlib_For_SunList,
4470      apzSysz_Stdlib_For_SunMachs, (regex_t*)NULL,
4471      SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY,
4472      aSysz_Stdlib_For_SunTests,   apzSysz_Stdlib_For_SunPatch },
4474   {  zSysz_Stdtypes_For_SunName,    zSysz_Stdtypes_For_SunList,
4475      apzSysz_Stdtypes_For_SunMachs, (regex_t*)NULL,
4476      SYSZ_STDTYPES_FOR_SUN_TEST_CT, FD_MACH_ONLY,
4477      aSysz_Stdtypes_For_SunTests,   apzSysz_Stdtypes_For_SunPatch },
4479   {  zTinfo_CplusplusName,    zTinfo_CplusplusList,
4480      apzTinfo_CplusplusMachs, (regex_t*)NULL,
4481      TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY,
4482      aTinfo_CplusplusTests,   apzTinfo_CplusplusPatch },
4484   {  zUltrix_Ansi_CompatName,    zUltrix_Ansi_CompatList,
4485      apzUltrix_Ansi_CompatMachs, (regex_t*)NULL,
4486      ULTRIX_ANSI_COMPAT_TEST_CT, FD_MACH_ONLY,
4487      aUltrix_Ansi_CompatTests,   apzUltrix_Ansi_CompatPatch },
4489   {  zUltrix_Fix_FixprotoName,    zUltrix_Fix_FixprotoList,
4490      apzUltrix_Fix_FixprotoMachs, (regex_t*)NULL,
4491      ULTRIX_FIX_FIXPROTO_TEST_CT, FD_MACH_ONLY,
4492      aUltrix_Fix_FixprotoTests,   apzUltrix_Fix_FixprotoPatch },
4494   {  zUltrix_Atof_ParamName,    zUltrix_Atof_ParamList,
4495      apzUltrix_Atof_ParamMachs, (regex_t*)NULL,
4496      ULTRIX_ATOF_PARAM_TEST_CT, FD_MACH_ONLY,
4497      aUltrix_Atof_ParamTests,   apzUltrix_Atof_ParamPatch },
4499   {  zUltrix_ConstName,    zUltrix_ConstList,
4500      apzUltrix_ConstMachs, (regex_t*)NULL,
4501      ULTRIX_CONST_TEST_CT, FD_MACH_ONLY,
4502      aUltrix_ConstTests,   apzUltrix_ConstPatch },
4504   {  zUltrix_IfdefName,    zUltrix_IfdefList,
4505      apzUltrix_IfdefMachs, (regex_t*)NULL,
4506      ULTRIX_IFDEF_TEST_CT, FD_MACH_ONLY,
4507      aUltrix_IfdefTests,   apzUltrix_IfdefPatch },
4509   {  zUltrix_Nested_CmntName,    zUltrix_Nested_CmntList,
4510      apzUltrix_Nested_CmntMachs, (regex_t*)NULL,
4511      ULTRIX_NESTED_CMNT_TEST_CT, FD_MACH_ONLY,
4512      aUltrix_Nested_CmntTests,   apzUltrix_Nested_CmntPatch },
4514   {  zUltrix_StaticName,    zUltrix_StaticList,
4515      apzUltrix_StaticMachs, (regex_t*)NULL,
4516      ULTRIX_STATIC_TEST_CT, FD_MACH_ONLY,
4517      aUltrix_StaticTests,   apzUltrix_StaticPatch },
4519   {  zUndefine_NullName,    zUndefine_NullList,
4520      apzUndefine_NullMachs, (regex_t*)NULL,
4521      UNDEFINE_NULL_TEST_CT, FD_MACH_ONLY,
4522      aUndefine_NullTests,   apzUndefine_NullPatch },
4524   {  zVa_I960_MacroName,    zVa_I960_MacroList,
4525      apzVa_I960_MacroMachs, (regex_t*)NULL,
4526      VA_I960_MACRO_TEST_CT, FD_MACH_ONLY,
4527      aVa_I960_MacroTests,   apzVa_I960_MacroPatch },
4529   {  zVoid_NullName,    zVoid_NullList,
4530      apzVoid_NullMachs, (regex_t*)NULL,
4531      VOID_NULL_TEST_CT, FD_MACH_ONLY,
4532      aVoid_NullTests,   apzVoid_NullPatch },
4534   {  zVxworks_Gcc_ProblemName,    zVxworks_Gcc_ProblemList,
4535      apzVxworks_Gcc_ProblemMachs, (regex_t*)NULL,
4536      VXWORKS_GCC_PROBLEM_TEST_CT, FD_MACH_ONLY,
4537      aVxworks_Gcc_ProblemTests,   apzVxworks_Gcc_ProblemPatch },
4539   {  zVxworks_Needs_VxtypesName,    zVxworks_Needs_VxtypesList,
4540      apzVxworks_Needs_VxtypesMachs, (regex_t*)NULL,
4541      VXWORKS_NEEDS_VXTYPES_TEST_CT, FD_MACH_ONLY,
4542      aVxworks_Needs_VxtypesTests,   apzVxworks_Needs_VxtypesPatch },
4544   {  zVxworks_Needs_VxworksName,    zVxworks_Needs_VxworksList,
4545      apzVxworks_Needs_VxworksMachs, (regex_t*)NULL,
4546      VXWORKS_NEEDS_VXWORKS_TEST_CT, FD_MACH_ONLY,
4547      aVxworks_Needs_VxworksTests,   apzVxworks_Needs_VxworksPatch },
4549   {  zVxworks_TimeName,    zVxworks_TimeList,
4550      apzVxworks_TimeMachs, (regex_t*)NULL,
4551      VXWORKS_TIME_TEST_CT, FD_MACH_ONLY,
4552      aVxworks_TimeTests,   apzVxworks_TimePatch },
4554   {  zX11_ClassName,    zX11_ClassList,
4555      apzX11_ClassMachs, (regex_t*)NULL,
4556      X11_CLASS_TEST_CT, FD_MACH_ONLY,
4557      aX11_ClassTests,   apzX11_ClassPatch },
4559   {  zX11_Class_UsageName,    zX11_Class_UsageList,
4560      apzX11_Class_UsageMachs, (regex_t*)NULL,
4561      X11_CLASS_USAGE_TEST_CT, FD_MACH_ONLY,
4562      aX11_Class_UsageTests,   apzX11_Class_UsagePatch },
4564   {  zX11_NewName,    zX11_NewList,
4565      apzX11_NewMachs, (regex_t*)NULL,
4566      X11_NEW_TEST_CT, FD_MACH_ONLY,
4567      aX11_NewTests,   apzX11_NewPatch },
4569   {  zX11_SprintfName,    zX11_SprintfList,
4570      apzX11_SprintfMachs, (regex_t*)NULL,
4571      X11_SPRINTF_TEST_CT, FD_MACH_ONLY,
4572      aX11_SprintfTests,   apzX11_SprintfPatch }