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