OSDN Git Service

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