xref: /openbsd-src/gnu/usr.bin/gcc/gcc/fixinc/fixincl.x (revision 4e43c760ad4cd5f644ec700462679d05749498d8)
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 166 fixup descriptions.
9  *
10  * See README for more information.
11  *
12  *  inclhack copyright (c) 1998, 1999, 2000, 2001
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 Aab_Dgux_Int_Varargs fix
36  */
37 tSCC zAab_Dgux_Int_VarargsName[] =
38      "AAB_dgux_int_varargs";
39 
40 /*
41  *  File name selection pattern
42  */
43 tSCC zAab_Dgux_Int_VarargsList[] =
44   "|_int_varargs.h|";
45 /*
46  *  Machine/OS name selection pattern
47  */
48 #define apzAab_Dgux_Int_VarargsMachs (const char**)NULL
49 #define AAB_DGUX_INT_VARARGS_TEST_CT  0
50 #define aAab_Dgux_Int_VarargsTests   (tTestDesc*)NULL
51 
52 /*
53  *  Fix Command Arguments for Aab_Dgux_Int_Varargs
54  */
55 static const char* apzAab_Dgux_Int_VarargsPatch[] = {
56 "#ifndef __INT_VARARGS_H\n\
57 #define __INT_VARARGS_H\n\n\
58 /********************************************************/\n\
59 /*  Define the common stuff for varargs/stdarg/stdio.   */\n\
60 /********************************************************/\n\n\
61 /*\n\
62 ** This file is a DG internal header.  Never include this\n\
63 ** file directly.\n\
64 */\n\n\
65 #ifndef ___int_features_h\n\
66 #include <sys/_int_features.h>\n\
67 #endif\n\n\
68 #if !(defined(_VA_LIST) || defined(_VA_LIST_))\n\
69 #define _VA_LIST\n\
70 #define _VA_LIST_\n\n\
71 #ifdef __LINT__\n\n\
72 #ifdef __STDC__\n\
73 typedef void * va_list;\n\
74 #else\n\
75 typedef char * va_list;\n\
76 #endif\n\n\
77 #else\n\
78 #if _M88K_ANY\n\n\
79 #if defined(__DCC__)\n\n\
80 typedef struct {\n\
81       int     next_arg;\n\
82       int     *mem_ptr;\n\
83       int     *reg_ptr;\n\
84 } va_list;\n\n\
85 #else  /* ! defined(__DCC__) */\n\n\
86 typedef struct {\n\
87       int  __va_arg;       /* argument number */\n\
88       int *__va_stk;       /* start of args passed on stack */\n\
89       int *__va_reg;       /* start of args passed in regs */\n\
90 } va_list;\n\n\
91 #endif  /* ! defined(__DCC__) */\n\n\
92 #elif _IX86_ANY\n\n\
93 #if defined(__GNUC__) || defined(__STDC__)\n\
94 typedef void * va_list;\n\
95 #else\n\
96 typedef char * va_list;\n\
97 #endif\n\n\
98 #endif  /*  _IX86_ANY */\n\n\
99 #endif /* __LINT__ */\n\
100 #endif /*  !(defined(_VA_LIST) || defined(_VA_LIST_)) */\n\
101 #endif /*  #ifndef __INT_VARARGS_H  */",
102     (char*)NULL };
103 
104 /* * * * * * * * * * * * * * * * * * * * * * * * * *
105  *
106  *  Description of Aab_Fd_Zero_Asm_Posix_Types_H fix
107  */
108 tSCC zAab_Fd_Zero_Asm_Posix_Types_HName[] =
109      "AAB_fd_zero_asm_posix_types_h";
110 
111 /*
112  *  File name selection pattern
113  */
114 tSCC zAab_Fd_Zero_Asm_Posix_Types_HList[] =
115   "|asm/posix_types.h|";
116 /*
117  *  Machine/OS name selection pattern
118  */
119 tSCC* apzAab_Fd_Zero_Asm_Posix_Types_HMachs[] = {
120         "i[34567]86-*-linux*",
121         (const char*)NULL };
122 
123 /*
124  *  content bypass pattern - skip fix if pattern found
125  */
126 tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass0[] =
127        "} while";
128 
129 #define    AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT  1
130 static tTestDesc aAab_Fd_Zero_Asm_Posix_Types_HTests[] = {
131   { TT_NEGREP,   zAab_Fd_Zero_Asm_Posix_Types_HBypass0, (regex_t*)NULL }, };
132 
133 /*
134  *  Fix Command Arguments for Aab_Fd_Zero_Asm_Posix_Types_H
135  */
136 static const char* apzAab_Fd_Zero_Asm_Posix_Types_HPatch[] = {
137 "/* This file fixes a bug in the __FD_ZERO macro\n\
138    for older versions of the Linux kernel. */\n\
139 #ifndef _POSIX_TYPES_H_WRAPPER\n\
140 #include <features.h>\n\
141  #include_next <asm/posix_types.h>\n\n\
142 #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
143 #undef __FD_ZERO\n\
144 #define __FD_ZERO(fdsetp) \\\n\
145   do { \\\n\
146     int __d0, __d1; \\\n\
147 __asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
148 : \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
149 : \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
150   \"1\" ((__kernel_fd_set *) (fdsetp)) :\"memory\"); \\\n\
151   } while (0)\n\
152 #endif\n\n\
153 #define _POSIX_TYPES_H_WRAPPER\n\
154 #endif /* _POSIX_TYPES_H_WRAPPER */",
155     (char*)NULL };
156 
157 /* * * * * * * * * * * * * * * * * * * * * * * * * *
158  *
159  *  Description of Aab_Fd_Zero_Gnu_Types_H fix
160  */
161 tSCC zAab_Fd_Zero_Gnu_Types_HName[] =
162      "AAB_fd_zero_gnu_types_h";
163 
164 /*
165  *  File name selection pattern
166  */
167 tSCC zAab_Fd_Zero_Gnu_Types_HList[] =
168   "|gnu/types.h|";
169 /*
170  *  Machine/OS name selection pattern
171  */
172 tSCC* apzAab_Fd_Zero_Gnu_Types_HMachs[] = {
173         "i[34567]86-*-linux*",
174         (const char*)NULL };
175 #define AAB_FD_ZERO_GNU_TYPES_H_TEST_CT  0
176 #define aAab_Fd_Zero_Gnu_Types_HTests   (tTestDesc*)NULL
177 
178 /*
179  *  Fix Command Arguments for Aab_Fd_Zero_Gnu_Types_H
180  */
181 static const char* apzAab_Fd_Zero_Gnu_Types_HPatch[] = {
182 "/* This file fixes a bug in the __FD_ZERO macro present in glibc 1.x. */\n\
183 #ifndef _TYPES_H_WRAPPER\n\
184 #include <features.h>\n\
185  #include_next <gnu/types.h>\n\n\
186 #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
187 #undef __FD_ZERO\n\
188 # define __FD_ZERO(fdsetp) \\\n\
189   do { \\\n\
190     int __d0, __d1; \\\n\
191 \t__asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
192         \t: \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
193         \t: \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
194 \t\t  \"1\" ((__fd_set *) (fdsetp)) :\"memory\"); \\\n\
195   } while (0)\n\
196 #endif\n\n\
197 #define _TYPES_H_WRAPPER\n\
198 #endif /* _TYPES_H_WRAPPER */\n",
199     (char*)NULL };
200 
201 /* * * * * * * * * * * * * * * * * * * * * * * * * *
202  *
203  *  Description of Aab_Fd_Zero_Selectbits_H fix
204  */
205 tSCC zAab_Fd_Zero_Selectbits_HName[] =
206      "AAB_fd_zero_selectbits_h";
207 
208 /*
209  *  File name selection pattern
210  */
211 tSCC zAab_Fd_Zero_Selectbits_HList[] =
212   "|selectbits.h|";
213 /*
214  *  Machine/OS name selection pattern
215  */
216 tSCC* apzAab_Fd_Zero_Selectbits_HMachs[] = {
217         "i[34567]86-*-linux*",
218         (const char*)NULL };
219 #define AAB_FD_ZERO_SELECTBITS_H_TEST_CT  0
220 #define aAab_Fd_Zero_Selectbits_HTests   (tTestDesc*)NULL
221 
222 /*
223  *  Fix Command Arguments for Aab_Fd_Zero_Selectbits_H
224  */
225 static const char* apzAab_Fd_Zero_Selectbits_HPatch[] = {
226 "/* This file fixes a bug in the __FD_ZERO macro present in glibc 2.0.x. */\n\
227 #ifndef _SELECTBITS_H_WRAPPER\n\
228 #include <features.h>\n\
229  #include_next <selectbits.h>\n\n\
230 #if defined(__FD_ZERO) && defined(__GLIBC__) \\\n\
231 \t&& defined(__GLIBC_MINOR__) && __GLIBC__ == 2 \\\n\
232 \t&& __GLIBC_MINOR__ == 0\n\
233 #undef __FD_ZERO\n\
234 #define __FD_ZERO(fdsetp) \\\n\
235   do { \\\n\
236     int __d0, __d1; \\\n\
237   __asm__ __volatile__ (\"cld; rep; stosl\" \\\n\
238                         : \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
239                         : \"a\" (0), \"0\" (sizeof (__fd_set) \\\n\
240                                         / sizeof (__fd_mask)), \\\n\
241                           \"1\" ((__fd_mask *) (fdsetp)) \\\n\
242                         : \"memory\"); \\\n\
243   } while (0)\n\
244 #endif\n\n\
245 #define _SELECTBITS_H_WRAPPER\n\
246 #endif /* _SELECTBITS_H_WRAPPER */\n",
247     (char*)NULL };
248 
249 /* * * * * * * * * * * * * * * * * * * * * * * * * *
250  *
251  *  Description of Aab_Solaris_Sys_Varargs_H fix
252  */
253 tSCC zAab_Solaris_Sys_Varargs_HName[] =
254      "AAB_solaris_sys_varargs_h";
255 
256 /*
257  *  File name selection pattern
258  */
259 tSCC zAab_Solaris_Sys_Varargs_HList[] =
260   "|sys/varargs.h|";
261 /*
262  *  Machine/OS name selection pattern
263  */
264 tSCC* apzAab_Solaris_Sys_Varargs_HMachs[] = {
265         "*-*-solaris*",
266         (const char*)NULL };
267 #define AAB_SOLARIS_SYS_VARARGS_H_TEST_CT  0
268 #define aAab_Solaris_Sys_Varargs_HTests   (tTestDesc*)NULL
269 
270 /*
271  *  Fix Command Arguments for Aab_Solaris_Sys_Varargs_H
272  */
273 static const char* apzAab_Solaris_Sys_Varargs_HPatch[] = {
274 "#ifdef __STDC__\n\
275 #include <stdarg.h>\n\
276 #else\n\
277 #include <varargs.h>\n\
278 #endif\n",
279     (char*)NULL };
280 
281 /* * * * * * * * * * * * * * * * * * * * * * * * * *
282  *
283  *  Description of Aab_Sun_Memcpy fix
284  */
285 tSCC zAab_Sun_MemcpyName[] =
286      "AAB_sun_memcpy";
287 
288 /*
289  *  File name selection pattern
290  */
291 tSCC zAab_Sun_MemcpyList[] =
292   "|memory.h|";
293 /*
294  *  Machine/OS name selection pattern
295  */
296 #define apzAab_Sun_MemcpyMachs (const char**)NULL
297 
298 /*
299  *  content selection pattern - do fix if pattern found
300  */
301 tSCC zAab_Sun_MemcpySelect0[] =
302        "/\\*\t@\\(#\\)(head/memory.h\t50.1\t |memory\\.h 1\\.[2-4] 8./../.. SMI; from S5R2 1\\.2\t)\\*/";
303 
304 #define    AAB_SUN_MEMCPY_TEST_CT  1
305 static tTestDesc aAab_Sun_MemcpyTests[] = {
306   { TT_EGREP,    zAab_Sun_MemcpySelect0, (regex_t*)NULL }, };
307 
308 /*
309  *  Fix Command Arguments for Aab_Sun_Memcpy
310  */
311 static const char* apzAab_Sun_MemcpyPatch[] = {
312 "/* This file was generated by fixincludes */\n\
313 #ifndef __memory_h__\n\
314 #define __memory_h__\n\n\
315 #ifdef __STDC__\n\
316 extern void *memccpy();\n\
317 extern void *memchr();\n\
318 extern void *memcpy();\n\
319 extern void *memset();\n\
320 #else\n\
321 extern char *memccpy();\n\
322 extern char *memchr();\n\
323 extern char *memcpy();\n\
324 extern char *memset();\n\
325 #endif /* __STDC__ */\n\n\
326 extern int memcmp();\n\n\
327 #endif /* __memory_h__ */\n",
328     (char*)NULL };
329 
330 /* * * * * * * * * * * * * * * * * * * * * * * * * *
331  *
332  *  Description of Aab_Svr4_Replace_Byteorder fix
333  */
334 tSCC zAab_Svr4_Replace_ByteorderName[] =
335      "AAB_svr4_replace_byteorder";
336 
337 /*
338  *  File name selection pattern
339  */
340 tSCC zAab_Svr4_Replace_ByteorderList[] =
341   "|sys/byteorder.h|";
342 /*
343  *  Machine/OS name selection pattern
344  */
345 tSCC* apzAab_Svr4_Replace_ByteorderMachs[] = {
346         "*-*-sysv4*",
347         "i[34567]86-*-sysv5*",
348         "i[34567]86-*-sco3.2v5*",
349         "i[34567]86-*-udk*",
350         "i[34567]86-*-solaris2.[0-4]",
351         "powerpcle-*-solaris2.[0-4]",
352         "sparc-*-solaris2.[0-4]",
353         "i[34567]86-sequent-ptx*",
354         (const char*)NULL };
355 #define AAB_SVR4_REPLACE_BYTEORDER_TEST_CT  0
356 #define aAab_Svr4_Replace_ByteorderTests   (tTestDesc*)NULL
357 
358 /*
359  *  Fix Command Arguments for Aab_Svr4_Replace_Byteorder
360  */
361 static const char* apzAab_Svr4_Replace_ByteorderPatch[] = {
362 "#ifndef _SYS_BYTEORDER_H\n\
363 #define _SYS_BYTEORDER_H\n\n\
364 /* Functions to convert `short' and `long' quantities from host byte order\n\
365    to (internet) network byte order (i.e. big-endian).\n\n\
366    Written by Ron Guilmette (rfg@ncd.com).\n\n\
367    This isn't actually used by GCC.  It is installed by fixinc.svr4.\n\n\
368    For big-endian machines these functions are essentially no-ops.\n\n\
369    For little-endian machines, we define the functions using specialized\n\
370    asm sequences in cases where doing so yields better code (e.g. i386).  */\n\n\
371 #if !defined (__GNUC__) && !defined (__GNUG__)\n\
372 #error You lose!  This file is only useful with GNU compilers.\n\
373 #endif\n\n\
374 #ifndef __BYTE_ORDER__\n\
375 /* Byte order defines.  These are as defined on UnixWare 1.1, but with\n\
376    double underscores added at the front and back.  */\n\
377 #define __LITTLE_ENDIAN__   1234\n\
378 #define __BIG_ENDIAN__      4321\n\
379 #define __PDP_ENDIAN__      3412\n\
380 #endif\n\n\
381 #ifdef __STDC__\n\
382 static __inline__ unsigned long htonl (unsigned long);\n\
383 static __inline__ unsigned short htons (unsigned int);\n\
384 static __inline__ unsigned long ntohl (unsigned long);\n\
385 static __inline__ unsigned short ntohs (unsigned int);\n\
386 #endif /* defined (__STDC__) */\n\n\
387 #if defined (__i386__)\n\n\
388 #ifndef __BYTE_ORDER__\n\
389 #define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
390 #endif\n\n\
391 /* Convert a host long to a network long.  */\n\n\
392 /* We must use a new-style function definition, so that this will also\n\
393    be valid for C++.  */\n\
394 static __inline__ unsigned long\n\
395 htonl (unsigned long __arg)\n\
396 {\n\
397   register unsigned long __result;\n\n\
398   __asm__ (\"xchg%B0 %b0,%h0 ; ror%L0 $16,%0 ; xchg%B0 %b0,%h0\"     : \"=q\" (__result) : \"0\" (__arg));\n\
399   return __result;\n\
400 }\n\n\
401 /* Convert a host short to a network short.  */\n\n\
402 static __inline__ unsigned short\n\
403 htons (unsigned int __arg)\n\
404 {\n\
405   register unsigned short __result;\n\n\
406   __asm__ (\"xchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
407   return __result;\n\
408 }\n\n\
409 #elif ((defined (__i860__) && !defined (__i860_big_endian__))\t\\\n\
410        || defined (__ns32k__) || defined (__vax__)\t\t\\\n\
411        || defined (__spur__) || defined (__arm__))\n\n\
412 #ifndef __BYTE_ORDER__\n\
413 #define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
414 #endif\n\n\
415 /* For other little-endian machines, using C code is just as efficient as\n\
416    using assembly code.  */\n\n\
417 /* Convert a host long to a network long.  */\n\n\
418 static __inline__ unsigned long\n\
419 htonl (unsigned long __arg)\n\
420 {\n\
421   register unsigned long __result;\n\n\
422   __result = (__arg >> 24) & 0x000000ff;\n\
423   __result |= (__arg >> 8) & 0x0000ff00;\n\
424   __result |= (__arg << 8) & 0x00ff0000;\n\
425   __result |= (__arg << 24) & 0xff000000;\n\
426   return __result;\n\
427 }\n\n\
428 /* Convert a host short to a network short.  */\n\n\
429 static __inline__ unsigned short\n\
430 htons (unsigned int __arg)\n\
431 {\n\
432   register unsigned short __result;\n\n\
433   __result = (__arg << 8) & 0xff00;\n\
434   __result |= (__arg >> 8) & 0x00ff;\n\
435   return __result;\n\
436 }\n\n\
437 #else /* must be a big-endian machine */\n\n\
438 #ifndef __BYTE_ORDER__\n\
439 #define __BYTE_ORDER__ __BIG_ENDIAN__\n\
440 #endif\n\n\
441 /* Convert a host long to a network long.  */\n\n\
442 static __inline__ unsigned long\n\
443 htonl (unsigned long __arg)\n\
444 {\n\
445   return __arg;\n\
446 }\n\n\
447 /* Convert a host short to a network short.  */\n\n\
448 static __inline__ unsigned short\n\
449 htons (unsigned int __arg)\n\
450 {\n\
451   return __arg;\n\
452 }\n\n\
453 #endif /* big-endian */\n\n\
454 /* Convert a network long to a host long.  */\n\n\
455 static __inline__ unsigned long\n\
456 ntohl (unsigned long __arg)\n\
457 {\n\
458   return htonl (__arg);\n\
459 }\n\n\
460 /* Convert a network short to a host short.  */\n\n\
461 static __inline__ unsigned short\n\
462 ntohs (unsigned int __arg)\n\
463 {\n\
464   return htons (__arg);\n\
465 }\n\
466 #endif\n",
467     (char*)NULL };
468 
469 /* * * * * * * * * * * * * * * * * * * * * * * * * *
470  *
471  *  Description of Aab_Ultrix_Ansi_Compat fix
472  */
473 tSCC zAab_Ultrix_Ansi_CompatName[] =
474      "AAB_ultrix_ansi_compat";
475 
476 /*
477  *  File name selection pattern
478  */
479 tSCC zAab_Ultrix_Ansi_CompatList[] =
480   "|ansi_compat.h|";
481 /*
482  *  Machine/OS name selection pattern
483  */
484 #define apzAab_Ultrix_Ansi_CompatMachs (const char**)NULL
485 
486 /*
487  *  content selection pattern - do fix if pattern found
488  */
489 tSCC zAab_Ultrix_Ansi_CompatSelect0[] =
490        "ULTRIX";
491 
492 #define    AAB_ULTRIX_ANSI_COMPAT_TEST_CT  1
493 static tTestDesc aAab_Ultrix_Ansi_CompatTests[] = {
494   { TT_EGREP,    zAab_Ultrix_Ansi_CompatSelect0, (regex_t*)NULL }, };
495 
496 /*
497  *  Fix Command Arguments for Aab_Ultrix_Ansi_Compat
498  */
499 static const char* apzAab_Ultrix_Ansi_CompatPatch[] = {
500 "/* This file intentionally left blank.  */\n",
501     (char*)NULL };
502 
503 /* * * * * * * * * * * * * * * * * * * * * * * * * *
504  *
505  *  Description of Aab_Ultrix_Limits fix
506  */
507 tSCC zAab_Ultrix_LimitsName[] =
508      "AAB_ultrix_limits";
509 
510 /*
511  *  File name selection pattern
512  */
513 tSCC zAab_Ultrix_LimitsList[] =
514   "|limits.h|";
515 /*
516  *  Machine/OS name selection pattern
517  */
518 tSCC* apzAab_Ultrix_LimitsMachs[] = {
519         "*-*-ultrix4.3",
520         (const char*)NULL };
521 #define AAB_ULTRIX_LIMITS_TEST_CT  0
522 #define aAab_Ultrix_LimitsTests   (tTestDesc*)NULL
523 
524 /*
525  *  Fix Command Arguments for Aab_Ultrix_Limits
526  */
527 static const char* apzAab_Ultrix_LimitsPatch[] = {
528 "#ifndef _LIMITS_INCLUDED\n\
529 #define _LIMITS_INCLUDED\n\
530 #include <sys/limits.h>\n\
531 #endif /* _LIMITS_INCLUDED */\n",
532     (char*)NULL };
533 
534 /* * * * * * * * * * * * * * * * * * * * * * * * * *
535  *
536  *  Description of Aab_Ultrix_Memory fix
537  */
538 tSCC zAab_Ultrix_MemoryName[] =
539      "AAB_ultrix_memory";
540 
541 /*
542  *  File name selection pattern
543  */
544 tSCC zAab_Ultrix_MemoryList[] =
545   "|memory.h|";
546 /*
547  *  Machine/OS name selection pattern
548  */
549 tSCC* apzAab_Ultrix_MemoryMachs[] = {
550         "*-*-ultrix4.3",
551         (const char*)NULL };
552 #define AAB_ULTRIX_MEMORY_TEST_CT  0
553 #define aAab_Ultrix_MemoryTests   (tTestDesc*)NULL
554 
555 /*
556  *  Fix Command Arguments for Aab_Ultrix_Memory
557  */
558 static const char* apzAab_Ultrix_MemoryPatch[] = {
559 "#ifndef _MEMORY_INCLUDED\n\
560 #define _MEMORY_INCLUDED\n\
561 #include <strings.h>\n\
562 #endif /* _MEMORY_INCLUDED */\n",
563     (char*)NULL };
564 
565 /* * * * * * * * * * * * * * * * * * * * * * * * * *
566  *
567  *  Description of Aab_Ultrix_String fix
568  */
569 tSCC zAab_Ultrix_StringName[] =
570      "AAB_ultrix_string";
571 
572 /*
573  *  File name selection pattern
574  */
575 tSCC zAab_Ultrix_StringList[] =
576   "|string.h|";
577 /*
578  *  Machine/OS name selection pattern
579  */
580 tSCC* apzAab_Ultrix_StringMachs[] = {
581         "*-*-ultrix4.3",
582         (const char*)NULL };
583 #define AAB_ULTRIX_STRING_TEST_CT  0
584 #define aAab_Ultrix_StringTests   (tTestDesc*)NULL
585 
586 /*
587  *  Fix Command Arguments for Aab_Ultrix_String
588  */
589 static const char* apzAab_Ultrix_StringPatch[] = {
590 "#ifndef _STRING_INCLUDED\n\
591 #define _STRING_INCLUDED\n\
592 #include <strings.h>\n\
593 #endif /* _STRING_INCLUDED */\n",
594     (char*)NULL };
595 
596 /* * * * * * * * * * * * * * * * * * * * * * * * * *
597  *
598  *  Description of Aix_Pthread fix
599  */
600 tSCC zAix_PthreadName[] =
601      "aix_pthread";
602 
603 /*
604  *  File name selection pattern
605  */
606 tSCC zAix_PthreadList[] =
607   "|pthread.h|";
608 /*
609  *  Machine/OS name selection pattern
610  */
611 #define apzAix_PthreadMachs (const char**)NULL
612 
613 /*
614  *  content selection pattern - do fix if pattern found
615  */
616 tSCC zAix_PthreadSelect0[] =
617        "(#define [A-Za-z_0-9]+)(\\\\\n\
618 [^A-Za-z_0-9 \t\n\
619 (])";
620 
621 #define    AIX_PTHREAD_TEST_CT  1
622 static tTestDesc aAix_PthreadTests[] = {
623   { TT_EGREP,    zAix_PthreadSelect0, (regex_t*)NULL }, };
624 
625 /*
626  *  Fix Command Arguments for Aix_Pthread
627  */
628 static const char* apzAix_PthreadPatch[] = {
629     "format",
630     "%1 %2",
631     (char*)NULL };
632 
633 /* * * * * * * * * * * * * * * * * * * * * * * * * *
634  *
635  *  Description of Aix_Sysmachine fix
636  */
637 tSCC zAix_SysmachineName[] =
638      "aix_sysmachine";
639 
640 /*
641  *  File name selection pattern
642  */
643 tSCC zAix_SysmachineList[] =
644   "|sys/machine.h|";
645 /*
646  *  Machine/OS name selection pattern
647  */
648 #define apzAix_SysmachineMachs (const char**)NULL
649 
650 /*
651  *  content selection pattern - do fix if pattern found
652  */
653 tSCC zAix_SysmachineSelect0[] =
654        "\\\\ +\n";
655 
656 #define    AIX_SYSMACHINE_TEST_CT  1
657 static tTestDesc aAix_SysmachineTests[] = {
658   { TT_EGREP,    zAix_SysmachineSelect0, (regex_t*)NULL }, };
659 
660 /*
661  *  Fix Command Arguments for Aix_Sysmachine
662  */
663 static const char* apzAix_SysmachinePatch[] = {
664     "format",
665     "\\\n",
666     (char*)NULL };
667 
668 /* * * * * * * * * * * * * * * * * * * * * * * * * *
669  *
670  *  Description of Aix_Syswait fix
671  */
672 tSCC zAix_SyswaitName[] =
673      "aix_syswait";
674 
675 /*
676  *  File name selection pattern
677  */
678 tSCC zAix_SyswaitList[] =
679   "|sys/wait.h|";
680 /*
681  *  Machine/OS name selection pattern
682  */
683 #define apzAix_SyswaitMachs (const char**)NULL
684 
685 /*
686  *  content selection pattern - do fix if pattern found
687  */
688 tSCC zAix_SyswaitSelect0[] =
689        "^extern pid_t wait3\\(\\);\n";
690 tSCC zAix_SyswaitSelect1[] =
691        "bos325,";
692 
693 #define    AIX_SYSWAIT_TEST_CT  2
694 static tTestDesc aAix_SyswaitTests[] = {
695   { TT_EGREP,    zAix_SyswaitSelect0, (regex_t*)NULL },
696   { TT_EGREP,    zAix_SyswaitSelect1, (regex_t*)NULL }, };
697 
698 /*
699  *  Fix Command Arguments for Aix_Syswait
700  */
701 static const char* apzAix_SyswaitPatch[] = {
702     "format",
703     "struct rusage;\n\
704 %0",
705     (char*)NULL };
706 
707 /* * * * * * * * * * * * * * * * * * * * * * * * * *
708  *
709  *  Description of Aix_Volatile fix
710  */
711 tSCC zAix_VolatileName[] =
712      "aix_volatile";
713 
714 /*
715  *  File name selection pattern
716  */
717 tSCC zAix_VolatileList[] =
718   "|sys/signal.h|";
719 /*
720  *  Machine/OS name selection pattern
721  */
722 #define apzAix_VolatileMachs (const char**)NULL
723 
724 /*
725  *  content selection pattern - do fix if pattern found
726  */
727 tSCC zAix_VolatileSelect0[] =
728        "typedef volatile int sig_atomic_t";
729 
730 #define    AIX_VOLATILE_TEST_CT  1
731 static tTestDesc aAix_VolatileTests[] = {
732   { TT_EGREP,    zAix_VolatileSelect0, (regex_t*)NULL }, };
733 
734 /*
735  *  Fix Command Arguments for Aix_Volatile
736  */
737 static const char* apzAix_VolatilePatch[] = {
738     "format",
739     "typedef int sig_atomic_t",
740     (char*)NULL };
741 
742 /* * * * * * * * * * * * * * * * * * * * * * * * * *
743  *
744  *  Description of Alpha___Assert fix
745  */
746 tSCC zAlpha___AssertName[] =
747      "alpha___assert";
748 
749 /*
750  *  File name selection pattern
751  */
752 tSCC zAlpha___AssertList[] =
753   "|assert.h|";
754 /*
755  *  Machine/OS name selection pattern
756  */
757 #define apzAlpha___AssertMachs (const char**)NULL
758 
759 /*
760  *  content selection pattern - do fix if pattern found
761  */
762 tSCC zAlpha___AssertSelect0[] =
763        "__assert\\(char \\*, char \\*, int\\)";
764 
765 #define    ALPHA___ASSERT_TEST_CT  1
766 static tTestDesc aAlpha___AssertTests[] = {
767   { TT_EGREP,    zAlpha___AssertSelect0, (regex_t*)NULL }, };
768 
769 /*
770  *  Fix Command Arguments for Alpha___Assert
771  */
772 static const char* apzAlpha___AssertPatch[] = {
773     "format",
774     "__assert(const char *, const char *, int)",
775     (char*)NULL };
776 
777 /* * * * * * * * * * * * * * * * * * * * * * * * * *
778  *
779  *  Description of Alpha___Extern_Prefix fix
780  */
781 tSCC zAlpha___Extern_PrefixName[] =
782      "alpha___extern_prefix";
783 
784 /*
785  *  File name selection pattern
786  */
787 tSCC zAlpha___Extern_PrefixList[] =
788   "|sys/stat.h|";
789 /*
790  *  Machine/OS name selection pattern
791  */
792 tSCC* apzAlpha___Extern_PrefixMachs[] = {
793         "alpha*-dec-osf5*",
794         (const char*)NULL };
795 
796 /*
797  *  content selection pattern - do fix if pattern found
798  */
799 tSCC zAlpha___Extern_PrefixSelect0[] =
800        "#[ \t]*if[ \t]*defined\\(__DECC\\)";
801 
802 #define    ALPHA___EXTERN_PREFIX_TEST_CT  1
803 static tTestDesc aAlpha___Extern_PrefixTests[] = {
804   { TT_EGREP,    zAlpha___Extern_PrefixSelect0, (regex_t*)NULL }, };
805 
806 /*
807  *  Fix Command Arguments for Alpha___Extern_Prefix
808  */
809 static const char* apzAlpha___Extern_PrefixPatch[] = {
810     "format",
811     "%0 || defined(__PRAGMA_EXTERN_PREFIX)",
812     (char*)NULL };
813 
814 /* * * * * * * * * * * * * * * * * * * * * * * * * *
815  *
816  *  Description of Alpha_Assert fix
817  */
818 tSCC zAlpha_AssertName[] =
819      "alpha_assert";
820 
821 /*
822  *  File name selection pattern
823  */
824 tSCC zAlpha_AssertList[] =
825   "|assert.h|";
826 /*
827  *  Machine/OS name selection pattern
828  */
829 #define apzAlpha_AssertMachs (const char**)NULL
830 
831 /*
832  *  content selection pattern - do fix if pattern found
833  */
834 tSCC zAlpha_AssertSelect0[] =
835        "(#define assert\\(EX\\).*)\\(\\(int\\) \\(EX\\)\\)";
836 
837 #define    ALPHA_ASSERT_TEST_CT  1
838 static tTestDesc aAlpha_AssertTests[] = {
839   { TT_EGREP,    zAlpha_AssertSelect0, (regex_t*)NULL }, };
840 
841 /*
842  *  Fix Command Arguments for Alpha_Assert
843  */
844 static const char* apzAlpha_AssertPatch[] = {
845     "format",
846     "%1(EX)",
847     (char*)NULL };
848 
849 /* * * * * * * * * * * * * * * * * * * * * * * * * *
850  *
851  *  Description of Alpha_Getopt fix
852  */
853 tSCC zAlpha_GetoptName[] =
854      "alpha_getopt";
855 
856 /*
857  *  File name selection pattern
858  */
859 tSCC zAlpha_GetoptList[] =
860   "|stdio.h|stdlib.h|";
861 /*
862  *  Machine/OS name selection pattern
863  */
864 #define apzAlpha_GetoptMachs (const char**)NULL
865 
866 /*
867  *  content selection pattern - do fix if pattern found
868  */
869 tSCC zAlpha_GetoptSelect0[] =
870        "getopt\\(int, char \\*\\[\\], *char \\*\\)";
871 
872 #define    ALPHA_GETOPT_TEST_CT  1
873 static tTestDesc aAlpha_GetoptTests[] = {
874   { TT_EGREP,    zAlpha_GetoptSelect0, (regex_t*)NULL }, };
875 
876 /*
877  *  Fix Command Arguments for Alpha_Getopt
878  */
879 static const char* apzAlpha_GetoptPatch[] = {
880     "format",
881     "getopt(int, char *const[], const char *)",
882     (char*)NULL };
883 
884 /* * * * * * * * * * * * * * * * * * * * * * * * * *
885  *
886  *  Description of Alpha_Parens fix
887  */
888 tSCC zAlpha_ParensName[] =
889      "alpha_parens";
890 
891 /*
892  *  File name selection pattern
893  */
894 tSCC zAlpha_ParensList[] =
895   "|sym.h|";
896 /*
897  *  Machine/OS name selection pattern
898  */
899 #define apzAlpha_ParensMachs (const char**)NULL
900 
901 /*
902  *  content selection pattern - do fix if pattern found
903  */
904 tSCC zAlpha_ParensSelect0[] =
905        "#ifndef\\(__mips64\\)";
906 
907 #define    ALPHA_PARENS_TEST_CT  1
908 static tTestDesc aAlpha_ParensTests[] = {
909   { TT_EGREP,    zAlpha_ParensSelect0, (regex_t*)NULL }, };
910 
911 /*
912  *  Fix Command Arguments for Alpha_Parens
913  */
914 static const char* apzAlpha_ParensPatch[] = {
915     "format",
916     "#ifndef __mips64",
917     (char*)NULL };
918 
919 /* * * * * * * * * * * * * * * * * * * * * * * * * *
920  *
921  *  Description of Alpha_Pthread_Gcc fix
922  */
923 tSCC zAlpha_Pthread_GccName[] =
924      "alpha_pthread_gcc";
925 
926 /*
927  *  File name selection pattern
928  */
929 tSCC zAlpha_Pthread_GccList[] =
930   "|pthread.h|";
931 /*
932  *  Machine/OS name selection pattern
933  */
934 tSCC* apzAlpha_Pthread_GccMachs[] = {
935         "alpha*-dec-osf*",
936         (const char*)NULL };
937 
938 /*
939  *  content selection pattern - do fix if pattern found
940  */
941 tSCC zAlpha_Pthread_GccSelect0[] =
942        "#else\n\
943 # error <pthread.h>: unrecognized compiler.";
944 
945 #define    ALPHA_PTHREAD_GCC_TEST_CT  1
946 static tTestDesc aAlpha_Pthread_GccTests[] = {
947   { TT_EGREP,    zAlpha_Pthread_GccSelect0, (regex_t*)NULL }, };
948 
949 /*
950  *  Fix Command Arguments for Alpha_Pthread_Gcc
951  */
952 static const char* apzAlpha_Pthread_GccPatch[] = {
953     "format",
954     "#elif defined (__GNUC__)\n\
955 # define _PTHREAD_ENV_GCC\n\
956 %0",
957     (char*)NULL };
958 
959 /* * * * * * * * * * * * * * * * * * * * * * * * * *
960  *
961  *  Description of Alpha_Sbrk fix
962  */
963 tSCC zAlpha_SbrkName[] =
964      "alpha_sbrk";
965 
966 /*
967  *  File name selection pattern
968  */
969 tSCC zAlpha_SbrkList[] =
970   "|unistd.h|";
971 /*
972  *  Machine/OS name selection pattern
973  */
974 #define apzAlpha_SbrkMachs (const char**)NULL
975 
976 /*
977  *  content selection pattern - do fix if pattern found
978  */
979 tSCC zAlpha_SbrkSelect0[] =
980        "char[ \t]*\\*[\t ]*sbrk[ \t]*\\(";
981 
982 #define    ALPHA_SBRK_TEST_CT  1
983 static tTestDesc aAlpha_SbrkTests[] = {
984   { TT_EGREP,    zAlpha_SbrkSelect0, (regex_t*)NULL }, };
985 
986 /*
987  *  Fix Command Arguments for Alpha_Sbrk
988  */
989 static const char* apzAlpha_SbrkPatch[] = {
990     "format",
991     "void *sbrk(",
992     (char*)NULL };
993 
994 /* * * * * * * * * * * * * * * * * * * * * * * * * *
995  *
996  *  Description of Arm_Norcroft_Hint fix
997  */
998 tSCC zArm_Norcroft_HintName[] =
999      "arm_norcroft_hint";
1000 
1001 /*
1002  *  File name selection pattern
1003  */
1004 tSCC zArm_Norcroft_HintList[] =
1005   "|X11/Intrinsic.h|";
1006 /*
1007  *  Machine/OS name selection pattern
1008  */
1009 #define apzArm_Norcroft_HintMachs (const char**)NULL
1010 
1011 /*
1012  *  content selection pattern - do fix if pattern found
1013  */
1014 tSCC zArm_Norcroft_HintSelect0[] =
1015        "___type p_type";
1016 
1017 #define    ARM_NORCROFT_HINT_TEST_CT  1
1018 static tTestDesc aArm_Norcroft_HintTests[] = {
1019   { TT_EGREP,    zArm_Norcroft_HintSelect0, (regex_t*)NULL }, };
1020 
1021 /*
1022  *  Fix Command Arguments for Arm_Norcroft_Hint
1023  */
1024 static const char* apzArm_Norcroft_HintPatch[] = {
1025     "format",
1026     "p_type",
1027     (char*)NULL };
1028 
1029 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1030  *
1031  *  Description of Arm_Wchar fix
1032  */
1033 tSCC zArm_WcharName[] =
1034      "arm_wchar";
1035 
1036 /*
1037  *  File name selection pattern
1038  */
1039 tSCC zArm_WcharList[] =
1040   "|stdlib.h|";
1041 /*
1042  *  Machine/OS name selection pattern
1043  */
1044 #define apzArm_WcharMachs (const char**)NULL
1045 
1046 /*
1047  *  content selection pattern - do fix if pattern found
1048  */
1049 tSCC zArm_WcharSelect0[] =
1050        "#[ \t]*define[ \t]*__wchar_t";
1051 
1052 #define    ARM_WCHAR_TEST_CT  1
1053 static tTestDesc aArm_WcharTests[] = {
1054   { TT_EGREP,    zArm_WcharSelect0, (regex_t*)NULL }, };
1055 
1056 /*
1057  *  Fix Command Arguments for Arm_Wchar
1058  */
1059 static const char* apzArm_WcharPatch[] = {
1060     "format",
1061     "%1_GCC_WCHAR_T",
1062     "(#[ \t]*(ifndef|define)[ \t]+)__wchar_t",
1063     (char*)NULL };
1064 
1065 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1066  *
1067  *  Description of Aux_Asm fix
1068  */
1069 tSCC zAux_AsmName[] =
1070      "aux_asm";
1071 
1072 /*
1073  *  File name selection pattern
1074  */
1075 tSCC zAux_AsmList[] =
1076   "|sys/param.h|";
1077 /*
1078  *  Machine/OS name selection pattern
1079  */
1080 #define apzAux_AsmMachs (const char**)NULL
1081 
1082 /*
1083  *  content selection pattern - do fix if pattern found
1084  */
1085 tSCC zAux_AsmSelect0[] =
1086        "#ifndef NOINLINE";
1087 
1088 #define    AUX_ASM_TEST_CT  1
1089 static tTestDesc aAux_AsmTests[] = {
1090   { TT_EGREP,    zAux_AsmSelect0, (regex_t*)NULL }, };
1091 
1092 /*
1093  *  Fix Command Arguments for Aux_Asm
1094  */
1095 static const char* apzAux_AsmPatch[] = {
1096     "format",
1097     "#if !defined(NOINLINE) && !defined(__GNUC__)",
1098     (char*)NULL };
1099 
1100 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1101  *
1102  *  Description of Avoid_Bool_Define fix
1103  */
1104 tSCC zAvoid_Bool_DefineName[] =
1105      "avoid_bool_define";
1106 
1107 /*
1108  *  File name selection pattern
1109  */
1110 tSCC zAvoid_Bool_DefineList[] =
1111   "|curses.h|curses_colr/curses.h|term.h|tinfo.h|";
1112 /*
1113  *  Machine/OS name selection pattern
1114  */
1115 #define apzAvoid_Bool_DefineMachs (const char**)NULL
1116 
1117 /*
1118  *  content selection pattern - do fix if pattern found
1119  */
1120 tSCC zAvoid_Bool_DefineSelect0[] =
1121        "#[ \t]*define[ \t]+bool[ \t]";
1122 
1123 /*
1124  *  content bypass pattern - skip fix if pattern found
1125  */
1126 tSCC zAvoid_Bool_DefineBypass0[] =
1127        "we must use the C\\+\\+ compiler's type";
1128 
1129 #define    AVOID_BOOL_DEFINE_TEST_CT  2
1130 static tTestDesc aAvoid_Bool_DefineTests[] = {
1131   { TT_NEGREP,   zAvoid_Bool_DefineBypass0, (regex_t*)NULL },
1132   { TT_EGREP,    zAvoid_Bool_DefineSelect0, (regex_t*)NULL }, };
1133 
1134 /*
1135  *  Fix Command Arguments for Avoid_Bool_Define
1136  */
1137 static const char* apzAvoid_Bool_DefinePatch[] = {
1138     "format",
1139     "#ifndef __cplusplus\n\
1140 %0\n\
1141 #endif",
1142     "^[ \t]*#[ \t]*define[ \t]+bool[ \t].*",
1143     (char*)NULL };
1144 
1145 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1146  *
1147  *  Description of Avoid_Bool_Type fix
1148  */
1149 tSCC zAvoid_Bool_TypeName[] =
1150      "avoid_bool_type";
1151 
1152 /*
1153  *  File name selection pattern
1154  */
1155 tSCC zAvoid_Bool_TypeList[] =
1156   "|curses.h|curses_colr/curses.h|term.h|tinfo.h|";
1157 /*
1158  *  Machine/OS name selection pattern
1159  */
1160 #define apzAvoid_Bool_TypeMachs (const char**)NULL
1161 
1162 /*
1163  *  content selection pattern - do fix if pattern found
1164  */
1165 tSCC zAvoid_Bool_TypeSelect0[] =
1166        "^[ \t]*typedef[ \t].*[ \t]bool[ \t]*;";
1167 
1168 /*
1169  *  content bypass pattern - skip fix if pattern found
1170  */
1171 tSCC zAvoid_Bool_TypeBypass0[] =
1172        "we must use the C\\+\\+ compiler's type";
1173 
1174 #define    AVOID_BOOL_TYPE_TEST_CT  2
1175 static tTestDesc aAvoid_Bool_TypeTests[] = {
1176   { TT_NEGREP,   zAvoid_Bool_TypeBypass0, (regex_t*)NULL },
1177   { TT_EGREP,    zAvoid_Bool_TypeSelect0, (regex_t*)NULL }, };
1178 
1179 /*
1180  *  Fix Command Arguments for Avoid_Bool_Type
1181  */
1182 static const char* apzAvoid_Bool_TypePatch[] = {
1183     "format",
1184     "#ifndef __cplusplus\n\
1185 %0\n\
1186 #endif",
1187     (char*)NULL };
1188 
1189 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1190  *
1191  *  Description of Avoid_Wchar_T_Type fix
1192  */
1193 tSCC zAvoid_Wchar_T_TypeName[] =
1194      "avoid_wchar_t_type";
1195 
1196 /*
1197  *  File name selection pattern
1198  */
1199 #define zAvoid_Wchar_T_TypeList (char*)NULL
1200 /*
1201  *  Machine/OS name selection pattern
1202  */
1203 #define apzAvoid_Wchar_T_TypeMachs (const char**)NULL
1204 
1205 /*
1206  *  content selection pattern - do fix if pattern found
1207  */
1208 tSCC zAvoid_Wchar_T_TypeSelect0[] =
1209        "^[ \t]*typedef[ \t].*[ \t]wchar_t[ \t]*;";
1210 
1211 /*
1212  *  content bypass pattern - skip fix if pattern found
1213  */
1214 tSCC zAvoid_Wchar_T_TypeBypass0[] =
1215        "we must use the C\\+\\+ compiler's type";
1216 tSCC zAvoid_Wchar_T_TypeBypass1[] =
1217        "_LINUX_NLS_H";
1218 tSCC zAvoid_Wchar_T_TypeBypass2[] =
1219        "XFree86: xc/lib/X11/Xlib\\.h";
1220 
1221 #define    AVOID_WCHAR_T_TYPE_TEST_CT  4
1222 static tTestDesc aAvoid_Wchar_T_TypeTests[] = {
1223   { TT_NEGREP,   zAvoid_Wchar_T_TypeBypass0, (regex_t*)NULL },
1224   { TT_NEGREP,   zAvoid_Wchar_T_TypeBypass1, (regex_t*)NULL },
1225   { TT_NEGREP,   zAvoid_Wchar_T_TypeBypass2, (regex_t*)NULL },
1226   { TT_EGREP,    zAvoid_Wchar_T_TypeSelect0, (regex_t*)NULL }, };
1227 
1228 /*
1229  *  Fix Command Arguments for Avoid_Wchar_T_Type
1230  */
1231 static const char* apzAvoid_Wchar_T_TypePatch[] = {
1232     "format",
1233     "#ifndef __cplusplus\n\
1234 %0\n\
1235 #endif",
1236     (char*)NULL };
1237 
1238 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1239  *
1240  *  Description of Bad_Lval fix
1241  */
1242 tSCC zBad_LvalName[] =
1243      "bad_lval";
1244 
1245 /*
1246  *  File name selection pattern
1247  */
1248 tSCC zBad_LvalList[] =
1249   "|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|";
1250 /*
1251  *  Machine/OS name selection pattern
1252  */
1253 #define apzBad_LvalMachs (const char**)NULL
1254 
1255 /*
1256  *  content selection pattern - do fix if pattern found
1257  */
1258 tSCC zBad_LvalSelect0[] =
1259        "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
1260 
1261 #define    BAD_LVAL_TEST_CT  1
1262 static tTestDesc aBad_LvalTests[] = {
1263   { TT_EGREP,    zBad_LvalSelect0, (regex_t*)NULL }, };
1264 
1265 /*
1266  *  Fix Command Arguments for Bad_Lval
1267  */
1268 static const char* apzBad_LvalPatch[] = { "sed",
1269     "-e", "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
1270     (char*)NULL };
1271 
1272 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1273  *
1274  *  Description of Bad_Struct_Term fix
1275  */
1276 tSCC zBad_Struct_TermName[] =
1277      "bad_struct_term";
1278 
1279 /*
1280  *  File name selection pattern
1281  */
1282 tSCC zBad_Struct_TermList[] =
1283   "|curses.h|";
1284 /*
1285  *  Machine/OS name selection pattern
1286  */
1287 #define apzBad_Struct_TermMachs (const char**)NULL
1288 
1289 /*
1290  *  content selection pattern - do fix if pattern found
1291  */
1292 tSCC zBad_Struct_TermSelect0[] =
1293        "^[ \t]*typedef[ \t]+struct[ \t]+term[ \t]*;";
1294 
1295 #define    BAD_STRUCT_TERM_TEST_CT  1
1296 static tTestDesc aBad_Struct_TermTests[] = {
1297   { TT_EGREP,    zBad_Struct_TermSelect0, (regex_t*)NULL }, };
1298 
1299 /*
1300  *  Fix Command Arguments for Bad_Struct_Term
1301  */
1302 static const char* apzBad_Struct_TermPatch[] = {
1303     "format",
1304     "struct term;",
1305     (char*)NULL };
1306 
1307 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1308  *
1309  *  Description of Badquote fix
1310  */
1311 tSCC zBadquoteName[] =
1312      "badquote";
1313 
1314 /*
1315  *  File name selection pattern
1316  */
1317 tSCC zBadquoteList[] =
1318   "|sundev/vuid_event.h|";
1319 /*
1320  *  Machine/OS name selection pattern
1321  */
1322 #define apzBadquoteMachs (const char**)NULL
1323 
1324 /*
1325  *  content selection pattern - do fix if pattern found
1326  */
1327 tSCC zBadquoteSelect0[] =
1328        "doesn't";
1329 
1330 #define    BADQUOTE_TEST_CT  1
1331 static tTestDesc aBadquoteTests[] = {
1332   { TT_EGREP,    zBadquoteSelect0, (regex_t*)NULL }, };
1333 
1334 /*
1335  *  Fix Command Arguments for Badquote
1336  */
1337 static const char* apzBadquotePatch[] = {
1338     "format",
1339     "does not",
1340     (char*)NULL };
1341 
1342 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1343  *
1344  *  Description of Broken_Assert_Stdio fix
1345  */
1346 tSCC zBroken_Assert_StdioName[] =
1347      "broken_assert_stdio";
1348 
1349 /*
1350  *  File name selection pattern
1351  */
1352 tSCC zBroken_Assert_StdioList[] =
1353   "|assert.h|";
1354 /*
1355  *  Machine/OS name selection pattern
1356  */
1357 #define apzBroken_Assert_StdioMachs (const char**)NULL
1358 
1359 /*
1360  *  content selection pattern - do fix if pattern found
1361  */
1362 tSCC zBroken_Assert_StdioSelect0[] =
1363        "stderr";
1364 
1365 /*
1366  *  content bypass pattern - skip fix if pattern found
1367  */
1368 tSCC zBroken_Assert_StdioBypass0[] =
1369        "include.*stdio\\.h";
1370 
1371 #define    BROKEN_ASSERT_STDIO_TEST_CT  2
1372 static tTestDesc aBroken_Assert_StdioTests[] = {
1373   { TT_NEGREP,   zBroken_Assert_StdioBypass0, (regex_t*)NULL },
1374   { TT_EGREP,    zBroken_Assert_StdioSelect0, (regex_t*)NULL }, };
1375 
1376 /*
1377  *  Fix Command Arguments for Broken_Assert_Stdio
1378  */
1379 static const char* apzBroken_Assert_StdioPatch[] = {
1380     "wrap",
1381     "#include <stdio.h>\n",
1382     (char*)NULL };
1383 
1384 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1385  *
1386  *  Description of Broken_Assert_Stdlib fix
1387  */
1388 tSCC zBroken_Assert_StdlibName[] =
1389      "broken_assert_stdlib";
1390 
1391 /*
1392  *  File name selection pattern
1393  */
1394 tSCC zBroken_Assert_StdlibList[] =
1395   "|assert.h|";
1396 /*
1397  *  Machine/OS name selection pattern
1398  */
1399 #define apzBroken_Assert_StdlibMachs (const char**)NULL
1400 
1401 /*
1402  *  content selection pattern - do fix if pattern found
1403  */
1404 tSCC zBroken_Assert_StdlibSelect0[] =
1405        "exit *\\(|abort *\\(";
1406 
1407 /*
1408  *  content bypass pattern - skip fix if pattern found
1409  */
1410 tSCC zBroken_Assert_StdlibBypass0[] =
1411        "include.*stdlib\\.h";
1412 
1413 #define    BROKEN_ASSERT_STDLIB_TEST_CT  2
1414 static tTestDesc aBroken_Assert_StdlibTests[] = {
1415   { TT_NEGREP,   zBroken_Assert_StdlibBypass0, (regex_t*)NULL },
1416   { TT_EGREP,    zBroken_Assert_StdlibSelect0, (regex_t*)NULL }, };
1417 
1418 /*
1419  *  Fix Command Arguments for Broken_Assert_Stdlib
1420  */
1421 static const char* apzBroken_Assert_StdlibPatch[] = {
1422     "wrap",
1423     "#ifdef __cplusplus\n\
1424 #include <stdlib.h>\n\
1425 #endif\n",
1426     (char*)NULL };
1427 
1428 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1429  *
1430  *  Description of Broken_Cabs fix
1431  */
1432 tSCC zBroken_CabsName[] =
1433      "broken_cabs";
1434 
1435 /*
1436  *  File name selection pattern
1437  */
1438 tSCC zBroken_CabsList[] =
1439   "|math.h|";
1440 /*
1441  *  Machine/OS name selection pattern
1442  */
1443 #define apzBroken_CabsMachs (const char**)NULL
1444 
1445 /*
1446  *  content selection pattern - do fix if pattern found
1447  */
1448 tSCC zBroken_CabsSelect0[] =
1449        "^extern[ \\t]+double[ \\t]+cabs";
1450 
1451 #define    BROKEN_CABS_TEST_CT  1
1452 static tTestDesc aBroken_CabsTests[] = {
1453   { TT_EGREP,    zBroken_CabsSelect0, (regex_t*)NULL }, };
1454 
1455 /*
1456  *  Fix Command Arguments for Broken_Cabs
1457  */
1458 static const char* apzBroken_CabsPatch[] = {
1459     "format",
1460     "",
1461     "^extern[ \t]+double[ \t]+cabs\\((struct dbl_hypot|)\\);",
1462     (char*)NULL };
1463 
1464 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1465  *
1466  *  Description of Ctrl_Quotes_Def fix
1467  */
1468 tSCC zCtrl_Quotes_DefName[] =
1469      "ctrl_quotes_def";
1470 
1471 /*
1472  *  File name selection pattern
1473  */
1474 #define zCtrl_Quotes_DefList (char*)NULL
1475 /*
1476  *  Machine/OS name selection pattern
1477  */
1478 #define apzCtrl_Quotes_DefMachs (const char**)NULL
1479 
1480 /*
1481  *  content selection pattern - do fix if pattern found
1482  */
1483 tSCC zCtrl_Quotes_DefSelect0[] =
1484        "define[ \t]+[A-Z0-9_]+CTRL\\([a-zA-Z][,)]";
1485 
1486 #define    CTRL_QUOTES_DEF_TEST_CT  1
1487 static tTestDesc aCtrl_Quotes_DefTests[] = {
1488   { TT_EGREP,    zCtrl_Quotes_DefSelect0, (regex_t*)NULL }, };
1489 
1490 /*
1491  *  Fix Command Arguments for Ctrl_Quotes_Def
1492  */
1493 static const char* apzCtrl_Quotes_DefPatch[] = {
1494     "char_macro_def",
1495     "CTRL",
1496     (char*)NULL };
1497 
1498 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1499  *
1500  *  Description of Ctrl_Quotes_Use fix
1501  */
1502 tSCC zCtrl_Quotes_UseName[] =
1503      "ctrl_quotes_use";
1504 
1505 /*
1506  *  File name selection pattern
1507  */
1508 #define zCtrl_Quotes_UseList (char*)NULL
1509 /*
1510  *  Machine/OS name selection pattern
1511  */
1512 #define apzCtrl_Quotes_UseMachs (const char**)NULL
1513 
1514 /*
1515  *  content selection pattern - do fix if pattern found
1516  */
1517 tSCC zCtrl_Quotes_UseSelect0[] =
1518        "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+CTRL[ \t]*\\( *[^,']";
1519 
1520 #define    CTRL_QUOTES_USE_TEST_CT  1
1521 static tTestDesc aCtrl_Quotes_UseTests[] = {
1522   { TT_EGREP,    zCtrl_Quotes_UseSelect0, (regex_t*)NULL }, };
1523 
1524 /*
1525  *  Fix Command Arguments for Ctrl_Quotes_Use
1526  */
1527 static const char* apzCtrl_Quotes_UsePatch[] = {
1528     "char_macro_use",
1529     "CTRL",
1530     (char*)NULL };
1531 
1532 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1533  *
1534  *  Description of Cxx_Unready fix
1535  */
1536 tSCC zCxx_UnreadyName[] =
1537      "cxx_unready";
1538 
1539 /*
1540  *  File name selection pattern
1541  */
1542 tSCC zCxx_UnreadyList[] =
1543   "|sys/mman.h|rpc/types.h|";
1544 /*
1545  *  Machine/OS name selection pattern
1546  */
1547 #define apzCxx_UnreadyMachs (const char**)NULL
1548 
1549 /*
1550  *  content selection pattern - do fix if pattern found
1551  */
1552 tSCC zCxx_UnreadySelect0[] =
1553        "[^#]+malloc.*;";
1554 
1555 /*
1556  *  content bypass pattern - skip fix if pattern found
1557  */
1558 tSCC zCxx_UnreadyBypass0[] =
1559        "\"C\"|__BEGIN_DECLS";
1560 
1561 #define    CXX_UNREADY_TEST_CT  2
1562 static tTestDesc aCxx_UnreadyTests[] = {
1563   { TT_NEGREP,   zCxx_UnreadyBypass0, (regex_t*)NULL },
1564   { TT_EGREP,    zCxx_UnreadySelect0, (regex_t*)NULL }, };
1565 
1566 /*
1567  *  Fix Command Arguments for Cxx_Unready
1568  */
1569 static const char* apzCxx_UnreadyPatch[] = {
1570     "wrap",
1571     "#ifdef __cplusplus\n\
1572 extern \"C\" {\n\
1573 #endif\n",
1574     "#ifdef __cplusplus\n\
1575 }\n\
1576 #endif\n",
1577     (char*)NULL };
1578 
1579 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1580  *
1581  *  Description of Dec_Intern_Asm fix
1582  */
1583 tSCC zDec_Intern_AsmName[] =
1584      "dec_intern_asm";
1585 
1586 /*
1587  *  File name selection pattern
1588  */
1589 tSCC zDec_Intern_AsmList[] =
1590   "|c_asm.h|";
1591 /*
1592  *  Machine/OS name selection pattern
1593  */
1594 #define apzDec_Intern_AsmMachs (const char**)NULL
1595 #define DEC_INTERN_ASM_TEST_CT  0
1596 #define aDec_Intern_AsmTests   (tTestDesc*)NULL
1597 
1598 /*
1599  *  Fix Command Arguments for Dec_Intern_Asm
1600  */
1601 static const char* apzDec_Intern_AsmPatch[] = { "sed",
1602     "-e", "/^[ \t]*float[ \t]*fasm/i\\\n\
1603 #ifdef __DECC\n",
1604     "-e", "/^[ \t]*#[ \t]*pragma[ \t]*intrinsic([ \t]*dasm/a\\\n\
1605 #endif\n",
1606     (char*)NULL };
1607 
1608 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1609  *
1610  *  Description of Djgpp_Wchar_H fix
1611  */
1612 tSCC zDjgpp_Wchar_HName[] =
1613      "djgpp_wchar_h";
1614 
1615 /*
1616  *  File name selection pattern
1617  */
1618 #define zDjgpp_Wchar_HList (char*)NULL
1619 /*
1620  *  Machine/OS name selection pattern
1621  */
1622 #define apzDjgpp_Wchar_HMachs (const char**)NULL
1623 
1624 /*
1625  *  content selection pattern - do fix if pattern found
1626  */
1627 tSCC zDjgpp_Wchar_HSelect0[] =
1628        "__DJ_wint_t";
1629 
1630 /*
1631  *  content bypass pattern - skip fix if pattern found
1632  */
1633 tSCC zDjgpp_Wchar_HBypass0[] =
1634        "sys/djtypes.h";
1635 
1636 #define    DJGPP_WCHAR_H_TEST_CT  2
1637 static tTestDesc aDjgpp_Wchar_HTests[] = {
1638   { TT_NEGREP,   zDjgpp_Wchar_HBypass0, (regex_t*)NULL },
1639   { TT_EGREP,    zDjgpp_Wchar_HSelect0, (regex_t*)NULL }, };
1640 
1641 /*
1642  *  Fix Command Arguments for Djgpp_Wchar_H
1643  */
1644 static const char* apzDjgpp_Wchar_HPatch[] = {
1645     "format",
1646     "%0\n\
1647 #include <sys/djtypes.h>",
1648     "#include <stddef.h>",
1649     (char*)NULL };
1650 
1651 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1652  *
1653  *  Description of Ecd_Cursor fix
1654  */
1655 tSCC zEcd_CursorName[] =
1656      "ecd_cursor";
1657 
1658 /*
1659  *  File name selection pattern
1660  */
1661 tSCC zEcd_CursorList[] =
1662   "|sunwindow/win_lock.h|sunwindow/win_cursor.h|";
1663 /*
1664  *  Machine/OS name selection pattern
1665  */
1666 #define apzEcd_CursorMachs (const char**)NULL
1667 
1668 /*
1669  *  content selection pattern - do fix if pattern found
1670  */
1671 tSCC zEcd_CursorSelect0[] =
1672        "ecd\\.cursor";
1673 
1674 #define    ECD_CURSOR_TEST_CT  1
1675 static tTestDesc aEcd_CursorTests[] = {
1676   { TT_EGREP,    zEcd_CursorSelect0, (regex_t*)NULL }, };
1677 
1678 /*
1679  *  Fix Command Arguments for Ecd_Cursor
1680  */
1681 static const char* apzEcd_CursorPatch[] = {
1682     "format",
1683     "ecd_cursor",
1684     (char*)NULL };
1685 
1686 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1687  *
1688  *  Description of Fix_Header_Breakage fix
1689  */
1690 tSCC zFix_Header_BreakageName[] =
1691      "fix_header_breakage";
1692 
1693 /*
1694  *  File name selection pattern
1695  */
1696 tSCC zFix_Header_BreakageList[] =
1697   "|math.h|";
1698 /*
1699  *  Machine/OS name selection pattern
1700  */
1701 tSCC* apzFix_Header_BreakageMachs[] = {
1702         "m88k-motorola-sysv3*",
1703         (const char*)NULL };
1704 
1705 /*
1706  *  content selection pattern - do fix if pattern found
1707  */
1708 tSCC zFix_Header_BreakageSelect0[] =
1709        "extern double floor\\(\\), ceil\\(\\), fmod\\(\\), fabs\\(\\);";
1710 
1711 #define    FIX_HEADER_BREAKAGE_TEST_CT  1
1712 static tTestDesc aFix_Header_BreakageTests[] = {
1713   { TT_EGREP,    zFix_Header_BreakageSelect0, (regex_t*)NULL }, };
1714 
1715 /*
1716  *  Fix Command Arguments for Fix_Header_Breakage
1717  */
1718 static const char* apzFix_Header_BreakagePatch[] = {
1719     "format",
1720     "extern double floor(), ceil(), fmod(), fabs _PARAMS((double));",
1721     (char*)NULL };
1722 
1723 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1724  *
1725  *  Description of Freebsd_Gcc3_Breakage fix
1726  */
1727 tSCC zFreebsd_Gcc3_BreakageName[] =
1728      "freebsd_gcc3_breakage";
1729 
1730 /*
1731  *  File name selection pattern
1732  */
1733 tSCC zFreebsd_Gcc3_BreakageList[] =
1734   "|sys/cdefs.h|";
1735 /*
1736  *  Machine/OS name selection pattern
1737  */
1738 tSCC* apzFreebsd_Gcc3_BreakageMachs[] = {
1739         "*-*-freebsd*",
1740         (const char*)NULL };
1741 
1742 /*
1743  *  content selection pattern - do fix if pattern found
1744  */
1745 tSCC zFreebsd_Gcc3_BreakageSelect0[] =
1746        "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7$";
1747 
1748 /*
1749  *  content bypass pattern - skip fix if pattern found
1750  */
1751 tSCC zFreebsd_Gcc3_BreakageBypass0[] =
1752        "__GNUC__[ \\t]*([>=]=[ \\t]*[3-9]|>[ \\t]*2)";
1753 
1754 #define    FREEBSD_GCC3_BREAKAGE_TEST_CT  2
1755 static tTestDesc aFreebsd_Gcc3_BreakageTests[] = {
1756   { TT_NEGREP,   zFreebsd_Gcc3_BreakageBypass0, (regex_t*)NULL },
1757   { TT_EGREP,    zFreebsd_Gcc3_BreakageSelect0, (regex_t*)NULL }, };
1758 
1759 /*
1760  *  Fix Command Arguments for Freebsd_Gcc3_Breakage
1761  */
1762 static const char* apzFreebsd_Gcc3_BreakagePatch[] = {
1763     "format",
1764     "%0 || __GNUC__ >= 3",
1765     (char*)NULL };
1766 
1767 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1768  *
1769  *  Description of Gnu_Types fix
1770  */
1771 tSCC zGnu_TypesName[] =
1772      "gnu_types";
1773 
1774 /*
1775  *  File name selection pattern
1776  */
1777 tSCC zGnu_TypesList[] =
1778   "|sys/types.h|stdlib.h|sys/stdtypes.h|stddef.h|memory.h|unistd.h|";
1779 /*
1780  *  Machine/OS name selection pattern
1781  */
1782 #define apzGnu_TypesMachs (const char**)NULL
1783 
1784 /*
1785  *  content selection pattern - do fix if pattern found
1786  */
1787 tSCC zGnu_TypesSelect0[] =
1788        "^[ \t]*typedef[ \t]+.*[ \t](ptrdiff|size|wchar)_t;";
1789 
1790 /*
1791  *  content bypass pattern - skip fix if pattern found
1792  */
1793 tSCC zGnu_TypesBypass0[] =
1794        "_GCC_(PTRDIFF|SIZE|WCHAR)_T";
1795 
1796 #define    GNU_TYPES_TEST_CT  2
1797 static tTestDesc aGnu_TypesTests[] = {
1798   { TT_NEGREP,   zGnu_TypesBypass0, (regex_t*)NULL },
1799   { TT_EGREP,    zGnu_TypesSelect0, (regex_t*)NULL }, };
1800 
1801 /*
1802  *  Fix Command Arguments for Gnu_Types
1803  */
1804 static const char* apzGnu_TypesPatch[] = {
1805     "gnu_type",
1806     (char*)NULL };
1807 
1808 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1809  *
1810  *  Description of Hp_Inline fix
1811  */
1812 tSCC zHp_InlineName[] =
1813      "hp_inline";
1814 
1815 /*
1816  *  File name selection pattern
1817  */
1818 tSCC zHp_InlineList[] =
1819   "|sys/spinlock.h|machine/machparam.h|";
1820 /*
1821  *  Machine/OS name selection pattern
1822  */
1823 #define apzHp_InlineMachs (const char**)NULL
1824 
1825 /*
1826  *  content selection pattern - do fix if pattern found
1827  */
1828 tSCC zHp_InlineSelect0[] =
1829        "[ \t]*#[ \t]*include[ \t]+\"\\.\\./machine/";
1830 
1831 #define    HP_INLINE_TEST_CT  1
1832 static tTestDesc aHp_InlineTests[] = {
1833   { TT_EGREP,    zHp_InlineSelect0, (regex_t*)NULL }, };
1834 
1835 /*
1836  *  Fix Command Arguments for Hp_Inline
1837  */
1838 static const char* apzHp_InlinePatch[] = {
1839     "format",
1840     "%1<machine/%2.h>",
1841     "([ \t]*#[ \t]*include[ \t]+)\"\\.\\./machine/([a-z]+)\\.h\"",
1842     (char*)NULL };
1843 
1844 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1845  *
1846  *  Description of Hp_Sysfile fix
1847  */
1848 tSCC zHp_SysfileName[] =
1849      "hp_sysfile";
1850 
1851 /*
1852  *  File name selection pattern
1853  */
1854 tSCC zHp_SysfileList[] =
1855   "|sys/file.h|";
1856 /*
1857  *  Machine/OS name selection pattern
1858  */
1859 #define apzHp_SysfileMachs (const char**)NULL
1860 
1861 /*
1862  *  content selection pattern - do fix if pattern found
1863  */
1864 tSCC zHp_SysfileSelect0[] =
1865        "HPUX_SOURCE";
1866 
1867 #define    HP_SYSFILE_TEST_CT  1
1868 static tTestDesc aHp_SysfileTests[] = {
1869   { TT_EGREP,    zHp_SysfileSelect0, (regex_t*)NULL }, };
1870 
1871 /*
1872  *  Fix Command Arguments for Hp_Sysfile
1873  */
1874 static const char* apzHp_SysfilePatch[] = {
1875     "format",
1876     "(struct file *, ...)",
1877     "\\(\\.\\.\\.\\)",
1878     (char*)NULL };
1879 
1880 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1881  *
1882  *  Description of Hpux10_Cpp_Pow_Inline fix
1883  */
1884 tSCC zHpux10_Cpp_Pow_InlineName[] =
1885      "hpux10_cpp_pow_inline";
1886 
1887 /*
1888  *  File name selection pattern
1889  */
1890 tSCC zHpux10_Cpp_Pow_InlineList[] =
1891   "|fixinc-test-limits.h|math.h|";
1892 /*
1893  *  Machine/OS name selection pattern
1894  */
1895 #define apzHpux10_Cpp_Pow_InlineMachs (const char**)NULL
1896 
1897 /*
1898  *  content selection pattern - do fix if pattern found
1899  */
1900 tSCC zHpux10_Cpp_Pow_InlineSelect0[] =
1901        "^# +ifdef +__cplusplus\n\
1902  +}\n\
1903  +inline +double +pow\\(double +__d,int +__expon\\) +{\n\
1904 [ \t]+return +pow\\(__d,\\(double\\)__expon\\);\n\
1905  +}\n\
1906  +extern +\"C\" +{\n\
1907 #else\n\
1908 # +endif";
1909 
1910 #define    HPUX10_CPP_POW_INLINE_TEST_CT  1
1911 static tTestDesc aHpux10_Cpp_Pow_InlineTests[] = {
1912   { TT_EGREP,    zHpux10_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
1913 
1914 /*
1915  *  Fix Command Arguments for Hpux10_Cpp_Pow_Inline
1916  */
1917 static const char* apzHpux10_Cpp_Pow_InlinePatch[] = {
1918     "format",
1919     "",
1920     (char*)NULL };
1921 
1922 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1923  *
1924  *  Description of Hpux11_Cpp_Pow_Inline fix
1925  */
1926 tSCC zHpux11_Cpp_Pow_InlineName[] =
1927      "hpux11_cpp_pow_inline";
1928 
1929 /*
1930  *  File name selection pattern
1931  */
1932 tSCC zHpux11_Cpp_Pow_InlineList[] =
1933   "|math.h|";
1934 /*
1935  *  Machine/OS name selection pattern
1936  */
1937 #define apzHpux11_Cpp_Pow_InlineMachs (const char**)NULL
1938 
1939 /*
1940  *  content selection pattern - do fix if pattern found
1941  */
1942 tSCC zHpux11_Cpp_Pow_InlineSelect0[] =
1943        " +inline double pow\\(double d,int expon\\) {\n\
1944  +return pow\\(d, \\(double\\)expon\\);\n\
1945  +}\n";
1946 
1947 #define    HPUX11_CPP_POW_INLINE_TEST_CT  1
1948 static tTestDesc aHpux11_Cpp_Pow_InlineTests[] = {
1949   { TT_EGREP,    zHpux11_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
1950 
1951 /*
1952  *  Fix Command Arguments for Hpux11_Cpp_Pow_Inline
1953  */
1954 static const char* apzHpux11_Cpp_Pow_InlinePatch[] = {
1955     "format",
1956     "",
1957     (char*)NULL };
1958 
1959 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1960  *
1961  *  Description of Hpux10_Ctype_Declarations1 fix
1962  */
1963 tSCC zHpux10_Ctype_Declarations1Name[] =
1964      "hpux10_ctype_declarations1";
1965 
1966 /*
1967  *  File name selection pattern
1968  */
1969 tSCC zHpux10_Ctype_Declarations1List[] =
1970   "|ctype.h|";
1971 /*
1972  *  Machine/OS name selection pattern
1973  */
1974 #define apzHpux10_Ctype_Declarations1Machs (const char**)NULL
1975 
1976 /*
1977  *  content selection pattern - do fix if pattern found
1978  */
1979 tSCC zHpux10_Ctype_Declarations1Select0[] =
1980        "^#[ \t]*define _toupper\\(__c\\)[ \t]*__toupper\\(__c\\)";
1981 
1982 /*
1983  *  content bypass pattern - skip fix if pattern found
1984  */
1985 tSCC zHpux10_Ctype_Declarations1Bypass0[] =
1986        "^[ \t]*extern[ \t]*int[ \t]*__tolower[ \t]*\\(";
1987 
1988 #define    HPUX10_CTYPE_DECLARATIONS1_TEST_CT  2
1989 static tTestDesc aHpux10_Ctype_Declarations1Tests[] = {
1990   { TT_NEGREP,   zHpux10_Ctype_Declarations1Bypass0, (regex_t*)NULL },
1991   { TT_EGREP,    zHpux10_Ctype_Declarations1Select0, (regex_t*)NULL }, };
1992 
1993 /*
1994  *  Fix Command Arguments for Hpux10_Ctype_Declarations1
1995  */
1996 static const char* apzHpux10_Ctype_Declarations1Patch[] = {
1997     "format",
1998     "#ifdef _PROTOTYPES\n\
1999 extern int __tolower(int);\n\
2000 extern int __toupper(int);\n\
2001 #else /* NOT _PROTOTYPES */\n\
2002 extern int __tolower();\n\
2003 extern int __toupper();\n\
2004 #endif /* _PROTOTYPES */\n\n\
2005 %0\n",
2006     (char*)NULL };
2007 
2008 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2009  *
2010  *  Description of Hpux10_Ctype_Declarations2 fix
2011  */
2012 tSCC zHpux10_Ctype_Declarations2Name[] =
2013      "hpux10_ctype_declarations2";
2014 
2015 /*
2016  *  File name selection pattern
2017  */
2018 tSCC zHpux10_Ctype_Declarations2List[] =
2019   "|ctype.h|";
2020 /*
2021  *  Machine/OS name selection pattern
2022  */
2023 #define apzHpux10_Ctype_Declarations2Machs (const char**)NULL
2024 
2025 /*
2026  *  content selection pattern - do fix if pattern found
2027  */
2028 tSCC zHpux10_Ctype_Declarations2Select0[] =
2029        "^#  if defined\\(_SB_CTYPE_MACROS\\) && \\!defined\\(__lint\\)";
2030 
2031 /*
2032  *  content bypass pattern - skip fix if pattern found
2033  */
2034 tSCC zHpux10_Ctype_Declarations2Bypass0[] =
2035        "^[ \t]*extern[ \t]*int[ \t]*_isalnum[ \t]*\\(";
2036 
2037 #define    HPUX10_CTYPE_DECLARATIONS2_TEST_CT  2
2038 static tTestDesc aHpux10_Ctype_Declarations2Tests[] = {
2039   { TT_NEGREP,   zHpux10_Ctype_Declarations2Bypass0, (regex_t*)NULL },
2040   { TT_EGREP,    zHpux10_Ctype_Declarations2Select0, (regex_t*)NULL }, };
2041 
2042 /*
2043  *  Fix Command Arguments for Hpux10_Ctype_Declarations2
2044  */
2045 static const char* apzHpux10_Ctype_Declarations2Patch[] = {
2046     "format",
2047     "%0\n\n\
2048 #ifdef _PROTOTYPES\n\
2049      extern int _isalnum(int);\n\
2050      extern int _isalpha(int);\n\
2051      extern int _iscntrl(int);\n\
2052      extern int _isdigit(int);\n\
2053      extern int _isgraph(int);\n\
2054      extern int _islower(int);\n\
2055      extern int _isprint(int);\n\
2056      extern int _ispunct(int);\n\
2057      extern int _isspace(int);\n\
2058      extern int _isupper(int);\n\
2059      extern int _isxdigit(int);\n\
2060 #  else /* not _PROTOTYPES */\n\
2061      extern int _isalnum();\n\
2062      extern int _isalpha();\n\
2063      extern int _iscntrl();\n\
2064      extern int _isdigit();\n\
2065      extern int _isgraph();\n\
2066      extern int _islower();\n\
2067      extern int _isprint();\n\
2068      extern int _ispunct();\n\
2069      extern int _isspace();\n\
2070      extern int _isupper();\n\
2071      extern int _isxdigit();\n\
2072 #endif /* _PROTOTYPES */\n",
2073     (char*)NULL };
2074 
2075 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2076  *
2077  *  Description of Hpux11_Abs fix
2078  */
2079 tSCC zHpux11_AbsName[] =
2080      "hpux11_abs";
2081 
2082 /*
2083  *  File name selection pattern
2084  */
2085 tSCC zHpux11_AbsList[] =
2086   "|stdlib.h|";
2087 /*
2088  *  Machine/OS name selection pattern
2089  */
2090 tSCC* apzHpux11_AbsMachs[] = {
2091         "ia64-hp-hpux11*",
2092         (const char*)NULL };
2093 
2094 /*
2095  *  content selection pattern - do fix if pattern found
2096  */
2097 tSCC zHpux11_AbsSelect0[] =
2098        "ifndef _MATH_INCLUDED";
2099 
2100 #define    HPUX11_ABS_TEST_CT  1
2101 static tTestDesc aHpux11_AbsTests[] = {
2102   { TT_EGREP,    zHpux11_AbsSelect0, (regex_t*)NULL }, };
2103 
2104 /*
2105  *  Fix Command Arguments for Hpux11_Abs
2106  */
2107 static const char* apzHpux11_AbsPatch[] = {
2108     "format",
2109     "if !defined(_MATH_INCLUDED) || defined(__GNUG__)",
2110     (char*)NULL };
2111 
2112 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2113  *
2114  *  Description of Hpux11_Fabsf fix
2115  */
2116 tSCC zHpux11_FabsfName[] =
2117      "hpux11_fabsf";
2118 
2119 /*
2120  *  File name selection pattern
2121  */
2122 tSCC zHpux11_FabsfList[] =
2123   "|math.h|";
2124 /*
2125  *  Machine/OS name selection pattern
2126  */
2127 #define apzHpux11_FabsfMachs (const char**)NULL
2128 
2129 /*
2130  *  content selection pattern - do fix if pattern found
2131  */
2132 tSCC zHpux11_FabsfSelect0[] =
2133        "^[ \t]*#[ \t]*define[ \t]+fabsf\\(.*";
2134 
2135 /*
2136  *  content bypass pattern - skip fix if pattern found
2137  */
2138 tSCC zHpux11_FabsfBypass0[] =
2139        "__cplusplus";
2140 
2141 #define    HPUX11_FABSF_TEST_CT  2
2142 static tTestDesc aHpux11_FabsfTests[] = {
2143   { TT_NEGREP,   zHpux11_FabsfBypass0, (regex_t*)NULL },
2144   { TT_EGREP,    zHpux11_FabsfSelect0, (regex_t*)NULL }, };
2145 
2146 /*
2147  *  Fix Command Arguments for Hpux11_Fabsf
2148  */
2149 static const char* apzHpux11_FabsfPatch[] = {
2150     "format",
2151     "#ifndef __cplusplus\n\
2152 %0\n\
2153 #endif",
2154     (char*)NULL };
2155 
2156 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2157  *
2158  *  Description of Hpux11_Size_T fix
2159  */
2160 tSCC zHpux11_Size_TName[] =
2161      "hpux11_size_t";
2162 
2163 /*
2164  *  File name selection pattern
2165  */
2166 #define zHpux11_Size_TList (char*)NULL
2167 /*
2168  *  Machine/OS name selection pattern
2169  */
2170 tSCC* apzHpux11_Size_TMachs[] = {
2171         "*-hp-hpux11*",
2172         (const char*)NULL };
2173 
2174 /*
2175  *  content selection pattern - do fix if pattern found
2176  */
2177 tSCC zHpux11_Size_TSelect0[] =
2178        "__size_t";
2179 
2180 #define    HPUX11_SIZE_T_TEST_CT  1
2181 static tTestDesc aHpux11_Size_TTests[] = {
2182   { TT_EGREP,    zHpux11_Size_TSelect0, (regex_t*)NULL }, };
2183 
2184 /*
2185  *  Fix Command Arguments for Hpux11_Size_T
2186  */
2187 static const char* apzHpux11_Size_TPatch[] = {
2188     "format",
2189     "_hpux_size_t",
2190     (char*)NULL };
2191 
2192 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2193  *
2194  *  Description of Hpux11_Uint32_C fix
2195  */
2196 tSCC zHpux11_Uint32_CName[] =
2197      "hpux11_uint32_c";
2198 
2199 /*
2200  *  File name selection pattern
2201  */
2202 tSCC zHpux11_Uint32_CList[] =
2203   "|inttypes.h|";
2204 /*
2205  *  Machine/OS name selection pattern
2206  */
2207 #define apzHpux11_Uint32_CMachs (const char**)NULL
2208 
2209 /*
2210  *  content selection pattern - do fix if pattern found
2211  */
2212 tSCC zHpux11_Uint32_CSelect0[] =
2213        "^#define UINT32_C\\(__c\\)[ \t]*__CONCAT__\\(__CONCAT_U__\\(__c\\),l\\)";
2214 
2215 #define    HPUX11_UINT32_C_TEST_CT  1
2216 static tTestDesc aHpux11_Uint32_CTests[] = {
2217   { TT_EGREP,    zHpux11_Uint32_CSelect0, (regex_t*)NULL }, };
2218 
2219 /*
2220  *  Fix Command Arguments for Hpux11_Uint32_C
2221  */
2222 static const char* apzHpux11_Uint32_CPatch[] = {
2223     "format",
2224     "#define UINT32_C(__c) __CONCAT__(__c,ul)",
2225     (char*)NULL };
2226 
2227 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2228  *
2229  *  Description of Hpux11_Vsnprintf fix
2230  */
2231 tSCC zHpux11_VsnprintfName[] =
2232      "hpux11_vsnprintf";
2233 
2234 /*
2235  *  File name selection pattern
2236  */
2237 tSCC zHpux11_VsnprintfList[] =
2238   "|stdio.h|";
2239 /*
2240  *  Machine/OS name selection pattern
2241  */
2242 #define apzHpux11_VsnprintfMachs (const char**)NULL
2243 
2244 /*
2245  *  content selection pattern - do fix if pattern found
2246  */
2247 tSCC zHpux11_VsnprintfSelect0[] =
2248        "(extern int vsnprintf\\(char \\*, _[hpux]*_size_t, const char \\*,) __va__list\\);";
2249 
2250 #define    HPUX11_VSNPRINTF_TEST_CT  1
2251 static tTestDesc aHpux11_VsnprintfTests[] = {
2252   { TT_EGREP,    zHpux11_VsnprintfSelect0, (regex_t*)NULL }, };
2253 
2254 /*
2255  *  Fix Command Arguments for Hpux11_Vsnprintf
2256  */
2257 static const char* apzHpux11_VsnprintfPatch[] = {
2258     "format",
2259     "%1 __va_list);",
2260     (char*)NULL };
2261 
2262 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2263  *
2264  *  Description of Hpux11_Snprintf fix
2265  */
2266 tSCC zHpux11_SnprintfName[] =
2267      "hpux11_snprintf";
2268 
2269 /*
2270  *  File name selection pattern
2271  */
2272 tSCC zHpux11_SnprintfList[] =
2273   "|stdio.h|";
2274 /*
2275  *  Machine/OS name selection pattern
2276  */
2277 #define apzHpux11_SnprintfMachs (const char**)NULL
2278 
2279 /*
2280  *  content selection pattern - do fix if pattern found
2281  */
2282 tSCC zHpux11_SnprintfSelect0[] =
2283        "(extern int snprintf *\\(char *\\*, *(|__|_hpux_)size_t,) *(char *\\*, *\\.\\.\\.\\);)";
2284 
2285 #define    HPUX11_SNPRINTF_TEST_CT  1
2286 static tTestDesc aHpux11_SnprintfTests[] = {
2287   { TT_EGREP,    zHpux11_SnprintfSelect0, (regex_t*)NULL }, };
2288 
2289 /*
2290  *  Fix Command Arguments for Hpux11_Snprintf
2291  */
2292 static const char* apzHpux11_SnprintfPatch[] = {
2293     "format",
2294     "%1 const %3",
2295     (char*)NULL };
2296 
2297 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2298  *
2299  *  Description of Hpux8_Bogus_Inlines fix
2300  */
2301 tSCC zHpux8_Bogus_InlinesName[] =
2302      "hpux8_bogus_inlines";
2303 
2304 /*
2305  *  File name selection pattern
2306  */
2307 tSCC zHpux8_Bogus_InlinesList[] =
2308   "|math.h|";
2309 /*
2310  *  Machine/OS name selection pattern
2311  */
2312 #define apzHpux8_Bogus_InlinesMachs (const char**)NULL
2313 
2314 /*
2315  *  content selection pattern - do fix if pattern found
2316  */
2317 tSCC zHpux8_Bogus_InlinesSelect0[] =
2318        "inline";
2319 
2320 #define    HPUX8_BOGUS_INLINES_TEST_CT  1
2321 static tTestDesc aHpux8_Bogus_InlinesTests[] = {
2322   { TT_EGREP,    zHpux8_Bogus_InlinesSelect0, (regex_t*)NULL }, };
2323 
2324 /*
2325  *  Fix Command Arguments for Hpux8_Bogus_Inlines
2326  */
2327 static const char* apzHpux8_Bogus_InlinesPatch[] = { "sed",
2328     "-e", "s@inline int abs(int [a-z][a-z]*) {.*}@extern \"C\" int abs(int);@",
2329     "-e", "s@inline double abs(double [a-z][a-z]*) {.*}@@",
2330     "-e", "s@inline int sqr(int [a-z][a-z]*) {.*}@@",
2331     "-e", "s@inline double sqr(double [a-z][a-z]*) {.*}@@",
2332     (char*)NULL };
2333 
2334 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2335  *
2336  *  Description of Hpux_Ctype_Macros fix
2337  */
2338 tSCC zHpux_Ctype_MacrosName[] =
2339      "hpux_ctype_macros";
2340 
2341 /*
2342  *  File name selection pattern
2343  */
2344 tSCC zHpux_Ctype_MacrosList[] =
2345   "|ctype.h|";
2346 /*
2347  *  Machine/OS name selection pattern
2348  */
2349 #define apzHpux_Ctype_MacrosMachs (const char**)NULL
2350 
2351 /*
2352  *  content selection pattern - do fix if pattern found
2353  */
2354 tSCC zHpux_Ctype_MacrosSelect0[] =
2355        "((: |\\()__SB_masks \\? )(__SB_masks\\[__(alnum|c)\\] & _IS)";
2356 
2357 #define    HPUX_CTYPE_MACROS_TEST_CT  1
2358 static tTestDesc aHpux_Ctype_MacrosTests[] = {
2359   { TT_EGREP,    zHpux_Ctype_MacrosSelect0, (regex_t*)NULL }, };
2360 
2361 /*
2362  *  Fix Command Arguments for Hpux_Ctype_Macros
2363  */
2364 static const char* apzHpux_Ctype_MacrosPatch[] = {
2365     "format",
2366     "%1(int)%3",
2367     (char*)NULL };
2368 
2369 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2370  *
2371  *  Description of Hpux_Long_Double fix
2372  */
2373 tSCC zHpux_Long_DoubleName[] =
2374      "hpux_long_double";
2375 
2376 /*
2377  *  File name selection pattern
2378  */
2379 tSCC zHpux_Long_DoubleList[] =
2380   "|stdlib.h|";
2381 /*
2382  *  Machine/OS name selection pattern
2383  */
2384 #define apzHpux_Long_DoubleMachs (const char**)NULL
2385 
2386 /*
2387  *  content selection pattern - do fix if pattern found
2388  */
2389 tSCC zHpux_Long_DoubleSelect0[] =
2390        "extern[ \t]long_double[ \t]strtold";
2391 
2392 /*
2393  *  content bypass pattern - skip fix if pattern found
2394  */
2395 tSCC zHpux_Long_DoubleBypass0[] =
2396        "long_double_t";
2397 
2398 #define    HPUX_LONG_DOUBLE_TEST_CT  2
2399 static tTestDesc aHpux_Long_DoubleTests[] = {
2400   { TT_NEGREP,   zHpux_Long_DoubleBypass0, (regex_t*)NULL },
2401   { TT_EGREP,    zHpux_Long_DoubleSelect0, (regex_t*)NULL }, };
2402 
2403 /*
2404  *  Fix Command Arguments for Hpux_Long_Double
2405  */
2406 static const char* apzHpux_Long_DoublePatch[] = { "sed",
2407     "-e", "/^#[ \t]*ifndef _LONG_DOUBLE/,/\\/\\* _LONG_DOUBLE \\*\\//D",
2408     "-e", "s/long_double/long double/g",
2409     (char*)NULL };
2410 
2411 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2412  *
2413  *  Description of Hpux_Maxint fix
2414  */
2415 tSCC zHpux_MaxintName[] =
2416      "hpux_maxint";
2417 
2418 /*
2419  *  File name selection pattern
2420  */
2421 tSCC zHpux_MaxintList[] =
2422   "|sys/param.h|values.h|";
2423 /*
2424  *  Machine/OS name selection pattern
2425  */
2426 #define apzHpux_MaxintMachs (const char**)NULL
2427 
2428 /*
2429  *  content selection pattern - do fix if pattern found
2430  */
2431 tSCC zHpux_MaxintSelect0[] =
2432        "^#[ \t]*define[ \t]+MAXINT[ \t]";
2433 
2434 /*
2435  *  content bypass pattern - skip fix if pattern found
2436  */
2437 tSCC zHpux_MaxintBypass0[] =
2438        "^#[ \t]*ifndef[ \t]+MAXINT";
2439 
2440 /*
2441  *  perform the 'test' shell command - do fix on success
2442  */
2443 tSCC zHpux_MaxintTest0[] =
2444        "-n \"`egrep '#[ \t]*define[ \t]+MAXINT[ \t]' sys/param.h`\"";
2445 
2446 #define    HPUX_MAXINT_TEST_CT  3
2447 static tTestDesc aHpux_MaxintTests[] = {
2448   { TT_TEST,     zHpux_MaxintTest0,   0 /* unused */ },
2449   { TT_NEGREP,   zHpux_MaxintBypass0, (regex_t*)NULL },
2450   { TT_EGREP,    zHpux_MaxintSelect0, (regex_t*)NULL }, };
2451 
2452 /*
2453  *  Fix Command Arguments for Hpux_Maxint
2454  */
2455 static const char* apzHpux_MaxintPatch[] = {
2456     "format",
2457     "#ifndef MAXINT\n\
2458 %0\n\
2459 #endif",
2460     "^#[ \t]*define[ \t]+MAXINT[ \t].*",
2461     (char*)NULL };
2462 
2463 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2464  *
2465  *  Description of Hpux_Systime fix
2466  */
2467 tSCC zHpux_SystimeName[] =
2468      "hpux_systime";
2469 
2470 /*
2471  *  File name selection pattern
2472  */
2473 tSCC zHpux_SystimeList[] =
2474   "|sys/time.h|";
2475 /*
2476  *  Machine/OS name selection pattern
2477  */
2478 #define apzHpux_SystimeMachs (const char**)NULL
2479 
2480 /*
2481  *  content selection pattern - do fix if pattern found
2482  */
2483 tSCC zHpux_SystimeSelect0[] =
2484        "^extern struct sigevent;";
2485 
2486 #define    HPUX_SYSTIME_TEST_CT  1
2487 static tTestDesc aHpux_SystimeTests[] = {
2488   { TT_EGREP,    zHpux_SystimeSelect0, (regex_t*)NULL }, };
2489 
2490 /*
2491  *  Fix Command Arguments for Hpux_Systime
2492  */
2493 static const char* apzHpux_SystimePatch[] = {
2494     "format",
2495     "struct sigevent;",
2496     (char*)NULL };
2497 
2498 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2499  *
2500  *  Description of Int_Abort_Free_And_Exit fix
2501  */
2502 tSCC zInt_Abort_Free_And_ExitName[] =
2503      "int_abort_free_and_exit";
2504 
2505 /*
2506  *  File name selection pattern
2507  */
2508 tSCC zInt_Abort_Free_And_ExitList[] =
2509   "|stdlib.h|";
2510 /*
2511  *  Machine/OS name selection pattern
2512  */
2513 #define apzInt_Abort_Free_And_ExitMachs (const char**)NULL
2514 
2515 /*
2516  *  content selection pattern - do fix if pattern found
2517  */
2518 tSCC zInt_Abort_Free_And_ExitSelect0[] =
2519        "int[ \t]+(abort|free|exit)[ \t]*\\(";
2520 
2521 #define    INT_ABORT_FREE_AND_EXIT_TEST_CT  1
2522 static tTestDesc aInt_Abort_Free_And_ExitTests[] = {
2523   { TT_EGREP,    zInt_Abort_Free_And_ExitSelect0, (regex_t*)NULL }, };
2524 
2525 /*
2526  *  Fix Command Arguments for Int_Abort_Free_And_Exit
2527  */
2528 static const char* apzInt_Abort_Free_And_ExitPatch[] = {
2529     "format",
2530     "void\t%1(",
2531     (char*)NULL };
2532 
2533 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2534  *
2535  *  Description of Io_Quotes_Def fix
2536  */
2537 tSCC zIo_Quotes_DefName[] =
2538      "io_quotes_def";
2539 
2540 /*
2541  *  File name selection pattern
2542  */
2543 #define zIo_Quotes_DefList (char*)NULL
2544 /*
2545  *  Machine/OS name selection pattern
2546  */
2547 #define apzIo_Quotes_DefMachs (const char**)NULL
2548 
2549 /*
2550  *  content selection pattern - do fix if pattern found
2551  */
2552 tSCC zIo_Quotes_DefSelect0[] =
2553        "define[ \t]+[A-Z0-9_]+IO[A-Z]*\\([a-zA-Z][,)]";
2554 
2555 #define    IO_QUOTES_DEF_TEST_CT  1
2556 static tTestDesc aIo_Quotes_DefTests[] = {
2557   { TT_EGREP,    zIo_Quotes_DefSelect0, (regex_t*)NULL }, };
2558 
2559 /*
2560  *  Fix Command Arguments for Io_Quotes_Def
2561  */
2562 static const char* apzIo_Quotes_DefPatch[] = {
2563     "char_macro_def",
2564     "IO",
2565     (char*)NULL };
2566 
2567 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2568  *
2569  *  Description of Io_Quotes_Use fix
2570  */
2571 tSCC zIo_Quotes_UseName[] =
2572      "io_quotes_use";
2573 
2574 /*
2575  *  File name selection pattern
2576  */
2577 #define zIo_Quotes_UseList (char*)NULL
2578 /*
2579  *  Machine/OS name selection pattern
2580  */
2581 #define apzIo_Quotes_UseMachs (const char**)NULL
2582 
2583 /*
2584  *  content selection pattern - do fix if pattern found
2585  */
2586 tSCC zIo_Quotes_UseSelect0[] =
2587        "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+IO[A-Z]*[ \t]*\\( *[^,']";
2588 
2589 #define    IO_QUOTES_USE_TEST_CT  1
2590 static tTestDesc aIo_Quotes_UseTests[] = {
2591   { TT_EGREP,    zIo_Quotes_UseSelect0, (regex_t*)NULL }, };
2592 
2593 /*
2594  *  Fix Command Arguments for Io_Quotes_Use
2595  */
2596 static const char* apzIo_Quotes_UsePatch[] = {
2597     "char_macro_use",
2598     "IO",
2599     (char*)NULL };
2600 
2601 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2602  *
2603  *  Description of Ip_Missing_Semi fix
2604  */
2605 tSCC zIp_Missing_SemiName[] =
2606      "ip_missing_semi";
2607 
2608 /*
2609  *  File name selection pattern
2610  */
2611 tSCC zIp_Missing_SemiList[] =
2612   "|netinet/ip.h|";
2613 /*
2614  *  Machine/OS name selection pattern
2615  */
2616 #define apzIp_Missing_SemiMachs (const char**)NULL
2617 
2618 /*
2619  *  content selection pattern - do fix if pattern found
2620  */
2621 tSCC zIp_Missing_SemiSelect0[] =
2622        "}$";
2623 
2624 #define    IP_MISSING_SEMI_TEST_CT  1
2625 static tTestDesc aIp_Missing_SemiTests[] = {
2626   { TT_EGREP,    zIp_Missing_SemiSelect0, (regex_t*)NULL }, };
2627 
2628 /*
2629  *  Fix Command Arguments for Ip_Missing_Semi
2630  */
2631 static const char* apzIp_Missing_SemiPatch[] = { "sed",
2632     "-e", "/^struct/,/^};/s/}$/};/",
2633     (char*)NULL };
2634 
2635 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2636  *
2637  *  Description of Irix___Restrict fix
2638  */
2639 tSCC zIrix___RestrictName[] =
2640      "irix___restrict";
2641 
2642 /*
2643  *  File name selection pattern
2644  */
2645 tSCC zIrix___RestrictList[] =
2646   "|internal/sgimacros.h|";
2647 /*
2648  *  Machine/OS name selection pattern
2649  */
2650 tSCC* apzIrix___RestrictMachs[] = {
2651         "mips-sgi-irix6.5",
2652         (const char*)NULL };
2653 
2654 /*
2655  *  content selection pattern - do fix if pattern found
2656  */
2657 tSCC zIrix___RestrictSelect0[] =
2658        "(#ifdef __c99\n\
2659 )(#[ \t]*define __restrict restrict)";
2660 
2661 #define    IRIX___RESTRICT_TEST_CT  1
2662 static tTestDesc aIrix___RestrictTests[] = {
2663   { TT_EGREP,    zIrix___RestrictSelect0, (regex_t*)NULL }, };
2664 
2665 /*
2666  *  Fix Command Arguments for Irix___Restrict
2667  */
2668 static const char* apzIrix___RestrictPatch[] = {
2669     "format",
2670     "%1#  ifndef __cplusplus\n\
2671 %2\n\
2672 #  endif",
2673     (char*)NULL };
2674 
2675 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2676  *
2677  *  Description of Irix___Generic1 fix
2678  */
2679 tSCC zIrix___Generic1Name[] =
2680      "irix___generic1";
2681 
2682 /*
2683  *  File name selection pattern
2684  */
2685 tSCC zIrix___Generic1List[] =
2686   "|internal/math_core.h|";
2687 /*
2688  *  Machine/OS name selection pattern
2689  */
2690 tSCC* apzIrix___Generic1Machs[] = {
2691         "mips-sgi-irix6.5",
2692         (const char*)NULL };
2693 
2694 /*
2695  *  content selection pattern - do fix if pattern found
2696  */
2697 tSCC zIrix___Generic1Select0[] =
2698        "#define ([a-z]+)\\(x\\) *__generic.*";
2699 
2700 #define    IRIX___GENERIC1_TEST_CT  1
2701 static tTestDesc aIrix___Generic1Tests[] = {
2702   { TT_EGREP,    zIrix___Generic1Select0, (regex_t*)NULL }, };
2703 
2704 /*
2705  *  Fix Command Arguments for Irix___Generic1
2706  */
2707 static const char* apzIrix___Generic1Patch[] = {
2708     "format",
2709     "extern int %1(double);\n\
2710 extern int %1f(float);\n\
2711 extern int %1l(long double);\n\
2712 #define %1(x) (sizeof(x) == sizeof(double) ? _%1(x) \\\n\
2713                : sizeof(x) == sizeof(float) ? _%1f(x) \\\n\
2714                : _%1l(x))\n",
2715     (char*)NULL };
2716 
2717 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2718  *
2719  *  Description of Irix___Generic2 fix
2720  */
2721 tSCC zIrix___Generic2Name[] =
2722      "irix___generic2";
2723 
2724 /*
2725  *  File name selection pattern
2726  */
2727 tSCC zIrix___Generic2List[] =
2728   "|internal/math_core.h|";
2729 /*
2730  *  Machine/OS name selection pattern
2731  */
2732 tSCC* apzIrix___Generic2Machs[] = {
2733         "mips-sgi-irix6.5",
2734         (const char*)NULL };
2735 
2736 /*
2737  *  content selection pattern - do fix if pattern found
2738  */
2739 tSCC zIrix___Generic2Select0[] =
2740        "#define ([a-z]+)\\(x,y\\) *__generic.*";
2741 
2742 #define    IRIX___GENERIC2_TEST_CT  1
2743 static tTestDesc aIrix___Generic2Tests[] = {
2744   { TT_EGREP,    zIrix___Generic2Select0, (regex_t*)NULL }, };
2745 
2746 /*
2747  *  Fix Command Arguments for Irix___Generic2
2748  */
2749 static const char* apzIrix___Generic2Patch[] = {
2750     "format",
2751     "#define %1(x,y) \\\n\
2752   ((sizeof(x)<=4 && sizeof(y)<=4) ? _%1f(x,y) \\\n\
2753    : (sizeof(x)<=8 && sizeof(y)<=8) ? _%1(x,y) \\\n\
2754    : _%1l(x,y))\n",
2755     (char*)NULL };
2756 
2757 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2758  *
2759  *  Description of Irix_Asm_Apostrophe fix
2760  */
2761 tSCC zIrix_Asm_ApostropheName[] =
2762      "irix_asm_apostrophe";
2763 
2764 /*
2765  *  File name selection pattern
2766  */
2767 tSCC zIrix_Asm_ApostropheList[] =
2768   "|sys/asm.h|";
2769 /*
2770  *  Machine/OS name selection pattern
2771  */
2772 #define apzIrix_Asm_ApostropheMachs (const char**)NULL
2773 
2774 /*
2775  *  content selection pattern - do fix if pattern found
2776  */
2777 tSCC zIrix_Asm_ApostropheSelect0[] =
2778        "^[ \t]*#.*[Ww]e're";
2779 
2780 #define    IRIX_ASM_APOSTROPHE_TEST_CT  1
2781 static tTestDesc aIrix_Asm_ApostropheTests[] = {
2782   { TT_EGREP,    zIrix_Asm_ApostropheSelect0, (regex_t*)NULL }, };
2783 
2784 /*
2785  *  Fix Command Arguments for Irix_Asm_Apostrophe
2786  */
2787 static const char* apzIrix_Asm_ApostrophePatch[] = {
2788     "format",
2789     "%1 are",
2790     "^([ \t]*#.*[Ww]e)'re",
2791     (char*)NULL };
2792 
2793 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2794  *
2795  *  Description of Irix_Limits_Const fix
2796  */
2797 tSCC zIrix_Limits_ConstName[] =
2798      "irix_limits_const";
2799 
2800 /*
2801  *  File name selection pattern
2802  */
2803 tSCC zIrix_Limits_ConstList[] =
2804   "|fixinc-test-limits.h|limits.h|";
2805 /*
2806  *  Machine/OS name selection pattern
2807  */
2808 #define apzIrix_Limits_ConstMachs (const char**)NULL
2809 
2810 /*
2811  *  content selection pattern - do fix if pattern found
2812  */
2813 tSCC zIrix_Limits_ConstSelect0[] =
2814        "^extern const ";
2815 
2816 #define    IRIX_LIMITS_CONST_TEST_CT  1
2817 static tTestDesc aIrix_Limits_ConstTests[] = {
2818   { TT_EGREP,    zIrix_Limits_ConstSelect0, (regex_t*)NULL }, };
2819 
2820 /*
2821  *  Fix Command Arguments for Irix_Limits_Const
2822  */
2823 static const char* apzIrix_Limits_ConstPatch[] = {
2824     "format",
2825     "extern __const ",
2826     (char*)NULL };
2827 
2828 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2829  *
2830  *  Description of Irix_Socklen_T fix
2831  */
2832 tSCC zIrix_Socklen_TName[] =
2833      "irix_socklen_t";
2834 
2835 /*
2836  *  File name selection pattern
2837  */
2838 tSCC zIrix_Socklen_TList[] =
2839   "|sys/socket.h|";
2840 /*
2841  *  Machine/OS name selection pattern
2842  */
2843 tSCC* apzIrix_Socklen_TMachs[] = {
2844         "mips-sgi-irix6.5",
2845         (const char*)NULL };
2846 
2847 /*
2848  *  content selection pattern - do fix if pattern found
2849  */
2850 tSCC zIrix_Socklen_TSelect0[] =
2851        "(#define _SOCKLEN_T\n\
2852 )(typedef u_int32_t socklen_t;)";
2853 
2854 #define    IRIX_SOCKLEN_T_TEST_CT  1
2855 static tTestDesc aIrix_Socklen_TTests[] = {
2856   { TT_EGREP,    zIrix_Socklen_TSelect0, (regex_t*)NULL }, };
2857 
2858 /*
2859  *  Fix Command Arguments for Irix_Socklen_T
2860  */
2861 static const char* apzIrix_Socklen_TPatch[] = {
2862     "format",
2863     "%1#if _NO_XOPEN4 && _NO_XOPEN5\n\
2864 typedef int socklen_t;\n\
2865 #else\n\
2866 %2\n\
2867 #endif /* _NO_XOPEN4 && _NO_XOPEN5 */",
2868     (char*)NULL };
2869 
2870 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2871  *
2872  *  Description of Irix_Stdio_Va_List fix
2873  */
2874 tSCC zIrix_Stdio_Va_ListName[] =
2875      "irix_stdio_va_list";
2876 
2877 /*
2878  *  File name selection pattern
2879  */
2880 tSCC zIrix_Stdio_Va_ListList[] =
2881   "|stdio.h|internal/stdio_core.h|";
2882 /*
2883  *  Machine/OS name selection pattern
2884  */
2885 #define apzIrix_Stdio_Va_ListMachs (const char**)NULL
2886 
2887 /*
2888  *  content selection pattern - do fix if pattern found
2889  */
2890 tSCC zIrix_Stdio_Va_ListSelect0[] =
2891        "/\\* va_list \\*/ char \\*";
2892 
2893 #define    IRIX_STDIO_VA_LIST_TEST_CT  1
2894 static tTestDesc aIrix_Stdio_Va_ListTests[] = {
2895   { TT_EGREP,    zIrix_Stdio_Va_ListSelect0, (regex_t*)NULL }, };
2896 
2897 /*
2898  *  Fix Command Arguments for Irix_Stdio_Va_List
2899  */
2900 static const char* apzIrix_Stdio_Va_ListPatch[] = {
2901     "format",
2902     "__gnuc_va_list",
2903     (char*)NULL };
2904 
2905 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2906  *
2907  *  Description of Irix_Wcsftime fix
2908  */
2909 tSCC zIrix_WcsftimeName[] =
2910      "irix_wcsftime";
2911 
2912 /*
2913  *  File name selection pattern
2914  */
2915 tSCC zIrix_WcsftimeList[] =
2916   "|internal/wchar_core.h|";
2917 /*
2918  *  Machine/OS name selection pattern
2919  */
2920 tSCC* apzIrix_WcsftimeMachs[] = {
2921         "mips-sgi-irix6.5",
2922         (const char*)NULL };
2923 
2924 /*
2925  *  content selection pattern - do fix if pattern found
2926  */
2927 tSCC zIrix_WcsftimeSelect0[] =
2928        "#if _NO_XOPEN5\n\
2929 (extern size_t[ \t]+wcsftime.*const char *.*)";
2930 
2931 #define    IRIX_WCSFTIME_TEST_CT  1
2932 static tTestDesc aIrix_WcsftimeTests[] = {
2933   { TT_EGREP,    zIrix_WcsftimeSelect0, (regex_t*)NULL }, };
2934 
2935 /*
2936  *  Fix Command Arguments for Irix_Wcsftime
2937  */
2938 static const char* apzIrix_WcsftimePatch[] = {
2939     "format",
2940     "#if _NO_XOPEN5 && !defined(__c99)\n\
2941 %1",
2942     (char*)NULL };
2943 
2944 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2945  *
2946  *  Description of Isc_Fmod fix
2947  */
2948 tSCC zIsc_FmodName[] =
2949      "isc_fmod";
2950 
2951 /*
2952  *  File name selection pattern
2953  */
2954 tSCC zIsc_FmodList[] =
2955   "|math.h|";
2956 /*
2957  *  Machine/OS name selection pattern
2958  */
2959 #define apzIsc_FmodMachs (const char**)NULL
2960 
2961 /*
2962  *  content selection pattern - do fix if pattern found
2963  */
2964 tSCC zIsc_FmodSelect0[] =
2965        "fmod\\(double\\)";
2966 
2967 #define    ISC_FMOD_TEST_CT  1
2968 static tTestDesc aIsc_FmodTests[] = {
2969   { TT_EGREP,    zIsc_FmodSelect0, (regex_t*)NULL }, };
2970 
2971 /*
2972  *  Fix Command Arguments for Isc_Fmod
2973  */
2974 static const char* apzIsc_FmodPatch[] = {
2975     "format",
2976     "fmod(double, double)",
2977     (char*)NULL };
2978 
2979 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2980  *
2981  *  Description of Isc_Omits_With_Stdc fix
2982  */
2983 tSCC zIsc_Omits_With_StdcName[] =
2984      "isc_omits_with_stdc";
2985 
2986 /*
2987  *  File name selection pattern
2988  */
2989 tSCC zIsc_Omits_With_StdcList[] =
2990   "|stdio.h|math.h|ctype.h|sys/limits.h|sys/fcntl.h|sys/dirent.h|";
2991 /*
2992  *  Machine/OS name selection pattern
2993  */
2994 #define apzIsc_Omits_With_StdcMachs (const char**)NULL
2995 
2996 /*
2997  *  content selection pattern - do fix if pattern found
2998  */
2999 tSCC zIsc_Omits_With_StdcSelect0[] =
3000        "!defined\\(__STDC__\\) && !defined\\(_POSIX_SOURCE\\)";
3001 
3002 #define    ISC_OMITS_WITH_STDC_TEST_CT  1
3003 static tTestDesc aIsc_Omits_With_StdcTests[] = {
3004   { TT_EGREP,    zIsc_Omits_With_StdcSelect0, (regex_t*)NULL }, };
3005 
3006 /*
3007  *  Fix Command Arguments for Isc_Omits_With_Stdc
3008  */
3009 static const char* apzIsc_Omits_With_StdcPatch[] = {
3010     "format",
3011     "!defined(_POSIX_SOURCE)",
3012     (char*)NULL };
3013 
3014 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3015  *
3016  *  Description of Kandr_Concat fix
3017  */
3018 tSCC zKandr_ConcatName[] =
3019      "kandr_concat";
3020 
3021 /*
3022  *  File name selection pattern
3023  */
3024 tSCC zKandr_ConcatList[] =
3025   "|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|";
3026 /*
3027  *  Machine/OS name selection pattern
3028  */
3029 #define apzKandr_ConcatMachs (const char**)NULL
3030 
3031 /*
3032  *  content selection pattern - do fix if pattern found
3033  */
3034 tSCC zKandr_ConcatSelect0[] =
3035        "/\\*\\*/";
3036 
3037 #define    KANDR_CONCAT_TEST_CT  1
3038 static tTestDesc aKandr_ConcatTests[] = {
3039   { TT_EGREP,    zKandr_ConcatSelect0, (regex_t*)NULL }, };
3040 
3041 /*
3042  *  Fix Command Arguments for Kandr_Concat
3043  */
3044 static const char* apzKandr_ConcatPatch[] = {
3045     "format",
3046     "##",
3047     (char*)NULL };
3048 
3049 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3050  *
3051  *  Description of Libc1_G_Va_List fix
3052  */
3053 tSCC zLibc1_G_Va_ListName[] =
3054      "libc1_G_va_list";
3055 
3056 /*
3057  *  File name selection pattern
3058  */
3059 tSCC zLibc1_G_Va_ListList[] =
3060   "|_G_config.h|";
3061 /*
3062  *  Machine/OS name selection pattern
3063  */
3064 tSCC* apzLibc1_G_Va_ListMachs[] = {
3065         "*-*-linux*libc1",
3066         (const char*)NULL };
3067 
3068 /*
3069  *  content selection pattern - do fix if pattern found
3070  */
3071 tSCC zLibc1_G_Va_ListSelect0[] =
3072        "typedef void \\* _G_va_list;";
3073 
3074 #define    LIBC1_G_VA_LIST_TEST_CT  1
3075 static tTestDesc aLibc1_G_Va_ListTests[] = {
3076   { TT_EGREP,    zLibc1_G_Va_ListSelect0, (regex_t*)NULL }, };
3077 
3078 /*
3079  *  Fix Command Arguments for Libc1_G_Va_List
3080  */
3081 static const char* apzLibc1_G_Va_ListPatch[] = {
3082     "format",
3083     "typedef __builtin_va_list _G_va_list;",
3084     (char*)NULL };
3085 
3086 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3087  *
3088  *  Description of Libc1_Ifdefd_Memx fix
3089  */
3090 tSCC zLibc1_Ifdefd_MemxName[] =
3091      "libc1_ifdefd_memx";
3092 
3093 /*
3094  *  File name selection pattern
3095  */
3096 tSCC zLibc1_Ifdefd_MemxList[] =
3097   "|testing.h|string.h|";
3098 /*
3099  *  Machine/OS name selection pattern
3100  */
3101 #define apzLibc1_Ifdefd_MemxMachs (const char**)NULL
3102 
3103 /*
3104  *  content selection pattern - do fix if pattern found
3105  */
3106 tSCC zLibc1_Ifdefd_MemxSelect0[] =
3107        "' is a built-in function for gcc 2\\.x\\. \\*/";
3108 
3109 /*
3110  *  content bypass pattern - skip fix if pattern found
3111  */
3112 tSCC zLibc1_Ifdefd_MemxBypass0[] =
3113        "__cplusplus";
3114 
3115 #define    LIBC1_IFDEFD_MEMX_TEST_CT  2
3116 static tTestDesc aLibc1_Ifdefd_MemxTests[] = {
3117   { TT_NEGREP,   zLibc1_Ifdefd_MemxBypass0, (regex_t*)NULL },
3118   { TT_EGREP,    zLibc1_Ifdefd_MemxSelect0, (regex_t*)NULL }, };
3119 
3120 /*
3121  *  Fix Command Arguments for Libc1_Ifdefd_Memx
3122  */
3123 static const char* apzLibc1_Ifdefd_MemxPatch[] = {
3124     "format",
3125     "%1",
3126     "/\\* `mem...' is a built-in function for gcc 2\\.x\\. \\*/\n\
3127 #if defined\\(__STDC__\\) && __GNUC__ < 2\n\
3128 (/\\* .* \\*/\n\
3129 extern [a-z_]+ mem.*(\n\
3130 [^#].*)*;)\n\
3131 #endif",
3132     (char*)NULL };
3133 
3134 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3135  *
3136  *  Description of Limits_Ifndefs fix
3137  */
3138 tSCC zLimits_IfndefsName[] =
3139      "limits_ifndefs";
3140 
3141 /*
3142  *  File name selection pattern
3143  */
3144 tSCC zLimits_IfndefsList[] =
3145   "|sys/limits.h|limits.h|";
3146 /*
3147  *  Machine/OS name selection pattern
3148  */
3149 #define apzLimits_IfndefsMachs (const char**)NULL
3150 
3151 /*
3152  *  content bypass pattern - skip fix if pattern found
3153  */
3154 tSCC zLimits_IfndefsBypass0[] =
3155        "ifndef[ \t]+FLT_(MIN|MAX)";
3156 
3157 #define    LIMITS_IFNDEFS_TEST_CT  1
3158 static tTestDesc aLimits_IfndefsTests[] = {
3159   { TT_NEGREP,   zLimits_IfndefsBypass0, (regex_t*)NULL }, };
3160 
3161 /*
3162  *  Fix Command Arguments for Limits_Ifndefs
3163  */
3164 static const char* apzLimits_IfndefsPatch[] = {
3165     "format",
3166     "#ifndef %1\n\
3167 %0\n\
3168 #endif",
3169     "^[ \t]*#[ \t]*define[ \t]+((FLT|DBL)_(MIN|MAX|DIG))[ \t].*",
3170     (char*)NULL };
3171 
3172 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3173  *
3174  *  Description of Lynx_Void_Int fix
3175  */
3176 tSCC zLynx_Void_IntName[] =
3177      "lynx_void_int";
3178 
3179 /*
3180  *  File name selection pattern
3181  */
3182 tSCC zLynx_Void_IntList[] =
3183   "|curses.h|";
3184 /*
3185  *  Machine/OS name selection pattern
3186  */
3187 #define apzLynx_Void_IntMachs (const char**)NULL
3188 
3189 /*
3190  *  content selection pattern - do fix if pattern found
3191  */
3192 tSCC zLynx_Void_IntSelect0[] =
3193        "#[ \t]*define[ \t]+void[ \t]+int[ \t]*";
3194 
3195 #define    LYNX_VOID_INT_TEST_CT  1
3196 static tTestDesc aLynx_Void_IntTests[] = {
3197   { TT_EGREP,    zLynx_Void_IntSelect0, (regex_t*)NULL }, };
3198 
3199 /*
3200  *  Fix Command Arguments for Lynx_Void_Int
3201  */
3202 static const char* apzLynx_Void_IntPatch[] = {
3203     "format",
3204     "",
3205     (char*)NULL };
3206 
3207 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3208  *
3209  *  Description of Lynxos_Fcntl_Proto fix
3210  */
3211 tSCC zLynxos_Fcntl_ProtoName[] =
3212      "lynxos_fcntl_proto";
3213 
3214 /*
3215  *  File name selection pattern
3216  */
3217 tSCC zLynxos_Fcntl_ProtoList[] =
3218   "|fcntl.h|";
3219 /*
3220  *  Machine/OS name selection pattern
3221  */
3222 #define apzLynxos_Fcntl_ProtoMachs (const char**)NULL
3223 
3224 /*
3225  *  content selection pattern - do fix if pattern found
3226  */
3227 tSCC zLynxos_Fcntl_ProtoSelect0[] =
3228        "fcntl[ \t]*\\(int, int, int\\)";
3229 
3230 #define    LYNXOS_FCNTL_PROTO_TEST_CT  1
3231 static tTestDesc aLynxos_Fcntl_ProtoTests[] = {
3232   { TT_EGREP,    zLynxos_Fcntl_ProtoSelect0, (regex_t*)NULL }, };
3233 
3234 /*
3235  *  Fix Command Arguments for Lynxos_Fcntl_Proto
3236  */
3237 static const char* apzLynxos_Fcntl_ProtoPatch[] = {
3238     "format",
3239     "%1...)",
3240     "(fcntl[ \t]*\\(int, int, )int\\)",
3241     (char*)NULL };
3242 
3243 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3244  *
3245  *  Description of M88k_Bad_Hypot_Opt fix
3246  */
3247 tSCC zM88k_Bad_Hypot_OptName[] =
3248      "m88k_bad_hypot_opt";
3249 
3250 /*
3251  *  File name selection pattern
3252  */
3253 tSCC zM88k_Bad_Hypot_OptList[] =
3254   "|math.h|";
3255 /*
3256  *  Machine/OS name selection pattern
3257  */
3258 tSCC* apzM88k_Bad_Hypot_OptMachs[] = {
3259         "m88k-motorola-sysv3*",
3260         (const char*)NULL };
3261 
3262 /*
3263  *  content selection pattern - do fix if pattern found
3264  */
3265 tSCC zM88k_Bad_Hypot_OptSelect0[] =
3266        "^extern double hypot\\(\\);\n";
3267 
3268 #define    M88K_BAD_HYPOT_OPT_TEST_CT  1
3269 static tTestDesc aM88k_Bad_Hypot_OptTests[] = {
3270   { TT_EGREP,    zM88k_Bad_Hypot_OptSelect0, (regex_t*)NULL }, };
3271 
3272 /*
3273  *  Fix Command Arguments for M88k_Bad_Hypot_Opt
3274  */
3275 static const char* apzM88k_Bad_Hypot_OptPatch[] = {
3276     "format",
3277     "%0/* Workaround a stupid Motorola optimization if one\n\
3278    of x or y is 0.0 and the other is negative!  */\n\
3279 #ifdef __STDC__\n\
3280 static __inline__ double fake_hypot (double x, double y)\n\
3281 #else\n\
3282 static __inline__ double fake_hypot (x, y)\n\
3283 \tdouble x, y;\n\
3284 #endif\n\
3285 {\n\
3286 \treturn fabs (hypot (x, y));\n\
3287 }\n\
3288 #define hypot\tfake_hypot\n",
3289     (char*)NULL };
3290 
3291 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3292  *
3293  *  Description of M88k_Bad_S_If fix
3294  */
3295 tSCC zM88k_Bad_S_IfName[] =
3296      "m88k_bad_s_if";
3297 
3298 /*
3299  *  File name selection pattern
3300  */
3301 tSCC zM88k_Bad_S_IfList[] =
3302   "|sys/stat.h|";
3303 /*
3304  *  Machine/OS name selection pattern
3305  */
3306 tSCC* apzM88k_Bad_S_IfMachs[] = {
3307         "m88k-*-sysv3*",
3308         (const char*)NULL };
3309 
3310 /*
3311  *  content selection pattern - do fix if pattern found
3312  */
3313 tSCC zM88k_Bad_S_IfSelect0[] =
3314        "#define[ \t]+S_IS[A-Z]+\\(m\\)[ \t]+\\(m[ \t]*&";
3315 
3316 #define    M88K_BAD_S_IF_TEST_CT  1
3317 static tTestDesc aM88k_Bad_S_IfTests[] = {
3318   { TT_EGREP,    zM88k_Bad_S_IfSelect0, (regex_t*)NULL }, };
3319 
3320 /*
3321  *  Fix Command Arguments for M88k_Bad_S_If
3322  */
3323 static const char* apzM88k_Bad_S_IfPatch[] = {
3324     "format",
3325     "#define %1(m) (((m) & S_IFMT) == %2)",
3326     "#define[ \t]+(S_IS[A-Z]+)\\(m\\)[ \t]+\\(m[ \t]*&[ \t]*(S_IF[A-Z][A-Z][A-Z]+|0[0-9]+)[ \t]*\\)",
3327     (char*)NULL };
3328 
3329 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3330  *
3331  *  Description of M88k_Multi_Incl fix
3332  */
3333 tSCC zM88k_Multi_InclName[] =
3334      "m88k_multi_incl";
3335 
3336 /*
3337  *  File name selection pattern
3338  */
3339 tSCC zM88k_Multi_InclList[] =
3340   "|time.h|";
3341 /*
3342  *  Machine/OS name selection pattern
3343  */
3344 tSCC* apzM88k_Multi_InclMachs[] = {
3345         "m88k-tektronix-sysv3*",
3346         (const char*)NULL };
3347 
3348 /*
3349  *  content bypass pattern - skip fix if pattern found
3350  */
3351 tSCC zM88k_Multi_InclBypass0[] =
3352        "#ifndef";
3353 
3354 #define    M88K_MULTI_INCL_TEST_CT  1
3355 static tTestDesc aM88k_Multi_InclTests[] = {
3356   { TT_NEGREP,   zM88k_Multi_InclBypass0, (regex_t*)NULL }, };
3357 
3358 /*
3359  *  Fix Command Arguments for M88k_Multi_Incl
3360  */
3361 static const char* apzM88k_Multi_InclPatch[] = {
3362     "wrap",
3363     (char*)NULL };
3364 
3365 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3366  *
3367  *  Description of Machine_Ansi_H_Va_List fix
3368  */
3369 tSCC zMachine_Ansi_H_Va_ListName[] =
3370      "machine_ansi_h_va_list";
3371 
3372 /*
3373  *  File name selection pattern
3374  */
3375 #define zMachine_Ansi_H_Va_ListList (char*)NULL
3376 /*
3377  *  Machine/OS name selection pattern
3378  */
3379 #define apzMachine_Ansi_H_Va_ListMachs (const char**)NULL
3380 
3381 /*
3382  *  content selection pattern - do fix if pattern found
3383  */
3384 tSCC zMachine_Ansi_H_Va_ListSelect0[] =
3385        "define[ \t]+_BSD_VA_LIST_[ \t]";
3386 
3387 /*
3388  *  content bypass pattern - skip fix if pattern found
3389  */
3390 tSCC zMachine_Ansi_H_Va_ListBypass0[] =
3391        "__builtin_va_list";
3392 
3393 #define    MACHINE_ANSI_H_VA_LIST_TEST_CT  2
3394 static tTestDesc aMachine_Ansi_H_Va_ListTests[] = {
3395   { TT_NEGREP,   zMachine_Ansi_H_Va_ListBypass0, (regex_t*)NULL },
3396   { TT_EGREP,    zMachine_Ansi_H_Va_ListSelect0, (regex_t*)NULL }, };
3397 
3398 /*
3399  *  Fix Command Arguments for Machine_Ansi_H_Va_List
3400  */
3401 static const char* apzMachine_Ansi_H_Va_ListPatch[] = {
3402     "format",
3403     "%1__builtin_va_list",
3404     "(define[ \t]+_BSD_VA_LIST_[ \t]+).*",
3405     (char*)NULL };
3406 
3407 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3408  *
3409  *  Description of Machine_Name fix
3410  */
3411 tSCC zMachine_NameName[] =
3412      "machine_name";
3413 
3414 /*
3415  *  File name selection pattern
3416  */
3417 #define zMachine_NameList (char*)NULL
3418 /*
3419  *  Machine/OS name selection pattern
3420  */
3421 #define apzMachine_NameMachs (const char**)NULL
3422 
3423 /*
3424  *  perform the C function call test
3425  */
3426 tSCC zMachine_NameFTst0[] = "machine_name";
3427 
3428 #define    MACHINE_NAME_TEST_CT  1
3429 static tTestDesc aMachine_NameTests[] = {
3430   { TT_FUNCTION, zMachine_NameFTst0,   0 /* unused */ }, };
3431 
3432 /*
3433  *  Fix Command Arguments for Machine_Name
3434  */
3435 static const char* apzMachine_NamePatch[] = {
3436     "machine_name",
3437     (char*)NULL };
3438 
3439 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3440  *
3441  *  Description of Math_Exception fix
3442  */
3443 tSCC zMath_ExceptionName[] =
3444      "math_exception";
3445 
3446 /*
3447  *  File name selection pattern
3448  */
3449 tSCC zMath_ExceptionList[] =
3450   "|math.h|";
3451 /*
3452  *  Machine/OS name selection pattern
3453  */
3454 #define apzMath_ExceptionMachs (const char**)NULL
3455 
3456 /*
3457  *  content selection pattern - do fix if pattern found
3458  */
3459 tSCC zMath_ExceptionSelect0[] =
3460        "struct exception";
3461 
3462 /*
3463  *  content bypass pattern - skip fix if pattern found
3464  */
3465 tSCC zMath_ExceptionBypass0[] =
3466        "We have a problem when using C\\+\\+";
3467 
3468 #define    MATH_EXCEPTION_TEST_CT  2
3469 static tTestDesc aMath_ExceptionTests[] = {
3470   { TT_NEGREP,   zMath_ExceptionBypass0, (regex_t*)NULL },
3471   { TT_EGREP,    zMath_ExceptionSelect0, (regex_t*)NULL }, };
3472 
3473 /*
3474  *  Fix Command Arguments for Math_Exception
3475  */
3476 static const char* apzMath_ExceptionPatch[] = {
3477     "wrap",
3478     "#ifdef __cplusplus\n\
3479 #define exception __math_exception\n\
3480 #endif\n",
3481     "#ifdef __cplusplus\n\
3482 #undef exception\n\
3483 #endif\n",
3484     (char*)NULL };
3485 
3486 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3487  *
3488  *  Description of Math_Huge_Val_From_Dbl_Max fix
3489  */
3490 tSCC zMath_Huge_Val_From_Dbl_MaxName[] =
3491      "math_huge_val_from_dbl_max";
3492 
3493 /*
3494  *  File name selection pattern
3495  */
3496 tSCC zMath_Huge_Val_From_Dbl_MaxList[] =
3497   "|math.h|";
3498 /*
3499  *  Machine/OS name selection pattern
3500  */
3501 #define apzMath_Huge_Val_From_Dbl_MaxMachs (const char**)NULL
3502 
3503 /*
3504  *  content selection pattern - do fix if pattern found
3505  */
3506 tSCC zMath_Huge_Val_From_Dbl_MaxSelect0[] =
3507        "define[ \t]+HUGE_VAL[ \t]+DBL_MAX";
3508 
3509 /*
3510  *  content bypass pattern - skip fix if pattern found
3511  */
3512 tSCC zMath_Huge_Val_From_Dbl_MaxBypass0[] =
3513        "define[ \t]+DBL_MAX";
3514 
3515 #define    MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT  2
3516 static tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = {
3517   { TT_NEGREP,   zMath_Huge_Val_From_Dbl_MaxBypass0, (regex_t*)NULL },
3518   { TT_EGREP,    zMath_Huge_Val_From_Dbl_MaxSelect0, (regex_t*)NULL }, };
3519 
3520 /*
3521  *  Fix Command Arguments for Math_Huge_Val_From_Dbl_Max
3522  */
3523 static const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c",
3524     "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h | sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n\
3525 \tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\
3526 \tthen sed -e '/define[ \t]*HUGE_VAL[ \t]*DBL_MAX/s@DBL_MAX@'\"$dbl_max_def@\"\n\
3527 \telse cat\n\
3528 \tfi",
3529     (char*)NULL };
3530 
3531 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3532  *
3533  *  Description of Math_Huge_Val_Ifndef fix
3534  */
3535 tSCC zMath_Huge_Val_IfndefName[] =
3536      "math_huge_val_ifndef";
3537 
3538 /*
3539  *  File name selection pattern
3540  */
3541 tSCC zMath_Huge_Val_IfndefList[] =
3542   "|math.h|math/math.h|";
3543 /*
3544  *  Machine/OS name selection pattern
3545  */
3546 #define apzMath_Huge_Val_IfndefMachs (const char**)NULL
3547 
3548 /*
3549  *  content selection pattern - do fix if pattern found
3550  */
3551 tSCC zMath_Huge_Val_IfndefSelect0[] =
3552        "define[ \t]+HUGE_VAL";
3553 
3554 #define    MATH_HUGE_VAL_IFNDEF_TEST_CT  1
3555 static tTestDesc aMath_Huge_Val_IfndefTests[] = {
3556   { TT_EGREP,    zMath_Huge_Val_IfndefSelect0, (regex_t*)NULL }, };
3557 
3558 /*
3559  *  Fix Command Arguments for Math_Huge_Val_Ifndef
3560  */
3561 static const char* apzMath_Huge_Val_IfndefPatch[] = {
3562     "format",
3563     "#ifndef HUGE_VAL\n\
3564 %0\n\
3565 #endif",
3566     "^[ \t]*#[ \t]*define[ \t]+HUGE_VAL[ \t].*",
3567     (char*)NULL };
3568 
3569 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3570  *
3571  *  Description of Nested_Auth_Des fix
3572  */
3573 tSCC zNested_Auth_DesName[] =
3574      "nested_auth_des";
3575 
3576 /*
3577  *  File name selection pattern
3578  */
3579 tSCC zNested_Auth_DesList[] =
3580   "|rpc/rpc.h|";
3581 /*
3582  *  Machine/OS name selection pattern
3583  */
3584 #define apzNested_Auth_DesMachs (const char**)NULL
3585 
3586 /*
3587  *  content selection pattern - do fix if pattern found
3588  */
3589 tSCC zNested_Auth_DesSelect0[] =
3590        "(/\\*.*rpc/auth_des\\.h>.*)/\\*";
3591 
3592 #define    NESTED_AUTH_DES_TEST_CT  1
3593 static tTestDesc aNested_Auth_DesTests[] = {
3594   { TT_EGREP,    zNested_Auth_DesSelect0, (regex_t*)NULL }, };
3595 
3596 /*
3597  *  Fix Command Arguments for Nested_Auth_Des
3598  */
3599 static const char* apzNested_Auth_DesPatch[] = {
3600     "format",
3601     "%1*/ /*",
3602     (char*)NULL };
3603 
3604 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3605  *
3606  *  Description of Nested_Motorola fix
3607  */
3608 tSCC zNested_MotorolaName[] =
3609      "nested_motorola";
3610 
3611 /*
3612  *  File name selection pattern
3613  */
3614 tSCC zNested_MotorolaList[] =
3615   "|sys/limits.h|limits.h|";
3616 /*
3617  *  Machine/OS name selection pattern
3618  */
3619 tSCC* apzNested_MotorolaMachs[] = {
3620         "m68k-motorola-sysv*",
3621         (const char*)NULL };
3622 
3623 /*
3624  *  content selection pattern - do fix if pattern found
3625  */
3626 tSCC zNested_MotorolaSelect0[] =
3627        "max # bytes atomic in write|error value returned by Math lib";
3628 
3629 #define    NESTED_MOTOROLA_TEST_CT  1
3630 static tTestDesc aNested_MotorolaTests[] = {
3631   { TT_EGREP,    zNested_MotorolaSelect0, (regex_t*)NULL }, };
3632 
3633 /*
3634  *  Fix Command Arguments for Nested_Motorola
3635  */
3636 static const char* apzNested_MotorolaPatch[] = { "sed",
3637     "-e", "s@^\\(#undef[ \t][ \t]*PIPE_BUF[ \t]*/\\* max # bytes atomic in write to a\\)$@\\1 */@",
3638     "-e", "s@\\(/\\*#define\tHUGE_VAL\t3.[0-9e+]* \\)\\(/\\*error value returned by Math lib\\*/\\)$@\\1*/ \\2@",
3639     (char*)NULL };
3640 
3641 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3642  *
3643  *  Description of Nested_Sys_Limits fix
3644  */
3645 tSCC zNested_Sys_LimitsName[] =
3646      "nested_sys_limits";
3647 
3648 /*
3649  *  File name selection pattern
3650  */
3651 tSCC zNested_Sys_LimitsList[] =
3652   "|sys/limits.h|";
3653 /*
3654  *  Machine/OS name selection pattern
3655  */
3656 #define apzNested_Sys_LimitsMachs (const char**)NULL
3657 
3658 /*
3659  *  content selection pattern - do fix if pattern found
3660  */
3661 tSCC zNested_Sys_LimitsSelect0[] =
3662        "CHILD_MAX";
3663 
3664 #define    NESTED_SYS_LIMITS_TEST_CT  1
3665 static tTestDesc aNested_Sys_LimitsTests[] = {
3666   { TT_EGREP,    zNested_Sys_LimitsSelect0, (regex_t*)NULL }, };
3667 
3668 /*
3669  *  Fix Command Arguments for Nested_Sys_Limits
3670  */
3671 static const char* apzNested_Sys_LimitsPatch[] = { "sed",
3672     "-e", "/CHILD_MAX/s,/\\* Max, Max,",
3673     "-e", "/OPEN_MAX/s,/\\* Max, Max,",
3674     (char*)NULL };
3675 
3676 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3677  *
3678  *  Description of News_Os_Recursion fix
3679  */
3680 tSCC zNews_Os_RecursionName[] =
3681      "news_os_recursion";
3682 
3683 /*
3684  *  File name selection pattern
3685  */
3686 tSCC zNews_Os_RecursionList[] =
3687   "|stdlib.h|";
3688 /*
3689  *  Machine/OS name selection pattern
3690  */
3691 #define apzNews_Os_RecursionMachs (const char**)NULL
3692 
3693 /*
3694  *  content selection pattern - do fix if pattern found
3695  */
3696 tSCC zNews_Os_RecursionSelect0[] =
3697        "[ \t]*#include <stdlib\\.h>.*";
3698 
3699 #define    NEWS_OS_RECURSION_TEST_CT  1
3700 static tTestDesc aNews_Os_RecursionTests[] = {
3701   { TT_EGREP,    zNews_Os_RecursionSelect0, (regex_t*)NULL }, };
3702 
3703 /*
3704  *  Fix Command Arguments for News_Os_Recursion
3705  */
3706 static const char* apzNews_Os_RecursionPatch[] = {
3707     "format",
3708     "#ifdef BOGUS_RECURSION\n\
3709 %0\n\
3710 #endif",
3711     (char*)NULL };
3712 
3713 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3714  *
3715  *  Description of Next_Math_Prefix fix
3716  */
3717 tSCC zNext_Math_PrefixName[] =
3718      "next_math_prefix";
3719 
3720 /*
3721  *  File name selection pattern
3722  */
3723 tSCC zNext_Math_PrefixList[] =
3724   "|ansi/math.h|";
3725 /*
3726  *  Machine/OS name selection pattern
3727  */
3728 #define apzNext_Math_PrefixMachs (const char**)NULL
3729 
3730 /*
3731  *  content selection pattern - do fix if pattern found
3732  */
3733 tSCC zNext_Math_PrefixSelect0[] =
3734        "^extern[ \t]+double[ \t]+__const__[ \t]";
3735 
3736 #define    NEXT_MATH_PREFIX_TEST_CT  1
3737 static tTestDesc aNext_Math_PrefixTests[] = {
3738   { TT_EGREP,    zNext_Math_PrefixSelect0, (regex_t*)NULL }, };
3739 
3740 /*
3741  *  Fix Command Arguments for Next_Math_Prefix
3742  */
3743 static const char* apzNext_Math_PrefixPatch[] = {
3744     "format",
3745     "extern double %1(",
3746     "^extern[ \t]+double[ \t]+__const__[ \t]+([a-z]+)\\(",
3747     (char*)NULL };
3748 
3749 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3750  *
3751  *  Description of Next_Template fix
3752  */
3753 tSCC zNext_TemplateName[] =
3754      "next_template";
3755 
3756 /*
3757  *  File name selection pattern
3758  */
3759 tSCC zNext_TemplateList[] =
3760   "|bsd/libc.h|";
3761 /*
3762  *  Machine/OS name selection pattern
3763  */
3764 #define apzNext_TemplateMachs (const char**)NULL
3765 
3766 /*
3767  *  content selection pattern - do fix if pattern found
3768  */
3769 tSCC zNext_TemplateSelect0[] =
3770        "[ \t]template\\)";
3771 
3772 #define    NEXT_TEMPLATE_TEST_CT  1
3773 static tTestDesc aNext_TemplateTests[] = {
3774   { TT_EGREP,    zNext_TemplateSelect0, (regex_t*)NULL }, };
3775 
3776 /*
3777  *  Fix Command Arguments for Next_Template
3778  */
3779 static const char* apzNext_TemplatePatch[] = {
3780     "format",
3781     "(%1)",
3782     "\\(([^)]*)[ \t]template\\)",
3783     (char*)NULL };
3784 
3785 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3786  *
3787  *  Description of Next_Volitile fix
3788  */
3789 tSCC zNext_VolitileName[] =
3790      "next_volitile";
3791 
3792 /*
3793  *  File name selection pattern
3794  */
3795 tSCC zNext_VolitileList[] =
3796   "|ansi/stdlib.h|";
3797 /*
3798  *  Machine/OS name selection pattern
3799  */
3800 #define apzNext_VolitileMachs (const char**)NULL
3801 
3802 /*
3803  *  content selection pattern - do fix if pattern found
3804  */
3805 tSCC zNext_VolitileSelect0[] =
3806        "^extern[ \t]+volatile[ \t]+void[ \t]";
3807 
3808 #define    NEXT_VOLITILE_TEST_CT  1
3809 static tTestDesc aNext_VolitileTests[] = {
3810   { TT_EGREP,    zNext_VolitileSelect0, (regex_t*)NULL }, };
3811 
3812 /*
3813  *  Fix Command Arguments for Next_Volitile
3814  */
3815 static const char* apzNext_VolitilePatch[] = {
3816     "format",
3817     "extern void %1(",
3818     "^extern[ \t]+volatile[ \t]+void[ \t]+(exit|abort)\\(",
3819     (char*)NULL };
3820 
3821 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3822  *
3823  *  Description of Next_Wait_Union fix
3824  */
3825 tSCC zNext_Wait_UnionName[] =
3826      "next_wait_union";
3827 
3828 /*
3829  *  File name selection pattern
3830  */
3831 tSCC zNext_Wait_UnionList[] =
3832   "|sys/wait.h|";
3833 /*
3834  *  Machine/OS name selection pattern
3835  */
3836 #define apzNext_Wait_UnionMachs (const char**)NULL
3837 
3838 /*
3839  *  content selection pattern - do fix if pattern found
3840  */
3841 tSCC zNext_Wait_UnionSelect0[] =
3842        "wait\\(union wait";
3843 
3844 #define    NEXT_WAIT_UNION_TEST_CT  1
3845 static tTestDesc aNext_Wait_UnionTests[] = {
3846   { TT_EGREP,    zNext_Wait_UnionSelect0, (regex_t*)NULL }, };
3847 
3848 /*
3849  *  Fix Command Arguments for Next_Wait_Union
3850  */
3851 static const char* apzNext_Wait_UnionPatch[] = {
3852     "format",
3853     "wait(void",
3854     (char*)NULL };
3855 
3856 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3857  *
3858  *  Description of Nodeent_Syntax fix
3859  */
3860 tSCC zNodeent_SyntaxName[] =
3861      "nodeent_syntax";
3862 
3863 /*
3864  *  File name selection pattern
3865  */
3866 tSCC zNodeent_SyntaxList[] =
3867   "|netdnet/dnetdb.h|";
3868 /*
3869  *  Machine/OS name selection pattern
3870  */
3871 #define apzNodeent_SyntaxMachs (const char**)NULL
3872 
3873 /*
3874  *  content selection pattern - do fix if pattern found
3875  */
3876 tSCC zNodeent_SyntaxSelect0[] =
3877        "char[ \t]*\\*na_addr[ \t]*$";
3878 
3879 #define    NODEENT_SYNTAX_TEST_CT  1
3880 static tTestDesc aNodeent_SyntaxTests[] = {
3881   { TT_EGREP,    zNodeent_SyntaxSelect0, (regex_t*)NULL }, };
3882 
3883 /*
3884  *  Fix Command Arguments for Nodeent_Syntax
3885  */
3886 static const char* apzNodeent_SyntaxPatch[] = {
3887     "format",
3888     "%0;",
3889     (char*)NULL };
3890 
3891 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3892  *
3893  *  Description of Obstack_Lvalue_Cast fix
3894  */
3895 tSCC zObstack_Lvalue_CastName[] =
3896      "obstack_lvalue_cast";
3897 
3898 /*
3899  *  File name selection pattern
3900  */
3901 tSCC zObstack_Lvalue_CastList[] =
3902   "|obstack.h|";
3903 /*
3904  *  Machine/OS name selection pattern
3905  */
3906 #define apzObstack_Lvalue_CastMachs (const char**)NULL
3907 
3908 /*
3909  *  content selection pattern - do fix if pattern found
3910  */
3911 tSCC zObstack_Lvalue_CastSelect0[] =
3912        "\\*\\(\\(([^()]*)\\*\\)(.*)\\)\\+\\+ = \\(([^()]*)\\)";
3913 
3914 #define    OBSTACK_LVALUE_CAST_TEST_CT  1
3915 static tTestDesc aObstack_Lvalue_CastTests[] = {
3916   { TT_EGREP,    zObstack_Lvalue_CastSelect0, (regex_t*)NULL }, };
3917 
3918 /*
3919  *  Fix Command Arguments for Obstack_Lvalue_Cast
3920  */
3921 static const char* apzObstack_Lvalue_CastPatch[] = {
3922     "format",
3923     "((*((%1*)%2) = (%3)), (%2 += sizeof (%1)))",
3924     (char*)NULL };
3925 
3926 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3927  *
3928  *  Description of Osf_Namespace_A fix
3929  */
3930 tSCC zOsf_Namespace_AName[] =
3931      "osf_namespace_a";
3932 
3933 /*
3934  *  File name selection pattern
3935  */
3936 tSCC zOsf_Namespace_AList[] =
3937   "|reg_types.h|sys/lc_core.h|";
3938 /*
3939  *  Machine/OS name selection pattern
3940  */
3941 #define apzOsf_Namespace_AMachs (const char**)NULL
3942 
3943 /*
3944  *  perform the 'test' shell command - do fix on success
3945  */
3946 tSCC zOsf_Namespace_ATest0[] =
3947        " -r reg_types.h";
3948 tSCC zOsf_Namespace_ATest1[] =
3949        " -r sys/lc_core.h";
3950 tSCC zOsf_Namespace_ATest2[] =
3951        " -n \"`grep '} regex_t;' reg_types.h`\"";
3952 tSCC zOsf_Namespace_ATest3[] =
3953        " -z \"`grep __regex_t regex.h`\"";
3954 
3955 #define    OSF_NAMESPACE_A_TEST_CT  4
3956 static tTestDesc aOsf_Namespace_ATests[] = {
3957   { TT_TEST,     zOsf_Namespace_ATest0,   0 /* unused */ },
3958   { TT_TEST,     zOsf_Namespace_ATest1,   0 /* unused */ },
3959   { TT_TEST,     zOsf_Namespace_ATest2,   0 /* unused */ },
3960   { TT_TEST,     zOsf_Namespace_ATest3,   0 /* unused */ }, };
3961 
3962 /*
3963  *  Fix Command Arguments for Osf_Namespace_A
3964  */
3965 static const char* apzOsf_Namespace_APatch[] = {
3966     "format",
3967     "__%0",
3968     "reg(ex|off|match)_t",
3969     (char*)NULL };
3970 
3971 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3972  *
3973  *  Description of Osf_Namespace_C fix
3974  */
3975 tSCC zOsf_Namespace_CName[] =
3976      "osf_namespace_c";
3977 
3978 /*
3979  *  File name selection pattern
3980  */
3981 tSCC zOsf_Namespace_CList[] =
3982   "|regex.h|";
3983 /*
3984  *  Machine/OS name selection pattern
3985  */
3986 #define apzOsf_Namespace_CMachs (const char**)NULL
3987 
3988 /*
3989  *  content selection pattern - do fix if pattern found
3990  */
3991 tSCC zOsf_Namespace_CSelect0[] =
3992        "#include <reg_types.h>.*";
3993 
3994 /*
3995  *  perform the 'test' shell command - do fix on success
3996  */
3997 tSCC zOsf_Namespace_CTest0[] =
3998        " -r reg_types.h";
3999 tSCC zOsf_Namespace_CTest1[] =
4000        " -r sys/lc_core.h";
4001 tSCC zOsf_Namespace_CTest2[] =
4002        " -n \"`grep '} regex_t;' reg_types.h`\"";
4003 tSCC zOsf_Namespace_CTest3[] =
4004        " -z \"`grep __regex_t regex.h`\"";
4005 
4006 #define    OSF_NAMESPACE_C_TEST_CT  5
4007 static tTestDesc aOsf_Namespace_CTests[] = {
4008   { TT_TEST,     zOsf_Namespace_CTest0,   0 /* unused */ },
4009   { TT_TEST,     zOsf_Namespace_CTest1,   0 /* unused */ },
4010   { TT_TEST,     zOsf_Namespace_CTest2,   0 /* unused */ },
4011   { TT_TEST,     zOsf_Namespace_CTest3,   0 /* unused */ },
4012   { TT_EGREP,    zOsf_Namespace_CSelect0, (regex_t*)NULL }, };
4013 
4014 /*
4015  *  Fix Command Arguments for Osf_Namespace_C
4016  */
4017 static const char* apzOsf_Namespace_CPatch[] = {
4018     "format",
4019     "%0\n\
4020 typedef __regex_t\tregex_t;\n\
4021 typedef __regoff_t\tregoff_t;\n\
4022 typedef __regmatch_t\tregmatch_t;",
4023     (char*)NULL };
4024 
4025 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4026  *
4027  *  Description of Pthread_Page_Size fix
4028  */
4029 tSCC zPthread_Page_SizeName[] =
4030      "pthread_page_size";
4031 
4032 /*
4033  *  File name selection pattern
4034  */
4035 tSCC zPthread_Page_SizeList[] =
4036   "|pthread.h|";
4037 /*
4038  *  Machine/OS name selection pattern
4039  */
4040 #define apzPthread_Page_SizeMachs (const char**)NULL
4041 
4042 /*
4043  *  content selection pattern - do fix if pattern found
4044  */
4045 tSCC zPthread_Page_SizeSelect0[] =
4046        "^int __page_size";
4047 
4048 #define    PTHREAD_PAGE_SIZE_TEST_CT  1
4049 static tTestDesc aPthread_Page_SizeTests[] = {
4050   { TT_EGREP,    zPthread_Page_SizeSelect0, (regex_t*)NULL }, };
4051 
4052 /*
4053  *  Fix Command Arguments for Pthread_Page_Size
4054  */
4055 static const char* apzPthread_Page_SizePatch[] = {
4056     "format",
4057     "extern %0",
4058     (char*)NULL };
4059 
4060 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4061  *
4062  *  Description of Read_Ret_Type fix
4063  */
4064 tSCC zRead_Ret_TypeName[] =
4065      "read_ret_type";
4066 
4067 /*
4068  *  File name selection pattern
4069  */
4070 tSCC zRead_Ret_TypeList[] =
4071   "|stdio.h|";
4072 /*
4073  *  Machine/OS name selection pattern
4074  */
4075 #define apzRead_Ret_TypeMachs (const char**)NULL
4076 
4077 /*
4078  *  content selection pattern - do fix if pattern found
4079  */
4080 tSCC zRead_Ret_TypeSelect0[] =
4081        "extern int\t.*, fread\\(\\), fwrite\\(\\)";
4082 
4083 #define    READ_RET_TYPE_TEST_CT  1
4084 static tTestDesc aRead_Ret_TypeTests[] = {
4085   { TT_EGREP,    zRead_Ret_TypeSelect0, (regex_t*)NULL }, };
4086 
4087 /*
4088  *  Fix Command Arguments for Read_Ret_Type
4089  */
4090 static const char* apzRead_Ret_TypePatch[] = {
4091     "format",
4092     "extern unsigned int fread(), fwrite();\n\
4093 %1%2",
4094     "(extern int\t.*), fread\\(\\), fwrite\\(\\)(.*)",
4095     (char*)NULL };
4096 
4097 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4098  *
4099  *  Description of Rs6000_Double fix
4100  */
4101 tSCC zRs6000_DoubleName[] =
4102      "rs6000_double";
4103 
4104 /*
4105  *  File name selection pattern
4106  */
4107 tSCC zRs6000_DoubleList[] =
4108   "|math.h|";
4109 /*
4110  *  Machine/OS name selection pattern
4111  */
4112 #define apzRs6000_DoubleMachs (const char**)NULL
4113 
4114 /*
4115  *  content selection pattern - do fix if pattern found
4116  */
4117 tSCC zRs6000_DoubleSelect0[] =
4118        "[^a-zA-Z_]class\\(";
4119 
4120 #define    RS6000_DOUBLE_TEST_CT  1
4121 static tTestDesc aRs6000_DoubleTests[] = {
4122   { TT_EGREP,    zRs6000_DoubleSelect0, (regex_t*)NULL }, };
4123 
4124 /*
4125  *  Fix Command Arguments for Rs6000_Double
4126  */
4127 static const char* apzRs6000_DoublePatch[] = {
4128     "format",
4129     "#ifndef __cplusplus\n\
4130 %0\n\
4131 #endif",
4132     "^.*[^a-zA-Z_]class\\(.*",
4133     (char*)NULL };
4134 
4135 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4136  *
4137  *  Description of Rs6000_Fchmod fix
4138  */
4139 tSCC zRs6000_FchmodName[] =
4140      "rs6000_fchmod";
4141 
4142 /*
4143  *  File name selection pattern
4144  */
4145 tSCC zRs6000_FchmodList[] =
4146   "|sys/stat.h|";
4147 /*
4148  *  Machine/OS name selection pattern
4149  */
4150 #define apzRs6000_FchmodMachs (const char**)NULL
4151 
4152 /*
4153  *  content selection pattern - do fix if pattern found
4154  */
4155 tSCC zRs6000_FchmodSelect0[] =
4156        "fchmod\\(char \\*";
4157 
4158 #define    RS6000_FCHMOD_TEST_CT  1
4159 static tTestDesc aRs6000_FchmodTests[] = {
4160   { TT_EGREP,    zRs6000_FchmodSelect0, (regex_t*)NULL }, };
4161 
4162 /*
4163  *  Fix Command Arguments for Rs6000_Fchmod
4164  */
4165 static const char* apzRs6000_FchmodPatch[] = {
4166     "format",
4167     "fchmod(int",
4168     (char*)NULL };
4169 
4170 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4171  *
4172  *  Description of Rs6000_Param fix
4173  */
4174 tSCC zRs6000_ParamName[] =
4175      "rs6000_param";
4176 
4177 /*
4178  *  File name selection pattern
4179  */
4180 tSCC zRs6000_ParamList[] =
4181   "|stdio.h|unistd.h|";
4182 /*
4183  *  Machine/OS name selection pattern
4184  */
4185 #define apzRs6000_ParamMachs (const char**)NULL
4186 
4187 /*
4188  *  content selection pattern - do fix if pattern found
4189  */
4190 tSCC zRs6000_ParamSelect0[] =
4191        "rename\\(const char \\*old, const char \\*new\\)";
4192 
4193 #define    RS6000_PARAM_TEST_CT  1
4194 static tTestDesc aRs6000_ParamTests[] = {
4195   { TT_EGREP,    zRs6000_ParamSelect0, (regex_t*)NULL }, };
4196 
4197 /*
4198  *  Fix Command Arguments for Rs6000_Param
4199  */
4200 static const char* apzRs6000_ParamPatch[] = {
4201     "format",
4202     "rename(const char *_old, const char *_new)",
4203     (char*)NULL };
4204 
4205 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4206  *
4207  *  Description of Sco_Math fix
4208  */
4209 tSCC zSco_MathName[] =
4210      "sco_math";
4211 
4212 /*
4213  *  File name selection pattern
4214  */
4215 tSCC zSco_MathList[] =
4216   "|math.h|posix/math.h|ansi/math.h|xpg4/math.h|xpg4v2/math.h|xpg4plus/math.h|ods_30_compat/math.h|oldstyle/math.h|";
4217 /*
4218  *  Machine/OS name selection pattern
4219  */
4220 #define apzSco_MathMachs (const char**)NULL
4221 
4222 /*
4223  *  content selection pattern - do fix if pattern found
4224  */
4225 tSCC zSco_MathSelect0[] =
4226        "__builtin_generic";
4227 
4228 #define    SCO_MATH_TEST_CT  1
4229 static tTestDesc aSco_MathTests[] = {
4230   { TT_EGREP,    zSco_MathSelect0, (regex_t*)NULL }, };
4231 
4232 /*
4233  *  Fix Command Arguments for Sco_Math
4234  */
4235 static const char* apzSco_MathPatch[] = { "sed",
4236     "-e", "/#define.*__fp_class(a) \\\\/i\\\n\
4237 #ifndef __GNUC__\n",
4238     "-e", "/.*__builtin_generic/a\\\n\
4239 #else\\\n\
4240 #define __fp_class(a) \\\\\\\n\
4241   __builtin_choose_expr(__builtin_types_compatible_p(typeof(a),long double),\\\\\\\n\
4242    __fpclassifyl(a), \\\\\\\n\
4243     __builtin_choose_expr(__builtin_types_compatible_p(typeof(a), float), \\\\\\\n\
4244       __fpclassifyf(a),__fpclassify(a)))\\\n\
4245 #endif",
4246     "-e", "/extern \"C\\+\\+\"/N;/inline double abs/i\\\n\
4247 #ifndef __GNUC__\n",
4248     "-e", "/inline long double trunc/N;/inline long double trunc.*}.*extern \"C\\+\\+\"/a\\\n\
4249 #endif /* ! __GNUC__ */",
4250     (char*)NULL };
4251 
4252 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4253  *
4254  *  Description of Sco_Regset fix
4255  */
4256 tSCC zSco_RegsetName[] =
4257      "sco_regset";
4258 
4259 /*
4260  *  File name selection pattern
4261  */
4262 tSCC zSco_RegsetList[] =
4263   "|sys/regset.h|";
4264 /*
4265  *  Machine/OS name selection pattern
4266  */
4267 tSCC* apzSco_RegsetMachs[] = {
4268         "*-*-sco3.2v5*",
4269         (const char*)NULL };
4270 
4271 /*
4272  *  content selection pattern - do fix if pattern found
4273  */
4274 tSCC zSco_RegsetSelect0[] =
4275        "(struct[ \t]+_*)fpstate";
4276 
4277 #define    SCO_REGSET_TEST_CT  1
4278 static tTestDesc aSco_RegsetTests[] = {
4279   { TT_EGREP,    zSco_RegsetSelect0, (regex_t*)NULL }, };
4280 
4281 /*
4282  *  Fix Command Arguments for Sco_Regset
4283  */
4284 static const char* apzSco_RegsetPatch[] = {
4285     "format",
4286     "%1rsfpstate",
4287     (char*)NULL };
4288 
4289 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4290  *
4291  *  Description of Sco_String fix
4292  */
4293 tSCC zSco_StringName[] =
4294      "sco_string";
4295 
4296 /*
4297  *  File name selection pattern
4298  */
4299 tSCC zSco_StringList[] =
4300   "|ansi/string.h|posix/string.h|xpg4/string.h|xpg4v2/string.h|xpg4plus/string.h|ods_30_compat/string.h|oldstyle/string.h|string.h|";
4301 /*
4302  *  Machine/OS name selection pattern
4303  */
4304 tSCC* apzSco_StringMachs[] = {
4305         "*-*-sco3.2v5*",
4306         (const char*)NULL };
4307 
4308 /*
4309  *  content selection pattern - do fix if pattern found
4310  */
4311 tSCC zSco_StringSelect0[] =
4312        "inline char";
4313 
4314 #define    SCO_STRING_TEST_CT  1
4315 static tTestDesc aSco_StringTests[] = {
4316   { TT_EGREP,    zSco_StringSelect0, (regex_t*)NULL }, };
4317 
4318 /*
4319  *  Fix Command Arguments for Sco_String
4320  */
4321 static const char* apzSco_StringPatch[] = { "sed",
4322     "-e", "/extern \"C\\+\\+\"/N;/inline void.*memchr/i\\\n\
4323 #ifndef __GNUC__\n",
4324     "-e", "/return.*strstr/N;/return.*strstr.*}/a\\\n\
4325 #endif /* ! __GNUC__ */",
4326     (char*)NULL };
4327 
4328 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4329  *
4330  *  Description of Sco_Static_Func fix
4331  */
4332 tSCC zSco_Static_FuncName[] =
4333      "sco_static_func";
4334 
4335 /*
4336  *  File name selection pattern
4337  */
4338 tSCC zSco_Static_FuncList[] =
4339   "|sys/stat.h|";
4340 /*
4341  *  Machine/OS name selection pattern
4342  */
4343 tSCC* apzSco_Static_FuncMachs[] = {
4344         "i?86-*-sco3.2*",
4345         (const char*)NULL };
4346 
4347 /*
4348  *  content selection pattern - do fix if pattern found
4349  */
4350 tSCC zSco_Static_FuncSelect0[] =
4351        "^static int";
4352 
4353 #define    SCO_STATIC_FUNC_TEST_CT  1
4354 static tTestDesc aSco_Static_FuncTests[] = {
4355   { TT_EGREP,    zSco_Static_FuncSelect0, (regex_t*)NULL }, };
4356 
4357 /*
4358  *  Fix Command Arguments for Sco_Static_Func
4359  */
4360 static const char* apzSco_Static_FuncPatch[] = { "sed",
4361     "-e", "/^static int/i\\\n\
4362 #if __cplusplus\\\n\
4363 extern \"C\" {\\\n\
4364 #endif /* __cplusplus */",
4365     "-e", "/^}$/a\\\n\
4366 #if __cplusplus\\\n\
4367  }\\\n\
4368 #endif /* __cplusplus */",
4369     (char*)NULL };
4370 
4371 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4372  *
4373  *  Description of Sco_Utime fix
4374  */
4375 tSCC zSco_UtimeName[] =
4376      "sco_utime";
4377 
4378 /*
4379  *  File name selection pattern
4380  */
4381 tSCC zSco_UtimeList[] =
4382   "|sys/times.h|";
4383 /*
4384  *  Machine/OS name selection pattern
4385  */
4386 tSCC* apzSco_UtimeMachs[] = {
4387         "i?86-*-sco3.2v4*",
4388         (const char*)NULL };
4389 
4390 /*
4391  *  content selection pattern - do fix if pattern found
4392  */
4393 tSCC zSco_UtimeSelect0[] =
4394        "\\(const char \\*, struct utimbuf \\*\\);";
4395 
4396 #define    SCO_UTIME_TEST_CT  1
4397 static tTestDesc aSco_UtimeTests[] = {
4398   { TT_EGREP,    zSco_UtimeSelect0, (regex_t*)NULL }, };
4399 
4400 /*
4401  *  Fix Command Arguments for Sco_Utime
4402  */
4403 static const char* apzSco_UtimePatch[] = {
4404     "format",
4405     "(const char *, const struct utimbuf *);",
4406     (char*)NULL };
4407 
4408 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4409  *
4410  *  Description of Solaris_Mutex_Init_1 fix
4411  */
4412 tSCC zSolaris_Mutex_Init_1Name[] =
4413      "solaris_mutex_init_1";
4414 
4415 /*
4416  *  File name selection pattern
4417  */
4418 tSCC zSolaris_Mutex_Init_1List[] =
4419   "|pthread.h|";
4420 /*
4421  *  Machine/OS name selection pattern
4422  */
4423 #define apzSolaris_Mutex_Init_1Machs (const char**)NULL
4424 
4425 /*
4426  *  content selection pattern - do fix if pattern found
4427  */
4428 tSCC zSolaris_Mutex_Init_1Select0[] =
4429        "@\\(#\\)pthread.h[ \t]+1.1[0-9][ \t]+9[567]/[0-9/]+ SMI";
4430 
4431 #define    SOLARIS_MUTEX_INIT_1_TEST_CT  1
4432 static tTestDesc aSolaris_Mutex_Init_1Tests[] = {
4433   { TT_EGREP,    zSolaris_Mutex_Init_1Select0, (regex_t*)NULL }, };
4434 
4435 /*
4436  *  Fix Command Arguments for Solaris_Mutex_Init_1
4437  */
4438 static const char* apzSolaris_Mutex_Init_1Patch[] = { "sed",
4439     "-e", "/define[ \t]*PTHREAD_MUTEX_INI/s/{0, 0,/{{{0}, 0}, {{{0}}},/\n\
4440 /define[ \t]*PTHREAD_COND_INI/s/{0,/{{{0},0},/",
4441     (char*)NULL };
4442 
4443 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4444  *
4445  *  Description of Solaris_Mutex_Init_2 fix
4446  */
4447 tSCC zSolaris_Mutex_Init_2Name[] =
4448      "solaris_mutex_init_2";
4449 
4450 /*
4451  *  File name selection pattern
4452  */
4453 tSCC zSolaris_Mutex_Init_2List[] =
4454   "|pthread.h|";
4455 /*
4456  *  Machine/OS name selection pattern
4457  */
4458 #define apzSolaris_Mutex_Init_2Machs (const char**)NULL
4459 
4460 /*
4461  *  content selection pattern - do fix if pattern found
4462  */
4463 tSCC zSolaris_Mutex_Init_2Select0[] =
4464        "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
4465 
4466 #define    SOLARIS_MUTEX_INIT_2_TEST_CT  1
4467 static tTestDesc aSolaris_Mutex_Init_2Tests[] = {
4468   { TT_EGREP,    zSolaris_Mutex_Init_2Select0, (regex_t*)NULL }, };
4469 
4470 /*
4471  *  Fix Command Arguments for Solaris_Mutex_Init_2
4472  */
4473 static const char* apzSolaris_Mutex_Init_2Patch[] = {
4474     "format",
4475     "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
4476 %0\n\
4477 #else\n\
4478 %1, {0}}%3\n\
4479 #endif",
4480     "(^#define[ \t]+PTHREAD_(MUTEX|COND)_INITIALIZER[ \t]+{.*),[ \t]*0}(|[ \t].*)$",
4481     (char*)NULL };
4482 
4483 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4484  *
4485  *  Description of Solaris_Stdio_Tag fix
4486  */
4487 tSCC zSolaris_Stdio_TagName[] =
4488      "solaris_stdio_tag";
4489 
4490 /*
4491  *  File name selection pattern
4492  */
4493 tSCC zSolaris_Stdio_TagList[] =
4494   "|stdio_tag.h|";
4495 /*
4496  *  Machine/OS name selection pattern
4497  */
4498 #define apzSolaris_Stdio_TagMachs (const char**)NULL
4499 
4500 /*
4501  *  content selection pattern - do fix if pattern found
4502  */
4503 tSCC zSolaris_Stdio_TagSelect0[] =
4504        "__cplusplus < 54321L";
4505 
4506 #define    SOLARIS_STDIO_TAG_TEST_CT  1
4507 static tTestDesc aSolaris_Stdio_TagTests[] = {
4508   { TT_EGREP,    zSolaris_Stdio_TagSelect0, (regex_t*)NULL }, };
4509 
4510 /*
4511  *  Fix Command Arguments for Solaris_Stdio_Tag
4512  */
4513 static const char* apzSolaris_Stdio_TagPatch[] = { "sed",
4514     "-e", "s/defined(__cplusplus) && (__cplusplus < 54321L)/0/",
4515     (char*)NULL };
4516 
4517 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4518  *
4519  *  Description of Solaris_Widec fix
4520  */
4521 tSCC zSolaris_WidecName[] =
4522      "solaris_widec";
4523 
4524 /*
4525  *  File name selection pattern
4526  */
4527 tSCC zSolaris_WidecList[] =
4528   "|widec.h|";
4529 /*
4530  *  Machine/OS name selection pattern
4531  */
4532 tSCC* apzSolaris_WidecMachs[] = {
4533         "*-*-solaris2.[0-5]",
4534         "*-*-solaris2.[0-5].*",
4535         (const char*)NULL };
4536 
4537 /*
4538  *  content selection pattern - do fix if pattern found
4539  */
4540 tSCC zSolaris_WidecSelect0[] =
4541        "#include <euc.h>";
4542 
4543 /*
4544  *  content bypass pattern - skip fix if pattern found
4545  */
4546 tSCC zSolaris_WidecBypass0[] =
4547        "include.*wchar\\.h";
4548 
4549 #define    SOLARIS_WIDEC_TEST_CT  2
4550 static tTestDesc aSolaris_WidecTests[] = {
4551   { TT_NEGREP,   zSolaris_WidecBypass0, (regex_t*)NULL },
4552   { TT_EGREP,    zSolaris_WidecSelect0, (regex_t*)NULL }, };
4553 
4554 /*
4555  *  Fix Command Arguments for Solaris_Widec
4556  */
4557 static const char* apzSolaris_WidecPatch[] = {
4558     "format",
4559     "%0\n\
4560 #include <wchar.h>",
4561     (char*)NULL };
4562 
4563 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4564  *
4565  *  Description of Statsswtch fix
4566  */
4567 tSCC zStatsswtchName[] =
4568      "statsswtch";
4569 
4570 /*
4571  *  File name selection pattern
4572  */
4573 tSCC zStatsswtchList[] =
4574   "|rpcsvc/rstat.h|";
4575 /*
4576  *  Machine/OS name selection pattern
4577  */
4578 #define apzStatsswtchMachs (const char**)NULL
4579 
4580 /*
4581  *  content selection pattern - do fix if pattern found
4582  */
4583 tSCC zStatsswtchSelect0[] =
4584        "boottime$";
4585 
4586 #define    STATSSWTCH_TEST_CT  1
4587 static tTestDesc aStatsswtchTests[] = {
4588   { TT_EGREP,    zStatsswtchSelect0, (regex_t*)NULL }, };
4589 
4590 /*
4591  *  Fix Command Arguments for Statsswtch
4592  */
4593 static const char* apzStatsswtchPatch[] = {
4594     "format",
4595     "boottime;",
4596     (char*)NULL };
4597 
4598 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4599  *
4600  *  Description of Stdio_Stdarg_H fix
4601  */
4602 tSCC zStdio_Stdarg_HName[] =
4603      "stdio_stdarg_h";
4604 
4605 /*
4606  *  File name selection pattern
4607  */
4608 tSCC zStdio_Stdarg_HList[] =
4609   "|stdio.h|";
4610 /*
4611  *  Machine/OS name selection pattern
4612  */
4613 #define apzStdio_Stdarg_HMachs (const char**)NULL
4614 
4615 /*
4616  *  content bypass pattern - skip fix if pattern found
4617  */
4618 tSCC zStdio_Stdarg_HBypass0[] =
4619        "include.*(stdarg.h|machine/ansi.h)";
4620 
4621 #define    STDIO_STDARG_H_TEST_CT  1
4622 static tTestDesc aStdio_Stdarg_HTests[] = {
4623   { TT_NEGREP,   zStdio_Stdarg_HBypass0, (regex_t*)NULL }, };
4624 
4625 /*
4626  *  Fix Command Arguments for Stdio_Stdarg_H
4627  */
4628 static const char* apzStdio_Stdarg_HPatch[] = {
4629     "wrap",
4630     "#define __need___va_list\n\
4631 #include <stdarg.h>\n",
4632     (char*)NULL };
4633 
4634 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4635  *
4636  *  Description of Stdio_Va_List fix
4637  */
4638 tSCC zStdio_Va_ListName[] =
4639      "stdio_va_list";
4640 
4641 /*
4642  *  File name selection pattern
4643  */
4644 tSCC zStdio_Va_ListList[] =
4645   "|stdio.h|internal/stdio_core.h|internal/wchar_core.h|";
4646 /*
4647  *  Machine/OS name selection pattern
4648  */
4649 #define apzStdio_Va_ListMachs (const char**)NULL
4650 
4651 /*
4652  *  content bypass pattern - skip fix if pattern found
4653  */
4654 tSCC zStdio_Va_ListBypass0[] =
4655        "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
4656 
4657 #define    STDIO_VA_LIST_TEST_CT  1
4658 static tTestDesc aStdio_Va_ListTests[] = {
4659   { TT_NEGREP,   zStdio_Va_ListBypass0, (regex_t*)NULL }, };
4660 
4661 /*
4662  *  Fix Command Arguments for Stdio_Va_List
4663  */
4664 static const char* apzStdio_Va_ListPatch[] = { "sed",
4665     "-e", "s@[ \t]va_list @ __gnuc_va_list @\n\
4666 s@[ \t]va_list)@ __gnuc_va_list)@\n\
4667 s@(va_list)&@(__gnuc_va_list)\\&@\n\
4668 s@ _VA_LIST_));@ __gnuc_va_list));@\n\
4669 s@ __VA_LIST__));@ __gnuc_va_list));@\n\
4670 s@ va_list@ __not_va_list__@\n\
4671 s@\\*va_list@*__not_va_list__@\n\
4672 s@ __va_list)@ __gnuc_va_list)@\n\
4673 s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
4674 s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
4675 s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
4676 s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
4677 s@VA_LIST@DUMMY_VA_LIST@\n\
4678 s@_Va_LIST@_VA_LIST@",
4679     (char*)NULL };
4680 
4681 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4682  *
4683  *  Description of Strict_Ansi_Not fix
4684  */
4685 tSCC zStrict_Ansi_NotName[] =
4686      "strict_ansi_not";
4687 
4688 /*
4689  *  File name selection pattern
4690  */
4691 #define zStrict_Ansi_NotList (char*)NULL
4692 /*
4693  *  Machine/OS name selection pattern
4694  */
4695 #define apzStrict_Ansi_NotMachs (const char**)NULL
4696 
4697 /*
4698  *  content selection pattern - do fix if pattern found
4699  */
4700 tSCC zStrict_Ansi_NotSelect0[] =
4701        "^([ \t]*#[ \t]*if.*)(!__STDC__|__STDC__[ \t]*==[ \t]*0|__STDC__[ \t]*!=[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*0)";
4702 
4703 /*
4704  *  content bypass pattern - skip fix if pattern found
4705  */
4706 tSCC zStrict_Ansi_NotBypass0[] =
4707        "GNU and MIPS C compilers define __STDC__ differently";
4708 tSCC zStrict_Ansi_NotBypass1[] =
4709        "__SCO_VERSION__.*__STDC__ != 1";
4710 
4711 /*
4712  *  perform the C function call test
4713  */
4714 tSCC zStrict_Ansi_NotFTst0[] = "stdc_0_in_system_headers";
4715 
4716 #define    STRICT_ANSI_NOT_TEST_CT  4
4717 static tTestDesc aStrict_Ansi_NotTests[] = {
4718   { TT_FUNCTION, zStrict_Ansi_NotFTst0,   0 /* unused */ },
4719   { TT_NEGREP,   zStrict_Ansi_NotBypass0, (regex_t*)NULL },
4720   { TT_NEGREP,   zStrict_Ansi_NotBypass1, (regex_t*)NULL },
4721   { TT_EGREP,    zStrict_Ansi_NotSelect0, (regex_t*)NULL }, };
4722 
4723 /*
4724  *  Fix Command Arguments for Strict_Ansi_Not
4725  */
4726 static const char* apzStrict_Ansi_NotPatch[] = {
4727     "format",
4728     "%1 !defined(__STRICT_ANSI__)",
4729     (char*)NULL };
4730 
4731 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4732  *
4733  *  Description of Strict_Ansi_Not_Ctd fix
4734  */
4735 tSCC zStrict_Ansi_Not_CtdName[] =
4736      "strict_ansi_not_ctd";
4737 
4738 /*
4739  *  File name selection pattern
4740  */
4741 tSCC zStrict_Ansi_Not_CtdList[] =
4742   "|math.h|limits.h|stdio.h|signal.h|stdlib.h|sys/signal.h|time.h|";
4743 /*
4744  *  Machine/OS name selection pattern
4745  */
4746 #define apzStrict_Ansi_Not_CtdMachs (const char**)NULL
4747 
4748 /*
4749  *  content selection pattern - do fix if pattern found
4750  */
4751 tSCC zStrict_Ansi_Not_CtdSelect0[] =
4752        "^([ \t]*(\\(|&&|\\|\\|)([ \t(]*!*[ \t]*defined\\([a-zA-Z_0-9]+\\)[ \t]*[|&][|&])*[ \t(]*)(__STDC__[ \t]*(|-[ \t]*0[ \t]*)==[ \t]*0)";
4753 
4754 /*
4755  *  perform the C function call test
4756  */
4757 tSCC zStrict_Ansi_Not_CtdFTst0[] = "stdc_0_in_system_headers";
4758 
4759 #define    STRICT_ANSI_NOT_CTD_TEST_CT  2
4760 static tTestDesc aStrict_Ansi_Not_CtdTests[] = {
4761   { TT_FUNCTION, zStrict_Ansi_Not_CtdFTst0,   0 /* unused */ },
4762   { TT_EGREP,    zStrict_Ansi_Not_CtdSelect0, (regex_t*)NULL }, };
4763 
4764 /*
4765  *  Fix Command Arguments for Strict_Ansi_Not_Ctd
4766  */
4767 static const char* apzStrict_Ansi_Not_CtdPatch[] = {
4768     "format",
4769     "%1 !defined(__STRICT_ANSI__)",
4770     (char*)NULL };
4771 
4772 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4773  *
4774  *  Description of Strict_Ansi_Only fix
4775  */
4776 tSCC zStrict_Ansi_OnlyName[] =
4777      "strict_ansi_only";
4778 
4779 /*
4780  *  File name selection pattern
4781  */
4782 #define zStrict_Ansi_OnlyList (char*)NULL
4783 /*
4784  *  Machine/OS name selection pattern
4785  */
4786 #define apzStrict_Ansi_OnlyMachs (const char**)NULL
4787 
4788 /*
4789  *  content selection pattern - do fix if pattern found
4790  */
4791 tSCC zStrict_Ansi_OnlySelect0[] =
4792        "^([ \t]*#[ \t]*if.*)(__STDC__[ \t]*!=[ \t]*0|__STDC__[ \t]*==[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*!=[ \t]*0)";
4793 
4794 /*
4795  *  perform the C function call test
4796  */
4797 tSCC zStrict_Ansi_OnlyFTst0[] = "stdc_0_in_system_headers";
4798 
4799 #define    STRICT_ANSI_ONLY_TEST_CT  2
4800 static tTestDesc aStrict_Ansi_OnlyTests[] = {
4801   { TT_FUNCTION, zStrict_Ansi_OnlyFTst0,   0 /* unused */ },
4802   { TT_EGREP,    zStrict_Ansi_OnlySelect0, (regex_t*)NULL }, };
4803 
4804 /*
4805  *  Fix Command Arguments for Strict_Ansi_Only
4806  */
4807 static const char* apzStrict_Ansi_OnlyPatch[] = {
4808     "format",
4809     "%1 defined(__STRICT_ANSI__)",
4810     (char*)NULL };
4811 
4812 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4813  *
4814  *  Description of Struct_File fix
4815  */
4816 tSCC zStruct_FileName[] =
4817      "struct_file";
4818 
4819 /*
4820  *  File name selection pattern
4821  */
4822 tSCC zStruct_FileList[] =
4823   "|rpc/xdr.h|";
4824 /*
4825  *  Machine/OS name selection pattern
4826  */
4827 #define apzStruct_FileMachs (const char**)NULL
4828 
4829 /*
4830  *  content selection pattern - do fix if pattern found
4831  */
4832 tSCC zStruct_FileSelect0[] =
4833        "^.*xdrstdio_create.*struct __file_s";
4834 
4835 #define    STRUCT_FILE_TEST_CT  1
4836 static tTestDesc aStruct_FileTests[] = {
4837   { TT_EGREP,    zStruct_FileSelect0, (regex_t*)NULL }, };
4838 
4839 /*
4840  *  Fix Command Arguments for Struct_File
4841  */
4842 static const char* apzStruct_FilePatch[] = {
4843     "format",
4844     "struct __file_s;\n\
4845 %0",
4846     (char*)NULL };
4847 
4848 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4849  *
4850  *  Description of Struct_Sockaddr fix
4851  */
4852 tSCC zStruct_SockaddrName[] =
4853      "struct_sockaddr";
4854 
4855 /*
4856  *  File name selection pattern
4857  */
4858 tSCC zStruct_SockaddrList[] =
4859   "|rpc/auth.h|";
4860 /*
4861  *  Machine/OS name selection pattern
4862  */
4863 #define apzStruct_SockaddrMachs (const char**)NULL
4864 
4865 /*
4866  *  content selection pattern - do fix if pattern found
4867  */
4868 tSCC zStruct_SockaddrSelect0[] =
4869        "^.*authdes_create.*struct sockaddr";
4870 
4871 /*
4872  *  content bypass pattern - skip fix if pattern found
4873  */
4874 tSCC zStruct_SockaddrBypass0[] =
4875        "<sys/socket.h>";
4876 
4877 #define    STRUCT_SOCKADDR_TEST_CT  2
4878 static tTestDesc aStruct_SockaddrTests[] = {
4879   { TT_NEGREP,   zStruct_SockaddrBypass0, (regex_t*)NULL },
4880   { TT_EGREP,    zStruct_SockaddrSelect0, (regex_t*)NULL }, };
4881 
4882 /*
4883  *  Fix Command Arguments for Struct_Sockaddr
4884  */
4885 static const char* apzStruct_SockaddrPatch[] = {
4886     "format",
4887     "struct sockaddr;\n\
4888 %0",
4889     (char*)NULL };
4890 
4891 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4892  *
4893  *  Description of Sun_Auth_Proto fix
4894  */
4895 tSCC zSun_Auth_ProtoName[] =
4896      "sun_auth_proto";
4897 
4898 /*
4899  *  File name selection pattern
4900  */
4901 tSCC zSun_Auth_ProtoList[] =
4902   "|rpc/auth.h|rpc/clnt.h|rpc/svc.h|rpc/xdr.h|";
4903 /*
4904  *  Machine/OS name selection pattern
4905  */
4906 #define apzSun_Auth_ProtoMachs (const char**)NULL
4907 
4908 /*
4909  *  content selection pattern - do fix if pattern found
4910  */
4911 tSCC zSun_Auth_ProtoSelect0[] =
4912        "\\(\\*[a-z][a-z_]*\\)\\(\\)";
4913 
4914 #define    SUN_AUTH_PROTO_TEST_CT  1
4915 static tTestDesc aSun_Auth_ProtoTests[] = {
4916   { TT_EGREP,    zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };
4917 
4918 /*
4919  *  Fix Command Arguments for Sun_Auth_Proto
4920  */
4921 static const char* apzSun_Auth_ProtoPatch[] = {
4922     "format",
4923     "#ifdef __cplusplus\n\
4924 %1(...);%2\n\
4925 #else\n\
4926 %1();%2\n\
4927 #endif",
4928     "(.*\\(\\*[a-z][a-z_]*\\))\\(\\);(.*)",
4929     (char*)NULL };
4930 
4931 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4932  *
4933  *  Description of Sun_Bogus_Ifdef fix
4934  */
4935 tSCC zSun_Bogus_IfdefName[] =
4936      "sun_bogus_ifdef";
4937 
4938 /*
4939  *  File name selection pattern
4940  */
4941 tSCC zSun_Bogus_IfdefList[] =
4942   "|hsfs/hsfs_spec.h|hsfs/iso_spec.h|";
4943 /*
4944  *  Machine/OS name selection pattern
4945  */
4946 #define apzSun_Bogus_IfdefMachs (const char**)NULL
4947 
4948 /*
4949  *  content selection pattern - do fix if pattern found
4950  */
4951 tSCC zSun_Bogus_IfdefSelect0[] =
4952        "#ifdef(.*\\|\\|.*)";
4953 
4954 #define    SUN_BOGUS_IFDEF_TEST_CT  1
4955 static tTestDesc aSun_Bogus_IfdefTests[] = {
4956   { TT_EGREP,    zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };
4957 
4958 /*
4959  *  Fix Command Arguments for Sun_Bogus_Ifdef
4960  */
4961 static const char* apzSun_Bogus_IfdefPatch[] = {
4962     "format",
4963     "#if%1",
4964     (char*)NULL };
4965 
4966 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4967  *
4968  *  Description of Sun_Catmacro fix
4969  */
4970 tSCC zSun_CatmacroName[] =
4971      "sun_catmacro";
4972 
4973 /*
4974  *  File name selection pattern
4975  */
4976 tSCC zSun_CatmacroList[] =
4977   "|pixrect/memvar.h|";
4978 /*
4979  *  Machine/OS name selection pattern
4980  */
4981 #define apzSun_CatmacroMachs (const char**)NULL
4982 
4983 /*
4984  *  content selection pattern - do fix if pattern found
4985  */
4986 tSCC zSun_CatmacroSelect0[] =
4987        "^#define[ \t]+CAT\\(a,b\\).*";
4988 
4989 #define    SUN_CATMACRO_TEST_CT  1
4990 static tTestDesc aSun_CatmacroTests[] = {
4991   { TT_EGREP,    zSun_CatmacroSelect0, (regex_t*)NULL }, };
4992 
4993 /*
4994  *  Fix Command Arguments for Sun_Catmacro
4995  */
4996 static const char* apzSun_CatmacroPatch[] = {
4997     "format",
4998     "#ifdef __STDC__\n\
4999 #  define CAT(a,b) a##b\n\
5000 #else\n\
5001 %0\n\
5002 #endif",
5003     (char*)NULL };
5004 
5005 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5006  *
5007  *  Description of Sun_Malloc fix
5008  */
5009 tSCC zSun_MallocName[] =
5010      "sun_malloc";
5011 
5012 /*
5013  *  File name selection pattern
5014  */
5015 tSCC zSun_MallocList[] =
5016   "|malloc.h|";
5017 /*
5018  *  Machine/OS name selection pattern
5019  */
5020 #define apzSun_MallocMachs (const char**)NULL
5021 #define SUN_MALLOC_TEST_CT  0
5022 #define aSun_MallocTests   (tTestDesc*)NULL
5023 
5024 /*
5025  *  Fix Command Arguments for Sun_Malloc
5026  */
5027 static const char* apzSun_MallocPatch[] = { "sed",
5028     "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
5029     "-e", "s/int[ \t][ \t]*free/void\tfree/g",
5030     "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
5031     "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
5032     "-e", "s/char\\([ \t]*\\*[ \t]*calloc\\)/void\\1/g",
5033     (char*)NULL };
5034 
5035 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5036  *
5037  *  Description of Sun_Rusers_Semi fix
5038  */
5039 tSCC zSun_Rusers_SemiName[] =
5040      "sun_rusers_semi";
5041 
5042 /*
5043  *  File name selection pattern
5044  */
5045 tSCC zSun_Rusers_SemiList[] =
5046   "|rpcsvc/rusers.h|";
5047 /*
5048  *  Machine/OS name selection pattern
5049  */
5050 #define apzSun_Rusers_SemiMachs (const char**)NULL
5051 
5052 /*
5053  *  content selection pattern - do fix if pattern found
5054  */
5055 tSCC zSun_Rusers_SemiSelect0[] =
5056        "_cnt$";
5057 
5058 #define    SUN_RUSERS_SEMI_TEST_CT  1
5059 static tTestDesc aSun_Rusers_SemiTests[] = {
5060   { TT_EGREP,    zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };
5061 
5062 /*
5063  *  Fix Command Arguments for Sun_Rusers_Semi
5064  */
5065 static const char* apzSun_Rusers_SemiPatch[] = { "sed",
5066     "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
5067     (char*)NULL };
5068 
5069 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5070  *
5071  *  Description of Sun_Signal fix
5072  */
5073 tSCC zSun_SignalName[] =
5074      "sun_signal";
5075 
5076 /*
5077  *  File name selection pattern
5078  */
5079 tSCC zSun_SignalList[] =
5080   "|sys/signal.h|signal.h|";
5081 /*
5082  *  Machine/OS name selection pattern
5083  */
5084 #define apzSun_SignalMachs (const char**)NULL
5085 
5086 /*
5087  *  content selection pattern - do fix if pattern found
5088  */
5089 tSCC zSun_SignalSelect0[] =
5090        "^void\t\\(\\*signal\\(\\)\\)\\(\\);.*";
5091 
5092 #define    SUN_SIGNAL_TEST_CT  1
5093 static tTestDesc aSun_SignalTests[] = {
5094   { TT_EGREP,    zSun_SignalSelect0, (regex_t*)NULL }, };
5095 
5096 /*
5097  *  Fix Command Arguments for Sun_Signal
5098  */
5099 static const char* apzSun_SignalPatch[] = {
5100     "format",
5101     "#ifdef __cplusplus\n\
5102 void\t(*signal(...))(...);\n\
5103 #else\n\
5104 %0\n\
5105 #endif",
5106     (char*)NULL };
5107 
5108 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5109  *
5110  *  Description of Sunos_Matherr_Decl fix
5111  */
5112 tSCC zSunos_Matherr_DeclName[] =
5113      "sunos_matherr_decl";
5114 
5115 /*
5116  *  File name selection pattern
5117  */
5118 tSCC zSunos_Matherr_DeclList[] =
5119   "|math.h|";
5120 /*
5121  *  Machine/OS name selection pattern
5122  */
5123 #define apzSunos_Matherr_DeclMachs (const char**)NULL
5124 
5125 /*
5126  *  content selection pattern - do fix if pattern found
5127  */
5128 tSCC zSunos_Matherr_DeclSelect0[] =
5129        "matherr";
5130 
5131 /*
5132  *  content bypass pattern - skip fix if pattern found
5133  */
5134 tSCC zSunos_Matherr_DeclBypass0[] =
5135        "matherr.*(struct exception|__MATH_EXCEPTION)";
5136 
5137 #define    SUNOS_MATHERR_DECL_TEST_CT  2
5138 static tTestDesc aSunos_Matherr_DeclTests[] = {
5139   { TT_NEGREP,   zSunos_Matherr_DeclBypass0, (regex_t*)NULL },
5140   { TT_EGREP,    zSunos_Matherr_DeclSelect0, (regex_t*)NULL }, };
5141 
5142 /*
5143  *  Fix Command Arguments for Sunos_Matherr_Decl
5144  */
5145 static const char* apzSunos_Matherr_DeclPatch[] = {
5146     "wrap",
5147     "struct exception;\n",
5148     (char*)NULL };
5149 
5150 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5151  *
5152  *  Description of Sunos_Strlen fix
5153  */
5154 tSCC zSunos_StrlenName[] =
5155      "sunos_strlen";
5156 
5157 /*
5158  *  File name selection pattern
5159  */
5160 tSCC zSunos_StrlenList[] =
5161   "|strings.h|";
5162 /*
5163  *  Machine/OS name selection pattern
5164  */
5165 #define apzSunos_StrlenMachs (const char**)NULL
5166 
5167 /*
5168  *  content selection pattern - do fix if pattern found
5169  */
5170 tSCC zSunos_StrlenSelect0[] =
5171        "int[ \t]*strlen\\(\\);(.*)";
5172 
5173 #define    SUNOS_STRLEN_TEST_CT  1
5174 static tTestDesc aSunos_StrlenTests[] = {
5175   { TT_EGREP,    zSunos_StrlenSelect0, (regex_t*)NULL }, };
5176 
5177 /*
5178  *  Fix Command Arguments for Sunos_Strlen
5179  */
5180 static const char* apzSunos_StrlenPatch[] = {
5181     "format",
5182     "__SIZE_TYPE__ strlen();%1",
5183     (char*)NULL };
5184 
5185 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5186  *
5187  *  Description of Svr4__P fix
5188  */
5189 tSCC zSvr4__PName[] =
5190      "svr4__p";
5191 
5192 /*
5193  *  File name selection pattern
5194  */
5195 tSCC zSvr4__PList[] =
5196   "|math.h|floatingpoint.h|";
5197 /*
5198  *  Machine/OS name selection pattern
5199  */
5200 #define apzSvr4__PMachs (const char**)NULL
5201 
5202 /*
5203  *  content selection pattern - do fix if pattern found
5204  */
5205 tSCC zSvr4__PSelect0[] =
5206        "^#define[ \t]+__P.*";
5207 
5208 #define    SVR4__P_TEST_CT  1
5209 static tTestDesc aSvr4__PTests[] = {
5210   { TT_EGREP,    zSvr4__PSelect0, (regex_t*)NULL }, };
5211 
5212 /*
5213  *  Fix Command Arguments for Svr4__P
5214  */
5215 static const char* apzSvr4__PPatch[] = {
5216     "format",
5217     "#ifndef __P\n\
5218 %0\n\
5219 #endif",
5220     (char*)NULL };
5221 
5222 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5223  *
5224  *  Description of Svr4_Disable_Opt fix
5225  */
5226 tSCC zSvr4_Disable_OptName[] =
5227      "svr4_disable_opt";
5228 
5229 /*
5230  *  File name selection pattern
5231  */
5232 tSCC zSvr4_Disable_OptList[] =
5233   "|string.h|";
5234 /*
5235  *  Machine/OS name selection pattern
5236  */
5237 #define apzSvr4_Disable_OptMachs (const char**)NULL
5238 
5239 /*
5240  *  content selection pattern - do fix if pattern found
5241  */
5242 tSCC zSvr4_Disable_OptSelect0[] =
5243        "#define.*__std_hdr_";
5244 
5245 #define    SVR4_DISABLE_OPT_TEST_CT  1
5246 static tTestDesc aSvr4_Disable_OptTests[] = {
5247   { TT_EGREP,    zSvr4_Disable_OptSelect0, (regex_t*)NULL }, };
5248 
5249 /*
5250  *  Fix Command Arguments for Svr4_Disable_Opt
5251  */
5252 static const char* apzSvr4_Disable_OptPatch[] = { "sed",
5253     "-e", "/#define.*__std_hdr_/d",
5254     (char*)NULL };
5255 
5256 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5257  *
5258  *  Description of Svr4_Getcwd fix
5259  */
5260 tSCC zSvr4_GetcwdName[] =
5261      "svr4_getcwd";
5262 
5263 /*
5264  *  File name selection pattern
5265  */
5266 tSCC zSvr4_GetcwdList[] =
5267   "|stdlib.h|unistd.h|prototypes.h|";
5268 /*
5269  *  Machine/OS name selection pattern
5270  */
5271 #define apzSvr4_GetcwdMachs (const char**)NULL
5272 
5273 /*
5274  *  content selection pattern - do fix if pattern found
5275  */
5276 tSCC zSvr4_GetcwdSelect0[] =
5277        "getcwd\\(char \\*, int\\)";
5278 
5279 #define    SVR4_GETCWD_TEST_CT  1
5280 static tTestDesc aSvr4_GetcwdTests[] = {
5281   { TT_EGREP,    zSvr4_GetcwdSelect0, (regex_t*)NULL }, };
5282 
5283 /*
5284  *  Fix Command Arguments for Svr4_Getcwd
5285  */
5286 static const char* apzSvr4_GetcwdPatch[] = {
5287     "format",
5288     "getcwd(char *, size_t)",
5289     (char*)NULL };
5290 
5291 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5292  *
5293  *  Description of Svr4_Profil fix
5294  */
5295 tSCC zSvr4_ProfilName[] =
5296      "svr4_profil";
5297 
5298 /*
5299  *  File name selection pattern
5300  */
5301 tSCC zSvr4_ProfilList[] =
5302   "|stdlib.h|unistd.h|";
5303 /*
5304  *  Machine/OS name selection pattern
5305  */
5306 #define apzSvr4_ProfilMachs (const char**)NULL
5307 
5308 /*
5309  *  content selection pattern - do fix if pattern found
5310  */
5311 tSCC zSvr4_ProfilSelect0[] =
5312        "profil\\(unsigned short \\*, unsigned int, unsigned int, unsigned int\\)";
5313 
5314 #define    SVR4_PROFIL_TEST_CT  1
5315 static tTestDesc aSvr4_ProfilTests[] = {
5316   { TT_EGREP,    zSvr4_ProfilSelect0, (regex_t*)NULL }, };
5317 
5318 /*
5319  *  Fix Command Arguments for Svr4_Profil
5320  */
5321 static const char* apzSvr4_ProfilPatch[] = {
5322     "format",
5323     "profil(unsigned short *, size_t, int, unsigned int)",
5324     (char*)NULL };
5325 
5326 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5327  *
5328  *  Description of Sysv68_String fix
5329  */
5330 tSCC zSysv68_StringName[] =
5331      "sysv68_string";
5332 
5333 /*
5334  *  File name selection pattern
5335  */
5336 tSCC zSysv68_StringList[] =
5337   "|testing.h|string.h|";
5338 /*
5339  *  Machine/OS name selection pattern
5340  */
5341 #define apzSysv68_StringMachs (const char**)NULL
5342 #define SYSV68_STRING_TEST_CT  0
5343 #define aSysv68_StringTests   (tTestDesc*)NULL
5344 
5345 /*
5346  *  Fix Command Arguments for Sysv68_String
5347  */
5348 static const char* apzSysv68_StringPatch[] = { "sed",
5349     "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
5350     "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
5351     "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
5352     "-e", "/^extern char$/N",
5353     "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
5354     "-e", "/^extern int$/N",
5355     "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
5356     "-e", "/^\tstrncmp(),$/N",
5357     "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
5358 extern unsigned int\\\n\
5359 \\2/",
5360     (char*)NULL };
5361 
5362 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5363  *
5364  *  Description of Sysz_Stdlib_For_Sun fix
5365  */
5366 tSCC zSysz_Stdlib_For_SunName[] =
5367      "sysz_stdlib_for_sun";
5368 
5369 /*
5370  *  File name selection pattern
5371  */
5372 tSCC zSysz_Stdlib_For_SunList[] =
5373   "|stdlib.h|";
5374 /*
5375  *  Machine/OS name selection pattern
5376  */
5377 #define apzSysz_Stdlib_For_SunMachs (const char**)NULL
5378 
5379 /*
5380  *  content selection pattern - do fix if pattern found
5381  */
5382 tSCC zSysz_Stdlib_For_SunSelect0[] =
5383        "char[ \t]*\\*[ \t]*(calloc|malloc|realloc|bsearch)[ \t]*\\(";
5384 
5385 #define    SYSZ_STDLIB_FOR_SUN_TEST_CT  1
5386 static tTestDesc aSysz_Stdlib_For_SunTests[] = {
5387   { TT_EGREP,    zSysz_Stdlib_For_SunSelect0, (regex_t*)NULL }, };
5388 
5389 /*
5390  *  Fix Command Arguments for Sysz_Stdlib_For_Sun
5391  */
5392 static const char* apzSysz_Stdlib_For_SunPatch[] = {
5393     "format",
5394     "void *\t%1(",
5395     (char*)NULL };
5396 
5397 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5398  *
5399  *  Description of Thread_Keyword fix
5400  */
5401 tSCC zThread_KeywordName[] =
5402      "thread_keyword";
5403 
5404 /*
5405  *  File name selection pattern
5406  */
5407 tSCC zThread_KeywordList[] =
5408   "|pthread.h|bits/sigthread.h|";
5409 /*
5410  *  Machine/OS name selection pattern
5411  */
5412 #define apzThread_KeywordMachs (const char**)NULL
5413 
5414 /*
5415  *  content selection pattern - do fix if pattern found
5416  */
5417 tSCC zThread_KeywordSelect0[] =
5418        "([* ])__thread([,)])";
5419 
5420 #define    THREAD_KEYWORD_TEST_CT  1
5421 static tTestDesc aThread_KeywordTests[] = {
5422   { TT_EGREP,    zThread_KeywordSelect0, (regex_t*)NULL }, };
5423 
5424 /*
5425  *  Fix Command Arguments for Thread_Keyword
5426  */
5427 static const char* apzThread_KeywordPatch[] = {
5428     "format",
5429     "%1__thr%2",
5430     (char*)NULL };
5431 
5432 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5433  *
5434  *  Description of Tinfo_Cplusplus fix
5435  */
5436 tSCC zTinfo_CplusplusName[] =
5437      "tinfo_cplusplus";
5438 
5439 /*
5440  *  File name selection pattern
5441  */
5442 tSCC zTinfo_CplusplusList[] =
5443   "|tinfo.h|";
5444 /*
5445  *  Machine/OS name selection pattern
5446  */
5447 #define apzTinfo_CplusplusMachs (const char**)NULL
5448 
5449 /*
5450  *  content selection pattern - do fix if pattern found
5451  */
5452 tSCC zTinfo_CplusplusSelect0[] =
5453        "[ \t]_cplusplus";
5454 
5455 #define    TINFO_CPLUSPLUS_TEST_CT  1
5456 static tTestDesc aTinfo_CplusplusTests[] = {
5457   { TT_EGREP,    zTinfo_CplusplusSelect0, (regex_t*)NULL }, };
5458 
5459 /*
5460  *  Fix Command Arguments for Tinfo_Cplusplus
5461  */
5462 static const char* apzTinfo_CplusplusPatch[] = {
5463     "format",
5464     " __cplusplus",
5465     (char*)NULL };
5466 
5467 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5468  *
5469  *  Description of Ultrix_Atexit_Param fix
5470  */
5471 tSCC zUltrix_Atexit_ParamName[] =
5472      "ultrix_atexit_param";
5473 
5474 /*
5475  *  File name selection pattern
5476  */
5477 tSCC zUltrix_Atexit_ParamList[] =
5478   "|stdlib.h|";
5479 /*
5480  *  Machine/OS name selection pattern
5481  */
5482 #define apzUltrix_Atexit_ParamMachs (const char**)NULL
5483 
5484 /*
5485  *  content selection pattern - do fix if pattern found
5486  */
5487 tSCC zUltrix_Atexit_ParamSelect0[] =
5488        "atexit\\(.*\\(\\)";
5489 
5490 #define    ULTRIX_ATEXIT_PARAM_TEST_CT  1
5491 static tTestDesc aUltrix_Atexit_ParamTests[] = {
5492   { TT_EGREP,    zUltrix_Atexit_ParamSelect0, (regex_t*)NULL }, };
5493 
5494 /*
5495  *  Fix Command Arguments for Ultrix_Atexit_Param
5496  */
5497 static const char* apzUltrix_Atexit_ParamPatch[] = {
5498     "format",
5499     "atexit( void (*__func)( void )",
5500     (char*)NULL };
5501 
5502 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5503  *
5504  *  Description of Ultrix_Atof_Param fix
5505  */
5506 tSCC zUltrix_Atof_ParamName[] =
5507      "ultrix_atof_param";
5508 
5509 /*
5510  *  File name selection pattern
5511  */
5512 tSCC zUltrix_Atof_ParamList[] =
5513   "|math.h|";
5514 /*
5515  *  Machine/OS name selection pattern
5516  */
5517 #define apzUltrix_Atof_ParamMachs (const char**)NULL
5518 
5519 /*
5520  *  content selection pattern - do fix if pattern found
5521  */
5522 tSCC zUltrix_Atof_ParamSelect0[] =
5523        "atof\\([ \t]*char";
5524 
5525 #define    ULTRIX_ATOF_PARAM_TEST_CT  1
5526 static tTestDesc aUltrix_Atof_ParamTests[] = {
5527   { TT_EGREP,    zUltrix_Atof_ParamSelect0, (regex_t*)NULL }, };
5528 
5529 /*
5530  *  Fix Command Arguments for Ultrix_Atof_Param
5531  */
5532 static const char* apzUltrix_Atof_ParamPatch[] = {
5533     "format",
5534     "atof(const char",
5535     (char*)NULL };
5536 
5537 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5538  *
5539  *  Description of Ultrix_Const fix
5540  */
5541 tSCC zUltrix_ConstName[] =
5542      "ultrix_const";
5543 
5544 /*
5545  *  File name selection pattern
5546  */
5547 tSCC zUltrix_ConstList[] =
5548   "|stdio.h|";
5549 /*
5550  *  Machine/OS name selection pattern
5551  */
5552 #define apzUltrix_ConstMachs (const char**)NULL
5553 
5554 /*
5555  *  content selection pattern - do fix if pattern found
5556  */
5557 tSCC zUltrix_ConstSelect0[] =
5558        "perror\\( char \\*";
5559 
5560 #define    ULTRIX_CONST_TEST_CT  1
5561 static tTestDesc aUltrix_ConstTests[] = {
5562   { TT_EGREP,    zUltrix_ConstSelect0, (regex_t*)NULL }, };
5563 
5564 /*
5565  *  Fix Command Arguments for Ultrix_Const
5566  */
5567 static const char* apzUltrix_ConstPatch[] = {
5568     "format",
5569     "%1 const %3 *__",
5570     "([ \t*](perror|fputs|fwrite|scanf|fscanf)\\(.*)[ \t]+(char|void) \\*__",
5571     (char*)NULL };
5572 
5573 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5574  *
5575  *  Description of Ultrix_Const2 fix
5576  */
5577 tSCC zUltrix_Const2Name[] =
5578      "ultrix_const2";
5579 
5580 /*
5581  *  File name selection pattern
5582  */
5583 tSCC zUltrix_Const2List[] =
5584   "|stdio.h|";
5585 /*
5586  *  Machine/OS name selection pattern
5587  */
5588 #define apzUltrix_Const2Machs (const char**)NULL
5589 
5590 /*
5591  *  content selection pattern - do fix if pattern found
5592  */
5593 tSCC zUltrix_Const2Select0[] =
5594        "\\*fopen\\( char \\*";
5595 
5596 #define    ULTRIX_CONST2_TEST_CT  1
5597 static tTestDesc aUltrix_Const2Tests[] = {
5598   { TT_EGREP,    zUltrix_Const2Select0, (regex_t*)NULL }, };
5599 
5600 /*
5601  *  Fix Command Arguments for Ultrix_Const2
5602  */
5603 static const char* apzUltrix_Const2Patch[] = {
5604     "format",
5605     "%1( const char *%3, const char *",
5606     "([ \t*](fopen|sscanf|popen|tempnam))\\([ \t]*char[ \t]*\\*([^,]*),[ \t]*char[ \t]*\\*[ \t]*",
5607     (char*)NULL };
5608 
5609 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5610  *
5611  *  Description of Ultrix_Fix_Fixproto fix
5612  */
5613 tSCC zUltrix_Fix_FixprotoName[] =
5614      "ultrix_fix_fixproto";
5615 
5616 /*
5617  *  File name selection pattern
5618  */
5619 tSCC zUltrix_Fix_FixprotoList[] =
5620   "|sys/utsname.h|";
5621 /*
5622  *  Machine/OS name selection pattern
5623  */
5624 #define apzUltrix_Fix_FixprotoMachs (const char**)NULL
5625 
5626 /*
5627  *  content selection pattern - do fix if pattern found
5628  */
5629 tSCC zUltrix_Fix_FixprotoSelect0[] =
5630        "ULTRIX";
5631 
5632 #define    ULTRIX_FIX_FIXPROTO_TEST_CT  1
5633 static tTestDesc aUltrix_Fix_FixprotoTests[] = {
5634   { TT_EGREP,    zUltrix_Fix_FixprotoSelect0, (regex_t*)NULL }, };
5635 
5636 /*
5637  *  Fix Command Arguments for Ultrix_Fix_Fixproto
5638  */
5639 static const char* apzUltrix_Fix_FixprotoPatch[] = {
5640     "format",
5641     "struct utsname;\n\
5642 %0",
5643     "^[ \t]*extern[ \t]*int[ \t]*uname\\(\\);",
5644     (char*)NULL };
5645 
5646 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5647  *
5648  *  Description of Ultrix_Ifdef fix
5649  */
5650 tSCC zUltrix_IfdefName[] =
5651      "ultrix_ifdef";
5652 
5653 /*
5654  *  File name selection pattern
5655  */
5656 tSCC zUltrix_IfdefList[] =
5657   "|sys/file.h|";
5658 /*
5659  *  Machine/OS name selection pattern
5660  */
5661 #define apzUltrix_IfdefMachs (const char**)NULL
5662 
5663 /*
5664  *  content selection pattern - do fix if pattern found
5665  */
5666 tSCC zUltrix_IfdefSelect0[] =
5667        "^#ifdef KERNEL[ \t]+&&";
5668 
5669 #define    ULTRIX_IFDEF_TEST_CT  1
5670 static tTestDesc aUltrix_IfdefTests[] = {
5671   { TT_EGREP,    zUltrix_IfdefSelect0, (regex_t*)NULL }, };
5672 
5673 /*
5674  *  Fix Command Arguments for Ultrix_Ifdef
5675  */
5676 static const char* apzUltrix_IfdefPatch[] = {
5677     "format",
5678     "#if defined(KERNEL) &&",
5679     (char*)NULL };
5680 
5681 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5682  *
5683  *  Description of Ultrix_Math_Ifdef fix
5684  */
5685 tSCC zUltrix_Math_IfdefName[] =
5686      "ultrix_math_ifdef";
5687 
5688 /*
5689  *  File name selection pattern
5690  */
5691 tSCC zUltrix_Math_IfdefList[] =
5692   "|sys/limits.h|float.h|math.h|";
5693 /*
5694  *  Machine/OS name selection pattern
5695  */
5696 #define apzUltrix_Math_IfdefMachs (const char**)NULL
5697 
5698 /*
5699  *  content selection pattern - do fix if pattern found
5700  */
5701 tSCC zUltrix_Math_IfdefSelect0[] =
5702        "^(#if.*)\\|\\|[ \t]+CC\\$[a-z]+";
5703 
5704 #define    ULTRIX_MATH_IFDEF_TEST_CT  1
5705 static tTestDesc aUltrix_Math_IfdefTests[] = {
5706   { TT_EGREP,    zUltrix_Math_IfdefSelect0, (regex_t*)NULL }, };
5707 
5708 /*
5709  *  Fix Command Arguments for Ultrix_Math_Ifdef
5710  */
5711 static const char* apzUltrix_Math_IfdefPatch[] = {
5712     "format",
5713     "%1",
5714     (char*)NULL };
5715 
5716 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5717  *
5718  *  Description of Ultrix_Nested_Ioctl fix
5719  */
5720 tSCC zUltrix_Nested_IoctlName[] =
5721      "ultrix_nested_ioctl";
5722 
5723 /*
5724  *  File name selection pattern
5725  */
5726 tSCC zUltrix_Nested_IoctlList[] =
5727   "|sys/ioctl.h|";
5728 /*
5729  *  Machine/OS name selection pattern
5730  */
5731 #define apzUltrix_Nested_IoctlMachs (const char**)NULL
5732 
5733 /*
5734  *  content selection pattern - do fix if pattern found
5735  */
5736 tSCC zUltrix_Nested_IoctlSelect0[] =
5737        "^/\\* #define SIOCSCREEN";
5738 
5739 #define    ULTRIX_NESTED_IOCTL_TEST_CT  1
5740 static tTestDesc aUltrix_Nested_IoctlTests[] = {
5741   { TT_EGREP,    zUltrix_Nested_IoctlSelect0, (regex_t*)NULL }, };
5742 
5743 /*
5744  *  Fix Command Arguments for Ultrix_Nested_Ioctl
5745  */
5746 static const char* apzUltrix_Nested_IoctlPatch[] = { "sed",
5747     "-e", "/^\\/\\* #define SIOCSCREEN/s@/\\* screend@*//* screend@",
5748     (char*)NULL };
5749 
5750 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5751  *
5752  *  Description of Ultrix_Nested_Svc fix
5753  */
5754 tSCC zUltrix_Nested_SvcName[] =
5755      "ultrix_nested_svc";
5756 
5757 /*
5758  *  File name selection pattern
5759  */
5760 tSCC zUltrix_Nested_SvcList[] =
5761   "|rpc/svc.h|";
5762 /*
5763  *  Machine/OS name selection pattern
5764  */
5765 #define apzUltrix_Nested_SvcMachs (const char**)NULL
5766 
5767 /*
5768  *  content selection pattern - do fix if pattern found
5769  */
5770 tSCC zUltrix_Nested_SvcSelect0[] =
5771        "^ \\*[ \t]*int protocol;  */\\*";
5772 
5773 #define    ULTRIX_NESTED_SVC_TEST_CT  1
5774 static tTestDesc aUltrix_Nested_SvcTests[] = {
5775   { TT_EGREP,    zUltrix_Nested_SvcSelect0, (regex_t*)NULL }, };
5776 
5777 /*
5778  *  Fix Command Arguments for Ultrix_Nested_Svc
5779  */
5780 static const char* apzUltrix_Nested_SvcPatch[] = { "sed",
5781     "-e", "s@^\\( \\*\tint protocol;  \\)/\\*@\\1*/ /*@",
5782     (char*)NULL };
5783 
5784 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5785  *
5786  *  Description of Ultrix_Stat fix
5787  */
5788 tSCC zUltrix_StatName[] =
5789      "ultrix_stat";
5790 
5791 /*
5792  *  File name selection pattern
5793  */
5794 tSCC zUltrix_StatList[] =
5795   "|sys/stat.h|";
5796 /*
5797  *  Machine/OS name selection pattern
5798  */
5799 #define apzUltrix_StatMachs (const char**)NULL
5800 
5801 /*
5802  *  content selection pattern - do fix if pattern found
5803  */
5804 tSCC zUltrix_StatSelect0[] =
5805        "@\\(#\\)stat\\.h.*6\\.1.*\\(ULTRIX\\)";
5806 
5807 #define    ULTRIX_STAT_TEST_CT  1
5808 static tTestDesc aUltrix_StatTests[] = {
5809   { TT_EGREP,    zUltrix_StatSelect0, (regex_t*)NULL }, };
5810 
5811 /*
5812  *  Fix Command Arguments for Ultrix_Stat
5813  */
5814 static const char* apzUltrix_StatPatch[] = { "sed",
5815     "-e", "/^#define[ \t]S_IFPORT[ \t]*S_IFIFO$/a\\\n\
5816 \\\n\
5817 /* macro to test for symbolic link */\\\n\
5818 #define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK)\\\n\n",
5819     "-e", "/^[ \t]*fstat(),$/a\\\n\
5820 \tlstat(),\n",
5821     (char*)NULL };
5822 
5823 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5824  *
5825  *  Description of Ultrix_Static fix
5826  */
5827 tSCC zUltrix_StaticName[] =
5828      "ultrix_static";
5829 
5830 /*
5831  *  File name selection pattern
5832  */
5833 tSCC zUltrix_StaticList[] =
5834   "|machine/cpu.h|";
5835 /*
5836  *  Machine/OS name selection pattern
5837  */
5838 #define apzUltrix_StaticMachs (const char**)NULL
5839 
5840 /*
5841  *  content selection pattern - do fix if pattern found
5842  */
5843 tSCC zUltrix_StaticSelect0[] =
5844        "#include \"r[34]_cpu";
5845 
5846 #define    ULTRIX_STATIC_TEST_CT  1
5847 static tTestDesc aUltrix_StaticTests[] = {
5848   { TT_EGREP,    zUltrix_StaticSelect0, (regex_t*)NULL }, };
5849 
5850 /*
5851  *  Fix Command Arguments for Ultrix_Static
5852  */
5853 static const char* apzUltrix_StaticPatch[] = { "sed",
5854     "-e", "s/^static struct tlb_pid_state/struct tlb_pid_state/",
5855     "-e", "s/^#include \"r3_cpu\\.h\"$/#include <machine\\/r3_cpu\\.h>/",
5856     "-e", "s/^#include \"r4_cpu\\.h\"$/#include <machine\\/r4_cpu\\.h>/",
5857     (char*)NULL };
5858 
5859 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5860  *
5861  *  Description of Ultrix_Strings fix
5862  */
5863 tSCC zUltrix_StringsName[] =
5864      "ultrix_strings";
5865 
5866 /*
5867  *  File name selection pattern
5868  */
5869 tSCC zUltrix_StringsList[] =
5870   "|strings.h|";
5871 /*
5872  *  Machine/OS name selection pattern
5873  */
5874 #define apzUltrix_StringsMachs (const char**)NULL
5875 
5876 /*
5877  *  content selection pattern - do fix if pattern found
5878  */
5879 tSCC zUltrix_StringsSelect0[] =
5880        "@\\(#\\)strings\\.h.*6\\.1.*\\(ULTRIX\\)";
5881 
5882 #define    ULTRIX_STRINGS_TEST_CT  1
5883 static tTestDesc aUltrix_StringsTests[] = {
5884   { TT_EGREP,    zUltrix_StringsSelect0, (regex_t*)NULL }, };
5885 
5886 /*
5887  *  Fix Command Arguments for Ultrix_Strings
5888  */
5889 static const char* apzUltrix_StringsPatch[] = {
5890     "wrap",
5891     (char*)NULL };
5892 
5893 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5894  *
5895  *  Description of Undefine_Null fix
5896  */
5897 tSCC zUndefine_NullName[] =
5898      "undefine_null";
5899 
5900 /*
5901  *  File name selection pattern
5902  */
5903 #define zUndefine_NullList (char*)NULL
5904 /*
5905  *  Machine/OS name selection pattern
5906  */
5907 #define apzUndefine_NullMachs (const char**)NULL
5908 
5909 /*
5910  *  content selection pattern - do fix if pattern found
5911  */
5912 tSCC zUndefine_NullSelect0[] =
5913        "^#[ \t]*define[ \t]+NULL[ \t]";
5914 
5915 /*
5916  *  content bypass pattern - skip fix if pattern found
5917  */
5918 tSCC zUndefine_NullBypass0[] =
5919        "#[ \t]*(ifn|un)def[ \t]+NULL($|[ \t\r])";
5920 
5921 #define    UNDEFINE_NULL_TEST_CT  2
5922 static tTestDesc aUndefine_NullTests[] = {
5923   { TT_NEGREP,   zUndefine_NullBypass0, (regex_t*)NULL },
5924   { TT_EGREP,    zUndefine_NullSelect0, (regex_t*)NULL }, };
5925 
5926 /*
5927  *  Fix Command Arguments for Undefine_Null
5928  */
5929 static const char* apzUndefine_NullPatch[] = {
5930     "format",
5931     "#ifndef NULL%2\n\
5932 #define NULL%1%2\n\
5933 #endif%2\n",
5934     "^#[ \t]*define[ \t]*[ \t]NULL([^\r\n\
5935 ]+)([\r]*)\n",
5936     (char*)NULL };
5937 
5938 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5939  *
5940  *  Description of Unicosmk_Restrict fix
5941  */
5942 tSCC zUnicosmk_RestrictName[] =
5943      "unicosmk_restrict";
5944 
5945 /*
5946  *  File name selection pattern
5947  */
5948 tSCC zUnicosmk_RestrictList[] =
5949   "|stdio.h|stdlib.h|wchar.h|";
5950 /*
5951  *  Machine/OS name selection pattern
5952  */
5953 tSCC* apzUnicosmk_RestrictMachs[] = {
5954         "*-*-unicosmk*",
5955         (const char*)NULL };
5956 
5957 /*
5958  *  content selection pattern - do fix if pattern found
5959  */
5960 tSCC zUnicosmk_RestrictSelect0[] =
5961        "(\\*[ \t]*)restrict([ \t]+)";
5962 
5963 #define    UNICOSMK_RESTRICT_TEST_CT  1
5964 static tTestDesc aUnicosmk_RestrictTests[] = {
5965   { TT_EGREP,    zUnicosmk_RestrictSelect0, (regex_t*)NULL }, };
5966 
5967 /*
5968  *  Fix Command Arguments for Unicosmk_Restrict
5969  */
5970 static const char* apzUnicosmk_RestrictPatch[] = {
5971     "format",
5972     "%1__restrict__%2",
5973     (char*)NULL };
5974 
5975 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5976  *
5977  *  Description of Uw7_Byteorder_Fix fix
5978  */
5979 tSCC zUw7_Byteorder_FixName[] =
5980      "uw7_byteorder_fix";
5981 
5982 /*
5983  *  File name selection pattern
5984  */
5985 tSCC zUw7_Byteorder_FixList[] =
5986   "|arpa/inet.h|";
5987 /*
5988  *  Machine/OS name selection pattern
5989  */
5990 tSCC* apzUw7_Byteorder_FixMachs[] = {
5991         "*-*-sysv4*",
5992         "i?86-*-sysv5*",
5993         "i?86-*-udk*",
5994         "i?86-*-solaris2.[0-4]",
5995         "powerpcle-*-solaris2.[0-4]",
5996         "sparc-*-solaris2.[0-4]",
5997         (const char*)NULL };
5998 
5999 /*
6000  *  content selection pattern - do fix if pattern found
6001  */
6002 tSCC zUw7_Byteorder_FixSelect0[] =
6003        "in_port_t";
6004 
6005 /*
6006  *  perform the 'test' shell command - do fix on success
6007  */
6008 tSCC zUw7_Byteorder_FixTest0[] =
6009        "-f sys/byteorder.h";
6010 
6011 #define    UW7_BYTEORDER_FIX_TEST_CT  2
6012 static tTestDesc aUw7_Byteorder_FixTests[] = {
6013   { TT_TEST,     zUw7_Byteorder_FixTest0,   0 /* unused */ },
6014   { TT_EGREP,    zUw7_Byteorder_FixSelect0, (regex_t*)NULL }, };
6015 
6016 /*
6017  *  Fix Command Arguments for Uw7_Byteorder_Fix
6018  */
6019 static const char* apzUw7_Byteorder_FixPatch[] = {
6020     "format",
6021     "",
6022     "^extern.*[ \t](htons|ntohs).*\\(in_port_t\\).*;",
6023     (char*)NULL };
6024 
6025 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6026  *
6027  *  Description of Va_I960_Macro fix
6028  */
6029 tSCC zVa_I960_MacroName[] =
6030      "va_i960_macro";
6031 
6032 /*
6033  *  File name selection pattern
6034  */
6035 tSCC zVa_I960_MacroList[] =
6036   "|arch/i960/archI960.h|";
6037 /*
6038  *  Machine/OS name selection pattern
6039  */
6040 #define apzVa_I960_MacroMachs (const char**)NULL
6041 
6042 /*
6043  *  content selection pattern - do fix if pattern found
6044  */
6045 tSCC zVa_I960_MacroSelect0[] =
6046        "__(vsiz|vali|vpad|alignof__)";
6047 
6048 #define    VA_I960_MACRO_TEST_CT  1
6049 static tTestDesc aVa_I960_MacroTests[] = {
6050   { TT_EGREP,    zVa_I960_MacroSelect0, (regex_t*)NULL }, };
6051 
6052 /*
6053  *  Fix Command Arguments for Va_I960_Macro
6054  */
6055 static const char* apzVa_I960_MacroPatch[] = {
6056     "format",
6057     "__vx%1",
6058     (char*)NULL };
6059 
6060 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6061  *
6062  *  Description of Void_Null fix
6063  */
6064 tSCC zVoid_NullName[] =
6065      "void_null";
6066 
6067 /*
6068  *  File name selection pattern
6069  */
6070 tSCC zVoid_NullList[] =
6071   "|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|";
6072 /*
6073  *  Machine/OS name selection pattern
6074  */
6075 #define apzVoid_NullMachs (const char**)NULL
6076 
6077 /*
6078  *  content selection pattern - do fix if pattern found
6079  */
6080 tSCC zVoid_NullSelect0[] =
6081        "^#[ \t]*define[ \t]+NULL[ \t]+\\(\\(void[ \t]*\\*\\)0\\)";
6082 
6083 #define    VOID_NULL_TEST_CT  1
6084 static tTestDesc aVoid_NullTests[] = {
6085   { TT_EGREP,    zVoid_NullSelect0, (regex_t*)NULL }, };
6086 
6087 /*
6088  *  Fix Command Arguments for Void_Null
6089  */
6090 static const char* apzVoid_NullPatch[] = {
6091     "format",
6092     "#define NULL 0",
6093     (char*)NULL };
6094 
6095 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6096  *
6097  *  Description of Vxworks_Gcc_Problem fix
6098  */
6099 tSCC zVxworks_Gcc_ProblemName[] =
6100      "vxworks_gcc_problem";
6101 
6102 /*
6103  *  File name selection pattern
6104  */
6105 tSCC zVxworks_Gcc_ProblemList[] =
6106   "|types/vxTypesBase.h|";
6107 /*
6108  *  Machine/OS name selection pattern
6109  */
6110 #define apzVxworks_Gcc_ProblemMachs (const char**)NULL
6111 
6112 /*
6113  *  content selection pattern - do fix if pattern found
6114  */
6115 tSCC zVxworks_Gcc_ProblemSelect0[] =
6116        "__GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__";
6117 
6118 #define    VXWORKS_GCC_PROBLEM_TEST_CT  1
6119 static tTestDesc aVxworks_Gcc_ProblemTests[] = {
6120   { TT_EGREP,    zVxworks_Gcc_ProblemSelect0, (regex_t*)NULL }, };
6121 
6122 /*
6123  *  Fix Command Arguments for Vxworks_Gcc_Problem
6124  */
6125 static const char* apzVxworks_Gcc_ProblemPatch[] = { "sed",
6126     "-e", "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
6127     "-e", "/[ \t]size_t/i\\\n\
6128 #ifndef _GCC_SIZE_T\\\n\
6129 #define _GCC_SIZE_T\n",
6130     "-e", "/[ \t]size_t/a\\\n\
6131 #endif\n",
6132     "-e", "/[ \t]ptrdiff_t/i\\\n\
6133 #ifndef _GCC_PTRDIFF_T\\\n\
6134 #define _GCC_PTRDIFF_T\n",
6135     "-e", "/[ \t]ptrdiff_t/a\\\n\
6136 #endif\n",
6137     "-e", "/[ \t]wchar_t/i\\\n\
6138 #ifndef _GCC_WCHAR_T\\\n\
6139 #define _GCC_WCHAR_T\n",
6140     "-e", "/[ \t]wchar_t/a\\\n\
6141 #endif\n",
6142     (char*)NULL };
6143 
6144 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6145  *
6146  *  Description of Vxworks_Needs_Vxtypes fix
6147  */
6148 tSCC zVxworks_Needs_VxtypesName[] =
6149      "vxworks_needs_vxtypes";
6150 
6151 /*
6152  *  File name selection pattern
6153  */
6154 tSCC zVxworks_Needs_VxtypesList[] =
6155   "|time.h|";
6156 /*
6157  *  Machine/OS name selection pattern
6158  */
6159 #define apzVxworks_Needs_VxtypesMachs (const char**)NULL
6160 
6161 /*
6162  *  content selection pattern - do fix if pattern found
6163  */
6164 tSCC zVxworks_Needs_VxtypesSelect0[] =
6165        "uint_t([ \t]+_clocks_per_sec)";
6166 
6167 #define    VXWORKS_NEEDS_VXTYPES_TEST_CT  1
6168 static tTestDesc aVxworks_Needs_VxtypesTests[] = {
6169   { TT_EGREP,    zVxworks_Needs_VxtypesSelect0, (regex_t*)NULL }, };
6170 
6171 /*
6172  *  Fix Command Arguments for Vxworks_Needs_Vxtypes
6173  */
6174 static const char* apzVxworks_Needs_VxtypesPatch[] = {
6175     "format",
6176     "unsigned int%1",
6177     (char*)NULL };
6178 
6179 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6180  *
6181  *  Description of Vxworks_Needs_Vxworks fix
6182  */
6183 tSCC zVxworks_Needs_VxworksName[] =
6184      "vxworks_needs_vxworks";
6185 
6186 /*
6187  *  File name selection pattern
6188  */
6189 tSCC zVxworks_Needs_VxworksList[] =
6190   "|sys/stat.h|";
6191 /*
6192  *  Machine/OS name selection pattern
6193  */
6194 #define apzVxworks_Needs_VxworksMachs (const char**)NULL
6195 
6196 /*
6197  *  content selection pattern - do fix if pattern found
6198  */
6199 tSCC zVxworks_Needs_VxworksSelect0[] =
6200        "#[ \t]define[ \t]+__INCstath";
6201 
6202 /*
6203  *  perform the 'test' shell command - do fix on success
6204  */
6205 tSCC zVxworks_Needs_VxworksTest0[] =
6206        " -r types/vxTypesOld.h";
6207 tSCC zVxworks_Needs_VxworksTest1[] =
6208        " -n \"`egrep '#include' $file`\"";
6209 tSCC zVxworks_Needs_VxworksTest2[] =
6210        " -n \"`egrep ULONG $file`\"";
6211 
6212 #define    VXWORKS_NEEDS_VXWORKS_TEST_CT  4
6213 static tTestDesc aVxworks_Needs_VxworksTests[] = {
6214   { TT_TEST,     zVxworks_Needs_VxworksTest0,   0 /* unused */ },
6215   { TT_TEST,     zVxworks_Needs_VxworksTest1,   0 /* unused */ },
6216   { TT_TEST,     zVxworks_Needs_VxworksTest2,   0 /* unused */ },
6217   { TT_EGREP,    zVxworks_Needs_VxworksSelect0, (regex_t*)NULL }, };
6218 
6219 /*
6220  *  Fix Command Arguments for Vxworks_Needs_Vxworks
6221  */
6222 static const char* apzVxworks_Needs_VxworksPatch[] = { "sed",
6223     "-e", "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n\
6224 #include <types/vxTypesOld.h>\n",
6225     (char*)NULL };
6226 
6227 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6228  *
6229  *  Description of Vxworks_Time fix
6230  */
6231 tSCC zVxworks_TimeName[] =
6232      "vxworks_time";
6233 
6234 /*
6235  *  File name selection pattern
6236  */
6237 tSCC zVxworks_TimeList[] =
6238   "|time.h|";
6239 /*
6240  *  Machine/OS name selection pattern
6241  */
6242 #define apzVxworks_TimeMachs (const char**)NULL
6243 
6244 /*
6245  *  content selection pattern - do fix if pattern found
6246  */
6247 tSCC zVxworks_TimeSelect0[] =
6248        "#[ \t]*define[ \t]+VOIDFUNCPTR[ \t].*";
6249 
6250 /*
6251  *  perform the 'test' shell command - do fix on success
6252  */
6253 tSCC zVxworks_TimeTest0[] =
6254        " -r vxWorks.h";
6255 
6256 #define    VXWORKS_TIME_TEST_CT  2
6257 static tTestDesc aVxworks_TimeTests[] = {
6258   { TT_TEST,     zVxworks_TimeTest0,   0 /* unused */ },
6259   { TT_EGREP,    zVxworks_TimeSelect0, (regex_t*)NULL }, };
6260 
6261 /*
6262  *  Fix Command Arguments for Vxworks_Time
6263  */
6264 static const char* apzVxworks_TimePatch[] = {
6265     "format",
6266     "#ifndef __gcc_VOIDFUNCPTR_defined\n\
6267 #ifdef __cplusplus\n\
6268 typedef void (*__gcc_VOIDFUNCPTR) (...);\n\
6269 #else\n\
6270 typedef void (*__gcc_VOIDFUNCPTR) ();\n\
6271 #endif\n\
6272 #define __gcc_VOIDFUNCPTR_defined\n\
6273 #endif\n\
6274 #define VOIDFUNCPTR __gcc_VOIDFUNCPTR",
6275     (char*)NULL };
6276 
6277 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6278  *
6279  *  Description of Windiss_Math1 fix
6280  */
6281 tSCC zWindiss_Math1Name[] =
6282      "windiss_math1";
6283 
6284 /*
6285  *  File name selection pattern
6286  */
6287 tSCC zWindiss_Math1List[] =
6288   "|math.h|";
6289 /*
6290  *  Machine/OS name selection pattern
6291  */
6292 tSCC* apzWindiss_Math1Machs[] = {
6293         "*-*-windiss",
6294         (const char*)NULL };
6295 #define WINDISS_MATH1_TEST_CT  0
6296 #define aWindiss_Math1Tests   (tTestDesc*)NULL
6297 
6298 /*
6299  *  Fix Command Arguments for Windiss_Math1
6300  */
6301 static const char* apzWindiss_Math1Patch[] = { "sed",
6302     "-e", "s|inline long double cosl.*|#ifndef __GNUC__|",
6303     (char*)NULL };
6304 
6305 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6306  *
6307  *  Description of Windiss_Math2 fix
6308  */
6309 tSCC zWindiss_Math2Name[] =
6310      "windiss_math2";
6311 
6312 /*
6313  *  File name selection pattern
6314  */
6315 tSCC zWindiss_Math2List[] =
6316   "|math.h|";
6317 /*
6318  *  Machine/OS name selection pattern
6319  */
6320 tSCC* apzWindiss_Math2Machs[] = {
6321         "*-*-windiss",
6322         (const char*)NULL };
6323 #define WINDISS_MATH2_TEST_CT  0
6324 #define aWindiss_Math2Tests   (tTestDesc*)NULL
6325 
6326 /*
6327  *  Fix Command Arguments for Windiss_Math2
6328  */
6329 static const char* apzWindiss_Math2Patch[] = { "sed",
6330     "-e", "s|/\\* long double declarations \\*/|#endif /* __GNUC__ */|",
6331     (char*)NULL };
6332 
6333 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6334  *
6335  *  Description of Windiss_Valist fix
6336  */
6337 tSCC zWindiss_ValistName[] =
6338      "windiss_valist";
6339 
6340 /*
6341  *  File name selection pattern
6342  */
6343 #define zWindiss_ValistList (char*)NULL
6344 /*
6345  *  Machine/OS name selection pattern
6346  */
6347 tSCC* apzWindiss_ValistMachs[] = {
6348         "*-*-windiss",
6349         (const char*)NULL };
6350 
6351 /*
6352  *  content selection pattern - do fix if pattern found
6353  */
6354 tSCC zWindiss_ValistSelect0[] =
6355        "(#include.*)diab/va_list.h";
6356 
6357 #define    WINDISS_VALIST_TEST_CT  1
6358 static tTestDesc aWindiss_ValistTests[] = {
6359   { TT_EGREP,    zWindiss_ValistSelect0, (regex_t*)NULL }, };
6360 
6361 /*
6362  *  Fix Command Arguments for Windiss_Valist
6363  */
6364 static const char* apzWindiss_ValistPatch[] = { "sed",
6365     "-e", "s|diab/va_list.h|stdarg.h|",
6366     (char*)NULL };
6367 
6368 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6369  *
6370  *  Description of X11_Class fix
6371  */
6372 tSCC zX11_ClassName[] =
6373      "x11_class";
6374 
6375 /*
6376  *  File name selection pattern
6377  */
6378 tSCC zX11_ClassList[] =
6379   "|X11/ShellP.h|";
6380 /*
6381  *  Machine/OS name selection pattern
6382  */
6383 #define apzX11_ClassMachs (const char**)NULL
6384 
6385 /*
6386  *  content selection pattern - do fix if pattern found
6387  */
6388 tSCC zX11_ClassSelect0[] =
6389        "^([ \t]*char \\*)class;(.*)";
6390 
6391 /*
6392  *  content bypass pattern - skip fix if pattern found
6393  */
6394 tSCC zX11_ClassBypass0[] =
6395        "__cplusplus";
6396 
6397 #define    X11_CLASS_TEST_CT  2
6398 static tTestDesc aX11_ClassTests[] = {
6399   { TT_NEGREP,   zX11_ClassBypass0, (regex_t*)NULL },
6400   { TT_EGREP,    zX11_ClassSelect0, (regex_t*)NULL }, };
6401 
6402 /*
6403  *  Fix Command Arguments for X11_Class
6404  */
6405 static const char* apzX11_ClassPatch[] = {
6406     "format",
6407     "#ifdef __cplusplus\n\
6408 %1c_class;%2\n\
6409 #else\n\
6410 %1class;%2\n\
6411 #endif",
6412     (char*)NULL };
6413 
6414 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6415  *
6416  *  Description of X11_Class_Usage fix
6417  */
6418 tSCC zX11_Class_UsageName[] =
6419      "x11_class_usage";
6420 
6421 /*
6422  *  File name selection pattern
6423  */
6424 tSCC zX11_Class_UsageList[] =
6425   "|Xm/BaseClassI.h|";
6426 /*
6427  *  Machine/OS name selection pattern
6428  */
6429 #define apzX11_Class_UsageMachs (const char**)NULL
6430 
6431 /*
6432  *  content selection pattern - do fix if pattern found
6433  */
6434 tSCC zX11_Class_UsageSelect0[] =
6435        " class\\)";
6436 
6437 /*
6438  *  content bypass pattern - skip fix if pattern found
6439  */
6440 tSCC zX11_Class_UsageBypass0[] =
6441        "__cplusplus";
6442 
6443 #define    X11_CLASS_USAGE_TEST_CT  2
6444 static tTestDesc aX11_Class_UsageTests[] = {
6445   { TT_NEGREP,   zX11_Class_UsageBypass0, (regex_t*)NULL },
6446   { TT_EGREP,    zX11_Class_UsageSelect0, (regex_t*)NULL }, };
6447 
6448 /*
6449  *  Fix Command Arguments for X11_Class_Usage
6450  */
6451 static const char* apzX11_Class_UsagePatch[] = {
6452     "format",
6453     " c_class)",
6454     (char*)NULL };
6455 
6456 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6457  *
6458  *  Description of X11_New fix
6459  */
6460 tSCC zX11_NewName[] =
6461      "x11_new";
6462 
6463 /*
6464  *  File name selection pattern
6465  */
6466 tSCC zX11_NewList[] =
6467   "|Xm/Traversal.h|";
6468 /*
6469  *  Machine/OS name selection pattern
6470  */
6471 #define apzX11_NewMachs (const char**)NULL
6472 
6473 /*
6474  *  content bypass pattern - skip fix if pattern found
6475  */
6476 tSCC zX11_NewBypass0[] =
6477        "__cplusplus";
6478 
6479 #define    X11_NEW_TEST_CT  1
6480 static tTestDesc aX11_NewTests[] = {
6481   { TT_NEGREP,   zX11_NewBypass0, (regex_t*)NULL }, };
6482 
6483 /*
6484  *  Fix Command Arguments for X11_New
6485  */
6486 static const char* apzX11_NewPatch[] = { "sed",
6487     "-e", "/Widget\told, new;/i\\\n\
6488 #ifdef __cplusplus\\\n\
6489 \tWidget\told, c_new;\\\n\
6490 #else\n",
6491     "-e", "/Widget\told, new;/a\\\n\
6492 #endif\n",
6493     "-e", "s/Widget new,/Widget c_new,/g",
6494     (char*)NULL };
6495 
6496 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6497  *
6498  *  Description of X11_Sprintf fix
6499  */
6500 tSCC zX11_SprintfName[] =
6501      "x11_sprintf";
6502 
6503 /*
6504  *  File name selection pattern
6505  */
6506 tSCC zX11_SprintfList[] =
6507   "|X11/Xmu.h|X11/Xmu/Xmu.h|";
6508 /*
6509  *  Machine/OS name selection pattern
6510  */
6511 #define apzX11_SprintfMachs (const char**)NULL
6512 
6513 /*
6514  *  content selection pattern - do fix if pattern found
6515  */
6516 tSCC zX11_SprintfSelect0[] =
6517        "^extern char \\*\tsprintf\\(\\);$";
6518 
6519 #define    X11_SPRINTF_TEST_CT  1
6520 static tTestDesc aX11_SprintfTests[] = {
6521   { TT_EGREP,    zX11_SprintfSelect0, (regex_t*)NULL }, };
6522 
6523 /*
6524  *  Fix Command Arguments for X11_Sprintf
6525  */
6526 static const char* apzX11_SprintfPatch[] = {
6527     "format",
6528     "#ifndef __STDC__\n\
6529 %0\n\
6530 #endif /* !defined __STDC__ */",
6531     (char*)NULL };
6532 
6533 
6534 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6535  *
6536  *  List of all fixes
6537  */
6538 #define REGEX_COUNT          180
6539 #define MACH_LIST_SIZE_LIMIT 334
6540 #define FIX_COUNT            166
6541 
6542 /*
6543  *  Enumerate the fixes
6544  */
6545 typedef enum {
6546     AAB_DGUX_INT_VARARGS_FIXIDX,
6547     AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
6548     AAB_FD_ZERO_GNU_TYPES_H_FIXIDX,
6549     AAB_FD_ZERO_SELECTBITS_H_FIXIDX,
6550     AAB_SOLARIS_SYS_VARARGS_H_FIXIDX,
6551     AAB_SUN_MEMCPY_FIXIDX,
6552     AAB_SVR4_REPLACE_BYTEORDER_FIXIDX,
6553     AAB_ULTRIX_ANSI_COMPAT_FIXIDX,
6554     AAB_ULTRIX_LIMITS_FIXIDX,
6555     AAB_ULTRIX_MEMORY_FIXIDX,
6556     AAB_ULTRIX_STRING_FIXIDX,
6557     AIX_PTHREAD_FIXIDX,
6558     AIX_SYSMACHINE_FIXIDX,
6559     AIX_SYSWAIT_FIXIDX,
6560     AIX_VOLATILE_FIXIDX,
6561     ALPHA___ASSERT_FIXIDX,
6562     ALPHA___EXTERN_PREFIX_FIXIDX,
6563     ALPHA_ASSERT_FIXIDX,
6564     ALPHA_GETOPT_FIXIDX,
6565     ALPHA_PARENS_FIXIDX,
6566     ALPHA_PTHREAD_GCC_FIXIDX,
6567     ALPHA_SBRK_FIXIDX,
6568     ARM_NORCROFT_HINT_FIXIDX,
6569     ARM_WCHAR_FIXIDX,
6570     AUX_ASM_FIXIDX,
6571     AVOID_BOOL_DEFINE_FIXIDX,
6572     AVOID_BOOL_TYPE_FIXIDX,
6573     AVOID_WCHAR_T_TYPE_FIXIDX,
6574     BAD_LVAL_FIXIDX,
6575     BAD_STRUCT_TERM_FIXIDX,
6576     BADQUOTE_FIXIDX,
6577     BROKEN_ASSERT_STDIO_FIXIDX,
6578     BROKEN_ASSERT_STDLIB_FIXIDX,
6579     BROKEN_CABS_FIXIDX,
6580     CTRL_QUOTES_DEF_FIXIDX,
6581     CTRL_QUOTES_USE_FIXIDX,
6582     CXX_UNREADY_FIXIDX,
6583     DEC_INTERN_ASM_FIXIDX,
6584     DJGPP_WCHAR_H_FIXIDX,
6585     ECD_CURSOR_FIXIDX,
6586     FIX_HEADER_BREAKAGE_FIXIDX,
6587     FREEBSD_GCC3_BREAKAGE_FIXIDX,
6588     GNU_TYPES_FIXIDX,
6589     HP_INLINE_FIXIDX,
6590     HP_SYSFILE_FIXIDX,
6591     HPUX10_CPP_POW_INLINE_FIXIDX,
6592     HPUX11_CPP_POW_INLINE_FIXIDX,
6593     HPUX10_CTYPE_DECLARATIONS1_FIXIDX,
6594     HPUX10_CTYPE_DECLARATIONS2_FIXIDX,
6595     HPUX11_ABS_FIXIDX,
6596     HPUX11_FABSF_FIXIDX,
6597     HPUX11_SIZE_T_FIXIDX,
6598     HPUX11_UINT32_C_FIXIDX,
6599     HPUX11_VSNPRINTF_FIXIDX,
6600     HPUX11_SNPRINTF_FIXIDX,
6601     HPUX8_BOGUS_INLINES_FIXIDX,
6602     HPUX_CTYPE_MACROS_FIXIDX,
6603     HPUX_LONG_DOUBLE_FIXIDX,
6604     HPUX_MAXINT_FIXIDX,
6605     HPUX_SYSTIME_FIXIDX,
6606     INT_ABORT_FREE_AND_EXIT_FIXIDX,
6607     IO_QUOTES_DEF_FIXIDX,
6608     IO_QUOTES_USE_FIXIDX,
6609     IP_MISSING_SEMI_FIXIDX,
6610     IRIX___RESTRICT_FIXIDX,
6611     IRIX___GENERIC1_FIXIDX,
6612     IRIX___GENERIC2_FIXIDX,
6613     IRIX_ASM_APOSTROPHE_FIXIDX,
6614     IRIX_LIMITS_CONST_FIXIDX,
6615     IRIX_SOCKLEN_T_FIXIDX,
6616     IRIX_STDIO_VA_LIST_FIXIDX,
6617     IRIX_WCSFTIME_FIXIDX,
6618     ISC_FMOD_FIXIDX,
6619     ISC_OMITS_WITH_STDC_FIXIDX,
6620     KANDR_CONCAT_FIXIDX,
6621     LIBC1_G_VA_LIST_FIXIDX,
6622     LIBC1_IFDEFD_MEMX_FIXIDX,
6623     LIMITS_IFNDEFS_FIXIDX,
6624     LYNX_VOID_INT_FIXIDX,
6625     LYNXOS_FCNTL_PROTO_FIXIDX,
6626     M88K_BAD_HYPOT_OPT_FIXIDX,
6627     M88K_BAD_S_IF_FIXIDX,
6628     M88K_MULTI_INCL_FIXIDX,
6629     MACHINE_ANSI_H_VA_LIST_FIXIDX,
6630     MACHINE_NAME_FIXIDX,
6631     MATH_EXCEPTION_FIXIDX,
6632     MATH_HUGE_VAL_FROM_DBL_MAX_FIXIDX,
6633     MATH_HUGE_VAL_IFNDEF_FIXIDX,
6634     NESTED_AUTH_DES_FIXIDX,
6635     NESTED_MOTOROLA_FIXIDX,
6636     NESTED_SYS_LIMITS_FIXIDX,
6637     NEWS_OS_RECURSION_FIXIDX,
6638     NEXT_MATH_PREFIX_FIXIDX,
6639     NEXT_TEMPLATE_FIXIDX,
6640     NEXT_VOLITILE_FIXIDX,
6641     NEXT_WAIT_UNION_FIXIDX,
6642     NODEENT_SYNTAX_FIXIDX,
6643     OBSTACK_LVALUE_CAST_FIXIDX,
6644     OSF_NAMESPACE_A_FIXIDX,
6645     OSF_NAMESPACE_C_FIXIDX,
6646     PTHREAD_PAGE_SIZE_FIXIDX,
6647     READ_RET_TYPE_FIXIDX,
6648     RS6000_DOUBLE_FIXIDX,
6649     RS6000_FCHMOD_FIXIDX,
6650     RS6000_PARAM_FIXIDX,
6651     SCO_MATH_FIXIDX,
6652     SCO_REGSET_FIXIDX,
6653     SCO_STRING_FIXIDX,
6654     SCO_STATIC_FUNC_FIXIDX,
6655     SCO_UTIME_FIXIDX,
6656     SOLARIS_MUTEX_INIT_1_FIXIDX,
6657     SOLARIS_MUTEX_INIT_2_FIXIDX,
6658     SOLARIS_STDIO_TAG_FIXIDX,
6659     SOLARIS_WIDEC_FIXIDX,
6660     STATSSWTCH_FIXIDX,
6661     STDIO_STDARG_H_FIXIDX,
6662     STDIO_VA_LIST_FIXIDX,
6663     STRICT_ANSI_NOT_FIXIDX,
6664     STRICT_ANSI_NOT_CTD_FIXIDX,
6665     STRICT_ANSI_ONLY_FIXIDX,
6666     STRUCT_FILE_FIXIDX,
6667     STRUCT_SOCKADDR_FIXIDX,
6668     SUN_AUTH_PROTO_FIXIDX,
6669     SUN_BOGUS_IFDEF_FIXIDX,
6670     SUN_CATMACRO_FIXIDX,
6671     SUN_MALLOC_FIXIDX,
6672     SUN_RUSERS_SEMI_FIXIDX,
6673     SUN_SIGNAL_FIXIDX,
6674     SUNOS_MATHERR_DECL_FIXIDX,
6675     SUNOS_STRLEN_FIXIDX,
6676     SVR4__P_FIXIDX,
6677     SVR4_DISABLE_OPT_FIXIDX,
6678     SVR4_GETCWD_FIXIDX,
6679     SVR4_PROFIL_FIXIDX,
6680     SYSV68_STRING_FIXIDX,
6681     SYSZ_STDLIB_FOR_SUN_FIXIDX,
6682     THREAD_KEYWORD_FIXIDX,
6683     TINFO_CPLUSPLUS_FIXIDX,
6684     ULTRIX_ATEXIT_PARAM_FIXIDX,
6685     ULTRIX_ATOF_PARAM_FIXIDX,
6686     ULTRIX_CONST_FIXIDX,
6687     ULTRIX_CONST2_FIXIDX,
6688     ULTRIX_FIX_FIXPROTO_FIXIDX,
6689     ULTRIX_IFDEF_FIXIDX,
6690     ULTRIX_MATH_IFDEF_FIXIDX,
6691     ULTRIX_NESTED_IOCTL_FIXIDX,
6692     ULTRIX_NESTED_SVC_FIXIDX,
6693     ULTRIX_STAT_FIXIDX,
6694     ULTRIX_STATIC_FIXIDX,
6695     ULTRIX_STRINGS_FIXIDX,
6696     UNDEFINE_NULL_FIXIDX,
6697     UNICOSMK_RESTRICT_FIXIDX,
6698     UW7_BYTEORDER_FIX_FIXIDX,
6699     VA_I960_MACRO_FIXIDX,
6700     VOID_NULL_FIXIDX,
6701     VXWORKS_GCC_PROBLEM_FIXIDX,
6702     VXWORKS_NEEDS_VXTYPES_FIXIDX,
6703     VXWORKS_NEEDS_VXWORKS_FIXIDX,
6704     VXWORKS_TIME_FIXIDX,
6705     WINDISS_MATH1_FIXIDX,
6706     WINDISS_MATH2_FIXIDX,
6707     WINDISS_VALIST_FIXIDX,
6708     X11_CLASS_FIXIDX,
6709     X11_CLASS_USAGE_FIXIDX,
6710     X11_NEW_FIXIDX,
6711     X11_SPRINTF_FIXIDX
6712 } t_fixinc_idx;
6713 
6714 tFixDesc fixDescList[ FIX_COUNT ] = {
6715   {  zAab_Dgux_Int_VarargsName,    zAab_Dgux_Int_VarargsList,
6716      apzAab_Dgux_Int_VarargsMachs,
6717      AAB_DGUX_INT_VARARGS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6718      aAab_Dgux_Int_VarargsTests,   apzAab_Dgux_Int_VarargsPatch, 0 },
6719 
6720   {  zAab_Fd_Zero_Asm_Posix_Types_HName,    zAab_Fd_Zero_Asm_Posix_Types_HList,
6721      apzAab_Fd_Zero_Asm_Posix_Types_HMachs,
6722      AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6723      aAab_Fd_Zero_Asm_Posix_Types_HTests,   apzAab_Fd_Zero_Asm_Posix_Types_HPatch, 0 },
6724 
6725   {  zAab_Fd_Zero_Gnu_Types_HName,    zAab_Fd_Zero_Gnu_Types_HList,
6726      apzAab_Fd_Zero_Gnu_Types_HMachs,
6727      AAB_FD_ZERO_GNU_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6728      aAab_Fd_Zero_Gnu_Types_HTests,   apzAab_Fd_Zero_Gnu_Types_HPatch, 0 },
6729 
6730   {  zAab_Fd_Zero_Selectbits_HName,    zAab_Fd_Zero_Selectbits_HList,
6731      apzAab_Fd_Zero_Selectbits_HMachs,
6732      AAB_FD_ZERO_SELECTBITS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6733      aAab_Fd_Zero_Selectbits_HTests,   apzAab_Fd_Zero_Selectbits_HPatch, 0 },
6734 
6735   {  zAab_Solaris_Sys_Varargs_HName,    zAab_Solaris_Sys_Varargs_HList,
6736      apzAab_Solaris_Sys_Varargs_HMachs,
6737      AAB_SOLARIS_SYS_VARARGS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6738      aAab_Solaris_Sys_Varargs_HTests,   apzAab_Solaris_Sys_Varargs_HPatch, 0 },
6739 
6740   {  zAab_Sun_MemcpyName,    zAab_Sun_MemcpyList,
6741      apzAab_Sun_MemcpyMachs,
6742      AAB_SUN_MEMCPY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6743      aAab_Sun_MemcpyTests,   apzAab_Sun_MemcpyPatch, 0 },
6744 
6745   {  zAab_Svr4_Replace_ByteorderName,    zAab_Svr4_Replace_ByteorderList,
6746      apzAab_Svr4_Replace_ByteorderMachs,
6747      AAB_SVR4_REPLACE_BYTEORDER_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6748      aAab_Svr4_Replace_ByteorderTests,   apzAab_Svr4_Replace_ByteorderPatch, 0 },
6749 
6750   {  zAab_Ultrix_Ansi_CompatName,    zAab_Ultrix_Ansi_CompatList,
6751      apzAab_Ultrix_Ansi_CompatMachs,
6752      AAB_ULTRIX_ANSI_COMPAT_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6753      aAab_Ultrix_Ansi_CompatTests,   apzAab_Ultrix_Ansi_CompatPatch, 0 },
6754 
6755   {  zAab_Ultrix_LimitsName,    zAab_Ultrix_LimitsList,
6756      apzAab_Ultrix_LimitsMachs,
6757      AAB_ULTRIX_LIMITS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6758      aAab_Ultrix_LimitsTests,   apzAab_Ultrix_LimitsPatch, 0 },
6759 
6760   {  zAab_Ultrix_MemoryName,    zAab_Ultrix_MemoryList,
6761      apzAab_Ultrix_MemoryMachs,
6762      AAB_ULTRIX_MEMORY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6763      aAab_Ultrix_MemoryTests,   apzAab_Ultrix_MemoryPatch, 0 },
6764 
6765   {  zAab_Ultrix_StringName,    zAab_Ultrix_StringList,
6766      apzAab_Ultrix_StringMachs,
6767      AAB_ULTRIX_STRING_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6768      aAab_Ultrix_StringTests,   apzAab_Ultrix_StringPatch, 0 },
6769 
6770   {  zAix_PthreadName,    zAix_PthreadList,
6771      apzAix_PthreadMachs,
6772      AIX_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6773      aAix_PthreadTests,   apzAix_PthreadPatch, 0 },
6774 
6775   {  zAix_SysmachineName,    zAix_SysmachineList,
6776      apzAix_SysmachineMachs,
6777      AIX_SYSMACHINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6778      aAix_SysmachineTests,   apzAix_SysmachinePatch, 0 },
6779 
6780   {  zAix_SyswaitName,    zAix_SyswaitList,
6781      apzAix_SyswaitMachs,
6782      AIX_SYSWAIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6783      aAix_SyswaitTests,   apzAix_SyswaitPatch, 0 },
6784 
6785   {  zAix_VolatileName,    zAix_VolatileList,
6786      apzAix_VolatileMachs,
6787      AIX_VOLATILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6788      aAix_VolatileTests,   apzAix_VolatilePatch, 0 },
6789 
6790   {  zAlpha___AssertName,    zAlpha___AssertList,
6791      apzAlpha___AssertMachs,
6792      ALPHA___ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6793      aAlpha___AssertTests,   apzAlpha___AssertPatch, 0 },
6794 
6795   {  zAlpha___Extern_PrefixName,    zAlpha___Extern_PrefixList,
6796      apzAlpha___Extern_PrefixMachs,
6797      ALPHA___EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6798      aAlpha___Extern_PrefixTests,   apzAlpha___Extern_PrefixPatch, 0 },
6799 
6800   {  zAlpha_AssertName,    zAlpha_AssertList,
6801      apzAlpha_AssertMachs,
6802      ALPHA_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6803      aAlpha_AssertTests,   apzAlpha_AssertPatch, 0 },
6804 
6805   {  zAlpha_GetoptName,    zAlpha_GetoptList,
6806      apzAlpha_GetoptMachs,
6807      ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6808      aAlpha_GetoptTests,   apzAlpha_GetoptPatch, 0 },
6809 
6810   {  zAlpha_ParensName,    zAlpha_ParensList,
6811      apzAlpha_ParensMachs,
6812      ALPHA_PARENS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6813      aAlpha_ParensTests,   apzAlpha_ParensPatch, 0 },
6814 
6815   {  zAlpha_Pthread_GccName,    zAlpha_Pthread_GccList,
6816      apzAlpha_Pthread_GccMachs,
6817      ALPHA_PTHREAD_GCC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6818      aAlpha_Pthread_GccTests,   apzAlpha_Pthread_GccPatch, 0 },
6819 
6820   {  zAlpha_SbrkName,    zAlpha_SbrkList,
6821      apzAlpha_SbrkMachs,
6822      ALPHA_SBRK_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6823      aAlpha_SbrkTests,   apzAlpha_SbrkPatch, 0 },
6824 
6825   {  zArm_Norcroft_HintName,    zArm_Norcroft_HintList,
6826      apzArm_Norcroft_HintMachs,
6827      ARM_NORCROFT_HINT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6828      aArm_Norcroft_HintTests,   apzArm_Norcroft_HintPatch, 0 },
6829 
6830   {  zArm_WcharName,    zArm_WcharList,
6831      apzArm_WcharMachs,
6832      ARM_WCHAR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6833      aArm_WcharTests,   apzArm_WcharPatch, 0 },
6834 
6835   {  zAux_AsmName,    zAux_AsmList,
6836      apzAux_AsmMachs,
6837      AUX_ASM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6838      aAux_AsmTests,   apzAux_AsmPatch, 0 },
6839 
6840   {  zAvoid_Bool_DefineName,    zAvoid_Bool_DefineList,
6841      apzAvoid_Bool_DefineMachs,
6842      AVOID_BOOL_DEFINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6843      aAvoid_Bool_DefineTests,   apzAvoid_Bool_DefinePatch, 0 },
6844 
6845   {  zAvoid_Bool_TypeName,    zAvoid_Bool_TypeList,
6846      apzAvoid_Bool_TypeMachs,
6847      AVOID_BOOL_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6848      aAvoid_Bool_TypeTests,   apzAvoid_Bool_TypePatch, 0 },
6849 
6850   {  zAvoid_Wchar_T_TypeName,    zAvoid_Wchar_T_TypeList,
6851      apzAvoid_Wchar_T_TypeMachs,
6852      AVOID_WCHAR_T_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6853      aAvoid_Wchar_T_TypeTests,   apzAvoid_Wchar_T_TypePatch, 0 },
6854 
6855   {  zBad_LvalName,    zBad_LvalList,
6856      apzBad_LvalMachs,
6857      BAD_LVAL_TEST_CT, FD_MACH_ONLY,
6858      aBad_LvalTests,   apzBad_LvalPatch, 0 },
6859 
6860   {  zBad_Struct_TermName,    zBad_Struct_TermList,
6861      apzBad_Struct_TermMachs,
6862      BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6863      aBad_Struct_TermTests,   apzBad_Struct_TermPatch, 0 },
6864 
6865   {  zBadquoteName,    zBadquoteList,
6866      apzBadquoteMachs,
6867      BADQUOTE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6868      aBadquoteTests,   apzBadquotePatch, 0 },
6869 
6870   {  zBroken_Assert_StdioName,    zBroken_Assert_StdioList,
6871      apzBroken_Assert_StdioMachs,
6872      BROKEN_ASSERT_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6873      aBroken_Assert_StdioTests,   apzBroken_Assert_StdioPatch, 0 },
6874 
6875   {  zBroken_Assert_StdlibName,    zBroken_Assert_StdlibList,
6876      apzBroken_Assert_StdlibMachs,
6877      BROKEN_ASSERT_STDLIB_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6878      aBroken_Assert_StdlibTests,   apzBroken_Assert_StdlibPatch, 0 },
6879 
6880   {  zBroken_CabsName,    zBroken_CabsList,
6881      apzBroken_CabsMachs,
6882      BROKEN_CABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6883      aBroken_CabsTests,   apzBroken_CabsPatch, 0 },
6884 
6885   {  zCtrl_Quotes_DefName,    zCtrl_Quotes_DefList,
6886      apzCtrl_Quotes_DefMachs,
6887      CTRL_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6888      aCtrl_Quotes_DefTests,   apzCtrl_Quotes_DefPatch, 0 },
6889 
6890   {  zCtrl_Quotes_UseName,    zCtrl_Quotes_UseList,
6891      apzCtrl_Quotes_UseMachs,
6892      CTRL_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6893      aCtrl_Quotes_UseTests,   apzCtrl_Quotes_UsePatch, 0 },
6894 
6895   {  zCxx_UnreadyName,    zCxx_UnreadyList,
6896      apzCxx_UnreadyMachs,
6897      CXX_UNREADY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6898      aCxx_UnreadyTests,   apzCxx_UnreadyPatch, 0 },
6899 
6900   {  zDec_Intern_AsmName,    zDec_Intern_AsmList,
6901      apzDec_Intern_AsmMachs,
6902      DEC_INTERN_ASM_TEST_CT, FD_MACH_ONLY,
6903      aDec_Intern_AsmTests,   apzDec_Intern_AsmPatch, 0 },
6904 
6905   {  zDjgpp_Wchar_HName,    zDjgpp_Wchar_HList,
6906      apzDjgpp_Wchar_HMachs,
6907      DJGPP_WCHAR_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6908      aDjgpp_Wchar_HTests,   apzDjgpp_Wchar_HPatch, 0 },
6909 
6910   {  zEcd_CursorName,    zEcd_CursorList,
6911      apzEcd_CursorMachs,
6912      ECD_CURSOR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6913      aEcd_CursorTests,   apzEcd_CursorPatch, 0 },
6914 
6915   {  zFix_Header_BreakageName,    zFix_Header_BreakageList,
6916      apzFix_Header_BreakageMachs,
6917      FIX_HEADER_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6918      aFix_Header_BreakageTests,   apzFix_Header_BreakagePatch, 0 },
6919 
6920   {  zFreebsd_Gcc3_BreakageName,    zFreebsd_Gcc3_BreakageList,
6921      apzFreebsd_Gcc3_BreakageMachs,
6922      FREEBSD_GCC3_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6923      aFreebsd_Gcc3_BreakageTests,   apzFreebsd_Gcc3_BreakagePatch, 0 },
6924 
6925   {  zGnu_TypesName,    zGnu_TypesList,
6926      apzGnu_TypesMachs,
6927      GNU_TYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6928      aGnu_TypesTests,   apzGnu_TypesPatch, 0 },
6929 
6930   {  zHp_InlineName,    zHp_InlineList,
6931      apzHp_InlineMachs,
6932      HP_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6933      aHp_InlineTests,   apzHp_InlinePatch, 0 },
6934 
6935   {  zHp_SysfileName,    zHp_SysfileList,
6936      apzHp_SysfileMachs,
6937      HP_SYSFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6938      aHp_SysfileTests,   apzHp_SysfilePatch, 0 },
6939 
6940   {  zHpux10_Cpp_Pow_InlineName,    zHpux10_Cpp_Pow_InlineList,
6941      apzHpux10_Cpp_Pow_InlineMachs,
6942      HPUX10_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6943      aHpux10_Cpp_Pow_InlineTests,   apzHpux10_Cpp_Pow_InlinePatch, 0 },
6944 
6945   {  zHpux11_Cpp_Pow_InlineName,    zHpux11_Cpp_Pow_InlineList,
6946      apzHpux11_Cpp_Pow_InlineMachs,
6947      HPUX11_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6948      aHpux11_Cpp_Pow_InlineTests,   apzHpux11_Cpp_Pow_InlinePatch, 0 },
6949 
6950   {  zHpux10_Ctype_Declarations1Name,    zHpux10_Ctype_Declarations1List,
6951      apzHpux10_Ctype_Declarations1Machs,
6952      HPUX10_CTYPE_DECLARATIONS1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6953      aHpux10_Ctype_Declarations1Tests,   apzHpux10_Ctype_Declarations1Patch, 0 },
6954 
6955   {  zHpux10_Ctype_Declarations2Name,    zHpux10_Ctype_Declarations2List,
6956      apzHpux10_Ctype_Declarations2Machs,
6957      HPUX10_CTYPE_DECLARATIONS2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6958      aHpux10_Ctype_Declarations2Tests,   apzHpux10_Ctype_Declarations2Patch, 0 },
6959 
6960   {  zHpux11_AbsName,    zHpux11_AbsList,
6961      apzHpux11_AbsMachs,
6962      HPUX11_ABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6963      aHpux11_AbsTests,   apzHpux11_AbsPatch, 0 },
6964 
6965   {  zHpux11_FabsfName,    zHpux11_FabsfList,
6966      apzHpux11_FabsfMachs,
6967      HPUX11_FABSF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6968      aHpux11_FabsfTests,   apzHpux11_FabsfPatch, 0 },
6969 
6970   {  zHpux11_Size_TName,    zHpux11_Size_TList,
6971      apzHpux11_Size_TMachs,
6972      HPUX11_SIZE_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6973      aHpux11_Size_TTests,   apzHpux11_Size_TPatch, 0 },
6974 
6975   {  zHpux11_Uint32_CName,    zHpux11_Uint32_CList,
6976      apzHpux11_Uint32_CMachs,
6977      HPUX11_UINT32_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6978      aHpux11_Uint32_CTests,   apzHpux11_Uint32_CPatch, 0 },
6979 
6980   {  zHpux11_VsnprintfName,    zHpux11_VsnprintfList,
6981      apzHpux11_VsnprintfMachs,
6982      HPUX11_VSNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6983      aHpux11_VsnprintfTests,   apzHpux11_VsnprintfPatch, 0 },
6984 
6985   {  zHpux11_SnprintfName,    zHpux11_SnprintfList,
6986      apzHpux11_SnprintfMachs,
6987      HPUX11_SNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6988      aHpux11_SnprintfTests,   apzHpux11_SnprintfPatch, 0 },
6989 
6990   {  zHpux8_Bogus_InlinesName,    zHpux8_Bogus_InlinesList,
6991      apzHpux8_Bogus_InlinesMachs,
6992      HPUX8_BOGUS_INLINES_TEST_CT, FD_MACH_ONLY,
6993      aHpux8_Bogus_InlinesTests,   apzHpux8_Bogus_InlinesPatch, 0 },
6994 
6995   {  zHpux_Ctype_MacrosName,    zHpux_Ctype_MacrosList,
6996      apzHpux_Ctype_MacrosMachs,
6997      HPUX_CTYPE_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6998      aHpux_Ctype_MacrosTests,   apzHpux_Ctype_MacrosPatch, 0 },
6999 
7000   {  zHpux_Long_DoubleName,    zHpux_Long_DoubleList,
7001      apzHpux_Long_DoubleMachs,
7002      HPUX_LONG_DOUBLE_TEST_CT, FD_MACH_ONLY,
7003      aHpux_Long_DoubleTests,   apzHpux_Long_DoublePatch, 0 },
7004 
7005   {  zHpux_MaxintName,    zHpux_MaxintList,
7006      apzHpux_MaxintMachs,
7007      HPUX_MAXINT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7008      aHpux_MaxintTests,   apzHpux_MaxintPatch, 0 },
7009 
7010   {  zHpux_SystimeName,    zHpux_SystimeList,
7011      apzHpux_SystimeMachs,
7012      HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7013      aHpux_SystimeTests,   apzHpux_SystimePatch, 0 },
7014 
7015   {  zInt_Abort_Free_And_ExitName,    zInt_Abort_Free_And_ExitList,
7016      apzInt_Abort_Free_And_ExitMachs,
7017      INT_ABORT_FREE_AND_EXIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7018      aInt_Abort_Free_And_ExitTests,   apzInt_Abort_Free_And_ExitPatch, 0 },
7019 
7020   {  zIo_Quotes_DefName,    zIo_Quotes_DefList,
7021      apzIo_Quotes_DefMachs,
7022      IO_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7023      aIo_Quotes_DefTests,   apzIo_Quotes_DefPatch, 0 },
7024 
7025   {  zIo_Quotes_UseName,    zIo_Quotes_UseList,
7026      apzIo_Quotes_UseMachs,
7027      IO_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7028      aIo_Quotes_UseTests,   apzIo_Quotes_UsePatch, 0 },
7029 
7030   {  zIp_Missing_SemiName,    zIp_Missing_SemiList,
7031      apzIp_Missing_SemiMachs,
7032      IP_MISSING_SEMI_TEST_CT, FD_MACH_ONLY,
7033      aIp_Missing_SemiTests,   apzIp_Missing_SemiPatch, 0 },
7034 
7035   {  zIrix___RestrictName,    zIrix___RestrictList,
7036      apzIrix___RestrictMachs,
7037      IRIX___RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7038      aIrix___RestrictTests,   apzIrix___RestrictPatch, 0 },
7039 
7040   {  zIrix___Generic1Name,    zIrix___Generic1List,
7041      apzIrix___Generic1Machs,
7042      IRIX___GENERIC1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7043      aIrix___Generic1Tests,   apzIrix___Generic1Patch, 0 },
7044 
7045   {  zIrix___Generic2Name,    zIrix___Generic2List,
7046      apzIrix___Generic2Machs,
7047      IRIX___GENERIC2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7048      aIrix___Generic2Tests,   apzIrix___Generic2Patch, 0 },
7049 
7050   {  zIrix_Asm_ApostropheName,    zIrix_Asm_ApostropheList,
7051      apzIrix_Asm_ApostropheMachs,
7052      IRIX_ASM_APOSTROPHE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7053      aIrix_Asm_ApostropheTests,   apzIrix_Asm_ApostrophePatch, 0 },
7054 
7055   {  zIrix_Limits_ConstName,    zIrix_Limits_ConstList,
7056      apzIrix_Limits_ConstMachs,
7057      IRIX_LIMITS_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7058      aIrix_Limits_ConstTests,   apzIrix_Limits_ConstPatch, 0 },
7059 
7060   {  zIrix_Socklen_TName,    zIrix_Socklen_TList,
7061      apzIrix_Socklen_TMachs,
7062      IRIX_SOCKLEN_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7063      aIrix_Socklen_TTests,   apzIrix_Socklen_TPatch, 0 },
7064 
7065   {  zIrix_Stdio_Va_ListName,    zIrix_Stdio_Va_ListList,
7066      apzIrix_Stdio_Va_ListMachs,
7067      IRIX_STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7068      aIrix_Stdio_Va_ListTests,   apzIrix_Stdio_Va_ListPatch, 0 },
7069 
7070   {  zIrix_WcsftimeName,    zIrix_WcsftimeList,
7071      apzIrix_WcsftimeMachs,
7072      IRIX_WCSFTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7073      aIrix_WcsftimeTests,   apzIrix_WcsftimePatch, 0 },
7074 
7075   {  zIsc_FmodName,    zIsc_FmodList,
7076      apzIsc_FmodMachs,
7077      ISC_FMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7078      aIsc_FmodTests,   apzIsc_FmodPatch, 0 },
7079 
7080   {  zIsc_Omits_With_StdcName,    zIsc_Omits_With_StdcList,
7081      apzIsc_Omits_With_StdcMachs,
7082      ISC_OMITS_WITH_STDC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7083      aIsc_Omits_With_StdcTests,   apzIsc_Omits_With_StdcPatch, 0 },
7084 
7085   {  zKandr_ConcatName,    zKandr_ConcatList,
7086      apzKandr_ConcatMachs,
7087      KANDR_CONCAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7088      aKandr_ConcatTests,   apzKandr_ConcatPatch, 0 },
7089 
7090   {  zLibc1_G_Va_ListName,    zLibc1_G_Va_ListList,
7091      apzLibc1_G_Va_ListMachs,
7092      LIBC1_G_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7093      aLibc1_G_Va_ListTests,   apzLibc1_G_Va_ListPatch, 0 },
7094 
7095   {  zLibc1_Ifdefd_MemxName,    zLibc1_Ifdefd_MemxList,
7096      apzLibc1_Ifdefd_MemxMachs,
7097      LIBC1_IFDEFD_MEMX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7098      aLibc1_Ifdefd_MemxTests,   apzLibc1_Ifdefd_MemxPatch, 0 },
7099 
7100   {  zLimits_IfndefsName,    zLimits_IfndefsList,
7101      apzLimits_IfndefsMachs,
7102      LIMITS_IFNDEFS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7103      aLimits_IfndefsTests,   apzLimits_IfndefsPatch, 0 },
7104 
7105   {  zLynx_Void_IntName,    zLynx_Void_IntList,
7106      apzLynx_Void_IntMachs,
7107      LYNX_VOID_INT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7108      aLynx_Void_IntTests,   apzLynx_Void_IntPatch, 0 },
7109 
7110   {  zLynxos_Fcntl_ProtoName,    zLynxos_Fcntl_ProtoList,
7111      apzLynxos_Fcntl_ProtoMachs,
7112      LYNXOS_FCNTL_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7113      aLynxos_Fcntl_ProtoTests,   apzLynxos_Fcntl_ProtoPatch, 0 },
7114 
7115   {  zM88k_Bad_Hypot_OptName,    zM88k_Bad_Hypot_OptList,
7116      apzM88k_Bad_Hypot_OptMachs,
7117      M88K_BAD_HYPOT_OPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7118      aM88k_Bad_Hypot_OptTests,   apzM88k_Bad_Hypot_OptPatch, 0 },
7119 
7120   {  zM88k_Bad_S_IfName,    zM88k_Bad_S_IfList,
7121      apzM88k_Bad_S_IfMachs,
7122      M88K_BAD_S_IF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7123      aM88k_Bad_S_IfTests,   apzM88k_Bad_S_IfPatch, 0 },
7124 
7125   {  zM88k_Multi_InclName,    zM88k_Multi_InclList,
7126      apzM88k_Multi_InclMachs,
7127      M88K_MULTI_INCL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7128      aM88k_Multi_InclTests,   apzM88k_Multi_InclPatch, 0 },
7129 
7130   {  zMachine_Ansi_H_Va_ListName,    zMachine_Ansi_H_Va_ListList,
7131      apzMachine_Ansi_H_Va_ListMachs,
7132      MACHINE_ANSI_H_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7133      aMachine_Ansi_H_Va_ListTests,   apzMachine_Ansi_H_Va_ListPatch, 0 },
7134 
7135   {  zMachine_NameName,    zMachine_NameList,
7136      apzMachine_NameMachs,
7137      MACHINE_NAME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7138      aMachine_NameTests,   apzMachine_NamePatch, 0 },
7139 
7140   {  zMath_ExceptionName,    zMath_ExceptionList,
7141      apzMath_ExceptionMachs,
7142      MATH_EXCEPTION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7143      aMath_ExceptionTests,   apzMath_ExceptionPatch, 0 },
7144 
7145   {  zMath_Huge_Val_From_Dbl_MaxName,    zMath_Huge_Val_From_Dbl_MaxList,
7146      apzMath_Huge_Val_From_Dbl_MaxMachs,
7147      MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
7148      aMath_Huge_Val_From_Dbl_MaxTests,   apzMath_Huge_Val_From_Dbl_MaxPatch, 0 },
7149 
7150   {  zMath_Huge_Val_IfndefName,    zMath_Huge_Val_IfndefList,
7151      apzMath_Huge_Val_IfndefMachs,
7152      MATH_HUGE_VAL_IFNDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7153      aMath_Huge_Val_IfndefTests,   apzMath_Huge_Val_IfndefPatch, 0 },
7154 
7155   {  zNested_Auth_DesName,    zNested_Auth_DesList,
7156      apzNested_Auth_DesMachs,
7157      NESTED_AUTH_DES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7158      aNested_Auth_DesTests,   apzNested_Auth_DesPatch, 0 },
7159 
7160   {  zNested_MotorolaName,    zNested_MotorolaList,
7161      apzNested_MotorolaMachs,
7162      NESTED_MOTOROLA_TEST_CT, FD_MACH_ONLY,
7163      aNested_MotorolaTests,   apzNested_MotorolaPatch, 0 },
7164 
7165   {  zNested_Sys_LimitsName,    zNested_Sys_LimitsList,
7166      apzNested_Sys_LimitsMachs,
7167      NESTED_SYS_LIMITS_TEST_CT, FD_MACH_ONLY,
7168      aNested_Sys_LimitsTests,   apzNested_Sys_LimitsPatch, 0 },
7169 
7170   {  zNews_Os_RecursionName,    zNews_Os_RecursionList,
7171      apzNews_Os_RecursionMachs,
7172      NEWS_OS_RECURSION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7173      aNews_Os_RecursionTests,   apzNews_Os_RecursionPatch, 0 },
7174 
7175   {  zNext_Math_PrefixName,    zNext_Math_PrefixList,
7176      apzNext_Math_PrefixMachs,
7177      NEXT_MATH_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7178      aNext_Math_PrefixTests,   apzNext_Math_PrefixPatch, 0 },
7179 
7180   {  zNext_TemplateName,    zNext_TemplateList,
7181      apzNext_TemplateMachs,
7182      NEXT_TEMPLATE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7183      aNext_TemplateTests,   apzNext_TemplatePatch, 0 },
7184 
7185   {  zNext_VolitileName,    zNext_VolitileList,
7186      apzNext_VolitileMachs,
7187      NEXT_VOLITILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7188      aNext_VolitileTests,   apzNext_VolitilePatch, 0 },
7189 
7190   {  zNext_Wait_UnionName,    zNext_Wait_UnionList,
7191      apzNext_Wait_UnionMachs,
7192      NEXT_WAIT_UNION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7193      aNext_Wait_UnionTests,   apzNext_Wait_UnionPatch, 0 },
7194 
7195   {  zNodeent_SyntaxName,    zNodeent_SyntaxList,
7196      apzNodeent_SyntaxMachs,
7197      NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7198      aNodeent_SyntaxTests,   apzNodeent_SyntaxPatch, 0 },
7199 
7200   {  zObstack_Lvalue_CastName,    zObstack_Lvalue_CastList,
7201      apzObstack_Lvalue_CastMachs,
7202      OBSTACK_LVALUE_CAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7203      aObstack_Lvalue_CastTests,   apzObstack_Lvalue_CastPatch, 0 },
7204 
7205   {  zOsf_Namespace_AName,    zOsf_Namespace_AList,
7206      apzOsf_Namespace_AMachs,
7207      OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7208      aOsf_Namespace_ATests,   apzOsf_Namespace_APatch, 0 },
7209 
7210   {  zOsf_Namespace_CName,    zOsf_Namespace_CList,
7211      apzOsf_Namespace_CMachs,
7212      OSF_NAMESPACE_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7213      aOsf_Namespace_CTests,   apzOsf_Namespace_CPatch, 0 },
7214 
7215   {  zPthread_Page_SizeName,    zPthread_Page_SizeList,
7216      apzPthread_Page_SizeMachs,
7217      PTHREAD_PAGE_SIZE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7218      aPthread_Page_SizeTests,   apzPthread_Page_SizePatch, 0 },
7219 
7220   {  zRead_Ret_TypeName,    zRead_Ret_TypeList,
7221      apzRead_Ret_TypeMachs,
7222      READ_RET_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7223      aRead_Ret_TypeTests,   apzRead_Ret_TypePatch, 0 },
7224 
7225   {  zRs6000_DoubleName,    zRs6000_DoubleList,
7226      apzRs6000_DoubleMachs,
7227      RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7228      aRs6000_DoubleTests,   apzRs6000_DoublePatch, 0 },
7229 
7230   {  zRs6000_FchmodName,    zRs6000_FchmodList,
7231      apzRs6000_FchmodMachs,
7232      RS6000_FCHMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7233      aRs6000_FchmodTests,   apzRs6000_FchmodPatch, 0 },
7234 
7235   {  zRs6000_ParamName,    zRs6000_ParamList,
7236      apzRs6000_ParamMachs,
7237      RS6000_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7238      aRs6000_ParamTests,   apzRs6000_ParamPatch, 0 },
7239 
7240   {  zSco_MathName,    zSco_MathList,
7241      apzSco_MathMachs,
7242      SCO_MATH_TEST_CT, FD_MACH_ONLY,
7243      aSco_MathTests,   apzSco_MathPatch, 0 },
7244 
7245   {  zSco_RegsetName,    zSco_RegsetList,
7246      apzSco_RegsetMachs,
7247      SCO_REGSET_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7248      aSco_RegsetTests,   apzSco_RegsetPatch, 0 },
7249 
7250   {  zSco_StringName,    zSco_StringList,
7251      apzSco_StringMachs,
7252      SCO_STRING_TEST_CT, FD_MACH_ONLY,
7253      aSco_StringTests,   apzSco_StringPatch, 0 },
7254 
7255   {  zSco_Static_FuncName,    zSco_Static_FuncList,
7256      apzSco_Static_FuncMachs,
7257      SCO_STATIC_FUNC_TEST_CT, FD_MACH_ONLY,
7258      aSco_Static_FuncTests,   apzSco_Static_FuncPatch, 0 },
7259 
7260   {  zSco_UtimeName,    zSco_UtimeList,
7261      apzSco_UtimeMachs,
7262      SCO_UTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7263      aSco_UtimeTests,   apzSco_UtimePatch, 0 },
7264 
7265   {  zSolaris_Mutex_Init_1Name,    zSolaris_Mutex_Init_1List,
7266      apzSolaris_Mutex_Init_1Machs,
7267      SOLARIS_MUTEX_INIT_1_TEST_CT, FD_MACH_ONLY,
7268      aSolaris_Mutex_Init_1Tests,   apzSolaris_Mutex_Init_1Patch, 0 },
7269 
7270   {  zSolaris_Mutex_Init_2Name,    zSolaris_Mutex_Init_2List,
7271      apzSolaris_Mutex_Init_2Machs,
7272      SOLARIS_MUTEX_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7273      aSolaris_Mutex_Init_2Tests,   apzSolaris_Mutex_Init_2Patch, 0 },
7274 
7275   {  zSolaris_Stdio_TagName,    zSolaris_Stdio_TagList,
7276      apzSolaris_Stdio_TagMachs,
7277      SOLARIS_STDIO_TAG_TEST_CT, FD_MACH_ONLY,
7278      aSolaris_Stdio_TagTests,   apzSolaris_Stdio_TagPatch, 0 },
7279 
7280   {  zSolaris_WidecName,    zSolaris_WidecList,
7281      apzSolaris_WidecMachs,
7282      SOLARIS_WIDEC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7283      aSolaris_WidecTests,   apzSolaris_WidecPatch, 0 },
7284 
7285   {  zStatsswtchName,    zStatsswtchList,
7286      apzStatsswtchMachs,
7287      STATSSWTCH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7288      aStatsswtchTests,   apzStatsswtchPatch, 0 },
7289 
7290   {  zStdio_Stdarg_HName,    zStdio_Stdarg_HList,
7291      apzStdio_Stdarg_HMachs,
7292      STDIO_STDARG_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7293      aStdio_Stdarg_HTests,   apzStdio_Stdarg_HPatch, 0 },
7294 
7295   {  zStdio_Va_ListName,    zStdio_Va_ListList,
7296      apzStdio_Va_ListMachs,
7297      STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY,
7298      aStdio_Va_ListTests,   apzStdio_Va_ListPatch, 0 },
7299 
7300   {  zStrict_Ansi_NotName,    zStrict_Ansi_NotList,
7301      apzStrict_Ansi_NotMachs,
7302      STRICT_ANSI_NOT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7303      aStrict_Ansi_NotTests,   apzStrict_Ansi_NotPatch, 0 },
7304 
7305   {  zStrict_Ansi_Not_CtdName,    zStrict_Ansi_Not_CtdList,
7306      apzStrict_Ansi_Not_CtdMachs,
7307      STRICT_ANSI_NOT_CTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7308      aStrict_Ansi_Not_CtdTests,   apzStrict_Ansi_Not_CtdPatch, 0 },
7309 
7310   {  zStrict_Ansi_OnlyName,    zStrict_Ansi_OnlyList,
7311      apzStrict_Ansi_OnlyMachs,
7312      STRICT_ANSI_ONLY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7313      aStrict_Ansi_OnlyTests,   apzStrict_Ansi_OnlyPatch, 0 },
7314 
7315   {  zStruct_FileName,    zStruct_FileList,
7316      apzStruct_FileMachs,
7317      STRUCT_FILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7318      aStruct_FileTests,   apzStruct_FilePatch, 0 },
7319 
7320   {  zStruct_SockaddrName,    zStruct_SockaddrList,
7321      apzStruct_SockaddrMachs,
7322      STRUCT_SOCKADDR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7323      aStruct_SockaddrTests,   apzStruct_SockaddrPatch, 0 },
7324 
7325   {  zSun_Auth_ProtoName,    zSun_Auth_ProtoList,
7326      apzSun_Auth_ProtoMachs,
7327      SUN_AUTH_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7328      aSun_Auth_ProtoTests,   apzSun_Auth_ProtoPatch, 0 },
7329 
7330   {  zSun_Bogus_IfdefName,    zSun_Bogus_IfdefList,
7331      apzSun_Bogus_IfdefMachs,
7332      SUN_BOGUS_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7333      aSun_Bogus_IfdefTests,   apzSun_Bogus_IfdefPatch, 0 },
7334 
7335   {  zSun_CatmacroName,    zSun_CatmacroList,
7336      apzSun_CatmacroMachs,
7337      SUN_CATMACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7338      aSun_CatmacroTests,   apzSun_CatmacroPatch, 0 },
7339 
7340   {  zSun_MallocName,    zSun_MallocList,
7341      apzSun_MallocMachs,
7342      SUN_MALLOC_TEST_CT, FD_MACH_ONLY,
7343      aSun_MallocTests,   apzSun_MallocPatch, 0 },
7344 
7345   {  zSun_Rusers_SemiName,    zSun_Rusers_SemiList,
7346      apzSun_Rusers_SemiMachs,
7347      SUN_RUSERS_SEMI_TEST_CT, FD_MACH_ONLY,
7348      aSun_Rusers_SemiTests,   apzSun_Rusers_SemiPatch, 0 },
7349 
7350   {  zSun_SignalName,    zSun_SignalList,
7351      apzSun_SignalMachs,
7352      SUN_SIGNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7353      aSun_SignalTests,   apzSun_SignalPatch, 0 },
7354 
7355   {  zSunos_Matherr_DeclName,    zSunos_Matherr_DeclList,
7356      apzSunos_Matherr_DeclMachs,
7357      SUNOS_MATHERR_DECL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7358      aSunos_Matherr_DeclTests,   apzSunos_Matherr_DeclPatch, 0 },
7359 
7360   {  zSunos_StrlenName,    zSunos_StrlenList,
7361      apzSunos_StrlenMachs,
7362      SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7363      aSunos_StrlenTests,   apzSunos_StrlenPatch, 0 },
7364 
7365   {  zSvr4__PName,    zSvr4__PList,
7366      apzSvr4__PMachs,
7367      SVR4__P_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7368      aSvr4__PTests,   apzSvr4__PPatch, 0 },
7369 
7370   {  zSvr4_Disable_OptName,    zSvr4_Disable_OptList,
7371      apzSvr4_Disable_OptMachs,
7372      SVR4_DISABLE_OPT_TEST_CT, FD_MACH_ONLY,
7373      aSvr4_Disable_OptTests,   apzSvr4_Disable_OptPatch, 0 },
7374 
7375   {  zSvr4_GetcwdName,    zSvr4_GetcwdList,
7376      apzSvr4_GetcwdMachs,
7377      SVR4_GETCWD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7378      aSvr4_GetcwdTests,   apzSvr4_GetcwdPatch, 0 },
7379 
7380   {  zSvr4_ProfilName,    zSvr4_ProfilList,
7381      apzSvr4_ProfilMachs,
7382      SVR4_PROFIL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7383      aSvr4_ProfilTests,   apzSvr4_ProfilPatch, 0 },
7384 
7385   {  zSysv68_StringName,    zSysv68_StringList,
7386      apzSysv68_StringMachs,
7387      SYSV68_STRING_TEST_CT, FD_MACH_ONLY,
7388      aSysv68_StringTests,   apzSysv68_StringPatch, 0 },
7389 
7390   {  zSysz_Stdlib_For_SunName,    zSysz_Stdlib_For_SunList,
7391      apzSysz_Stdlib_For_SunMachs,
7392      SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7393      aSysz_Stdlib_For_SunTests,   apzSysz_Stdlib_For_SunPatch, 0 },
7394 
7395   {  zThread_KeywordName,    zThread_KeywordList,
7396      apzThread_KeywordMachs,
7397      THREAD_KEYWORD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7398      aThread_KeywordTests,   apzThread_KeywordPatch, 0 },
7399 
7400   {  zTinfo_CplusplusName,    zTinfo_CplusplusList,
7401      apzTinfo_CplusplusMachs,
7402      TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7403      aTinfo_CplusplusTests,   apzTinfo_CplusplusPatch, 0 },
7404 
7405   {  zUltrix_Atexit_ParamName,    zUltrix_Atexit_ParamList,
7406      apzUltrix_Atexit_ParamMachs,
7407      ULTRIX_ATEXIT_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7408      aUltrix_Atexit_ParamTests,   apzUltrix_Atexit_ParamPatch, 0 },
7409 
7410   {  zUltrix_Atof_ParamName,    zUltrix_Atof_ParamList,
7411      apzUltrix_Atof_ParamMachs,
7412      ULTRIX_ATOF_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7413      aUltrix_Atof_ParamTests,   apzUltrix_Atof_ParamPatch, 0 },
7414 
7415   {  zUltrix_ConstName,    zUltrix_ConstList,
7416      apzUltrix_ConstMachs,
7417      ULTRIX_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7418      aUltrix_ConstTests,   apzUltrix_ConstPatch, 0 },
7419 
7420   {  zUltrix_Const2Name,    zUltrix_Const2List,
7421      apzUltrix_Const2Machs,
7422      ULTRIX_CONST2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7423      aUltrix_Const2Tests,   apzUltrix_Const2Patch, 0 },
7424 
7425   {  zUltrix_Fix_FixprotoName,    zUltrix_Fix_FixprotoList,
7426      apzUltrix_Fix_FixprotoMachs,
7427      ULTRIX_FIX_FIXPROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7428      aUltrix_Fix_FixprotoTests,   apzUltrix_Fix_FixprotoPatch, 0 },
7429 
7430   {  zUltrix_IfdefName,    zUltrix_IfdefList,
7431      apzUltrix_IfdefMachs,
7432      ULTRIX_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7433      aUltrix_IfdefTests,   apzUltrix_IfdefPatch, 0 },
7434 
7435   {  zUltrix_Math_IfdefName,    zUltrix_Math_IfdefList,
7436      apzUltrix_Math_IfdefMachs,
7437      ULTRIX_MATH_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7438      aUltrix_Math_IfdefTests,   apzUltrix_Math_IfdefPatch, 0 },
7439 
7440   {  zUltrix_Nested_IoctlName,    zUltrix_Nested_IoctlList,
7441      apzUltrix_Nested_IoctlMachs,
7442      ULTRIX_NESTED_IOCTL_TEST_CT, FD_MACH_ONLY,
7443      aUltrix_Nested_IoctlTests,   apzUltrix_Nested_IoctlPatch, 0 },
7444 
7445   {  zUltrix_Nested_SvcName,    zUltrix_Nested_SvcList,
7446      apzUltrix_Nested_SvcMachs,
7447      ULTRIX_NESTED_SVC_TEST_CT, FD_MACH_ONLY,
7448      aUltrix_Nested_SvcTests,   apzUltrix_Nested_SvcPatch, 0 },
7449 
7450   {  zUltrix_StatName,    zUltrix_StatList,
7451      apzUltrix_StatMachs,
7452      ULTRIX_STAT_TEST_CT, FD_MACH_ONLY,
7453      aUltrix_StatTests,   apzUltrix_StatPatch, 0 },
7454 
7455   {  zUltrix_StaticName,    zUltrix_StaticList,
7456      apzUltrix_StaticMachs,
7457      ULTRIX_STATIC_TEST_CT, FD_MACH_ONLY,
7458      aUltrix_StaticTests,   apzUltrix_StaticPatch, 0 },
7459 
7460   {  zUltrix_StringsName,    zUltrix_StringsList,
7461      apzUltrix_StringsMachs,
7462      ULTRIX_STRINGS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7463      aUltrix_StringsTests,   apzUltrix_StringsPatch, 0 },
7464 
7465   {  zUndefine_NullName,    zUndefine_NullList,
7466      apzUndefine_NullMachs,
7467      UNDEFINE_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7468      aUndefine_NullTests,   apzUndefine_NullPatch, 0 },
7469 
7470   {  zUnicosmk_RestrictName,    zUnicosmk_RestrictList,
7471      apzUnicosmk_RestrictMachs,
7472      UNICOSMK_RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7473      aUnicosmk_RestrictTests,   apzUnicosmk_RestrictPatch, 0 },
7474 
7475   {  zUw7_Byteorder_FixName,    zUw7_Byteorder_FixList,
7476      apzUw7_Byteorder_FixMachs,
7477      UW7_BYTEORDER_FIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7478      aUw7_Byteorder_FixTests,   apzUw7_Byteorder_FixPatch, 0 },
7479 
7480   {  zVa_I960_MacroName,    zVa_I960_MacroList,
7481      apzVa_I960_MacroMachs,
7482      VA_I960_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7483      aVa_I960_MacroTests,   apzVa_I960_MacroPatch, 0 },
7484 
7485   {  zVoid_NullName,    zVoid_NullList,
7486      apzVoid_NullMachs,
7487      VOID_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7488      aVoid_NullTests,   apzVoid_NullPatch, 0 },
7489 
7490   {  zVxworks_Gcc_ProblemName,    zVxworks_Gcc_ProblemList,
7491      apzVxworks_Gcc_ProblemMachs,
7492      VXWORKS_GCC_PROBLEM_TEST_CT, FD_MACH_ONLY,
7493      aVxworks_Gcc_ProblemTests,   apzVxworks_Gcc_ProblemPatch, 0 },
7494 
7495   {  zVxworks_Needs_VxtypesName,    zVxworks_Needs_VxtypesList,
7496      apzVxworks_Needs_VxtypesMachs,
7497      VXWORKS_NEEDS_VXTYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7498      aVxworks_Needs_VxtypesTests,   apzVxworks_Needs_VxtypesPatch, 0 },
7499 
7500   {  zVxworks_Needs_VxworksName,    zVxworks_Needs_VxworksList,
7501      apzVxworks_Needs_VxworksMachs,
7502      VXWORKS_NEEDS_VXWORKS_TEST_CT, FD_MACH_ONLY,
7503      aVxworks_Needs_VxworksTests,   apzVxworks_Needs_VxworksPatch, 0 },
7504 
7505   {  zVxworks_TimeName,    zVxworks_TimeList,
7506      apzVxworks_TimeMachs,
7507      VXWORKS_TIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7508      aVxworks_TimeTests,   apzVxworks_TimePatch, 0 },
7509 
7510   {  zWindiss_Math1Name,    zWindiss_Math1List,
7511      apzWindiss_Math1Machs,
7512      WINDISS_MATH1_TEST_CT, FD_MACH_ONLY,
7513      aWindiss_Math1Tests,   apzWindiss_Math1Patch, 0 },
7514 
7515   {  zWindiss_Math2Name,    zWindiss_Math2List,
7516      apzWindiss_Math2Machs,
7517      WINDISS_MATH2_TEST_CT, FD_MACH_ONLY,
7518      aWindiss_Math2Tests,   apzWindiss_Math2Patch, 0 },
7519 
7520   {  zWindiss_ValistName,    zWindiss_ValistList,
7521      apzWindiss_ValistMachs,
7522      WINDISS_VALIST_TEST_CT, FD_MACH_ONLY,
7523      aWindiss_ValistTests,   apzWindiss_ValistPatch, 0 },
7524 
7525   {  zX11_ClassName,    zX11_ClassList,
7526      apzX11_ClassMachs,
7527      X11_CLASS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7528      aX11_ClassTests,   apzX11_ClassPatch, 0 },
7529 
7530   {  zX11_Class_UsageName,    zX11_Class_UsageList,
7531      apzX11_Class_UsageMachs,
7532      X11_CLASS_USAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7533      aX11_Class_UsageTests,   apzX11_Class_UsagePatch, 0 },
7534 
7535   {  zX11_NewName,    zX11_NewList,
7536      apzX11_NewMachs,
7537      X11_NEW_TEST_CT, FD_MACH_ONLY,
7538      aX11_NewTests,   apzX11_NewPatch, 0 },
7539 
7540   {  zX11_SprintfName,    zX11_SprintfList,
7541      apzX11_SprintfMachs,
7542      X11_SPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7543      aX11_SprintfTests,   apzX11_SprintfPatch, 0 }
7544 };
7545