1 /* -*- buffer-read-only: t -*- vi: set ro:
3 * DO NOT EDIT THIS FILE (fixincl.x)
5 * It has been AutoGen-ed Tuesday July 29, 2003 at 08:15:05 PM MEST
6 * From the definitions inclhack.def
7 * and the template file fixincl
9 /* DO NOT CVS-MERGE THIS FILE, EITHER Tue Jul 29 20:15:06 MEST 2003
11 * You must regenerate it. Use the ./genfixes script.
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.
18 * This file contains 155 fixup descriptions.
20 * See README for more information.
22 * inclhack copyright (c) 1998, 1999, 2000, 2001
23 * The Free Software Foundation, Inc.
25 * inclhack is free software.
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.
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.
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.
43 /* * * * * * * * * * * * * * * * * * * * * * * * * *
45 * Description of Aab_Fd_Zero_Asm_Posix_Types_H fix
47 tSCC zAab_Fd_Zero_Asm_Posix_Types_HName[] =
48 "AAB_fd_zero_asm_posix_types_h";
51 * File name selection pattern
53 tSCC zAab_Fd_Zero_Asm_Posix_Types_HList[] =
54 "|asm/posix_types.h|";
56 * Machine/OS name selection pattern
58 tSCC* apzAab_Fd_Zero_Asm_Posix_Types_HMachs[] = {
59 "i[34567]86-*-linux*",
63 * content bypass pattern - skip fix if pattern found
65 tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass0[] =
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 }, };
73 * Fix Command Arguments for Aab_Fd_Zero_Asm_Posix_Types_H
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\
83 #define __FD_ZERO(fdsetp) \\\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\
92 #define _POSIX_TYPES_H_WRAPPER\n\
93 #endif /* _POSIX_TYPES_H_WRAPPER */",
96 /* * * * * * * * * * * * * * * * * * * * * * * * * *
98 * Description of Aab_Fd_Zero_Gnu_Types_H fix
100 tSCC zAab_Fd_Zero_Gnu_Types_HName[] =
101 "AAB_fd_zero_gnu_types_h";
104 * File name selection pattern
106 tSCC zAab_Fd_Zero_Gnu_Types_HList[] =
109 * Machine/OS name selection pattern
111 tSCC* apzAab_Fd_Zero_Gnu_Types_HMachs[] = {
112 "i[34567]86-*-linux*",
114 #define AAB_FD_ZERO_GNU_TYPES_H_TEST_CT 0
115 #define aAab_Fd_Zero_Gnu_Types_HTests (tTestDesc*)NULL
118 * Fix Command Arguments for Aab_Fd_Zero_Gnu_Types_H
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\
127 # define __FD_ZERO(fdsetp) \\\\\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\
136 #define _TYPES_H_WRAPPER\n\
137 #endif /* _TYPES_H_WRAPPER */",
140 /* * * * * * * * * * * * * * * * * * * * * * * * * *
142 * Description of Aab_Fd_Zero_Selectbits_H fix
144 tSCC zAab_Fd_Zero_Selectbits_HName[] =
145 "AAB_fd_zero_selectbits_h";
148 * File name selection pattern
150 tSCC zAab_Fd_Zero_Selectbits_HList[] =
153 * Machine/OS name selection pattern
155 tSCC* apzAab_Fd_Zero_Selectbits_HMachs[] = {
156 "i[34567]86-*-linux*",
158 #define AAB_FD_ZERO_SELECTBITS_H_TEST_CT 0
159 #define aAab_Fd_Zero_Selectbits_HTests (tTestDesc*)NULL
162 * Fix Command Arguments for Aab_Fd_Zero_Selectbits_H
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\
173 #define __FD_ZERO(fdsetp) \\\\\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\
184 #define _SELECTBITS_H_WRAPPER\n\
185 #endif /* _SELECTBITS_H_WRAPPER */",
188 /* * * * * * * * * * * * * * * * * * * * * * * * * *
190 * Description of Aab_Solaris_Sys_Varargs_H fix
192 tSCC zAab_Solaris_Sys_Varargs_HName[] =
193 "AAB_solaris_sys_varargs_h";
196 * File name selection pattern
198 tSCC zAab_Solaris_Sys_Varargs_HList[] =
201 * Machine/OS name selection pattern
203 tSCC* apzAab_Solaris_Sys_Varargs_HMachs[] = {
206 #define AAB_SOLARIS_SYS_VARARGS_H_TEST_CT 0
207 #define aAab_Solaris_Sys_Varargs_HTests (tTestDesc*)NULL
210 * Fix Command Arguments for Aab_Solaris_Sys_Varargs_H
212 static const char* apzAab_Solaris_Sys_Varargs_HPatch[] = {
214 #include <stdarg.h>\n\
216 #include <varargs.h>\n\
220 /* * * * * * * * * * * * * * * * * * * * * * * * * *
222 * Description of Aab_Sun_Memcpy fix
224 tSCC zAab_Sun_MemcpyName[] =
228 * File name selection pattern
230 tSCC zAab_Sun_MemcpyList[] =
233 * Machine/OS name selection pattern
235 #define apzAab_Sun_MemcpyMachs (const char**)NULL
238 * content selection pattern - do fix if pattern found
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)\\*/";
243 #define AAB_SUN_MEMCPY_TEST_CT 1
244 static tTestDesc aAab_Sun_MemcpyTests[] = {
245 { TT_EGREP, zAab_Sun_MemcpySelect0, (regex_t*)NULL }, };
248 * Fix Command Arguments for Aab_Sun_Memcpy
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\
255 extern void *memccpy();\n\
256 extern void *memchr();\n\
257 extern void *memcpy();\n\
258 extern void *memset();\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\
270 * Completely replace <sys/varargs.h> with a file that includes gcc's\n\
271 * stdarg.h or varargs.h files as appropriate.\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\
283 \"#include <varargs.h>\\n\"\n\
284 \"#endif\\n\\n\"\n\n\
285 \"#endif /* _SYS_VARARGS_H */\\n\";\n\
289 * Completely replace <sys/byteorder.h>; with a file that implements gcc's\n\
290 * optimized byteswapping.\n\
293 hackname = AAB_svr4_replace_byteorder;\n\
294 mach = \"*-*-sysv4*\";\n\
295 mach = \"i[34567]86-*-sysv5*\";\n\
296 mach = \"i[34567]86-*-sco3.2v5*\";\n\
297 mach = \"i[34567]86-*-udk*\";\n\
298 mach = \"i[34567]86-*-solaris2.[0-4]\";\n\
299 mach = \"powerpcle-*-solaris2.[0-4]\";\n\
300 mach = \"sparc-*-solaris2.[0-4]\";\n\
301 files = sys/byteorder.h;\n\
302 replace = <<- _EndOfHeader_\n\
303 #ifndef _SYS_BYTEORDER_H\n\
304 #define _SYS_BYTEORDER_H\n\n\
305 /* Functions to convert `short' and `long' quantities from host byte order\n\
306 to (internet) network byte order (i.e. big-endian).\n\n\
307 Written by Ron Guilmette (rfg@ncd.com).\n\n\
308 This isn't actually used by GCC. It is installed by fixinc.svr4.\n\n\
309 For big-endian machines these functions are essentially no-ops.\n\n\
310 For little-endian machines, we define the functions using specialized\n\
311 asm sequences in cases where doing so yields better code (e.g. i386). */\n\n\
312 #if !defined (__GNUC__) && !defined (__GNUG__)\n\
313 #error You lose! This file is only useful with GNU compilers.\n\
315 #ifndef __BYTE_ORDER__\n\
316 /* Byte order defines. These are as defined on UnixWare 1.1, but with\n\
317 double underscores added at the front and back. */\n\
318 #define __LITTLE_ENDIAN__ 1234\n\
319 #define __BIG_ENDIAN__ 4321\n\
320 #define __PDP_ENDIAN__ 3412\n\
323 static __inline__ unsigned long htonl (unsigned long);\n\
324 static __inline__ unsigned short htons (unsigned int);\n\
325 static __inline__ unsigned long ntohl (unsigned long);\n\
326 static __inline__ unsigned short ntohs (unsigned int);\n\
327 #endif /* defined (__STDC__) */\n\n\
328 #if defined (__i386__)\n\n\
329 #ifndef __BYTE_ORDER__\n\
330 #define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
332 /* Convert a host long to a network long. */\n\n\
333 /* We must use a new-style function definition, so that this will also\n\
334 be valid for C++. */\n\
335 static __inline__ unsigned long\n\
336 htonl (unsigned long __arg)\n\
338 register unsigned long __result;\n\n\
339 __asm__ (\"xchg%B0 %b0,%h0\n\
341 xchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
344 /* Convert a host short to a network short. */\n\n\
345 static __inline__ unsigned short\n\
346 htons (unsigned int __arg)\n\
348 register unsigned short __result;\n\n\
349 __asm__ (\"xchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
352 #elif (defined (__ns32k__) || defined (__vax__) || defined (__arm__))\n\n\
353 #ifndef __BYTE_ORDER__\n\
354 #define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
356 /* For other little-endian machines, using C code is just as efficient as\n\
357 using assembly code. */\n\n\
358 /* Convert a host long to a network long. */\n\n\
359 static __inline__ unsigned long\n\
360 htonl (unsigned long __arg)\n\
362 register unsigned long __result;\n\n\
363 __result = (__arg >> 24) & 0x000000ff;\n\
364 __result |= (__arg >> 8) & 0x0000ff00;\n\
365 __result |= (__arg << 8) & 0x00ff0000;\n\
366 __result |= (__arg << 24) & 0xff000000;\n\
369 /* Convert a host short to a network short. */\n\n\
370 static __inline__ unsigned short\n\
371 htons (unsigned int __arg)\n\
373 register unsigned short __result;\n\n\
374 __result = (__arg << 8) & 0xff00;\n\
375 __result |= (__arg >> 8) & 0x00ff;\n\
378 #else /* must be a big-endian machine */\n\n\
379 #ifndef __BYTE_ORDER__\n\
380 #define __BYTE_ORDER__ __BIG_ENDIAN__\n\
382 /* Convert a host long to a network long. */\n\n\
383 static __inline__ unsigned long\n\
384 htonl (unsigned long __arg)\n\
388 /* Convert a host short to a network short. */\n\n\
389 static __inline__ unsigned short\n\
390 htons (unsigned int __arg)\n\
394 #endif /* big-endian */\n\n\
395 /* Convert a network long to a host long. */\n\n\
396 static __inline__ unsigned long\n\
397 ntohl (unsigned long __arg)\n\
399 return htonl (__arg);\n\
401 /* Convert a network short to a host short. */\n\n\
402 static __inline__ unsigned short\n\
403 ntohs (unsigned int __arg)\n\
405 return htons (__arg);\n\
410 /* * * * * * * * * * * * * * * * * * * * * * * * * *
412 * Description of Aab_Ultrix_Ansi_Compat fix
414 tSCC zAab_Ultrix_Ansi_CompatName[] =
415 "AAB_ultrix_ansi_compat";
418 * File name selection pattern
420 tSCC zAab_Ultrix_Ansi_CompatList[] =
423 * Machine/OS name selection pattern
425 #define apzAab_Ultrix_Ansi_CompatMachs (const char**)NULL
428 * content selection pattern - do fix if pattern found
430 tSCC zAab_Ultrix_Ansi_CompatSelect0[] =
433 #define AAB_ULTRIX_ANSI_COMPAT_TEST_CT 1
434 static tTestDesc aAab_Ultrix_Ansi_CompatTests[] = {
435 { TT_EGREP, zAab_Ultrix_Ansi_CompatSelect0, (regex_t*)NULL }, };
438 * Fix Command Arguments for Aab_Ultrix_Ansi_Compat
440 static const char* apzAab_Ultrix_Ansi_CompatPatch[] = {
441 "/* This file intentionally left blank. */\n",
444 /* * * * * * * * * * * * * * * * * * * * * * * * * *
446 * Description of Aab_Ultrix_Limits fix
448 tSCC zAab_Ultrix_LimitsName[] =
452 * File name selection pattern
454 tSCC zAab_Ultrix_LimitsList[] =
457 * Machine/OS name selection pattern
459 tSCC* apzAab_Ultrix_LimitsMachs[] = {
462 #define AAB_ULTRIX_LIMITS_TEST_CT 0
463 #define aAab_Ultrix_LimitsTests (tTestDesc*)NULL
466 * Fix Command Arguments for Aab_Ultrix_Limits
468 static const char* apzAab_Ultrix_LimitsPatch[] = {
469 "#ifndef _LIMITS_INCLUDED\n\
470 #define _LIMITS_INCLUDED\n\
471 #include <sys/limits.h>\n\
472 #endif /* _LIMITS_INCLUDED */",
475 /* * * * * * * * * * * * * * * * * * * * * * * * * *
477 * Description of Aab_Ultrix_Memory fix
479 tSCC zAab_Ultrix_MemoryName[] =
483 * File name selection pattern
485 tSCC zAab_Ultrix_MemoryList[] =
488 * Machine/OS name selection pattern
490 tSCC* apzAab_Ultrix_MemoryMachs[] = {
493 #define AAB_ULTRIX_MEMORY_TEST_CT 0
494 #define aAab_Ultrix_MemoryTests (tTestDesc*)NULL
497 * Fix Command Arguments for Aab_Ultrix_Memory
499 static const char* apzAab_Ultrix_MemoryPatch[] = {
500 "#ifndef _MEMORY_INCLUDED\n\
501 #define _MEMORY_INCLUDED\n\
502 #include <strings.h>\n\
503 #endif /* _MEMORY_INCLUDED */",
506 /* * * * * * * * * * * * * * * * * * * * * * * * * *
508 * Description of Aab_Ultrix_String fix
510 tSCC zAab_Ultrix_StringName[] =
514 * File name selection pattern
516 tSCC zAab_Ultrix_StringList[] =
519 * Machine/OS name selection pattern
521 tSCC* apzAab_Ultrix_StringMachs[] = {
524 #define AAB_ULTRIX_STRING_TEST_CT 0
525 #define aAab_Ultrix_StringTests (tTestDesc*)NULL
528 * Fix Command Arguments for Aab_Ultrix_String
530 static const char* apzAab_Ultrix_StringPatch[] = {
531 "#ifndef _STRING_INCLUDED\n\
532 #define _STRING_INCLUDED\n\
533 #include <strings.h>\n\
534 #endif /* _STRING_INCLUDED */",
537 /* * * * * * * * * * * * * * * * * * * * * * * * * *
539 * Description of Aix_Pthread fix
541 tSCC zAix_PthreadName[] =
545 * File name selection pattern
547 tSCC zAix_PthreadList[] =
550 * Machine/OS name selection pattern
552 #define apzAix_PthreadMachs (const char**)NULL
555 * content selection pattern - do fix if pattern found
557 tSCC zAix_PthreadSelect0[] =
558 "(#define [A-Za-z_0-9]+)(\\\\\n\
562 #define AIX_PTHREAD_TEST_CT 1
563 static tTestDesc aAix_PthreadTests[] = {
564 { TT_EGREP, zAix_PthreadSelect0, (regex_t*)NULL }, };
567 * Fix Command Arguments for Aix_Pthread
569 static const char* apzAix_PthreadPatch[] = {
574 /* * * * * * * * * * * * * * * * * * * * * * * * * *
576 * Description of Aix_Sysmachine fix
578 tSCC zAix_SysmachineName[] =
582 * File name selection pattern
584 tSCC zAix_SysmachineList[] =
587 * Machine/OS name selection pattern
589 #define apzAix_SysmachineMachs (const char**)NULL
592 * content selection pattern - do fix if pattern found
594 tSCC zAix_SysmachineSelect0[] =
597 #define AIX_SYSMACHINE_TEST_CT 1
598 static tTestDesc aAix_SysmachineTests[] = {
599 { TT_EGREP, zAix_SysmachineSelect0, (regex_t*)NULL }, };
602 * Fix Command Arguments for Aix_Sysmachine
604 static const char* apzAix_SysmachinePatch[] = {
609 /* * * * * * * * * * * * * * * * * * * * * * * * * *
611 * Description of Aix_Syswait fix
613 tSCC zAix_SyswaitName[] =
617 * File name selection pattern
619 tSCC zAix_SyswaitList[] =
622 * Machine/OS name selection pattern
624 #define apzAix_SyswaitMachs (const char**)NULL
627 * content selection pattern - do fix if pattern found
629 tSCC zAix_SyswaitSelect0[] =
630 "^extern pid_t wait3\\(\\);\n";
631 tSCC zAix_SyswaitSelect1[] =
634 #define AIX_SYSWAIT_TEST_CT 2
635 static tTestDesc aAix_SyswaitTests[] = {
636 { TT_EGREP, zAix_SyswaitSelect0, (regex_t*)NULL },
637 { TT_EGREP, zAix_SyswaitSelect1, (regex_t*)NULL }, };
640 * Fix Command Arguments for Aix_Syswait
642 static const char* apzAix_SyswaitPatch[] = {
648 /* * * * * * * * * * * * * * * * * * * * * * * * * *
650 * Description of Aix_Volatile fix
652 tSCC zAix_VolatileName[] =
656 * File name selection pattern
658 tSCC zAix_VolatileList[] =
661 * Machine/OS name selection pattern
663 #define apzAix_VolatileMachs (const char**)NULL
666 * content selection pattern - do fix if pattern found
668 tSCC zAix_VolatileSelect0[] =
669 "typedef volatile int sig_atomic_t";
671 #define AIX_VOLATILE_TEST_CT 1
672 static tTestDesc aAix_VolatileTests[] = {
673 { TT_EGREP, zAix_VolatileSelect0, (regex_t*)NULL }, };
676 * Fix Command Arguments for Aix_Volatile
678 static const char* apzAix_VolatilePatch[] = {
680 "typedef int sig_atomic_t",
683 /* * * * * * * * * * * * * * * * * * * * * * * * * *
685 * Description of Alpha___Assert fix
687 tSCC zAlpha___AssertName[] =
691 * File name selection pattern
693 tSCC zAlpha___AssertList[] =
696 * Machine/OS name selection pattern
698 #define apzAlpha___AssertMachs (const char**)NULL
701 * content selection pattern - do fix if pattern found
703 tSCC zAlpha___AssertSelect0[] =
704 "__assert\\(char \\*, char \\*, int\\)";
706 #define ALPHA___ASSERT_TEST_CT 1
707 static tTestDesc aAlpha___AssertTests[] = {
708 { TT_EGREP, zAlpha___AssertSelect0, (regex_t*)NULL }, };
711 * Fix Command Arguments for Alpha___Assert
713 static const char* apzAlpha___AssertPatch[] = {
715 "__assert(const char *, const char *, int)",
718 /* * * * * * * * * * * * * * * * * * * * * * * * * *
720 * Description of Alpha___Extern_Prefix fix
722 tSCC zAlpha___Extern_PrefixName[] =
723 "alpha___extern_prefix";
726 * File name selection pattern
728 tSCC zAlpha___Extern_PrefixList[] =
731 * Machine/OS name selection pattern
733 tSCC* apzAlpha___Extern_PrefixMachs[] = {
738 * content selection pattern - do fix if pattern found
740 tSCC zAlpha___Extern_PrefixSelect0[] =
741 "#[ \t]*if[ \t]*defined\\(__DECC\\)";
743 #define ALPHA___EXTERN_PREFIX_TEST_CT 1
744 static tTestDesc aAlpha___Extern_PrefixTests[] = {
745 { TT_EGREP, zAlpha___Extern_PrefixSelect0, (regex_t*)NULL }, };
748 * Fix Command Arguments for Alpha___Extern_Prefix
750 static const char* apzAlpha___Extern_PrefixPatch[] = {
752 "%0 || defined(__PRAGMA_EXTERN_PREFIX)",
755 /* * * * * * * * * * * * * * * * * * * * * * * * * *
757 * Description of Alpha_Assert fix
759 tSCC zAlpha_AssertName[] =
763 * File name selection pattern
765 tSCC zAlpha_AssertList[] =
768 * Machine/OS name selection pattern
770 #define apzAlpha_AssertMachs (const char**)NULL
773 * content selection pattern - do fix if pattern found
775 tSCC zAlpha_AssertSelect0[] =
776 "(#define assert\\(EX\\).*)\\(\\(int\\) \\(EX\\)\\)";
778 #define ALPHA_ASSERT_TEST_CT 1
779 static tTestDesc aAlpha_AssertTests[] = {
780 { TT_EGREP, zAlpha_AssertSelect0, (regex_t*)NULL }, };
783 * Fix Command Arguments for Alpha_Assert
785 static const char* apzAlpha_AssertPatch[] = {
790 /* * * * * * * * * * * * * * * * * * * * * * * * * *
792 * Description of Alpha_Getopt fix
794 tSCC zAlpha_GetoptName[] =
798 * File name selection pattern
800 tSCC zAlpha_GetoptList[] =
801 "|stdio.h|stdlib.h|";
803 * Machine/OS name selection pattern
805 #define apzAlpha_GetoptMachs (const char**)NULL
808 * content selection pattern - do fix if pattern found
810 tSCC zAlpha_GetoptSelect0[] =
811 "getopt\\(int, char \\*\\[\\], *char \\*\\)";
813 #define ALPHA_GETOPT_TEST_CT 1
814 static tTestDesc aAlpha_GetoptTests[] = {
815 { TT_EGREP, zAlpha_GetoptSelect0, (regex_t*)NULL }, };
818 * Fix Command Arguments for Alpha_Getopt
820 static const char* apzAlpha_GetoptPatch[] = {
822 "getopt(int, char *const[], const char *)",
825 /* * * * * * * * * * * * * * * * * * * * * * * * * *
827 * Description of Alpha_Parens fix
829 tSCC zAlpha_ParensName[] =
833 * File name selection pattern
835 tSCC zAlpha_ParensList[] =
838 * Machine/OS name selection pattern
840 #define apzAlpha_ParensMachs (const char**)NULL
843 * content selection pattern - do fix if pattern found
845 tSCC zAlpha_ParensSelect0[] =
846 "#ifndef\\(__mips64\\)";
848 #define ALPHA_PARENS_TEST_CT 1
849 static tTestDesc aAlpha_ParensTests[] = {
850 { TT_EGREP, zAlpha_ParensSelect0, (regex_t*)NULL }, };
853 * Fix Command Arguments for Alpha_Parens
855 static const char* apzAlpha_ParensPatch[] = {
860 /* * * * * * * * * * * * * * * * * * * * * * * * * *
862 * Description of Alpha_Pthread fix
864 tSCC zAlpha_PthreadName[] =
868 * File name selection pattern
870 tSCC zAlpha_PthreadList[] =
873 * Machine/OS name selection pattern
875 tSCC* apzAlpha_PthreadMachs[] = {
880 * content selection pattern - do fix if pattern found
882 tSCC zAlpha_PthreadSelect0[] =
883 "(#[ \t]*if defined \\(_PTHREAD_ENV_DECC\\) || defined \\(_PTHREAD_ENV_EPCC\\))\n\
884 (#[ \t]*define _PTHREAD_USE_PTDNAM_)";
886 #define ALPHA_PTHREAD_TEST_CT 1
887 static tTestDesc aAlpha_PthreadTests[] = {
888 { TT_EGREP, zAlpha_PthreadSelect0, (regex_t*)NULL }, };
891 * Fix Command Arguments for Alpha_Pthread
893 static const char* apzAlpha_PthreadPatch[] = {
895 "%1 || defined (__PRAGMA_EXTERN_PREFIX)\n\
899 /* * * * * * * * * * * * * * * * * * * * * * * * * *
901 * Description of Alpha_Sbrk fix
903 tSCC zAlpha_SbrkName[] =
907 * File name selection pattern
909 tSCC zAlpha_SbrkList[] =
912 * Machine/OS name selection pattern
914 #define apzAlpha_SbrkMachs (const char**)NULL
917 * content selection pattern - do fix if pattern found
919 tSCC zAlpha_SbrkSelect0[] =
920 "char[ \t]*\\*[\t ]*sbrk[ \t]*\\(";
922 #define ALPHA_SBRK_TEST_CT 1
923 static tTestDesc aAlpha_SbrkTests[] = {
924 { TT_EGREP, zAlpha_SbrkSelect0, (regex_t*)NULL }, };
927 * Fix Command Arguments for Alpha_Sbrk
929 static const char* apzAlpha_SbrkPatch[] = {
934 /* * * * * * * * * * * * * * * * * * * * * * * * * *
936 * Description of Avoid_Bool_Define fix
938 tSCC zAvoid_Bool_DefineName[] =
942 * File name selection pattern
944 tSCC zAvoid_Bool_DefineList[] =
945 "|curses.h|curses_colr/curses.h|term.h|tinfo.h|";
947 * Machine/OS name selection pattern
949 #define apzAvoid_Bool_DefineMachs (const char**)NULL
952 * content selection pattern - do fix if pattern found
954 tSCC zAvoid_Bool_DefineSelect0[] =
955 "#[ \t]*define[ \t]+bool[ \t]";
958 * content bypass pattern - skip fix if pattern found
960 tSCC zAvoid_Bool_DefineBypass0[] =
963 #define AVOID_BOOL_DEFINE_TEST_CT 2
964 static tTestDesc aAvoid_Bool_DefineTests[] = {
965 { TT_NEGREP, zAvoid_Bool_DefineBypass0, (regex_t*)NULL },
966 { TT_EGREP, zAvoid_Bool_DefineSelect0, (regex_t*)NULL }, };
969 * Fix Command Arguments for Avoid_Bool_Define
971 static const char* apzAvoid_Bool_DefinePatch[] = {
973 "#ifndef __cplusplus\n\
976 "^[ \t]*#[ \t]*define[ \t]+bool[ \t].*",
979 /* * * * * * * * * * * * * * * * * * * * * * * * * *
981 * Description of Avoid_Bool_Type fix
983 tSCC zAvoid_Bool_TypeName[] =
987 * File name selection pattern
989 tSCC zAvoid_Bool_TypeList[] =
990 "|curses.h|curses_colr/curses.h|term.h|tinfo.h|";
992 * Machine/OS name selection pattern
994 #define apzAvoid_Bool_TypeMachs (const char**)NULL
997 * content selection pattern - do fix if pattern found
999 tSCC zAvoid_Bool_TypeSelect0[] =
1000 "^[ \t]*typedef[ \t].*[ \t]bool[ \t]*;";
1003 * content bypass pattern - skip fix if pattern found
1005 tSCC zAvoid_Bool_TypeBypass0[] =
1008 #define AVOID_BOOL_TYPE_TEST_CT 2
1009 static tTestDesc aAvoid_Bool_TypeTests[] = {
1010 { TT_NEGREP, zAvoid_Bool_TypeBypass0, (regex_t*)NULL },
1011 { TT_EGREP, zAvoid_Bool_TypeSelect0, (regex_t*)NULL }, };
1014 * Fix Command Arguments for Avoid_Bool_Type
1016 static const char* apzAvoid_Bool_TypePatch[] = {
1018 "#ifndef __cplusplus\n\
1023 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1025 * Description of Avoid_Wchar_T_Type fix
1027 tSCC zAvoid_Wchar_T_TypeName[] =
1028 "avoid_wchar_t_type";
1031 * File name selection pattern
1033 #define zAvoid_Wchar_T_TypeList (char*)NULL
1035 * Machine/OS name selection pattern
1037 #define apzAvoid_Wchar_T_TypeMachs (const char**)NULL
1040 * content selection pattern - do fix if pattern found
1042 tSCC zAvoid_Wchar_T_TypeSelect0[] =
1043 "^[ \t]*typedef[ \t].*[ \t]wchar_t[ \t]*;";
1046 * content bypass pattern - skip fix if pattern found
1048 tSCC zAvoid_Wchar_T_TypeBypass0[] =
1050 tSCC zAvoid_Wchar_T_TypeBypass1[] =
1052 tSCC zAvoid_Wchar_T_TypeBypass2[] =
1053 "XFree86: xc/lib/X11/Xlib\\.h";
1055 #define AVOID_WCHAR_T_TYPE_TEST_CT 4
1056 static tTestDesc aAvoid_Wchar_T_TypeTests[] = {
1057 { TT_NEGREP, zAvoid_Wchar_T_TypeBypass0, (regex_t*)NULL },
1058 { TT_NEGREP, zAvoid_Wchar_T_TypeBypass1, (regex_t*)NULL },
1059 { TT_NEGREP, zAvoid_Wchar_T_TypeBypass2, (regex_t*)NULL },
1060 { TT_EGREP, zAvoid_Wchar_T_TypeSelect0, (regex_t*)NULL }, };
1063 * Fix Command Arguments for Avoid_Wchar_T_Type
1065 static const char* apzAvoid_Wchar_T_TypePatch[] = {
1067 "#ifndef __cplusplus\n\
1072 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1074 * Description of Bad_Lval fix
1076 tSCC zBad_LvalName[] =
1080 * File name selection pattern
1082 tSCC zBad_LvalList[] =
1083 "|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|";
1085 * Machine/OS name selection pattern
1087 #define apzBad_LvalMachs (const char**)NULL
1090 * content selection pattern - do fix if pattern found
1092 tSCC zBad_LvalSelect0[] =
1093 "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
1095 #define BAD_LVAL_TEST_CT 1
1096 static tTestDesc aBad_LvalTests[] = {
1097 { TT_EGREP, zBad_LvalSelect0, (regex_t*)NULL }, };
1100 * Fix Command Arguments for Bad_Lval
1102 static const char* apzBad_LvalPatch[] = { "sed",
1103 "-e", "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
1106 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1108 * Description of Bad_Struct_Term fix
1110 tSCC zBad_Struct_TermName[] =
1114 * File name selection pattern
1116 tSCC zBad_Struct_TermList[] =
1119 * Machine/OS name selection pattern
1121 #define apzBad_Struct_TermMachs (const char**)NULL
1124 * content selection pattern - do fix if pattern found
1126 tSCC zBad_Struct_TermSelect0[] =
1127 "^[ \t]*typedef[ \t]+struct[ \t]+term[ \t]*;";
1129 #define BAD_STRUCT_TERM_TEST_CT 1
1130 static tTestDesc aBad_Struct_TermTests[] = {
1131 { TT_EGREP, zBad_Struct_TermSelect0, (regex_t*)NULL }, };
1134 * Fix Command Arguments for Bad_Struct_Term
1136 static const char* apzBad_Struct_TermPatch[] = {
1141 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1143 * Description of Badquote fix
1145 tSCC zBadquoteName[] =
1149 * File name selection pattern
1151 tSCC zBadquoteList[] =
1152 "|sundev/vuid_event.h|";
1154 * Machine/OS name selection pattern
1156 #define apzBadquoteMachs (const char**)NULL
1159 * content selection pattern - do fix if pattern found
1161 tSCC zBadquoteSelect0[] =
1164 #define BADQUOTE_TEST_CT 1
1165 static tTestDesc aBadquoteTests[] = {
1166 { TT_EGREP, zBadquoteSelect0, (regex_t*)NULL }, };
1169 * Fix Command Arguments for Badquote
1171 static const char* apzBadquotePatch[] = {
1176 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1178 * Description of Broken_Assert_Stdio fix
1180 tSCC zBroken_Assert_StdioName[] =
1181 "broken_assert_stdio";
1184 * File name selection pattern
1186 tSCC zBroken_Assert_StdioList[] =
1189 * Machine/OS name selection pattern
1191 #define apzBroken_Assert_StdioMachs (const char**)NULL
1194 * content selection pattern - do fix if pattern found
1196 tSCC zBroken_Assert_StdioSelect0[] =
1200 * content bypass pattern - skip fix if pattern found
1202 tSCC zBroken_Assert_StdioBypass0[] =
1203 "include.*stdio\\.h";
1205 #define BROKEN_ASSERT_STDIO_TEST_CT 2
1206 static tTestDesc aBroken_Assert_StdioTests[] = {
1207 { TT_NEGREP, zBroken_Assert_StdioBypass0, (regex_t*)NULL },
1208 { TT_EGREP, zBroken_Assert_StdioSelect0, (regex_t*)NULL }, };
1211 * Fix Command Arguments for Broken_Assert_Stdio
1213 static const char* apzBroken_Assert_StdioPatch[] = {
1215 "#include <stdio.h>\n",
1218 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1220 * Description of Broken_Assert_Stdlib fix
1222 tSCC zBroken_Assert_StdlibName[] =
1223 "broken_assert_stdlib";
1226 * File name selection pattern
1228 tSCC zBroken_Assert_StdlibList[] =
1231 * Machine/OS name selection pattern
1233 #define apzBroken_Assert_StdlibMachs (const char**)NULL
1236 * content selection pattern - do fix if pattern found
1238 tSCC zBroken_Assert_StdlibSelect0[] =
1239 "exit *\\(|abort *\\(";
1242 * content bypass pattern - skip fix if pattern found
1244 tSCC zBroken_Assert_StdlibBypass0[] =
1245 "include.*stdlib\\.h";
1247 #define BROKEN_ASSERT_STDLIB_TEST_CT 2
1248 static tTestDesc aBroken_Assert_StdlibTests[] = {
1249 { TT_NEGREP, zBroken_Assert_StdlibBypass0, (regex_t*)NULL },
1250 { TT_EGREP, zBroken_Assert_StdlibSelect0, (regex_t*)NULL }, };
1253 * Fix Command Arguments for Broken_Assert_Stdlib
1255 static const char* apzBroken_Assert_StdlibPatch[] = {
1257 "#ifdef __cplusplus\n\
1258 #include <stdlib.h>\n\
1262 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1264 * Description of Broken_Cabs fix
1266 tSCC zBroken_CabsName[] =
1270 * File name selection pattern
1272 tSCC zBroken_CabsList[] =
1275 * Machine/OS name selection pattern
1277 #define apzBroken_CabsMachs (const char**)NULL
1280 * content selection pattern - do fix if pattern found
1282 tSCC zBroken_CabsSelect0[] =
1283 "^extern[ \\t]+double[ \\t]+cabs";
1285 #define BROKEN_CABS_TEST_CT 1
1286 static tTestDesc aBroken_CabsTests[] = {
1287 { TT_EGREP, zBroken_CabsSelect0, (regex_t*)NULL }, };
1290 * Fix Command Arguments for Broken_Cabs
1292 static const char* apzBroken_CabsPatch[] = {
1295 "^extern[ \t]+double[ \t]+cabs\\((struct dbl_hypot|)\\);",
1298 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1300 * Description of Bsd_Stdio_Attrs_Conflict fix
1302 tSCC zBsd_Stdio_Attrs_ConflictName[] =
1303 "bsd_stdio_attrs_conflict";
1306 * File name selection pattern
1308 tSCC zBsd_Stdio_Attrs_ConflictList[] =
1311 * Machine/OS name selection pattern
1313 tSCC* apzBsd_Stdio_Attrs_ConflictMachs[] = {
1316 (const char*)NULL };
1319 * content selection pattern - do fix if pattern found
1321 tSCC zBsd_Stdio_Attrs_ConflictSelect0[] =
1322 "^#define[ \t]*vfscanf[ \t]*__svfscanf[ \t]*$";
1324 #define BSD_STDIO_ATTRS_CONFLICT_TEST_CT 1
1325 static tTestDesc aBsd_Stdio_Attrs_ConflictTests[] = {
1326 { TT_EGREP, zBsd_Stdio_Attrs_ConflictSelect0, (regex_t*)NULL }, };
1329 * Fix Command Arguments for Bsd_Stdio_Attrs_Conflict
1331 static const char* apzBsd_Stdio_Attrs_ConflictPatch[] = {
1333 "#define _BSD_STRING(_BSD_X) _BSD_STRINGX(_BSD_X)\n\
1334 #define _BSD_STRINGX(_BSD_X) #_BSD_X\n\
1335 int vfscanf(FILE *, const char *, __builtin_va_list) __asm__ (_BSD_STRING(__USER_LABEL_PREFIX__) \"__svfscanf\");",
1338 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1340 * Description of Ctrl_Quotes_Def fix
1342 tSCC zCtrl_Quotes_DefName[] =
1346 * File name selection pattern
1348 #define zCtrl_Quotes_DefList (char*)NULL
1350 * Machine/OS name selection pattern
1352 #define apzCtrl_Quotes_DefMachs (const char**)NULL
1355 * content selection pattern - do fix if pattern found
1357 tSCC zCtrl_Quotes_DefSelect0[] =
1358 "define[ \t]+[A-Z0-9_]+CTRL\\([a-zA-Z][,)]";
1360 #define CTRL_QUOTES_DEF_TEST_CT 1
1361 static tTestDesc aCtrl_Quotes_DefTests[] = {
1362 { TT_EGREP, zCtrl_Quotes_DefSelect0, (regex_t*)NULL }, };
1365 * Fix Command Arguments for Ctrl_Quotes_Def
1367 static const char* apzCtrl_Quotes_DefPatch[] = {
1372 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1374 * Description of Ctrl_Quotes_Use fix
1376 tSCC zCtrl_Quotes_UseName[] =
1380 * File name selection pattern
1382 #define zCtrl_Quotes_UseList (char*)NULL
1384 * Machine/OS name selection pattern
1386 #define apzCtrl_Quotes_UseMachs (const char**)NULL
1389 * content selection pattern - do fix if pattern found
1391 tSCC zCtrl_Quotes_UseSelect0[] =
1392 "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+CTRL[ \t]*\\( *[^,']";
1394 #define CTRL_QUOTES_USE_TEST_CT 1
1395 static tTestDesc aCtrl_Quotes_UseTests[] = {
1396 { TT_EGREP, zCtrl_Quotes_UseSelect0, (regex_t*)NULL }, };
1399 * Fix Command Arguments for Ctrl_Quotes_Use
1401 static const char* apzCtrl_Quotes_UsePatch[] = {
1406 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1408 * Description of Cxx_Unready fix
1410 tSCC zCxx_UnreadyName[] =
1414 * File name selection pattern
1416 tSCC zCxx_UnreadyList[] =
1417 "|sys/mman.h|rpc/types.h|";
1419 * Machine/OS name selection pattern
1421 #define apzCxx_UnreadyMachs (const char**)NULL
1424 * content selection pattern - do fix if pattern found
1426 tSCC zCxx_UnreadySelect0[] =
1430 * content bypass pattern - skip fix if pattern found
1432 tSCC zCxx_UnreadyBypass0[] =
1433 "\"C\"|__BEGIN_DECLS";
1435 #define CXX_UNREADY_TEST_CT 2
1436 static tTestDesc aCxx_UnreadyTests[] = {
1437 { TT_NEGREP, zCxx_UnreadyBypass0, (regex_t*)NULL },
1438 { TT_EGREP, zCxx_UnreadySelect0, (regex_t*)NULL }, };
1441 * Fix Command Arguments for Cxx_Unready
1443 static const char* apzCxx_UnreadyPatch[] = {
1445 "#ifdef __cplusplus\n\
1448 "#ifdef __cplusplus\n\
1453 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1455 * Description of Dec_Intern_Asm fix
1457 tSCC zDec_Intern_AsmName[] =
1461 * File name selection pattern
1463 tSCC zDec_Intern_AsmList[] =
1466 * Machine/OS name selection pattern
1468 #define apzDec_Intern_AsmMachs (const char**)NULL
1469 #define DEC_INTERN_ASM_TEST_CT 0
1470 #define aDec_Intern_AsmTests (tTestDesc*)NULL
1473 * Fix Command Arguments for Dec_Intern_Asm
1475 static const char* apzDec_Intern_AsmPatch[] = { "sed",
1476 "-e", "/^[ \t]*float[ \t]*fasm/i\\\n\
1478 "-e", "/^[ \t]*#[ \t]*pragma[ \t]*intrinsic([ \t]*dasm/a\\\n\
1482 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1484 * Description of Djgpp_Wchar_H fix
1486 tSCC zDjgpp_Wchar_HName[] =
1490 * File name selection pattern
1492 #define zDjgpp_Wchar_HList (char*)NULL
1494 * Machine/OS name selection pattern
1496 #define apzDjgpp_Wchar_HMachs (const char**)NULL
1499 * content selection pattern - do fix if pattern found
1501 tSCC zDjgpp_Wchar_HSelect0[] =
1505 * content bypass pattern - skip fix if pattern found
1507 tSCC zDjgpp_Wchar_HBypass0[] =
1510 #define DJGPP_WCHAR_H_TEST_CT 2
1511 static tTestDesc aDjgpp_Wchar_HTests[] = {
1512 { TT_NEGREP, zDjgpp_Wchar_HBypass0, (regex_t*)NULL },
1513 { TT_EGREP, zDjgpp_Wchar_HSelect0, (regex_t*)NULL }, };
1516 * Fix Command Arguments for Djgpp_Wchar_H
1518 static const char* apzDjgpp_Wchar_HPatch[] = {
1521 #include <sys/djtypes.h>",
1522 "#include <stddef.h>",
1525 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1527 * Description of Ecd_Cursor fix
1529 tSCC zEcd_CursorName[] =
1533 * File name selection pattern
1535 tSCC zEcd_CursorList[] =
1536 "|sunwindow/win_lock.h|sunwindow/win_cursor.h|";
1538 * Machine/OS name selection pattern
1540 #define apzEcd_CursorMachs (const char**)NULL
1543 * content selection pattern - do fix if pattern found
1545 tSCC zEcd_CursorSelect0[] =
1548 #define ECD_CURSOR_TEST_CT 1
1549 static tTestDesc aEcd_CursorTests[] = {
1550 { TT_EGREP, zEcd_CursorSelect0, (regex_t*)NULL }, };
1553 * Fix Command Arguments for Ecd_Cursor
1555 static const char* apzEcd_CursorPatch[] = {
1560 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1562 * Description of Freebsd_Gcc3_Breakage fix
1564 tSCC zFreebsd_Gcc3_BreakageName[] =
1565 "freebsd_gcc3_breakage";
1568 * File name selection pattern
1570 tSCC zFreebsd_Gcc3_BreakageList[] =
1573 * Machine/OS name selection pattern
1575 tSCC* apzFreebsd_Gcc3_BreakageMachs[] = {
1577 (const char*)NULL };
1580 * content selection pattern - do fix if pattern found
1582 tSCC zFreebsd_Gcc3_BreakageSelect0[] =
1583 "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7$";
1586 * content bypass pattern - skip fix if pattern found
1588 tSCC zFreebsd_Gcc3_BreakageBypass0[] =
1589 "__GNUC__[ \\t]*([>=]=[ \\t]*[3-9]|>[ \\t]*2)";
1591 #define FREEBSD_GCC3_BREAKAGE_TEST_CT 2
1592 static tTestDesc aFreebsd_Gcc3_BreakageTests[] = {
1593 { TT_NEGREP, zFreebsd_Gcc3_BreakageBypass0, (regex_t*)NULL },
1594 { TT_EGREP, zFreebsd_Gcc3_BreakageSelect0, (regex_t*)NULL }, };
1597 * Fix Command Arguments for Freebsd_Gcc3_Breakage
1599 static const char* apzFreebsd_Gcc3_BreakagePatch[] = {
1601 "%0 || __GNUC__ >= 3",
1604 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1606 * Description of Gnu_Types fix
1608 tSCC zGnu_TypesName[] =
1612 * File name selection pattern
1614 tSCC zGnu_TypesList[] =
1615 "|sys/types.h|stdlib.h|sys/stdtypes.h|stddef.h|memory.h|unistd.h|";
1617 * Machine/OS name selection pattern
1619 #define apzGnu_TypesMachs (const char**)NULL
1622 * content selection pattern - do fix if pattern found
1624 tSCC zGnu_TypesSelect0[] =
1625 "^[ \t]*typedef[ \t]+.*[ \t](ptrdiff|size|wchar)_t;";
1628 * content bypass pattern - skip fix if pattern found
1630 tSCC zGnu_TypesBypass0[] =
1631 "_GCC_(PTRDIFF|SIZE|WCHAR)_T";
1633 #define GNU_TYPES_TEST_CT 2
1634 static tTestDesc aGnu_TypesTests[] = {
1635 { TT_NEGREP, zGnu_TypesBypass0, (regex_t*)NULL },
1636 { TT_EGREP, zGnu_TypesSelect0, (regex_t*)NULL }, };
1639 * Fix Command Arguments for Gnu_Types
1641 static const char* apzGnu_TypesPatch[] = {
1645 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1647 * Description of Hp_Inline fix
1649 tSCC zHp_InlineName[] =
1653 * File name selection pattern
1655 tSCC zHp_InlineList[] =
1656 "|sys/spinlock.h|machine/machparam.h|";
1658 * Machine/OS name selection pattern
1660 #define apzHp_InlineMachs (const char**)NULL
1663 * content selection pattern - do fix if pattern found
1665 tSCC zHp_InlineSelect0[] =
1666 "[ \t]*#[ \t]*include[ \t]+\"\\.\\./machine/";
1668 #define HP_INLINE_TEST_CT 1
1669 static tTestDesc aHp_InlineTests[] = {
1670 { TT_EGREP, zHp_InlineSelect0, (regex_t*)NULL }, };
1673 * Fix Command Arguments for Hp_Inline
1675 static const char* apzHp_InlinePatch[] = {
1678 "([ \t]*#[ \t]*include[ \t]+)\"\\.\\./machine/([a-z]+)\\.h\"",
1681 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1683 * Description of Hp_Sysfile fix
1685 tSCC zHp_SysfileName[] =
1689 * File name selection pattern
1691 tSCC zHp_SysfileList[] =
1694 * Machine/OS name selection pattern
1696 #define apzHp_SysfileMachs (const char**)NULL
1699 * content selection pattern - do fix if pattern found
1701 tSCC zHp_SysfileSelect0[] =
1704 #define HP_SYSFILE_TEST_CT 1
1705 static tTestDesc aHp_SysfileTests[] = {
1706 { TT_EGREP, zHp_SysfileSelect0, (regex_t*)NULL }, };
1709 * Fix Command Arguments for Hp_Sysfile
1711 static const char* apzHp_SysfilePatch[] = {
1713 "(struct file *, ...)",
1717 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1719 * Description of Hpux10_Cpp_Pow_Inline fix
1721 tSCC zHpux10_Cpp_Pow_InlineName[] =
1722 "hpux10_cpp_pow_inline";
1725 * File name selection pattern
1727 tSCC zHpux10_Cpp_Pow_InlineList[] =
1728 "|fixinc-test-limits.h|math.h|";
1730 * Machine/OS name selection pattern
1732 #define apzHpux10_Cpp_Pow_InlineMachs (const char**)NULL
1735 * content selection pattern - do fix if pattern found
1737 tSCC zHpux10_Cpp_Pow_InlineSelect0[] =
1738 "^# +ifdef +__cplusplus\n\
1740 +inline +double +pow\\(double +__d,int +__expon\\) +\\{\n\
1741 [ \t]+return +pow\\(__d,\\(double\\)__expon\\);\n\
1743 +extern +\"C\" +\\{\n\
1747 #define HPUX10_CPP_POW_INLINE_TEST_CT 1
1748 static tTestDesc aHpux10_Cpp_Pow_InlineTests[] = {
1749 { TT_EGREP, zHpux10_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
1752 * Fix Command Arguments for Hpux10_Cpp_Pow_Inline
1754 static const char* apzHpux10_Cpp_Pow_InlinePatch[] = {
1759 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1761 * Description of Hpux11_Cpp_Pow_Inline fix
1763 tSCC zHpux11_Cpp_Pow_InlineName[] =
1764 "hpux11_cpp_pow_inline";
1767 * File name selection pattern
1769 tSCC zHpux11_Cpp_Pow_InlineList[] =
1772 * Machine/OS name selection pattern
1774 #define apzHpux11_Cpp_Pow_InlineMachs (const char**)NULL
1777 * content selection pattern - do fix if pattern found
1779 tSCC zHpux11_Cpp_Pow_InlineSelect0[] =
1780 " +inline double pow\\(double d,int expon\\) \\{\n\
1781 +return pow\\(d, \\(double\\)expon\\);\n\
1784 #define HPUX11_CPP_POW_INLINE_TEST_CT 1
1785 static tTestDesc aHpux11_Cpp_Pow_InlineTests[] = {
1786 { TT_EGREP, zHpux11_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
1789 * Fix Command Arguments for Hpux11_Cpp_Pow_Inline
1791 static const char* apzHpux11_Cpp_Pow_InlinePatch[] = {
1796 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1798 * Description of Hpux10_Ctype_Declarations1 fix
1800 tSCC zHpux10_Ctype_Declarations1Name[] =
1801 "hpux10_ctype_declarations1";
1804 * File name selection pattern
1806 tSCC zHpux10_Ctype_Declarations1List[] =
1809 * Machine/OS name selection pattern
1811 #define apzHpux10_Ctype_Declarations1Machs (const char**)NULL
1814 * content selection pattern - do fix if pattern found
1816 tSCC zHpux10_Ctype_Declarations1Select0[] =
1817 "^#[ \t]*define _toupper\\(__c\\)[ \t]*__toupper\\(__c\\)";
1820 * content bypass pattern - skip fix if pattern found
1822 tSCC zHpux10_Ctype_Declarations1Bypass0[] =
1823 "^[ \t]*extern[ \t]*int[ \t]*__tolower[ \t]*\\(";
1825 #define HPUX10_CTYPE_DECLARATIONS1_TEST_CT 2
1826 static tTestDesc aHpux10_Ctype_Declarations1Tests[] = {
1827 { TT_NEGREP, zHpux10_Ctype_Declarations1Bypass0, (regex_t*)NULL },
1828 { TT_EGREP, zHpux10_Ctype_Declarations1Select0, (regex_t*)NULL }, };
1831 * Fix Command Arguments for Hpux10_Ctype_Declarations1
1833 static const char* apzHpux10_Ctype_Declarations1Patch[] = {
1835 "#ifdef _PROTOTYPES\n\
1836 extern int __tolower(int);\n\
1837 extern int __toupper(int);\n\
1838 #else /* NOT _PROTOTYPES */\n\
1839 extern int __tolower();\n\
1840 extern int __toupper();\n\
1841 #endif /* _PROTOTYPES */\n\n\
1845 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1847 * Description of Hpux10_Ctype_Declarations2 fix
1849 tSCC zHpux10_Ctype_Declarations2Name[] =
1850 "hpux10_ctype_declarations2";
1853 * File name selection pattern
1855 tSCC zHpux10_Ctype_Declarations2List[] =
1858 * Machine/OS name selection pattern
1860 #define apzHpux10_Ctype_Declarations2Machs (const char**)NULL
1863 * content selection pattern - do fix if pattern found
1865 tSCC zHpux10_Ctype_Declarations2Select0[] =
1866 "^# if defined\\(_SB_CTYPE_MACROS\\) && \\!defined\\(__lint\\)";
1869 * content bypass pattern - skip fix if pattern found
1871 tSCC zHpux10_Ctype_Declarations2Bypass0[] =
1872 "^[ \t]*extern[ \t]*int[ \t]*_isalnum[ \t]*\\(";
1874 #define HPUX10_CTYPE_DECLARATIONS2_TEST_CT 2
1875 static tTestDesc aHpux10_Ctype_Declarations2Tests[] = {
1876 { TT_NEGREP, zHpux10_Ctype_Declarations2Bypass0, (regex_t*)NULL },
1877 { TT_EGREP, zHpux10_Ctype_Declarations2Select0, (regex_t*)NULL }, };
1880 * Fix Command Arguments for Hpux10_Ctype_Declarations2
1882 static const char* apzHpux10_Ctype_Declarations2Patch[] = {
1885 #ifdef _PROTOTYPES\n\
1886 extern int _isalnum(int);\n\
1887 extern int _isalpha(int);\n\
1888 extern int _iscntrl(int);\n\
1889 extern int _isdigit(int);\n\
1890 extern int _isgraph(int);\n\
1891 extern int _islower(int);\n\
1892 extern int _isprint(int);\n\
1893 extern int _ispunct(int);\n\
1894 extern int _isspace(int);\n\
1895 extern int _isupper(int);\n\
1896 extern int _isxdigit(int);\n\
1897 # else /* not _PROTOTYPES */\n\
1898 extern int _isalnum();\n\
1899 extern int _isalpha();\n\
1900 extern int _iscntrl();\n\
1901 extern int _isdigit();\n\
1902 extern int _isgraph();\n\
1903 extern int _islower();\n\
1904 extern int _isprint();\n\
1905 extern int _ispunct();\n\
1906 extern int _isspace();\n\
1907 extern int _isupper();\n\
1908 extern int _isxdigit();\n\
1909 #endif /* _PROTOTYPES */\n",
1912 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1914 * Description of Hpux11_Abs fix
1916 tSCC zHpux11_AbsName[] =
1920 * File name selection pattern
1922 tSCC zHpux11_AbsList[] =
1925 * Machine/OS name selection pattern
1927 tSCC* apzHpux11_AbsMachs[] = {
1929 (const char*)NULL };
1932 * content selection pattern - do fix if pattern found
1934 tSCC zHpux11_AbsSelect0[] =
1935 "ifndef _MATH_INCLUDED";
1937 #define HPUX11_ABS_TEST_CT 1
1938 static tTestDesc aHpux11_AbsTests[] = {
1939 { TT_EGREP, zHpux11_AbsSelect0, (regex_t*)NULL }, };
1942 * Fix Command Arguments for Hpux11_Abs
1944 static const char* apzHpux11_AbsPatch[] = {
1946 "if !defined(_MATH_INCLUDED) || defined(__GNUG__)",
1949 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1951 * Description of Hpux11_Fabsf fix
1953 tSCC zHpux11_FabsfName[] =
1957 * File name selection pattern
1959 tSCC zHpux11_FabsfList[] =
1962 * Machine/OS name selection pattern
1964 #define apzHpux11_FabsfMachs (const char**)NULL
1967 * content selection pattern - do fix if pattern found
1969 tSCC zHpux11_FabsfSelect0[] =
1970 "^[ \t]*#[ \t]*define[ \t]+fabsf\\(.*";
1973 * content bypass pattern - skip fix if pattern found
1975 tSCC zHpux11_FabsfBypass0[] =
1978 #define HPUX11_FABSF_TEST_CT 2
1979 static tTestDesc aHpux11_FabsfTests[] = {
1980 { TT_NEGREP, zHpux11_FabsfBypass0, (regex_t*)NULL },
1981 { TT_EGREP, zHpux11_FabsfSelect0, (regex_t*)NULL }, };
1984 * Fix Command Arguments for Hpux11_Fabsf
1986 static const char* apzHpux11_FabsfPatch[] = {
1988 "#ifndef __cplusplus\n\
1993 /* * * * * * * * * * * * * * * * * * * * * * * * * *
1995 * Description of Hpux11_Size_T fix
1997 tSCC zHpux11_Size_TName[] =
2001 * File name selection pattern
2003 #define zHpux11_Size_TList (char*)NULL
2005 * Machine/OS name selection pattern
2007 tSCC* apzHpux11_Size_TMachs[] = {
2009 (const char*)NULL };
2012 * content selection pattern - do fix if pattern found
2014 tSCC zHpux11_Size_TSelect0[] =
2017 #define HPUX11_SIZE_T_TEST_CT 1
2018 static tTestDesc aHpux11_Size_TTests[] = {
2019 { TT_EGREP, zHpux11_Size_TSelect0, (regex_t*)NULL }, };
2022 * Fix Command Arguments for Hpux11_Size_T
2024 static const char* apzHpux11_Size_TPatch[] = {
2029 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2031 * Description of Hpux11_Uint32_C fix
2033 tSCC zHpux11_Uint32_CName[] =
2037 * File name selection pattern
2039 tSCC zHpux11_Uint32_CList[] =
2042 * Machine/OS name selection pattern
2044 #define apzHpux11_Uint32_CMachs (const char**)NULL
2047 * content selection pattern - do fix if pattern found
2049 tSCC zHpux11_Uint32_CSelect0[] =
2050 "^#define UINT32_C\\(__c\\)[ \t]*__CONCAT__\\(__CONCAT_U__\\(__c\\),l\\)";
2052 #define HPUX11_UINT32_C_TEST_CT 1
2053 static tTestDesc aHpux11_Uint32_CTests[] = {
2054 { TT_EGREP, zHpux11_Uint32_CSelect0, (regex_t*)NULL }, };
2057 * Fix Command Arguments for Hpux11_Uint32_C
2059 static const char* apzHpux11_Uint32_CPatch[] = {
2061 "#define UINT32_C(__c) __CONCAT__(__c,ul)",
2064 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2066 * Description of Hpux11_Vsnprintf fix
2068 tSCC zHpux11_VsnprintfName[] =
2072 * File name selection pattern
2074 tSCC zHpux11_VsnprintfList[] =
2077 * Machine/OS name selection pattern
2079 #define apzHpux11_VsnprintfMachs (const char**)NULL
2082 * content selection pattern - do fix if pattern found
2084 tSCC zHpux11_VsnprintfSelect0[] =
2085 "(extern int vsnprintf\\(char \\*, _[hpux]*_size_t, const char \\*,) __va__list\\);";
2087 #define HPUX11_VSNPRINTF_TEST_CT 1
2088 static tTestDesc aHpux11_VsnprintfTests[] = {
2089 { TT_EGREP, zHpux11_VsnprintfSelect0, (regex_t*)NULL }, };
2092 * Fix Command Arguments for Hpux11_Vsnprintf
2094 static const char* apzHpux11_VsnprintfPatch[] = {
2099 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2101 * Description of Hpux8_Bogus_Inlines fix
2103 tSCC zHpux8_Bogus_InlinesName[] =
2104 "hpux8_bogus_inlines";
2107 * File name selection pattern
2109 tSCC zHpux8_Bogus_InlinesList[] =
2112 * Machine/OS name selection pattern
2114 #define apzHpux8_Bogus_InlinesMachs (const char**)NULL
2117 * content selection pattern - do fix if pattern found
2119 tSCC zHpux8_Bogus_InlinesSelect0[] =
2122 #define HPUX8_BOGUS_INLINES_TEST_CT 1
2123 static tTestDesc aHpux8_Bogus_InlinesTests[] = {
2124 { TT_EGREP, zHpux8_Bogus_InlinesSelect0, (regex_t*)NULL }, };
2127 * Fix Command Arguments for Hpux8_Bogus_Inlines
2129 static const char* apzHpux8_Bogus_InlinesPatch[] = { "sed",
2130 "-e", "s@inline int abs(int [a-z][a-z]*) {.*}@extern \"C\" int abs(int);@",
2131 "-e", "s@inline double abs(double [a-z][a-z]*) {.*}@@",
2132 "-e", "s@inline int sqr(int [a-z][a-z]*) {.*}@@",
2133 "-e", "s@inline double sqr(double [a-z][a-z]*) {.*}@@",
2136 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2138 * Description of Hpux_Ctype_Macros fix
2140 tSCC zHpux_Ctype_MacrosName[] =
2141 "hpux_ctype_macros";
2144 * File name selection pattern
2146 tSCC zHpux_Ctype_MacrosList[] =
2149 * Machine/OS name selection pattern
2151 #define apzHpux_Ctype_MacrosMachs (const char**)NULL
2154 * content selection pattern - do fix if pattern found
2156 tSCC zHpux_Ctype_MacrosSelect0[] =
2157 "((: |\\()__SB_masks \\? )(__SB_masks\\[__(alnum|c)\\] & _IS)";
2159 #define HPUX_CTYPE_MACROS_TEST_CT 1
2160 static tTestDesc aHpux_Ctype_MacrosTests[] = {
2161 { TT_EGREP, zHpux_Ctype_MacrosSelect0, (regex_t*)NULL }, };
2164 * Fix Command Arguments for Hpux_Ctype_Macros
2166 static const char* apzHpux_Ctype_MacrosPatch[] = {
2171 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2173 * Description of Hpux_Long_Double fix
2175 tSCC zHpux_Long_DoubleName[] =
2179 * File name selection pattern
2181 tSCC zHpux_Long_DoubleList[] =
2184 * Machine/OS name selection pattern
2186 #define apzHpux_Long_DoubleMachs (const char**)NULL
2189 * content selection pattern - do fix if pattern found
2191 tSCC zHpux_Long_DoubleSelect0[] =
2192 "extern[ \t]long_double[ \t]strtold";
2195 * content bypass pattern - skip fix if pattern found
2197 tSCC zHpux_Long_DoubleBypass0[] =
2200 #define HPUX_LONG_DOUBLE_TEST_CT 2
2201 static tTestDesc aHpux_Long_DoubleTests[] = {
2202 { TT_NEGREP, zHpux_Long_DoubleBypass0, (regex_t*)NULL },
2203 { TT_EGREP, zHpux_Long_DoubleSelect0, (regex_t*)NULL }, };
2206 * Fix Command Arguments for Hpux_Long_Double
2208 static const char* apzHpux_Long_DoublePatch[] = { "sed",
2209 "-e", "/^#[ \t]*ifndef _LONG_DOUBLE/,/\\/\\* _LONG_DOUBLE \\*\\//D",
2210 "-e", "s/long_double/long double/g",
2213 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2215 * Description of Hpux_Maxint fix
2217 tSCC zHpux_MaxintName[] =
2221 * File name selection pattern
2223 tSCC zHpux_MaxintList[] =
2224 "|sys/param.h|values.h|";
2226 * Machine/OS name selection pattern
2228 #define apzHpux_MaxintMachs (const char**)NULL
2231 * content selection pattern - do fix if pattern found
2233 tSCC zHpux_MaxintSelect0[] =
2234 "^#[ \t]*define[ \t]+MAXINT[ \t]";
2237 * content bypass pattern - skip fix if pattern found
2239 tSCC zHpux_MaxintBypass0[] =
2240 "^#[ \t]*ifndef[ \t]+MAXINT";
2243 * perform the 'test' shell command - do fix on success
2245 tSCC zHpux_MaxintTest0[] =
2246 "-n \"`egrep '#[ \t]*define[ \t]+MAXINT[ \t]' sys/param.h`\"";
2248 #define HPUX_MAXINT_TEST_CT 3
2249 static tTestDesc aHpux_MaxintTests[] = {
2250 { TT_TEST, zHpux_MaxintTest0, 0 /* unused */ },
2251 { TT_NEGREP, zHpux_MaxintBypass0, (regex_t*)NULL },
2252 { TT_EGREP, zHpux_MaxintSelect0, (regex_t*)NULL }, };
2255 * Fix Command Arguments for Hpux_Maxint
2257 static const char* apzHpux_MaxintPatch[] = {
2262 "^#[ \t]*define[ \t]+MAXINT[ \t].*",
2265 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2267 * Description of Hpux_Systime fix
2269 tSCC zHpux_SystimeName[] =
2273 * File name selection pattern
2275 tSCC zHpux_SystimeList[] =
2278 * Machine/OS name selection pattern
2280 #define apzHpux_SystimeMachs (const char**)NULL
2283 * content selection pattern - do fix if pattern found
2285 tSCC zHpux_SystimeSelect0[] =
2286 "^extern struct sigevent;";
2288 #define HPUX_SYSTIME_TEST_CT 1
2289 static tTestDesc aHpux_SystimeTests[] = {
2290 { TT_EGREP, zHpux_SystimeSelect0, (regex_t*)NULL }, };
2293 * Fix Command Arguments for Hpux_Systime
2295 static const char* apzHpux_SystimePatch[] = {
2300 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2302 * Description of Int_Abort_Free_And_Exit fix
2304 tSCC zInt_Abort_Free_And_ExitName[] =
2305 "int_abort_free_and_exit";
2308 * File name selection pattern
2310 tSCC zInt_Abort_Free_And_ExitList[] =
2313 * Machine/OS name selection pattern
2315 #define apzInt_Abort_Free_And_ExitMachs (const char**)NULL
2318 * content selection pattern - do fix if pattern found
2320 tSCC zInt_Abort_Free_And_ExitSelect0[] =
2321 "int[ \t]+(abort|free|exit)[ \t]*\\(";
2323 #define INT_ABORT_FREE_AND_EXIT_TEST_CT 1
2324 static tTestDesc aInt_Abort_Free_And_ExitTests[] = {
2325 { TT_EGREP, zInt_Abort_Free_And_ExitSelect0, (regex_t*)NULL }, };
2328 * Fix Command Arguments for Int_Abort_Free_And_Exit
2330 static const char* apzInt_Abort_Free_And_ExitPatch[] = {
2335 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2337 * Description of Io_Quotes_Def fix
2339 tSCC zIo_Quotes_DefName[] =
2343 * File name selection pattern
2345 #define zIo_Quotes_DefList (char*)NULL
2347 * Machine/OS name selection pattern
2349 #define apzIo_Quotes_DefMachs (const char**)NULL
2352 * content selection pattern - do fix if pattern found
2354 tSCC zIo_Quotes_DefSelect0[] =
2355 "define[ \t]+[A-Z0-9_]+IO[A-Z]*\\([a-zA-Z][,)]";
2357 #define IO_QUOTES_DEF_TEST_CT 1
2358 static tTestDesc aIo_Quotes_DefTests[] = {
2359 { TT_EGREP, zIo_Quotes_DefSelect0, (regex_t*)NULL }, };
2362 * Fix Command Arguments for Io_Quotes_Def
2364 static const char* apzIo_Quotes_DefPatch[] = {
2369 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2371 * Description of Io_Quotes_Use fix
2373 tSCC zIo_Quotes_UseName[] =
2377 * File name selection pattern
2379 #define zIo_Quotes_UseList (char*)NULL
2381 * Machine/OS name selection pattern
2383 #define apzIo_Quotes_UseMachs (const char**)NULL
2386 * content selection pattern - do fix if pattern found
2388 tSCC zIo_Quotes_UseSelect0[] =
2389 "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+IO[A-Z]*[ \t]*\\( *[^,']";
2391 #define IO_QUOTES_USE_TEST_CT 1
2392 static tTestDesc aIo_Quotes_UseTests[] = {
2393 { TT_EGREP, zIo_Quotes_UseSelect0, (regex_t*)NULL }, };
2396 * Fix Command Arguments for Io_Quotes_Use
2398 static const char* apzIo_Quotes_UsePatch[] = {
2403 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2405 * Description of Ip_Missing_Semi fix
2407 tSCC zIp_Missing_SemiName[] =
2411 * File name selection pattern
2413 tSCC zIp_Missing_SemiList[] =
2416 * Machine/OS name selection pattern
2418 #define apzIp_Missing_SemiMachs (const char**)NULL
2421 * content selection pattern - do fix if pattern found
2423 tSCC zIp_Missing_SemiSelect0[] =
2426 #define IP_MISSING_SEMI_TEST_CT 1
2427 static tTestDesc aIp_Missing_SemiTests[] = {
2428 { TT_EGREP, zIp_Missing_SemiSelect0, (regex_t*)NULL }, };
2431 * Fix Command Arguments for Ip_Missing_Semi
2433 static const char* apzIp_Missing_SemiPatch[] = { "sed",
2434 "-e", "/^struct/,/^};/s/}$/};/",
2437 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2439 * Description of Irix___Restrict fix
2441 tSCC zIrix___RestrictName[] =
2445 * File name selection pattern
2447 tSCC zIrix___RestrictList[] =
2448 "|internal/sgimacros.h|";
2450 * Machine/OS name selection pattern
2452 tSCC* apzIrix___RestrictMachs[] = {
2454 (const char*)NULL };
2457 * content selection pattern - do fix if pattern found
2459 tSCC zIrix___RestrictSelect0[] =
2461 )(#[ \t]*define __restrict restrict)";
2463 #define IRIX___RESTRICT_TEST_CT 1
2464 static tTestDesc aIrix___RestrictTests[] = {
2465 { TT_EGREP, zIrix___RestrictSelect0, (regex_t*)NULL }, };
2468 * Fix Command Arguments for Irix___Restrict
2470 static const char* apzIrix___RestrictPatch[] = {
2472 "%1# ifndef __cplusplus\n\
2477 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2479 * Description of Irix_Asm_Apostrophe fix
2481 tSCC zIrix_Asm_ApostropheName[] =
2482 "irix_asm_apostrophe";
2485 * File name selection pattern
2487 tSCC zIrix_Asm_ApostropheList[] =
2490 * Machine/OS name selection pattern
2492 #define apzIrix_Asm_ApostropheMachs (const char**)NULL
2495 * content selection pattern - do fix if pattern found
2497 tSCC zIrix_Asm_ApostropheSelect0[] =
2498 "^[ \t]*#.*[Ww]e're";
2500 #define IRIX_ASM_APOSTROPHE_TEST_CT 1
2501 static tTestDesc aIrix_Asm_ApostropheTests[] = {
2502 { TT_EGREP, zIrix_Asm_ApostropheSelect0, (regex_t*)NULL }, };
2505 * Fix Command Arguments for Irix_Asm_Apostrophe
2507 static const char* apzIrix_Asm_ApostrophePatch[] = {
2510 "^([ \t]*#.*[Ww]e)'re",
2513 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2515 * Description of Irix_Limits_Const fix
2517 tSCC zIrix_Limits_ConstName[] =
2518 "irix_limits_const";
2521 * File name selection pattern
2523 tSCC zIrix_Limits_ConstList[] =
2524 "|fixinc-test-limits.h|limits.h|";
2526 * Machine/OS name selection pattern
2528 #define apzIrix_Limits_ConstMachs (const char**)NULL
2531 * content selection pattern - do fix if pattern found
2533 tSCC zIrix_Limits_ConstSelect0[] =
2536 #define IRIX_LIMITS_CONST_TEST_CT 1
2537 static tTestDesc aIrix_Limits_ConstTests[] = {
2538 { TT_EGREP, zIrix_Limits_ConstSelect0, (regex_t*)NULL }, };
2541 * Fix Command Arguments for Irix_Limits_Const
2543 static const char* apzIrix_Limits_ConstPatch[] = {
2548 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2550 * Description of Irix_Socklen_T fix
2552 tSCC zIrix_Socklen_TName[] =
2556 * File name selection pattern
2558 tSCC zIrix_Socklen_TList[] =
2561 * Machine/OS name selection pattern
2563 tSCC* apzIrix_Socklen_TMachs[] = {
2565 (const char*)NULL };
2568 * content selection pattern - do fix if pattern found
2570 tSCC zIrix_Socklen_TSelect0[] =
2571 "(#define _SOCKLEN_T\n\
2572 )(typedef u_int32_t socklen_t;)";
2574 #define IRIX_SOCKLEN_T_TEST_CT 1
2575 static tTestDesc aIrix_Socklen_TTests[] = {
2576 { TT_EGREP, zIrix_Socklen_TSelect0, (regex_t*)NULL }, };
2579 * Fix Command Arguments for Irix_Socklen_T
2581 static const char* apzIrix_Socklen_TPatch[] = {
2583 "%1#if _NO_XOPEN4 && _NO_XOPEN5\n\
2584 typedef int socklen_t;\n\
2587 #endif /* _NO_XOPEN4 && _NO_XOPEN5 */",
2590 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2592 * Description of Irix_Stdio_Va_List fix
2594 tSCC zIrix_Stdio_Va_ListName[] =
2595 "irix_stdio_va_list";
2598 * File name selection pattern
2600 tSCC zIrix_Stdio_Va_ListList[] =
2601 "|stdio.h|internal/stdio_core.h|";
2603 * Machine/OS name selection pattern
2605 #define apzIrix_Stdio_Va_ListMachs (const char**)NULL
2608 * content selection pattern - do fix if pattern found
2610 tSCC zIrix_Stdio_Va_ListSelect0[] =
2611 "(printf\\(.*), /\\* va_list \\*/ char \\*";
2613 #define IRIX_STDIO_VA_LIST_TEST_CT 1
2614 static tTestDesc aIrix_Stdio_Va_ListTests[] = {
2615 { TT_EGREP, zIrix_Stdio_Va_ListSelect0, (regex_t*)NULL }, };
2618 * Fix Command Arguments for Irix_Stdio_Va_List
2620 static const char* apzIrix_Stdio_Va_ListPatch[] = {
2622 "%1, __gnuc_va_list",
2625 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2627 * Description of Irix_Wcsftime fix
2629 tSCC zIrix_WcsftimeName[] =
2633 * File name selection pattern
2635 tSCC zIrix_WcsftimeList[] =
2636 "|internal/wchar_core.h|";
2638 * Machine/OS name selection pattern
2640 tSCC* apzIrix_WcsftimeMachs[] = {
2642 (const char*)NULL };
2645 * content selection pattern - do fix if pattern found
2647 tSCC zIrix_WcsftimeSelect0[] =
2649 (extern size_t[ \t]+wcsftime.*const char *.*)";
2651 #define IRIX_WCSFTIME_TEST_CT 1
2652 static tTestDesc aIrix_WcsftimeTests[] = {
2653 { TT_EGREP, zIrix_WcsftimeSelect0, (regex_t*)NULL }, };
2656 * Fix Command Arguments for Irix_Wcsftime
2658 static const char* apzIrix_WcsftimePatch[] = {
2660 "#if _NO_XOPEN5 && !defined(__c99)\n\
2664 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2666 * Description of Isc_Fmod fix
2668 tSCC zIsc_FmodName[] =
2672 * File name selection pattern
2674 tSCC zIsc_FmodList[] =
2677 * Machine/OS name selection pattern
2679 #define apzIsc_FmodMachs (const char**)NULL
2682 * content selection pattern - do fix if pattern found
2684 tSCC zIsc_FmodSelect0[] =
2687 #define ISC_FMOD_TEST_CT 1
2688 static tTestDesc aIsc_FmodTests[] = {
2689 { TT_EGREP, zIsc_FmodSelect0, (regex_t*)NULL }, };
2692 * Fix Command Arguments for Isc_Fmod
2694 static const char* apzIsc_FmodPatch[] = {
2696 "fmod(double, double)",
2699 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2701 * Description of Isc_Omits_With_Stdc fix
2703 tSCC zIsc_Omits_With_StdcName[] =
2704 "isc_omits_with_stdc";
2707 * File name selection pattern
2709 tSCC zIsc_Omits_With_StdcList[] =
2710 "|stdio.h|math.h|ctype.h|sys/limits.h|sys/fcntl.h|sys/dirent.h|";
2712 * Machine/OS name selection pattern
2714 #define apzIsc_Omits_With_StdcMachs (const char**)NULL
2717 * content selection pattern - do fix if pattern found
2719 tSCC zIsc_Omits_With_StdcSelect0[] =
2720 "!defined\\(__STDC__\\) && !defined\\(_POSIX_SOURCE\\)";
2722 #define ISC_OMITS_WITH_STDC_TEST_CT 1
2723 static tTestDesc aIsc_Omits_With_StdcTests[] = {
2724 { TT_EGREP, zIsc_Omits_With_StdcSelect0, (regex_t*)NULL }, };
2727 * Fix Command Arguments for Isc_Omits_With_Stdc
2729 static const char* apzIsc_Omits_With_StdcPatch[] = {
2731 "!defined(_POSIX_SOURCE)",
2734 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2736 * Description of Kandr_Concat fix
2738 tSCC zKandr_ConcatName[] =
2742 * File name selection pattern
2744 tSCC zKandr_ConcatList[] =
2745 "|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|";
2747 * Machine/OS name selection pattern
2749 #define apzKandr_ConcatMachs (const char**)NULL
2752 * content selection pattern - do fix if pattern found
2754 tSCC zKandr_ConcatSelect0[] =
2757 #define KANDR_CONCAT_TEST_CT 1
2758 static tTestDesc aKandr_ConcatTests[] = {
2759 { TT_EGREP, zKandr_ConcatSelect0, (regex_t*)NULL }, };
2762 * Fix Command Arguments for Kandr_Concat
2764 static const char* apzKandr_ConcatPatch[] = {
2769 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2771 * Description of Libc1_G_Va_List fix
2773 tSCC zLibc1_G_Va_ListName[] =
2777 * File name selection pattern
2779 tSCC zLibc1_G_Va_ListList[] =
2782 * Machine/OS name selection pattern
2784 tSCC* apzLibc1_G_Va_ListMachs[] = {
2786 (const char*)NULL };
2789 * content selection pattern - do fix if pattern found
2791 tSCC zLibc1_G_Va_ListSelect0[] =
2792 "typedef void \\* _G_va_list;";
2794 #define LIBC1_G_VA_LIST_TEST_CT 1
2795 static tTestDesc aLibc1_G_Va_ListTests[] = {
2796 { TT_EGREP, zLibc1_G_Va_ListSelect0, (regex_t*)NULL }, };
2799 * Fix Command Arguments for Libc1_G_Va_List
2801 static const char* apzLibc1_G_Va_ListPatch[] = {
2803 "typedef __builtin_va_list _G_va_list;",
2806 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2808 * Description of Libc1_Ifdefd_Memx fix
2810 tSCC zLibc1_Ifdefd_MemxName[] =
2811 "libc1_ifdefd_memx";
2814 * File name selection pattern
2816 tSCC zLibc1_Ifdefd_MemxList[] =
2817 "|testing.h|string.h|";
2819 * Machine/OS name selection pattern
2821 #define apzLibc1_Ifdefd_MemxMachs (const char**)NULL
2824 * content selection pattern - do fix if pattern found
2826 tSCC zLibc1_Ifdefd_MemxSelect0[] =
2827 "' is a built-in function for gcc 2\\.x\\. \\*/";
2830 * content bypass pattern - skip fix if pattern found
2832 tSCC zLibc1_Ifdefd_MemxBypass0[] =
2835 #define LIBC1_IFDEFD_MEMX_TEST_CT 2
2836 static tTestDesc aLibc1_Ifdefd_MemxTests[] = {
2837 { TT_NEGREP, zLibc1_Ifdefd_MemxBypass0, (regex_t*)NULL },
2838 { TT_EGREP, zLibc1_Ifdefd_MemxSelect0, (regex_t*)NULL }, };
2841 * Fix Command Arguments for Libc1_Ifdefd_Memx
2843 static const char* apzLibc1_Ifdefd_MemxPatch[] = {
2846 "/\\* `mem...' is a built-in function for gcc 2\\.x\\. \\*/\n\
2847 #if defined\\(__STDC__\\) && __GNUC__ < 2\n\
2849 extern [a-z_]+ mem.*(\n\
2854 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2856 * Description of Limits_Ifndefs fix
2858 tSCC zLimits_IfndefsName[] =
2862 * File name selection pattern
2864 tSCC zLimits_IfndefsList[] =
2865 "|sys/limits.h|limits.h|";
2867 * Machine/OS name selection pattern
2869 #define apzLimits_IfndefsMachs (const char**)NULL
2872 * content selection pattern - do fix if pattern found
2874 tSCC zLimits_IfndefsSelect0[] =
2875 "^[ \t]*#[ \t]*define[ \t]+((FLT|DBL)_(MIN|MAX|DIG))[ \t].*";
2878 * content bypass pattern - skip fix if pattern found
2880 tSCC zLimits_IfndefsBypass0[] =
2881 "ifndef[ \t]+FLT_(MIN|MAX)";
2883 #define LIMITS_IFNDEFS_TEST_CT 2
2884 static tTestDesc aLimits_IfndefsTests[] = {
2885 { TT_NEGREP, zLimits_IfndefsBypass0, (regex_t*)NULL },
2886 { TT_EGREP, zLimits_IfndefsSelect0, (regex_t*)NULL }, };
2889 * Fix Command Arguments for Limits_Ifndefs
2891 static const char* apzLimits_IfndefsPatch[] = {
2898 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2900 * Description of Lynx_Void_Int fix
2902 tSCC zLynx_Void_IntName[] =
2906 * File name selection pattern
2908 tSCC zLynx_Void_IntList[] =
2911 * Machine/OS name selection pattern
2913 #define apzLynx_Void_IntMachs (const char**)NULL
2916 * content selection pattern - do fix if pattern found
2918 tSCC zLynx_Void_IntSelect0[] =
2919 "#[ \t]*define[ \t]+void[ \t]+int[ \t]*";
2921 #define LYNX_VOID_INT_TEST_CT 1
2922 static tTestDesc aLynx_Void_IntTests[] = {
2923 { TT_EGREP, zLynx_Void_IntSelect0, (regex_t*)NULL }, };
2926 * Fix Command Arguments for Lynx_Void_Int
2928 static const char* apzLynx_Void_IntPatch[] = {
2933 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2935 * Description of Lynxos_Fcntl_Proto fix
2937 tSCC zLynxos_Fcntl_ProtoName[] =
2938 "lynxos_fcntl_proto";
2941 * File name selection pattern
2943 tSCC zLynxos_Fcntl_ProtoList[] =
2946 * Machine/OS name selection pattern
2948 #define apzLynxos_Fcntl_ProtoMachs (const char**)NULL
2951 * content selection pattern - do fix if pattern found
2953 tSCC zLynxos_Fcntl_ProtoSelect0[] =
2954 "fcntl[ \t]*\\(int, int, int\\)";
2956 #define LYNXOS_FCNTL_PROTO_TEST_CT 1
2957 static tTestDesc aLynxos_Fcntl_ProtoTests[] = {
2958 { TT_EGREP, zLynxos_Fcntl_ProtoSelect0, (regex_t*)NULL }, };
2961 * Fix Command Arguments for Lynxos_Fcntl_Proto
2963 static const char* apzLynxos_Fcntl_ProtoPatch[] = {
2966 "(fcntl[ \t]*\\(int, int, )int\\)",
2969 /* * * * * * * * * * * * * * * * * * * * * * * * * *
2971 * Description of Machine_Ansi_H_Va_List fix
2973 tSCC zMachine_Ansi_H_Va_ListName[] =
2974 "machine_ansi_h_va_list";
2977 * File name selection pattern
2979 #define zMachine_Ansi_H_Va_ListList (char*)NULL
2981 * Machine/OS name selection pattern
2983 #define apzMachine_Ansi_H_Va_ListMachs (const char**)NULL
2986 * content selection pattern - do fix if pattern found
2988 tSCC zMachine_Ansi_H_Va_ListSelect0[] =
2989 "define[ \t]+_BSD_VA_LIST_[ \t]";
2992 * content bypass pattern - skip fix if pattern found
2994 tSCC zMachine_Ansi_H_Va_ListBypass0[] =
2995 "__builtin_va_list";
2997 #define MACHINE_ANSI_H_VA_LIST_TEST_CT 2
2998 static tTestDesc aMachine_Ansi_H_Va_ListTests[] = {
2999 { TT_NEGREP, zMachine_Ansi_H_Va_ListBypass0, (regex_t*)NULL },
3000 { TT_EGREP, zMachine_Ansi_H_Va_ListSelect0, (regex_t*)NULL }, };
3003 * Fix Command Arguments for Machine_Ansi_H_Va_List
3005 static const char* apzMachine_Ansi_H_Va_ListPatch[] = {
3007 "%1__builtin_va_list",
3008 "(define[ \t]+_BSD_VA_LIST_[ \t]+).*",
3011 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3013 * Description of Machine_Name fix
3015 tSCC zMachine_NameName[] =
3019 * File name selection pattern
3021 #define zMachine_NameList (char*)NULL
3023 * Machine/OS name selection pattern
3025 #define apzMachine_NameMachs (const char**)NULL
3028 * perform the C function call test
3030 tSCC zMachine_NameFTst0[] = "machine_name";
3032 #define MACHINE_NAME_TEST_CT 1
3033 static tTestDesc aMachine_NameTests[] = {
3034 { TT_FUNCTION, zMachine_NameFTst0, 0 /* unused */ }, };
3037 * Fix Command Arguments for Machine_Name
3039 static const char* apzMachine_NamePatch[] = {
3043 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3045 * Description of Math_Exception fix
3047 tSCC zMath_ExceptionName[] =
3051 * File name selection pattern
3053 tSCC zMath_ExceptionList[] =
3056 * Machine/OS name selection pattern
3058 #define apzMath_ExceptionMachs (const char**)NULL
3061 * content selection pattern - do fix if pattern found
3063 tSCC zMath_ExceptionSelect0[] =
3067 * content bypass pattern - skip fix if pattern found
3069 tSCC zMath_ExceptionBypass0[] =
3072 #define MATH_EXCEPTION_TEST_CT 2
3073 static tTestDesc aMath_ExceptionTests[] = {
3074 { TT_NEGREP, zMath_ExceptionBypass0, (regex_t*)NULL },
3075 { TT_EGREP, zMath_ExceptionSelect0, (regex_t*)NULL }, };
3078 * Fix Command Arguments for Math_Exception
3080 static const char* apzMath_ExceptionPatch[] = {
3082 "#ifdef __cplusplus\n\
3083 #define exception __math_exception\n\
3085 "#ifdef __cplusplus\n\
3090 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3092 * Description of Math_Huge_Val_From_Dbl_Max fix
3094 tSCC zMath_Huge_Val_From_Dbl_MaxName[] =
3095 "math_huge_val_from_dbl_max";
3098 * File name selection pattern
3100 tSCC zMath_Huge_Val_From_Dbl_MaxList[] =
3103 * Machine/OS name selection pattern
3105 #define apzMath_Huge_Val_From_Dbl_MaxMachs (const char**)NULL
3108 * content selection pattern - do fix if pattern found
3110 tSCC zMath_Huge_Val_From_Dbl_MaxSelect0[] =
3111 "define[ \t]+HUGE_VAL[ \t]+DBL_MAX";
3114 * content bypass pattern - skip fix if pattern found
3116 tSCC zMath_Huge_Val_From_Dbl_MaxBypass0[] =
3117 "define[ \t]+DBL_MAX";
3119 #define MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT 2
3120 static tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = {
3121 { TT_NEGREP, zMath_Huge_Val_From_Dbl_MaxBypass0, (regex_t*)NULL },
3122 { TT_EGREP, zMath_Huge_Val_From_Dbl_MaxSelect0, (regex_t*)NULL }, };
3125 * Fix Command Arguments for Math_Huge_Val_From_Dbl_Max
3127 static const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c",
3128 "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h | sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n\
3129 \tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\
3130 \tthen sed -e '/define[ \t]*HUGE_VAL[ \t]*DBL_MAX/s@DBL_MAX@'\"$dbl_max_def@\"\n\
3135 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3137 * Description of Math_Huge_Val_Ifndef fix
3139 tSCC zMath_Huge_Val_IfndefName[] =
3140 "math_huge_val_ifndef";
3143 * File name selection pattern
3145 tSCC zMath_Huge_Val_IfndefList[] =
3146 "|math.h|math/math.h|";
3148 * Machine/OS name selection pattern
3150 #define apzMath_Huge_Val_IfndefMachs (const char**)NULL
3153 * content selection pattern - do fix if pattern found
3155 tSCC zMath_Huge_Val_IfndefSelect0[] =
3156 "define[ \t]+HUGE_VAL";
3158 #define MATH_HUGE_VAL_IFNDEF_TEST_CT 1
3159 static tTestDesc aMath_Huge_Val_IfndefTests[] = {
3160 { TT_EGREP, zMath_Huge_Val_IfndefSelect0, (regex_t*)NULL }, };
3163 * Fix Command Arguments for Math_Huge_Val_Ifndef
3165 static const char* apzMath_Huge_Val_IfndefPatch[] = {
3167 "#ifndef HUGE_VAL\n\
3170 "^[ \t]*#[ \t]*define[ \t]+HUGE_VAL[ \t].*",
3173 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3175 * Description of Nested_Auth_Des fix
3177 tSCC zNested_Auth_DesName[] =
3181 * File name selection pattern
3183 tSCC zNested_Auth_DesList[] =
3186 * Machine/OS name selection pattern
3188 #define apzNested_Auth_DesMachs (const char**)NULL
3191 * content selection pattern - do fix if pattern found
3193 tSCC zNested_Auth_DesSelect0[] =
3194 "(/\\*.*rpc/auth_des\\.h>.*)/\\*";
3196 #define NESTED_AUTH_DES_TEST_CT 1
3197 static tTestDesc aNested_Auth_DesTests[] = {
3198 { TT_EGREP, zNested_Auth_DesSelect0, (regex_t*)NULL }, };
3201 * Fix Command Arguments for Nested_Auth_Des
3203 static const char* apzNested_Auth_DesPatch[] = {
3208 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3210 * Description of Nested_Motorola fix
3212 tSCC zNested_MotorolaName[] =
3216 * File name selection pattern
3218 tSCC zNested_MotorolaList[] =
3219 "|sys/limits.h|limits.h|";
3221 * Machine/OS name selection pattern
3223 tSCC* apzNested_MotorolaMachs[] = {
3224 "m68k-motorola-sysv*",
3225 (const char*)NULL };
3228 * content selection pattern - do fix if pattern found
3230 tSCC zNested_MotorolaSelect0[] =
3231 "max # bytes atomic in write|error value returned by Math lib";
3233 #define NESTED_MOTOROLA_TEST_CT 1
3234 static tTestDesc aNested_MotorolaTests[] = {
3235 { TT_EGREP, zNested_MotorolaSelect0, (regex_t*)NULL }, };
3238 * Fix Command Arguments for Nested_Motorola
3240 static const char* apzNested_MotorolaPatch[] = { "sed",
3241 "-e", "s@^\\(#undef[ \t][ \t]*PIPE_BUF[ \t]*/\\* max # bytes atomic in write to a\\)$@\\1 */@",
3242 "-e", "s@\\(/\\*#define\tHUGE_VAL\t3.[0-9e+]* \\)\\(/\\*error value returned by Math lib\\*/\\)$@\\1*/ \\2@",
3245 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3247 * Description of Nested_Sys_Limits fix
3249 tSCC zNested_Sys_LimitsName[] =
3250 "nested_sys_limits";
3253 * File name selection pattern
3255 tSCC zNested_Sys_LimitsList[] =
3258 * Machine/OS name selection pattern
3260 #define apzNested_Sys_LimitsMachs (const char**)NULL
3263 * content selection pattern - do fix if pattern found
3265 tSCC zNested_Sys_LimitsSelect0[] =
3268 #define NESTED_SYS_LIMITS_TEST_CT 1
3269 static tTestDesc aNested_Sys_LimitsTests[] = {
3270 { TT_EGREP, zNested_Sys_LimitsSelect0, (regex_t*)NULL }, };
3273 * Fix Command Arguments for Nested_Sys_Limits
3275 static const char* apzNested_Sys_LimitsPatch[] = { "sed",
3276 "-e", "/CHILD_MAX/s,/\\* Max, Max,",
3277 "-e", "/OPEN_MAX/s,/\\* Max, Max,",
3280 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3282 * Description of Netbsd_Extra_Semicolon fix
3284 tSCC zNetbsd_Extra_SemicolonName[] =
3285 "netbsd_extra_semicolon";
3288 * File name selection pattern
3290 tSCC zNetbsd_Extra_SemicolonList[] =
3293 * Machine/OS name selection pattern
3295 tSCC* apzNetbsd_Extra_SemicolonMachs[] = {
3297 (const char*)NULL };
3300 * content selection pattern - do fix if pattern found
3302 tSCC zNetbsd_Extra_SemicolonSelect0[] =
3303 "#define[ \t]*__END_DECLS[ \t]*};";
3305 #define NETBSD_EXTRA_SEMICOLON_TEST_CT 1
3306 static tTestDesc aNetbsd_Extra_SemicolonTests[] = {
3307 { TT_EGREP, zNetbsd_Extra_SemicolonSelect0, (regex_t*)NULL }, };
3310 * Fix Command Arguments for Netbsd_Extra_Semicolon
3312 static const char* apzNetbsd_Extra_SemicolonPatch[] = {
3314 "#define __END_DECLS }",
3317 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3319 * Description of Next_Math_Prefix fix
3321 tSCC zNext_Math_PrefixName[] =
3325 * File name selection pattern
3327 tSCC zNext_Math_PrefixList[] =
3330 * Machine/OS name selection pattern
3332 #define apzNext_Math_PrefixMachs (const char**)NULL
3335 * content selection pattern - do fix if pattern found
3337 tSCC zNext_Math_PrefixSelect0[] =
3338 "^extern[ \t]+double[ \t]+__const__[ \t]";
3340 #define NEXT_MATH_PREFIX_TEST_CT 1
3341 static tTestDesc aNext_Math_PrefixTests[] = {
3342 { TT_EGREP, zNext_Math_PrefixSelect0, (regex_t*)NULL }, };
3345 * Fix Command Arguments for Next_Math_Prefix
3347 static const char* apzNext_Math_PrefixPatch[] = {
3349 "extern double %1(",
3350 "^extern[ \t]+double[ \t]+__const__[ \t]+([a-z]+)\\(",
3353 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3355 * Description of Next_Template fix
3357 tSCC zNext_TemplateName[] =
3361 * File name selection pattern
3363 tSCC zNext_TemplateList[] =
3366 * Machine/OS name selection pattern
3368 #define apzNext_TemplateMachs (const char**)NULL
3371 * content selection pattern - do fix if pattern found
3373 tSCC zNext_TemplateSelect0[] =
3376 #define NEXT_TEMPLATE_TEST_CT 1
3377 static tTestDesc aNext_TemplateTests[] = {
3378 { TT_EGREP, zNext_TemplateSelect0, (regex_t*)NULL }, };
3381 * Fix Command Arguments for Next_Template
3383 static const char* apzNext_TemplatePatch[] = {
3386 "\\(([^)]*)[ \t]template\\)",
3389 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3391 * Description of Next_Volitile fix
3393 tSCC zNext_VolitileName[] =
3397 * File name selection pattern
3399 tSCC zNext_VolitileList[] =
3402 * Machine/OS name selection pattern
3404 #define apzNext_VolitileMachs (const char**)NULL
3407 * content selection pattern - do fix if pattern found
3409 tSCC zNext_VolitileSelect0[] =
3410 "^extern[ \t]+volatile[ \t]+void[ \t]";
3412 #define NEXT_VOLITILE_TEST_CT 1
3413 static tTestDesc aNext_VolitileTests[] = {
3414 { TT_EGREP, zNext_VolitileSelect0, (regex_t*)NULL }, };
3417 * Fix Command Arguments for Next_Volitile
3419 static const char* apzNext_VolitilePatch[] = {
3422 "^extern[ \t]+volatile[ \t]+void[ \t]+(exit|abort)\\(",
3425 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3427 * Description of Next_Wait_Union fix
3429 tSCC zNext_Wait_UnionName[] =
3433 * File name selection pattern
3435 tSCC zNext_Wait_UnionList[] =
3438 * Machine/OS name selection pattern
3440 #define apzNext_Wait_UnionMachs (const char**)NULL
3443 * content selection pattern - do fix if pattern found
3445 tSCC zNext_Wait_UnionSelect0[] =
3446 "wait\\(union wait";
3448 #define NEXT_WAIT_UNION_TEST_CT 1
3449 static tTestDesc aNext_Wait_UnionTests[] = {
3450 { TT_EGREP, zNext_Wait_UnionSelect0, (regex_t*)NULL }, };
3453 * Fix Command Arguments for Next_Wait_Union
3455 static const char* apzNext_Wait_UnionPatch[] = {
3460 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3462 * Description of Nodeent_Syntax fix
3464 tSCC zNodeent_SyntaxName[] =
3468 * File name selection pattern
3470 tSCC zNodeent_SyntaxList[] =
3471 "|netdnet/dnetdb.h|";
3473 * Machine/OS name selection pattern
3475 #define apzNodeent_SyntaxMachs (const char**)NULL
3478 * content selection pattern - do fix if pattern found
3480 tSCC zNodeent_SyntaxSelect0[] =
3481 "char[ \t]*\\*na_addr[ \t]*$";
3483 #define NODEENT_SYNTAX_TEST_CT 1
3484 static tTestDesc aNodeent_SyntaxTests[] = {
3485 { TT_EGREP, zNodeent_SyntaxSelect0, (regex_t*)NULL }, };
3488 * Fix Command Arguments for Nodeent_Syntax
3490 static const char* apzNodeent_SyntaxPatch[] = {
3495 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3497 * Description of Osf_Namespace_A fix
3499 tSCC zOsf_Namespace_AName[] =
3503 * File name selection pattern
3505 tSCC zOsf_Namespace_AList[] =
3506 "|reg_types.h|sys/lc_core.h|";
3508 * Machine/OS name selection pattern
3510 #define apzOsf_Namespace_AMachs (const char**)NULL
3513 * perform the 'test' shell command - do fix on success
3515 tSCC zOsf_Namespace_ATest0[] =
3517 tSCC zOsf_Namespace_ATest1[] =
3518 " -r sys/lc_core.h";
3519 tSCC zOsf_Namespace_ATest2[] =
3520 " -n \"`grep '} regex_t;' reg_types.h`\"";
3521 tSCC zOsf_Namespace_ATest3[] =
3522 " -z \"`grep __regex_t regex.h`\"";
3524 #define OSF_NAMESPACE_A_TEST_CT 4
3525 static tTestDesc aOsf_Namespace_ATests[] = {
3526 { TT_TEST, zOsf_Namespace_ATest0, 0 /* unused */ },
3527 { TT_TEST, zOsf_Namespace_ATest1, 0 /* unused */ },
3528 { TT_TEST, zOsf_Namespace_ATest2, 0 /* unused */ },
3529 { TT_TEST, zOsf_Namespace_ATest3, 0 /* unused */ }, };
3532 * Fix Command Arguments for Osf_Namespace_A
3534 static const char* apzOsf_Namespace_APatch[] = {
3537 "reg(ex|off|match)_t",
3540 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3542 * Description of Osf_Namespace_C fix
3544 tSCC zOsf_Namespace_CName[] =
3548 * File name selection pattern
3550 tSCC zOsf_Namespace_CList[] =
3553 * Machine/OS name selection pattern
3555 #define apzOsf_Namespace_CMachs (const char**)NULL
3558 * content selection pattern - do fix if pattern found
3560 tSCC zOsf_Namespace_CSelect0[] =
3561 "#include <reg_types.h>.*";
3564 * perform the 'test' shell command - do fix on success
3566 tSCC zOsf_Namespace_CTest0[] =
3568 tSCC zOsf_Namespace_CTest1[] =
3569 " -r sys/lc_core.h";
3570 tSCC zOsf_Namespace_CTest2[] =
3571 " -n \"`grep '} regex_t;' reg_types.h`\"";
3572 tSCC zOsf_Namespace_CTest3[] =
3573 " -z \"`grep __regex_t regex.h`\"";
3575 #define OSF_NAMESPACE_C_TEST_CT 5
3576 static tTestDesc aOsf_Namespace_CTests[] = {
3577 { TT_TEST, zOsf_Namespace_CTest0, 0 /* unused */ },
3578 { TT_TEST, zOsf_Namespace_CTest1, 0 /* unused */ },
3579 { TT_TEST, zOsf_Namespace_CTest2, 0 /* unused */ },
3580 { TT_TEST, zOsf_Namespace_CTest3, 0 /* unused */ },
3581 { TT_EGREP, zOsf_Namespace_CSelect0, (regex_t*)NULL }, };
3584 * Fix Command Arguments for Osf_Namespace_C
3586 static const char* apzOsf_Namespace_CPatch[] = {
3589 typedef __regex_t\tregex_t;\n\
3590 typedef __regoff_t\tregoff_t;\n\
3591 typedef __regmatch_t\tregmatch_t;",
3594 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3596 * Description of Pthread_Page_Size fix
3598 tSCC zPthread_Page_SizeName[] =
3599 "pthread_page_size";
3602 * File name selection pattern
3604 tSCC zPthread_Page_SizeList[] =
3607 * Machine/OS name selection pattern
3609 #define apzPthread_Page_SizeMachs (const char**)NULL
3612 * content selection pattern - do fix if pattern found
3614 tSCC zPthread_Page_SizeSelect0[] =
3617 #define PTHREAD_PAGE_SIZE_TEST_CT 1
3618 static tTestDesc aPthread_Page_SizeTests[] = {
3619 { TT_EGREP, zPthread_Page_SizeSelect0, (regex_t*)NULL }, };
3622 * Fix Command Arguments for Pthread_Page_Size
3624 static const char* apzPthread_Page_SizePatch[] = {
3629 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3631 * Description of Read_Ret_Type fix
3633 tSCC zRead_Ret_TypeName[] =
3637 * File name selection pattern
3639 tSCC zRead_Ret_TypeList[] =
3642 * Machine/OS name selection pattern
3644 #define apzRead_Ret_TypeMachs (const char**)NULL
3647 * content selection pattern - do fix if pattern found
3649 tSCC zRead_Ret_TypeSelect0[] =
3650 "extern int\t.*, fread\\(\\), fwrite\\(\\)";
3652 #define READ_RET_TYPE_TEST_CT 1
3653 static tTestDesc aRead_Ret_TypeTests[] = {
3654 { TT_EGREP, zRead_Ret_TypeSelect0, (regex_t*)NULL }, };
3657 * Fix Command Arguments for Read_Ret_Type
3659 static const char* apzRead_Ret_TypePatch[] = {
3661 "extern unsigned int fread(), fwrite();\n\
3663 "(extern int\t.*), fread\\(\\), fwrite\\(\\)(.*)",
3666 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3668 * Description of Rs6000_Double fix
3670 tSCC zRs6000_DoubleName[] =
3674 * File name selection pattern
3676 tSCC zRs6000_DoubleList[] =
3679 * Machine/OS name selection pattern
3681 #define apzRs6000_DoubleMachs (const char**)NULL
3684 * content selection pattern - do fix if pattern found
3686 tSCC zRs6000_DoubleSelect0[] =
3687 "[^a-zA-Z_]class\\(";
3689 #define RS6000_DOUBLE_TEST_CT 1
3690 static tTestDesc aRs6000_DoubleTests[] = {
3691 { TT_EGREP, zRs6000_DoubleSelect0, (regex_t*)NULL }, };
3694 * Fix Command Arguments for Rs6000_Double
3696 static const char* apzRs6000_DoublePatch[] = {
3698 "#ifndef __cplusplus\n\
3701 "^.*[^a-zA-Z_]class\\(.*",
3704 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3706 * Description of Rs6000_Fchmod fix
3708 tSCC zRs6000_FchmodName[] =
3712 * File name selection pattern
3714 tSCC zRs6000_FchmodList[] =
3717 * Machine/OS name selection pattern
3719 #define apzRs6000_FchmodMachs (const char**)NULL
3722 * content selection pattern - do fix if pattern found
3724 tSCC zRs6000_FchmodSelect0[] =
3725 "fchmod\\(char \\*";
3727 #define RS6000_FCHMOD_TEST_CT 1
3728 static tTestDesc aRs6000_FchmodTests[] = {
3729 { TT_EGREP, zRs6000_FchmodSelect0, (regex_t*)NULL }, };
3732 * Fix Command Arguments for Rs6000_Fchmod
3734 static const char* apzRs6000_FchmodPatch[] = {
3739 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3741 * Description of Rs6000_Param fix
3743 tSCC zRs6000_ParamName[] =
3747 * File name selection pattern
3749 tSCC zRs6000_ParamList[] =
3750 "|stdio.h|unistd.h|";
3752 * Machine/OS name selection pattern
3754 #define apzRs6000_ParamMachs (const char**)NULL
3757 * content selection pattern - do fix if pattern found
3759 tSCC zRs6000_ParamSelect0[] =
3760 "rename\\(const char \\*old, const char \\*new\\)";
3762 #define RS6000_PARAM_TEST_CT 1
3763 static tTestDesc aRs6000_ParamTests[] = {
3764 { TT_EGREP, zRs6000_ParamSelect0, (regex_t*)NULL }, };
3767 * Fix Command Arguments for Rs6000_Param
3769 static const char* apzRs6000_ParamPatch[] = {
3771 "rename(const char *_old, const char *_new)",
3774 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3776 * Description of Sco_Math fix
3778 tSCC zSco_MathName[] =
3782 * File name selection pattern
3784 tSCC zSco_MathList[] =
3785 "|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|";
3787 * Machine/OS name selection pattern
3789 #define apzSco_MathMachs (const char**)NULL
3792 * content selection pattern - do fix if pattern found
3794 tSCC zSco_MathSelect0[] =
3795 "inline double abs";
3797 #define SCO_MATH_TEST_CT 1
3798 static tTestDesc aSco_MathTests[] = {
3799 { TT_EGREP, zSco_MathSelect0, (regex_t*)NULL }, };
3802 * Fix Command Arguments for Sco_Math
3804 static const char* apzSco_MathPatch[] = { "sed",
3805 "-e", "/#define.*__fp_class(a) \\\\/i\\\n\
3806 #ifndef __GNUC__\n",
3807 "-e", "/.*__builtin_generic/a\\\n\
3809 #define __fp_class(a) \\\\\\\n\
3810 __builtin_choose_expr(__builtin_types_compatible_p(typeof(a),long double),\\\\\\\n\
3811 __fpclassifyl(a), \\\\\\\n\
3812 __builtin_choose_expr(__builtin_types_compatible_p(typeof(a), float), \\\\\\\n\
3813 __fpclassifyf(a),__fpclassify(a)))\\\n\
3815 "-e", "/extern \"C\\+\\+\"/N;/inline double abs/i\\\n\
3816 #ifndef __GNUC__\n",
3817 "-e", "/inline long double trunc/N;/inline long double trunc.*}.*extern \"C\\+\\+\"/a\\\n\
3818 #endif /* ! __GNUC__ */",
3821 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3823 * Description of Sco_Regset fix
3825 tSCC zSco_RegsetName[] =
3829 * File name selection pattern
3831 tSCC zSco_RegsetList[] =
3834 * Machine/OS name selection pattern
3836 tSCC* apzSco_RegsetMachs[] = {
3838 (const char*)NULL };
3841 * content selection pattern - do fix if pattern found
3843 tSCC zSco_RegsetSelect0[] =
3844 "(struct[ \t]+.*)fpstate";
3846 #define SCO_REGSET_TEST_CT 1
3847 static tTestDesc aSco_RegsetTests[] = {
3848 { TT_EGREP, zSco_RegsetSelect0, (regex_t*)NULL }, };
3851 * Fix Command Arguments for Sco_Regset
3853 static const char* apzSco_RegsetPatch[] = {
3858 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3860 * Description of Sco_Static_Func fix
3862 tSCC zSco_Static_FuncName[] =
3866 * File name selection pattern
3868 tSCC zSco_Static_FuncList[] =
3871 * Machine/OS name selection pattern
3873 tSCC* apzSco_Static_FuncMachs[] = {
3875 (const char*)NULL };
3878 * content selection pattern - do fix if pattern found
3880 tSCC zSco_Static_FuncSelect0[] =
3883 #define SCO_STATIC_FUNC_TEST_CT 1
3884 static tTestDesc aSco_Static_FuncTests[] = {
3885 { TT_EGREP, zSco_Static_FuncSelect0, (regex_t*)NULL }, };
3888 * Fix Command Arguments for Sco_Static_Func
3890 static const char* apzSco_Static_FuncPatch[] = { "sed",
3891 "-e", "/^static int/i\\\n\
3892 #if __cplusplus\\\n\
3894 #endif /* __cplusplus */",
3896 #if __cplusplus\\\n\
3898 #endif /* __cplusplus */",
3901 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3903 * Description of Sco_Utime fix
3905 tSCC zSco_UtimeName[] =
3909 * File name selection pattern
3911 tSCC zSco_UtimeList[] =
3914 * Machine/OS name selection pattern
3916 tSCC* apzSco_UtimeMachs[] = {
3918 (const char*)NULL };
3921 * content selection pattern - do fix if pattern found
3923 tSCC zSco_UtimeSelect0[] =
3924 "\\(const char \\*, struct utimbuf \\*\\);";
3926 #define SCO_UTIME_TEST_CT 1
3927 static tTestDesc aSco_UtimeTests[] = {
3928 { TT_EGREP, zSco_UtimeSelect0, (regex_t*)NULL }, };
3931 * Fix Command Arguments for Sco_Utime
3933 static const char* apzSco_UtimePatch[] = {
3935 "(const char *, const struct utimbuf *);",
3938 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3940 * Description of Solaris_Mutex_Init_1 fix
3942 tSCC zSolaris_Mutex_Init_1Name[] =
3943 "solaris_mutex_init_1";
3946 * File name selection pattern
3948 tSCC zSolaris_Mutex_Init_1List[] =
3951 * Machine/OS name selection pattern
3953 #define apzSolaris_Mutex_Init_1Machs (const char**)NULL
3956 * content selection pattern - do fix if pattern found
3958 tSCC zSolaris_Mutex_Init_1Select0[] =
3959 "@\\(#\\)pthread.h[ \t]+1.1[0-9][ \t]+9[567]/[0-9/]+ SMI";
3961 #define SOLARIS_MUTEX_INIT_1_TEST_CT 1
3962 static tTestDesc aSolaris_Mutex_Init_1Tests[] = {
3963 { TT_EGREP, zSolaris_Mutex_Init_1Select0, (regex_t*)NULL }, };
3966 * Fix Command Arguments for Solaris_Mutex_Init_1
3968 static const char* apzSolaris_Mutex_Init_1Patch[] = { "sed",
3969 "-e", "/define[ \t]*PTHREAD_MUTEX_INI/s/{0, 0,/{{{0}, 0}, {{{0}}},/\n\
3970 /define[ \t]*PTHREAD_COND_INI/s/{0,/{{{0},0},/",
3973 /* * * * * * * * * * * * * * * * * * * * * * * * * *
3975 * Description of Solaris_Mutex_Init_2 fix
3977 tSCC zSolaris_Mutex_Init_2Name[] =
3978 "solaris_mutex_init_2";
3981 * File name selection pattern
3983 tSCC zSolaris_Mutex_Init_2List[] =
3986 * Machine/OS name selection pattern
3988 #define apzSolaris_Mutex_Init_2Machs (const char**)NULL
3991 * content selection pattern - do fix if pattern found
3993 tSCC zSolaris_Mutex_Init_2Select0[] =
3994 "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
3996 #define SOLARIS_MUTEX_INIT_2_TEST_CT 1
3997 static tTestDesc aSolaris_Mutex_Init_2Tests[] = {
3998 { TT_EGREP, zSolaris_Mutex_Init_2Select0, (regex_t*)NULL }, };
4001 * Fix Command Arguments for Solaris_Mutex_Init_2
4003 static const char* apzSolaris_Mutex_Init_2Patch[] = {
4005 "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
4010 "(^#define[ \t]+PTHREAD_(MUTEX|COND)_INITIALIZER[ \t]+\\{.*),[ \t]*0\\}(|[ \t].*)$",
4013 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4015 * Description of Solaris_Socket fix
4017 tSCC zSolaris_SocketName[] =
4021 * File name selection pattern
4023 tSCC zSolaris_SocketList[] =
4026 * Machine/OS name selection pattern
4028 #define apzSolaris_SocketMachs (const char**)NULL
4031 * content selection pattern - do fix if pattern found
4033 tSCC zSolaris_SocketSelect0[] =
4034 "@\\(#\\)socket.h[ \t]+1.[123][0-9][ \t]+9[567]/[0-9/]+ SMI";
4036 #define SOLARIS_SOCKET_TEST_CT 1
4037 static tTestDesc aSolaris_SocketTests[] = {
4038 { TT_EGREP, zSolaris_SocketSelect0, (regex_t*)NULL }, };
4041 * Fix Command Arguments for Solaris_Socket
4043 static const char* apzSolaris_SocketPatch[] = {
4045 "extern int %1(int, %2void *, int, int);",
4046 "^extern int (recv|send)\\(int, (const )*char \\*, int, int\\);",
4049 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4051 * Description of Solaris_Stdio_Tag fix
4053 tSCC zSolaris_Stdio_TagName[] =
4054 "solaris_stdio_tag";
4057 * File name selection pattern
4059 tSCC zSolaris_Stdio_TagList[] =
4062 * Machine/OS name selection pattern
4064 #define apzSolaris_Stdio_TagMachs (const char**)NULL
4067 * content selection pattern - do fix if pattern found
4069 tSCC zSolaris_Stdio_TagSelect0[] =
4070 "__cplusplus < 54321L";
4072 #define SOLARIS_STDIO_TAG_TEST_CT 1
4073 static tTestDesc aSolaris_Stdio_TagTests[] = {
4074 { TT_EGREP, zSolaris_Stdio_TagSelect0, (regex_t*)NULL }, };
4077 * Fix Command Arguments for Solaris_Stdio_Tag
4079 static const char* apzSolaris_Stdio_TagPatch[] = { "sed",
4080 "-e", "s/defined(__cplusplus) && (__cplusplus < 54321L)/0/",
4083 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4085 * Description of Solaris_Unistd fix
4087 tSCC zSolaris_UnistdName[] =
4091 * File name selection pattern
4093 tSCC zSolaris_UnistdList[] =
4096 * Machine/OS name selection pattern
4098 #define apzSolaris_UnistdMachs (const char**)NULL
4101 * content selection pattern - do fix if pattern found
4103 tSCC zSolaris_UnistdSelect0[] =
4104 "@\\(#\\)unistd.h[ \t]+1.3[0-9][ \t]+9[567]/[0-9/]+ SMI";
4107 * content bypass pattern - skip fix if pattern found
4109 tSCC zSolaris_UnistdBypass0[] =
4112 #define SOLARIS_UNISTD_TEST_CT 2
4113 static tTestDesc aSolaris_UnistdTests[] = {
4114 { TT_NEGREP, zSolaris_UnistdBypass0, (regex_t*)NULL },
4115 { TT_EGREP, zSolaris_UnistdSelect0, (regex_t*)NULL }, };
4118 * Fix Command Arguments for Solaris_Unistd
4120 static const char* apzSolaris_UnistdPatch[] = {
4122 "extern int getpagesize();\n\
4124 "^extern (pid_t|int) getpgid\\(.*\\);",
4127 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4129 * Description of Solaris_Widec fix
4131 tSCC zSolaris_WidecName[] =
4135 * File name selection pattern
4137 tSCC zSolaris_WidecList[] =
4140 * Machine/OS name selection pattern
4142 tSCC* apzSolaris_WidecMachs[] = {
4143 "*-*-solaris2.[0-5]*",
4144 (const char*)NULL };
4147 * content selection pattern - do fix if pattern found
4149 tSCC zSolaris_WidecSelect0[] =
4153 * content bypass pattern - skip fix if pattern found
4155 tSCC zSolaris_WidecBypass0[] =
4156 "include.*wchar\\.h";
4158 #define SOLARIS_WIDEC_TEST_CT 2
4159 static tTestDesc aSolaris_WidecTests[] = {
4160 { TT_NEGREP, zSolaris_WidecBypass0, (regex_t*)NULL },
4161 { TT_EGREP, zSolaris_WidecSelect0, (regex_t*)NULL }, };
4164 * Fix Command Arguments for Solaris_Widec
4166 static const char* apzSolaris_WidecPatch[] = {
4169 #include <wchar.h>",
4172 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4174 * Description of Statsswtch fix
4176 tSCC zStatsswtchName[] =
4180 * File name selection pattern
4182 tSCC zStatsswtchList[] =
4185 * Machine/OS name selection pattern
4187 #define apzStatsswtchMachs (const char**)NULL
4190 * content selection pattern - do fix if pattern found
4192 tSCC zStatsswtchSelect0[] =
4195 #define STATSSWTCH_TEST_CT 1
4196 static tTestDesc aStatsswtchTests[] = {
4197 { TT_EGREP, zStatsswtchSelect0, (regex_t*)NULL }, };
4200 * Fix Command Arguments for Statsswtch
4202 static const char* apzStatsswtchPatch[] = {
4207 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4209 * Description of Stdio_Stdarg_H fix
4211 tSCC zStdio_Stdarg_HName[] =
4215 * File name selection pattern
4217 tSCC zStdio_Stdarg_HList[] =
4220 * Machine/OS name selection pattern
4222 #define apzStdio_Stdarg_HMachs (const char**)NULL
4225 * content bypass pattern - skip fix if pattern found
4227 tSCC zStdio_Stdarg_HBypass0[] =
4228 "include.*(stdarg.h|machine/ansi.h)";
4230 #define STDIO_STDARG_H_TEST_CT 1
4231 static tTestDesc aStdio_Stdarg_HTests[] = {
4232 { TT_NEGREP, zStdio_Stdarg_HBypass0, (regex_t*)NULL }, };
4235 * Fix Command Arguments for Stdio_Stdarg_H
4237 static const char* apzStdio_Stdarg_HPatch[] = {
4239 "#define __need___va_list\n\
4240 #include <stdarg.h>\n",
4243 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4245 * Description of Stdio_Va_List fix
4247 tSCC zStdio_Va_ListName[] =
4251 * File name selection pattern
4253 tSCC zStdio_Va_ListList[] =
4254 "|stdio.h|internal/stdio_core.h|internal/wchar_core.h|";
4256 * Machine/OS name selection pattern
4258 #define apzStdio_Va_ListMachs (const char**)NULL
4261 * content bypass pattern - skip fix if pattern found
4263 tSCC zStdio_Va_ListBypass0[] =
4264 "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
4266 #define STDIO_VA_LIST_TEST_CT 1
4267 static tTestDesc aStdio_Va_ListTests[] = {
4268 { TT_NEGREP, zStdio_Va_ListBypass0, (regex_t*)NULL }, };
4271 * Fix Command Arguments for Stdio_Va_List
4273 static const char* apzStdio_Va_ListPatch[] = { "sed",
4274 "-e", "s@ va_list @ __gnuc_va_list @\n\
4275 s@ va_list)@ __gnuc_va_list)@\n\
4276 s@va_list _ap;@__gnuc_va_list _ap;@\n\
4277 s@(va_list)&@(__gnuc_va_list)\\&@\n\
4278 s@ _VA_LIST_));@ __gnuc_va_list));@\n\
4279 s@ __VA_LIST__));@ __gnuc_va_list));@\n\
4280 s@ va_list@ __not_va_list__@\n\
4281 s@\\*va_list@*__not_va_list__@\n\
4282 s@ __va_list)@ __gnuc_va_list)@\n\
4283 s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
4284 s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
4285 s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
4286 s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
4287 s@VA_LIST@DUMMY_VA_LIST@\n\
4288 s@_Va_LIST@_VA_LIST@",
4291 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4293 * Description of Strict_Ansi_Not fix
4295 tSCC zStrict_Ansi_NotName[] =
4299 * File name selection pattern
4301 #define zStrict_Ansi_NotList (char*)NULL
4303 * Machine/OS name selection pattern
4305 #define apzStrict_Ansi_NotMachs (const char**)NULL
4308 * content selection pattern - do fix if pattern found
4310 tSCC zStrict_Ansi_NotSelect0[] =
4311 "^([ \t]*#[ \t]*if.*)(!__STDC__|__STDC__[ \t]*==[ \t]*0|__STDC__[ \t]*!=[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*0)";
4314 * content bypass pattern - skip fix if pattern found
4316 tSCC zStrict_Ansi_NotBypass0[] =
4317 "GNU and MIPS C compilers define __STDC__ differently";
4318 tSCC zStrict_Ansi_NotBypass1[] =
4319 "__SCO_VERSION__.*__STDC__ != 1";
4322 * perform the C function call test
4324 tSCC zStrict_Ansi_NotFTst0[] = "stdc_0_in_system_headers";
4326 #define STRICT_ANSI_NOT_TEST_CT 4
4327 static tTestDesc aStrict_Ansi_NotTests[] = {
4328 { TT_FUNCTION, zStrict_Ansi_NotFTst0, 0 /* unused */ },
4329 { TT_NEGREP, zStrict_Ansi_NotBypass0, (regex_t*)NULL },
4330 { TT_NEGREP, zStrict_Ansi_NotBypass1, (regex_t*)NULL },
4331 { TT_EGREP, zStrict_Ansi_NotSelect0, (regex_t*)NULL }, };
4334 * Fix Command Arguments for Strict_Ansi_Not
4336 static const char* apzStrict_Ansi_NotPatch[] = {
4338 "%1 !defined(__STRICT_ANSI__)",
4341 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4343 * Description of Strict_Ansi_Not_Ctd fix
4345 tSCC zStrict_Ansi_Not_CtdName[] =
4346 "strict_ansi_not_ctd";
4349 * File name selection pattern
4351 tSCC zStrict_Ansi_Not_CtdList[] =
4352 "|math.h|limits.h|stdio.h|signal.h|stdlib.h|sys/signal.h|time.h|";
4354 * Machine/OS name selection pattern
4356 #define apzStrict_Ansi_Not_CtdMachs (const char**)NULL
4359 * content selection pattern - do fix if pattern found
4361 tSCC zStrict_Ansi_Not_CtdSelect0[] =
4362 "^([ \t]*(\\(|&&|\\|\\|)([ \t(]*!*[ \t]*defined\\([a-zA-Z_0-9]+\\)[ \t]*[|&][|&])*[ \t(]*)(__STDC__[ \t]*(|-[ \t]*0[ \t]*)==[ \t]*0)";
4365 * perform the C function call test
4367 tSCC zStrict_Ansi_Not_CtdFTst0[] = "stdc_0_in_system_headers";
4369 #define STRICT_ANSI_NOT_CTD_TEST_CT 2
4370 static tTestDesc aStrict_Ansi_Not_CtdTests[] = {
4371 { TT_FUNCTION, zStrict_Ansi_Not_CtdFTst0, 0 /* unused */ },
4372 { TT_EGREP, zStrict_Ansi_Not_CtdSelect0, (regex_t*)NULL }, };
4375 * Fix Command Arguments for Strict_Ansi_Not_Ctd
4377 static const char* apzStrict_Ansi_Not_CtdPatch[] = {
4379 "%1 !defined(__STRICT_ANSI__)",
4382 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4384 * Description of Strict_Ansi_Only fix
4386 tSCC zStrict_Ansi_OnlyName[] =
4390 * File name selection pattern
4392 #define zStrict_Ansi_OnlyList (char*)NULL
4394 * Machine/OS name selection pattern
4396 #define apzStrict_Ansi_OnlyMachs (const char**)NULL
4399 * content selection pattern - do fix if pattern found
4401 tSCC zStrict_Ansi_OnlySelect0[] =
4402 "^([ \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)";
4405 * perform the C function call test
4407 tSCC zStrict_Ansi_OnlyFTst0[] = "stdc_0_in_system_headers";
4409 #define STRICT_ANSI_ONLY_TEST_CT 2
4410 static tTestDesc aStrict_Ansi_OnlyTests[] = {
4411 { TT_FUNCTION, zStrict_Ansi_OnlyFTst0, 0 /* unused */ },
4412 { TT_EGREP, zStrict_Ansi_OnlySelect0, (regex_t*)NULL }, };
4415 * Fix Command Arguments for Strict_Ansi_Only
4417 static const char* apzStrict_Ansi_OnlyPatch[] = {
4419 "%1 defined(__STRICT_ANSI__)",
4422 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4424 * Description of Struct_File fix
4426 tSCC zStruct_FileName[] =
4430 * File name selection pattern
4432 tSCC zStruct_FileList[] =
4435 * Machine/OS name selection pattern
4437 #define apzStruct_FileMachs (const char**)NULL
4440 * content selection pattern - do fix if pattern found
4442 tSCC zStruct_FileSelect0[] =
4443 "^.*xdrstdio_create.*struct __file_s";
4445 #define STRUCT_FILE_TEST_CT 1
4446 static tTestDesc aStruct_FileTests[] = {
4447 { TT_EGREP, zStruct_FileSelect0, (regex_t*)NULL }, };
4450 * Fix Command Arguments for Struct_File
4452 static const char* apzStruct_FilePatch[] = {
4454 "struct __file_s;\n\
4458 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4460 * Description of Struct_Sockaddr fix
4462 tSCC zStruct_SockaddrName[] =
4466 * File name selection pattern
4468 tSCC zStruct_SockaddrList[] =
4471 * Machine/OS name selection pattern
4473 #define apzStruct_SockaddrMachs (const char**)NULL
4476 * content selection pattern - do fix if pattern found
4478 tSCC zStruct_SockaddrSelect0[] =
4479 "^.*authdes_create.*struct sockaddr[^_]";
4482 * content bypass pattern - skip fix if pattern found
4484 tSCC zStruct_SockaddrBypass0[] =
4486 tSCC zStruct_SockaddrBypass1[] =
4487 "struct sockaddr;\n";
4489 #define STRUCT_SOCKADDR_TEST_CT 3
4490 static tTestDesc aStruct_SockaddrTests[] = {
4491 { TT_NEGREP, zStruct_SockaddrBypass0, (regex_t*)NULL },
4492 { TT_NEGREP, zStruct_SockaddrBypass1, (regex_t*)NULL },
4493 { TT_EGREP, zStruct_SockaddrSelect0, (regex_t*)NULL }, };
4496 * Fix Command Arguments for Struct_Sockaddr
4498 static const char* apzStruct_SockaddrPatch[] = {
4500 "struct sockaddr;\n\
4504 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4506 * Description of Sun_Auth_Proto fix
4508 tSCC zSun_Auth_ProtoName[] =
4512 * File name selection pattern
4514 tSCC zSun_Auth_ProtoList[] =
4515 "|rpc/auth.h|rpc/clnt.h|rpc/svc.h|rpc/xdr.h|";
4517 * Machine/OS name selection pattern
4519 #define apzSun_Auth_ProtoMachs (const char**)NULL
4522 * content selection pattern - do fix if pattern found
4524 tSCC zSun_Auth_ProtoSelect0[] =
4525 "\\(\\*[a-z][a-z_]*\\)\\(\\)";
4527 #define SUN_AUTH_PROTO_TEST_CT 1
4528 static tTestDesc aSun_Auth_ProtoTests[] = {
4529 { TT_EGREP, zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };
4532 * Fix Command Arguments for Sun_Auth_Proto
4534 static const char* apzSun_Auth_ProtoPatch[] = {
4536 "#ifdef __cplusplus\n\
4541 "(.*\\(\\*[a-z][a-z_]*\\))\\(\\);(.*)",
4544 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4546 * Description of Sun_Bogus_Ifdef fix
4548 tSCC zSun_Bogus_IfdefName[] =
4552 * File name selection pattern
4554 tSCC zSun_Bogus_IfdefList[] =
4555 "|hsfs/hsfs_spec.h|hsfs/iso_spec.h|";
4557 * Machine/OS name selection pattern
4559 #define apzSun_Bogus_IfdefMachs (const char**)NULL
4562 * content selection pattern - do fix if pattern found
4564 tSCC zSun_Bogus_IfdefSelect0[] =
4565 "#ifdef(.*\\|\\|.*)";
4567 #define SUN_BOGUS_IFDEF_TEST_CT 1
4568 static tTestDesc aSun_Bogus_IfdefTests[] = {
4569 { TT_EGREP, zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };
4572 * Fix Command Arguments for Sun_Bogus_Ifdef
4574 static const char* apzSun_Bogus_IfdefPatch[] = {
4579 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4581 * Description of Sun_Catmacro fix
4583 tSCC zSun_CatmacroName[] =
4587 * File name selection pattern
4589 tSCC zSun_CatmacroList[] =
4590 "|pixrect/memvar.h|";
4592 * Machine/OS name selection pattern
4594 #define apzSun_CatmacroMachs (const char**)NULL
4597 * content selection pattern - do fix if pattern found
4599 tSCC zSun_CatmacroSelect0[] =
4600 "^#define[ \t]+CAT\\(a,b\\).*";
4602 #define SUN_CATMACRO_TEST_CT 1
4603 static tTestDesc aSun_CatmacroTests[] = {
4604 { TT_EGREP, zSun_CatmacroSelect0, (regex_t*)NULL }, };
4607 * Fix Command Arguments for Sun_Catmacro
4609 static const char* apzSun_CatmacroPatch[] = {
4612 # define CAT(a,b) a##b\n\
4618 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4620 * Description of Sun_Malloc fix
4622 tSCC zSun_MallocName[] =
4626 * File name selection pattern
4628 tSCC zSun_MallocList[] =
4631 * Machine/OS name selection pattern
4633 #define apzSun_MallocMachs (const char**)NULL
4634 #define SUN_MALLOC_TEST_CT 0
4635 #define aSun_MallocTests (tTestDesc*)NULL
4638 * Fix Command Arguments for Sun_Malloc
4640 static const char* apzSun_MallocPatch[] = { "sed",
4641 "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
4642 "-e", "s/int[ \t][ \t]*free/void\tfree/g",
4643 "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
4644 "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
4645 "-e", "s/char\\([ \t]*\\*[ \t]*calloc\\)/void\\1/g",
4648 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4650 * Description of Sun_Rusers_Semi fix
4652 tSCC zSun_Rusers_SemiName[] =
4656 * File name selection pattern
4658 tSCC zSun_Rusers_SemiList[] =
4659 "|rpcsvc/rusers.h|";
4661 * Machine/OS name selection pattern
4663 #define apzSun_Rusers_SemiMachs (const char**)NULL
4666 * content selection pattern - do fix if pattern found
4668 tSCC zSun_Rusers_SemiSelect0[] =
4671 #define SUN_RUSERS_SEMI_TEST_CT 1
4672 static tTestDesc aSun_Rusers_SemiTests[] = {
4673 { TT_EGREP, zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };
4676 * Fix Command Arguments for Sun_Rusers_Semi
4678 static const char* apzSun_Rusers_SemiPatch[] = { "sed",
4679 "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
4682 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4684 * Description of Sun_Signal fix
4686 tSCC zSun_SignalName[] =
4690 * File name selection pattern
4692 tSCC zSun_SignalList[] =
4693 "|sys/signal.h|signal.h|";
4695 * Machine/OS name selection pattern
4697 #define apzSun_SignalMachs (const char**)NULL
4700 * content selection pattern - do fix if pattern found
4702 tSCC zSun_SignalSelect0[] =
4703 "^void\t\\(\\*signal\\(\\)\\)\\(\\);.*";
4705 #define SUN_SIGNAL_TEST_CT 1
4706 static tTestDesc aSun_SignalTests[] = {
4707 { TT_EGREP, zSun_SignalSelect0, (regex_t*)NULL }, };
4710 * Fix Command Arguments for Sun_Signal
4712 static const char* apzSun_SignalPatch[] = {
4714 "#ifdef __cplusplus\n\
4715 void\t(*signal(...))(...);\n\
4721 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4723 * Description of Sunos_Matherr_Decl fix
4725 tSCC zSunos_Matherr_DeclName[] =
4726 "sunos_matherr_decl";
4729 * File name selection pattern
4731 tSCC zSunos_Matherr_DeclList[] =
4734 * Machine/OS name selection pattern
4736 #define apzSunos_Matherr_DeclMachs (const char**)NULL
4739 * content selection pattern - do fix if pattern found
4741 tSCC zSunos_Matherr_DeclSelect0[] =
4745 * content bypass pattern - skip fix if pattern found
4747 tSCC zSunos_Matherr_DeclBypass0[] =
4748 "matherr.*(struct exception|__MATH_EXCEPTION)";
4750 #define SUNOS_MATHERR_DECL_TEST_CT 2
4751 static tTestDesc aSunos_Matherr_DeclTests[] = {
4752 { TT_NEGREP, zSunos_Matherr_DeclBypass0, (regex_t*)NULL },
4753 { TT_EGREP, zSunos_Matherr_DeclSelect0, (regex_t*)NULL }, };
4756 * Fix Command Arguments for Sunos_Matherr_Decl
4758 static const char* apzSunos_Matherr_DeclPatch[] = {
4760 "struct exception;\n",
4763 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4765 * Description of Sunos_Strlen fix
4767 tSCC zSunos_StrlenName[] =
4771 * File name selection pattern
4773 tSCC zSunos_StrlenList[] =
4776 * Machine/OS name selection pattern
4778 #define apzSunos_StrlenMachs (const char**)NULL
4781 * content selection pattern - do fix if pattern found
4783 tSCC zSunos_StrlenSelect0[] =
4784 "int[ \t]*strlen\\(\\);(.*)";
4786 #define SUNOS_STRLEN_TEST_CT 1
4787 static tTestDesc aSunos_StrlenTests[] = {
4788 { TT_EGREP, zSunos_StrlenSelect0, (regex_t*)NULL }, };
4791 * Fix Command Arguments for Sunos_Strlen
4793 static const char* apzSunos_StrlenPatch[] = {
4795 "__SIZE_TYPE__ strlen();%1",
4798 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4800 * Description of Svr4__P fix
4802 tSCC zSvr4__PName[] =
4806 * File name selection pattern
4808 tSCC zSvr4__PList[] =
4809 "|math.h|floatingpoint.h|";
4811 * Machine/OS name selection pattern
4813 #define apzSvr4__PMachs (const char**)NULL
4816 * content selection pattern - do fix if pattern found
4818 tSCC zSvr4__PSelect0[] =
4819 "^#define[ \t]+__P.*";
4821 #define SVR4__P_TEST_CT 1
4822 static tTestDesc aSvr4__PTests[] = {
4823 { TT_EGREP, zSvr4__PSelect0, (regex_t*)NULL }, };
4826 * Fix Command Arguments for Svr4__P
4828 static const char* apzSvr4__PPatch[] = {
4835 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4837 * Description of Svr4_Disable_Opt fix
4839 tSCC zSvr4_Disable_OptName[] =
4843 * File name selection pattern
4845 tSCC zSvr4_Disable_OptList[] =
4848 * Machine/OS name selection pattern
4850 #define apzSvr4_Disable_OptMachs (const char**)NULL
4853 * content selection pattern - do fix if pattern found
4855 tSCC zSvr4_Disable_OptSelect0[] =
4856 "#define.*__std_hdr_";
4858 #define SVR4_DISABLE_OPT_TEST_CT 1
4859 static tTestDesc aSvr4_Disable_OptTests[] = {
4860 { TT_EGREP, zSvr4_Disable_OptSelect0, (regex_t*)NULL }, };
4863 * Fix Command Arguments for Svr4_Disable_Opt
4865 static const char* apzSvr4_Disable_OptPatch[] = { "sed",
4866 "-e", "/#define.*__std_hdr_/d",
4869 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4871 * Description of Svr4_Getcwd fix
4873 tSCC zSvr4_GetcwdName[] =
4877 * File name selection pattern
4879 tSCC zSvr4_GetcwdList[] =
4880 "|stdlib.h|unistd.h|prototypes.h|";
4882 * Machine/OS name selection pattern
4884 #define apzSvr4_GetcwdMachs (const char**)NULL
4887 * content selection pattern - do fix if pattern found
4889 tSCC zSvr4_GetcwdSelect0[] =
4890 "getcwd\\(char \\*, int\\)";
4892 #define SVR4_GETCWD_TEST_CT 1
4893 static tTestDesc aSvr4_GetcwdTests[] = {
4894 { TT_EGREP, zSvr4_GetcwdSelect0, (regex_t*)NULL }, };
4897 * Fix Command Arguments for Svr4_Getcwd
4899 static const char* apzSvr4_GetcwdPatch[] = {
4901 "getcwd(char *, size_t)",
4904 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4906 * Description of Svr4_Profil fix
4908 tSCC zSvr4_ProfilName[] =
4912 * File name selection pattern
4914 tSCC zSvr4_ProfilList[] =
4915 "|stdlib.h|unistd.h|";
4917 * Machine/OS name selection pattern
4919 #define apzSvr4_ProfilMachs (const char**)NULL
4922 * content selection pattern - do fix if pattern found
4924 tSCC zSvr4_ProfilSelect0[] =
4925 "profil\\(unsigned short \\*, unsigned int, unsigned int, unsigned int\\)";
4927 #define SVR4_PROFIL_TEST_CT 1
4928 static tTestDesc aSvr4_ProfilTests[] = {
4929 { TT_EGREP, zSvr4_ProfilSelect0, (regex_t*)NULL }, };
4932 * Fix Command Arguments for Svr4_Profil
4934 static const char* apzSvr4_ProfilPatch[] = {
4936 "profil(unsigned short *, size_t, int, unsigned int)",
4939 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4941 * Description of Sysv68_String fix
4943 tSCC zSysv68_StringName[] =
4947 * File name selection pattern
4949 tSCC zSysv68_StringList[] =
4950 "|testing.h|string.h|";
4952 * Machine/OS name selection pattern
4954 #define apzSysv68_StringMachs (const char**)NULL
4955 #define SYSV68_STRING_TEST_CT 0
4956 #define aSysv68_StringTests (tTestDesc*)NULL
4959 * Fix Command Arguments for Sysv68_String
4961 static const char* apzSysv68_StringPatch[] = { "sed",
4962 "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
4963 "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
4964 "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
4965 "-e", "/^extern char$/N",
4966 "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
4967 "-e", "/^extern int$/N",
4968 "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
4969 "-e", "/^\tstrncmp(),$/N",
4970 "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
4971 extern unsigned int\\\n\
4975 /* * * * * * * * * * * * * * * * * * * * * * * * * *
4977 * Description of Sysz_Stdlib_For_Sun fix
4979 tSCC zSysz_Stdlib_For_SunName[] =
4980 "sysz_stdlib_for_sun";
4983 * File name selection pattern
4985 tSCC zSysz_Stdlib_For_SunList[] =
4988 * Machine/OS name selection pattern
4990 #define apzSysz_Stdlib_For_SunMachs (const char**)NULL
4993 * content selection pattern - do fix if pattern found
4995 tSCC zSysz_Stdlib_For_SunSelect0[] =
4996 "char[ \t]*\\*[ \t]*(calloc|malloc|realloc|bsearch)[ \t]*\\(";
4998 #define SYSZ_STDLIB_FOR_SUN_TEST_CT 1
4999 static tTestDesc aSysz_Stdlib_For_SunTests[] = {
5000 { TT_EGREP, zSysz_Stdlib_For_SunSelect0, (regex_t*)NULL }, };
5003 * Fix Command Arguments for Sysz_Stdlib_For_Sun
5005 static const char* apzSysz_Stdlib_For_SunPatch[] = {
5010 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5012 * Description of Thread_Keyword fix
5014 tSCC zThread_KeywordName[] =
5018 * File name selection pattern
5020 tSCC zThread_KeywordList[] =
5021 "|pthread.h|bits/sigthread.h|";
5023 * Machine/OS name selection pattern
5025 #define apzThread_KeywordMachs (const char**)NULL
5028 * content selection pattern - do fix if pattern found
5030 tSCC zThread_KeywordSelect0[] =
5031 "([* ])__thread([,)])";
5033 #define THREAD_KEYWORD_TEST_CT 1
5034 static tTestDesc aThread_KeywordTests[] = {
5035 { TT_EGREP, zThread_KeywordSelect0, (regex_t*)NULL }, };
5038 * Fix Command Arguments for Thread_Keyword
5040 static const char* apzThread_KeywordPatch[] = {
5045 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5047 * Description of Tinfo_Cplusplus fix
5049 tSCC zTinfo_CplusplusName[] =
5053 * File name selection pattern
5055 tSCC zTinfo_CplusplusList[] =
5058 * Machine/OS name selection pattern
5060 #define apzTinfo_CplusplusMachs (const char**)NULL
5063 * content selection pattern - do fix if pattern found
5065 tSCC zTinfo_CplusplusSelect0[] =
5068 #define TINFO_CPLUSPLUS_TEST_CT 1
5069 static tTestDesc aTinfo_CplusplusTests[] = {
5070 { TT_EGREP, zTinfo_CplusplusSelect0, (regex_t*)NULL }, };
5073 * Fix Command Arguments for Tinfo_Cplusplus
5075 static const char* apzTinfo_CplusplusPatch[] = {
5080 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5082 * Description of Ultrix_Atexit_Param fix
5084 tSCC zUltrix_Atexit_ParamName[] =
5085 "ultrix_atexit_param";
5088 * File name selection pattern
5090 tSCC zUltrix_Atexit_ParamList[] =
5093 * Machine/OS name selection pattern
5095 #define apzUltrix_Atexit_ParamMachs (const char**)NULL
5098 * content selection pattern - do fix if pattern found
5100 tSCC zUltrix_Atexit_ParamSelect0[] =
5101 "atexit\\(.*\\(\\)";
5103 #define ULTRIX_ATEXIT_PARAM_TEST_CT 1
5104 static tTestDesc aUltrix_Atexit_ParamTests[] = {
5105 { TT_EGREP, zUltrix_Atexit_ParamSelect0, (regex_t*)NULL }, };
5108 * Fix Command Arguments for Ultrix_Atexit_Param
5110 static const char* apzUltrix_Atexit_ParamPatch[] = {
5112 "atexit( void (*__func)( void )",
5115 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5117 * Description of Ultrix_Atof_Param fix
5119 tSCC zUltrix_Atof_ParamName[] =
5120 "ultrix_atof_param";
5123 * File name selection pattern
5125 tSCC zUltrix_Atof_ParamList[] =
5128 * Machine/OS name selection pattern
5130 #define apzUltrix_Atof_ParamMachs (const char**)NULL
5133 * content selection pattern - do fix if pattern found
5135 tSCC zUltrix_Atof_ParamSelect0[] =
5136 "atof\\([ \t]*char";
5138 #define ULTRIX_ATOF_PARAM_TEST_CT 1
5139 static tTestDesc aUltrix_Atof_ParamTests[] = {
5140 { TT_EGREP, zUltrix_Atof_ParamSelect0, (regex_t*)NULL }, };
5143 * Fix Command Arguments for Ultrix_Atof_Param
5145 static const char* apzUltrix_Atof_ParamPatch[] = {
5150 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5152 * Description of Ultrix_Const fix
5154 tSCC zUltrix_ConstName[] =
5158 * File name selection pattern
5160 tSCC zUltrix_ConstList[] =
5163 * Machine/OS name selection pattern
5165 #define apzUltrix_ConstMachs (const char**)NULL
5168 * content selection pattern - do fix if pattern found
5170 tSCC zUltrix_ConstSelect0[] =
5171 "perror\\( char \\*";
5173 #define ULTRIX_CONST_TEST_CT 1
5174 static tTestDesc aUltrix_ConstTests[] = {
5175 { TT_EGREP, zUltrix_ConstSelect0, (regex_t*)NULL }, };
5178 * Fix Command Arguments for Ultrix_Const
5180 static const char* apzUltrix_ConstPatch[] = {
5183 "([ \t*](perror|fputs|fwrite|scanf|fscanf)\\(.*)[ \t]+(char|void) \\*__",
5186 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5188 * Description of Ultrix_Const2 fix
5190 tSCC zUltrix_Const2Name[] =
5194 * File name selection pattern
5196 tSCC zUltrix_Const2List[] =
5199 * Machine/OS name selection pattern
5201 #define apzUltrix_Const2Machs (const char**)NULL
5204 * content selection pattern - do fix if pattern found
5206 tSCC zUltrix_Const2Select0[] =
5207 "\\*fopen\\( char \\*";
5209 #define ULTRIX_CONST2_TEST_CT 1
5210 static tTestDesc aUltrix_Const2Tests[] = {
5211 { TT_EGREP, zUltrix_Const2Select0, (regex_t*)NULL }, };
5214 * Fix Command Arguments for Ultrix_Const2
5216 static const char* apzUltrix_Const2Patch[] = {
5218 "%1( const char *%3, const char *",
5219 "([ \t*](fopen|sscanf|popen|tempnam))\\([ \t]*char[ \t]*\\*([^,]*),[ \t]*char[ \t]*\\*[ \t]*",
5222 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5224 * Description of Ultrix_Fix_Fixproto fix
5226 tSCC zUltrix_Fix_FixprotoName[] =
5227 "ultrix_fix_fixproto";
5230 * File name selection pattern
5232 tSCC zUltrix_Fix_FixprotoList[] =
5235 * Machine/OS name selection pattern
5237 #define apzUltrix_Fix_FixprotoMachs (const char**)NULL
5240 * content selection pattern - do fix if pattern found
5242 tSCC zUltrix_Fix_FixprotoSelect0[] =
5245 #define ULTRIX_FIX_FIXPROTO_TEST_CT 1
5246 static tTestDesc aUltrix_Fix_FixprotoTests[] = {
5247 { TT_EGREP, zUltrix_Fix_FixprotoSelect0, (regex_t*)NULL }, };
5250 * Fix Command Arguments for Ultrix_Fix_Fixproto
5252 static const char* apzUltrix_Fix_FixprotoPatch[] = {
5256 "^[ \t]*extern[ \t]*int[ \t]*uname\\(\\);",
5259 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5261 * Description of Ultrix_Ifdef fix
5263 tSCC zUltrix_IfdefName[] =
5267 * File name selection pattern
5269 tSCC zUltrix_IfdefList[] =
5272 * Machine/OS name selection pattern
5274 #define apzUltrix_IfdefMachs (const char**)NULL
5277 * content selection pattern - do fix if pattern found
5279 tSCC zUltrix_IfdefSelect0[] =
5280 "^#ifdef KERNEL[ \t]+&&";
5282 #define ULTRIX_IFDEF_TEST_CT 1
5283 static tTestDesc aUltrix_IfdefTests[] = {
5284 { TT_EGREP, zUltrix_IfdefSelect0, (regex_t*)NULL }, };
5287 * Fix Command Arguments for Ultrix_Ifdef
5289 static const char* apzUltrix_IfdefPatch[] = {
5291 "#if defined(KERNEL) &&",
5294 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5296 * Description of Ultrix_Math_Ifdef fix
5298 tSCC zUltrix_Math_IfdefName[] =
5299 "ultrix_math_ifdef";
5302 * File name selection pattern
5304 tSCC zUltrix_Math_IfdefList[] =
5305 "|sys/limits.h|float.h|math.h|";
5307 * Machine/OS name selection pattern
5309 #define apzUltrix_Math_IfdefMachs (const char**)NULL
5312 * content selection pattern - do fix if pattern found
5314 tSCC zUltrix_Math_IfdefSelect0[] =
5315 "^(#if.*)\\|\\|[ \t]+CC\\$[a-z]+";
5317 #define ULTRIX_MATH_IFDEF_TEST_CT 1
5318 static tTestDesc aUltrix_Math_IfdefTests[] = {
5319 { TT_EGREP, zUltrix_Math_IfdefSelect0, (regex_t*)NULL }, };
5322 * Fix Command Arguments for Ultrix_Math_Ifdef
5324 static const char* apzUltrix_Math_IfdefPatch[] = {
5329 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5331 * Description of Ultrix_Nested_Ioctl fix
5333 tSCC zUltrix_Nested_IoctlName[] =
5334 "ultrix_nested_ioctl";
5337 * File name selection pattern
5339 tSCC zUltrix_Nested_IoctlList[] =
5342 * Machine/OS name selection pattern
5344 #define apzUltrix_Nested_IoctlMachs (const char**)NULL
5347 * content selection pattern - do fix if pattern found
5349 tSCC zUltrix_Nested_IoctlSelect0[] =
5350 "^/\\* #define SIOCSCREEN";
5352 #define ULTRIX_NESTED_IOCTL_TEST_CT 1
5353 static tTestDesc aUltrix_Nested_IoctlTests[] = {
5354 { TT_EGREP, zUltrix_Nested_IoctlSelect0, (regex_t*)NULL }, };
5357 * Fix Command Arguments for Ultrix_Nested_Ioctl
5359 static const char* apzUltrix_Nested_IoctlPatch[] = { "sed",
5360 "-e", "/^\\/\\* #define SIOCSCREEN/s@/\\* screend@*//* screend@",
5363 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5365 * Description of Ultrix_Nested_Svc fix
5367 tSCC zUltrix_Nested_SvcName[] =
5368 "ultrix_nested_svc";
5371 * File name selection pattern
5373 tSCC zUltrix_Nested_SvcList[] =
5376 * Machine/OS name selection pattern
5378 #define apzUltrix_Nested_SvcMachs (const char**)NULL
5381 * content selection pattern - do fix if pattern found
5383 tSCC zUltrix_Nested_SvcSelect0[] =
5384 "^ \\*[ \t]*int protocol; */\\*";
5386 #define ULTRIX_NESTED_SVC_TEST_CT 1
5387 static tTestDesc aUltrix_Nested_SvcTests[] = {
5388 { TT_EGREP, zUltrix_Nested_SvcSelect0, (regex_t*)NULL }, };
5391 * Fix Command Arguments for Ultrix_Nested_Svc
5393 static const char* apzUltrix_Nested_SvcPatch[] = { "sed",
5394 "-e", "s@^\\( \\*\tint protocol; \\)/\\*@\\1*/ /*@",
5397 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5399 * Description of Ultrix_Stat fix
5401 tSCC zUltrix_StatName[] =
5405 * File name selection pattern
5407 tSCC zUltrix_StatList[] =
5410 * Machine/OS name selection pattern
5412 #define apzUltrix_StatMachs (const char**)NULL
5415 * content selection pattern - do fix if pattern found
5417 tSCC zUltrix_StatSelect0[] =
5418 "@\\(#\\)stat\\.h.*6\\.1.*\\(ULTRIX\\)";
5420 #define ULTRIX_STAT_TEST_CT 1
5421 static tTestDesc aUltrix_StatTests[] = {
5422 { TT_EGREP, zUltrix_StatSelect0, (regex_t*)NULL }, };
5425 * Fix Command Arguments for Ultrix_Stat
5427 static const char* apzUltrix_StatPatch[] = { "sed",
5428 "-e", "/^#define[ \t]S_IFPORT[ \t]*S_IFIFO$/a\\\n\
5430 /* macro to test for symbolic link */\\\n\
5431 #define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK)\\\n\n",
5432 "-e", "/^[ \t]*fstat(),$/a\\\n\
5436 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5438 * Description of Ultrix_Static fix
5440 tSCC zUltrix_StaticName[] =
5444 * File name selection pattern
5446 tSCC zUltrix_StaticList[] =
5449 * Machine/OS name selection pattern
5451 #define apzUltrix_StaticMachs (const char**)NULL
5454 * content selection pattern - do fix if pattern found
5456 tSCC zUltrix_StaticSelect0[] =
5457 "#include \"r[34]_cpu";
5459 #define ULTRIX_STATIC_TEST_CT 1
5460 static tTestDesc aUltrix_StaticTests[] = {
5461 { TT_EGREP, zUltrix_StaticSelect0, (regex_t*)NULL }, };
5464 * Fix Command Arguments for Ultrix_Static
5466 static const char* apzUltrix_StaticPatch[] = { "sed",
5467 "-e", "s/^static struct tlb_pid_state/struct tlb_pid_state/",
5468 "-e", "s/^#include \"r3_cpu\\.h\"$/#include <machine\\/r3_cpu\\.h>/",
5469 "-e", "s/^#include \"r4_cpu\\.h\"$/#include <machine\\/r4_cpu\\.h>/",
5472 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5474 * Description of Ultrix_Strings fix
5476 tSCC zUltrix_StringsName[] =
5480 * File name selection pattern
5482 tSCC zUltrix_StringsList[] =
5485 * Machine/OS name selection pattern
5487 #define apzUltrix_StringsMachs (const char**)NULL
5490 * content selection pattern - do fix if pattern found
5492 tSCC zUltrix_StringsSelect0[] =
5493 "@\\(#\\)strings\\.h.*6\\.1.*\\(ULTRIX\\)";
5495 #define ULTRIX_STRINGS_TEST_CT 1
5496 static tTestDesc aUltrix_StringsTests[] = {
5497 { TT_EGREP, zUltrix_StringsSelect0, (regex_t*)NULL }, };
5500 * Fix Command Arguments for Ultrix_Strings
5502 static const char* apzUltrix_StringsPatch[] = {
5506 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5508 * Description of Undefine_Null fix
5510 tSCC zUndefine_NullName[] =
5514 * File name selection pattern
5516 #define zUndefine_NullList (char*)NULL
5518 * Machine/OS name selection pattern
5520 #define apzUndefine_NullMachs (const char**)NULL
5523 * content selection pattern - do fix if pattern found
5525 tSCC zUndefine_NullSelect0[] =
5526 "^#[ \t]*define[ \t]+NULL[ \t]";
5529 * content bypass pattern - skip fix if pattern found
5531 tSCC zUndefine_NullBypass0[] =
5532 "#[ \t]*(ifn|un)def[ \t]+NULL($|[ \t\r])";
5534 #define UNDEFINE_NULL_TEST_CT 2
5535 static tTestDesc aUndefine_NullTests[] = {
5536 { TT_NEGREP, zUndefine_NullBypass0, (regex_t*)NULL },
5537 { TT_EGREP, zUndefine_NullSelect0, (regex_t*)NULL }, };
5540 * Fix Command Arguments for Undefine_Null
5542 static const char* apzUndefine_NullPatch[] = {
5547 "^#[ \t]*define[ \t]*[ \t]NULL([^\r\n\
5551 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5553 * Description of Unicosmk_Restrict fix
5555 tSCC zUnicosmk_RestrictName[] =
5556 "unicosmk_restrict";
5559 * File name selection pattern
5561 tSCC zUnicosmk_RestrictList[] =
5562 "|stdio.h|stdlib.h|wchar.h|";
5564 * Machine/OS name selection pattern
5566 tSCC* apzUnicosmk_RestrictMachs[] = {
5568 (const char*)NULL };
5571 * content selection pattern - do fix if pattern found
5573 tSCC zUnicosmk_RestrictSelect0[] =
5574 "(\\*[ \t]*)restrict([ \t]+)";
5576 #define UNICOSMK_RESTRICT_TEST_CT 1
5577 static tTestDesc aUnicosmk_RestrictTests[] = {
5578 { TT_EGREP, zUnicosmk_RestrictSelect0, (regex_t*)NULL }, };
5581 * Fix Command Arguments for Unicosmk_Restrict
5583 static const char* apzUnicosmk_RestrictPatch[] = {
5588 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5590 * Description of Uw7_Byteorder_Fix fix
5592 tSCC zUw7_Byteorder_FixName[] =
5593 "uw7_byteorder_fix";
5596 * File name selection pattern
5598 tSCC zUw7_Byteorder_FixList[] =
5601 * Machine/OS name selection pattern
5603 tSCC* apzUw7_Byteorder_FixMachs[] = {
5607 "i?86-*-solaris2.[0-4]",
5608 "powerpcle-*-solaris2.[0-4]",
5609 "sparc-*-solaris2.[0-4]",
5610 (const char*)NULL };
5613 * content selection pattern - do fix if pattern found
5615 tSCC zUw7_Byteorder_FixSelect0[] =
5619 * perform the 'test' shell command - do fix on success
5621 tSCC zUw7_Byteorder_FixTest0[] =
5622 "-f sys/byteorder.h";
5624 #define UW7_BYTEORDER_FIX_TEST_CT 2
5625 static tTestDesc aUw7_Byteorder_FixTests[] = {
5626 { TT_TEST, zUw7_Byteorder_FixTest0, 0 /* unused */ },
5627 { TT_EGREP, zUw7_Byteorder_FixSelect0, (regex_t*)NULL }, };
5630 * Fix Command Arguments for Uw7_Byteorder_Fix
5632 static const char* apzUw7_Byteorder_FixPatch[] = {
5635 "^extern.*[ \t](htons|ntohs).*\\(in_port_t\\).*;",
5638 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5640 * Description of Va_I960_Macro fix
5642 tSCC zVa_I960_MacroName[] =
5646 * File name selection pattern
5648 tSCC zVa_I960_MacroList[] =
5649 "|arch/i960/archI960.h|";
5651 * Machine/OS name selection pattern
5653 #define apzVa_I960_MacroMachs (const char**)NULL
5656 * content selection pattern - do fix if pattern found
5658 tSCC zVa_I960_MacroSelect0[] =
5659 "__(vsiz|vali|vpad|alignof__)";
5661 #define VA_I960_MACRO_TEST_CT 1
5662 static tTestDesc aVa_I960_MacroTests[] = {
5663 { TT_EGREP, zVa_I960_MacroSelect0, (regex_t*)NULL }, };
5666 * Fix Command Arguments for Va_I960_Macro
5668 static const char* apzVa_I960_MacroPatch[] = {
5673 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5675 * Description of Void_Null fix
5677 tSCC zVoid_NullName[] =
5681 * File name selection pattern
5683 tSCC zVoid_NullList[] =
5684 "|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|";
5686 * Machine/OS name selection pattern
5688 #define apzVoid_NullMachs (const char**)NULL
5691 * content selection pattern - do fix if pattern found
5693 tSCC zVoid_NullSelect0[] =
5694 "^#[ \t]*define[ \t]+NULL[ \t]+\\(\\(void[ \t]*\\*\\)0\\)";
5696 #define VOID_NULL_TEST_CT 1
5697 static tTestDesc aVoid_NullTests[] = {
5698 { TT_EGREP, zVoid_NullSelect0, (regex_t*)NULL }, };
5701 * Fix Command Arguments for Void_Null
5703 static const char* apzVoid_NullPatch[] = {
5708 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5710 * Description of Vxworks_Gcc_Problem fix
5712 tSCC zVxworks_Gcc_ProblemName[] =
5713 "vxworks_gcc_problem";
5716 * File name selection pattern
5718 tSCC zVxworks_Gcc_ProblemList[] =
5719 "|types/vxTypesBase.h|";
5721 * Machine/OS name selection pattern
5723 #define apzVxworks_Gcc_ProblemMachs (const char**)NULL
5726 * content selection pattern - do fix if pattern found
5728 tSCC zVxworks_Gcc_ProblemSelect0[] =
5729 "__GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__";
5731 #define VXWORKS_GCC_PROBLEM_TEST_CT 1
5732 static tTestDesc aVxworks_Gcc_ProblemTests[] = {
5733 { TT_EGREP, zVxworks_Gcc_ProblemSelect0, (regex_t*)NULL }, };
5736 * Fix Command Arguments for Vxworks_Gcc_Problem
5738 static const char* apzVxworks_Gcc_ProblemPatch[] = { "sed",
5739 "-e", "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
5740 "-e", "/[ \t]size_t/i\\\n\
5741 #ifndef _GCC_SIZE_T\\\n\
5742 #define _GCC_SIZE_T\n",
5743 "-e", "/[ \t]size_t/a\\\n\
5745 "-e", "/[ \t]ptrdiff_t/i\\\n\
5746 #ifndef _GCC_PTRDIFF_T\\\n\
5747 #define _GCC_PTRDIFF_T\n",
5748 "-e", "/[ \t]ptrdiff_t/a\\\n\
5750 "-e", "/[ \t]wchar_t/i\\\n\
5751 #ifndef _GCC_WCHAR_T\\\n\
5752 #define _GCC_WCHAR_T\n",
5753 "-e", "/[ \t]wchar_t/a\\\n\
5757 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5759 * Description of Vxworks_Needs_Vxtypes fix
5761 tSCC zVxworks_Needs_VxtypesName[] =
5762 "vxworks_needs_vxtypes";
5765 * File name selection pattern
5767 tSCC zVxworks_Needs_VxtypesList[] =
5770 * Machine/OS name selection pattern
5772 #define apzVxworks_Needs_VxtypesMachs (const char**)NULL
5775 * content selection pattern - do fix if pattern found
5777 tSCC zVxworks_Needs_VxtypesSelect0[] =
5778 "uint_t([ \t]+_clocks_per_sec)";
5780 #define VXWORKS_NEEDS_VXTYPES_TEST_CT 1
5781 static tTestDesc aVxworks_Needs_VxtypesTests[] = {
5782 { TT_EGREP, zVxworks_Needs_VxtypesSelect0, (regex_t*)NULL }, };
5785 * Fix Command Arguments for Vxworks_Needs_Vxtypes
5787 static const char* apzVxworks_Needs_VxtypesPatch[] = {
5792 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5794 * Description of Vxworks_Needs_Vxworks fix
5796 tSCC zVxworks_Needs_VxworksName[] =
5797 "vxworks_needs_vxworks";
5800 * File name selection pattern
5802 tSCC zVxworks_Needs_VxworksList[] =
5805 * Machine/OS name selection pattern
5807 #define apzVxworks_Needs_VxworksMachs (const char**)NULL
5810 * content selection pattern - do fix if pattern found
5812 tSCC zVxworks_Needs_VxworksSelect0[] =
5813 "#[ \t]define[ \t]+__INCstath";
5816 * perform the 'test' shell command - do fix on success
5818 tSCC zVxworks_Needs_VxworksTest0[] =
5819 " -r types/vxTypesOld.h";
5820 tSCC zVxworks_Needs_VxworksTest1[] =
5821 " -n \"`egrep '#include' $file`\"";
5822 tSCC zVxworks_Needs_VxworksTest2[] =
5823 " -n \"`egrep ULONG $file`\"";
5825 #define VXWORKS_NEEDS_VXWORKS_TEST_CT 4
5826 static tTestDesc aVxworks_Needs_VxworksTests[] = {
5827 { TT_TEST, zVxworks_Needs_VxworksTest0, 0 /* unused */ },
5828 { TT_TEST, zVxworks_Needs_VxworksTest1, 0 /* unused */ },
5829 { TT_TEST, zVxworks_Needs_VxworksTest2, 0 /* unused */ },
5830 { TT_EGREP, zVxworks_Needs_VxworksSelect0, (regex_t*)NULL }, };
5833 * Fix Command Arguments for Vxworks_Needs_Vxworks
5835 static const char* apzVxworks_Needs_VxworksPatch[] = { "sed",
5836 "-e", "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n\
5837 #include <types/vxTypesOld.h>\n",
5840 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5842 * Description of Vxworks_Time fix
5844 tSCC zVxworks_TimeName[] =
5848 * File name selection pattern
5850 tSCC zVxworks_TimeList[] =
5853 * Machine/OS name selection pattern
5855 #define apzVxworks_TimeMachs (const char**)NULL
5858 * content selection pattern - do fix if pattern found
5860 tSCC zVxworks_TimeSelect0[] =
5861 "#[ \t]*define[ \t]+VOIDFUNCPTR[ \t].*";
5864 * perform the 'test' shell command - do fix on success
5866 tSCC zVxworks_TimeTest0[] =
5869 #define VXWORKS_TIME_TEST_CT 2
5870 static tTestDesc aVxworks_TimeTests[] = {
5871 { TT_TEST, zVxworks_TimeTest0, 0 /* unused */ },
5872 { TT_EGREP, zVxworks_TimeSelect0, (regex_t*)NULL }, };
5875 * Fix Command Arguments for Vxworks_Time
5877 static const char* apzVxworks_TimePatch[] = {
5879 "#ifndef __gcc_VOIDFUNCPTR_defined\n\
5880 #ifdef __cplusplus\n\
5881 typedef void (*__gcc_VOIDFUNCPTR) (...);\n\
5883 typedef void (*__gcc_VOIDFUNCPTR) ();\n\
5885 #define __gcc_VOIDFUNCPTR_defined\n\
5887 #define VOIDFUNCPTR __gcc_VOIDFUNCPTR",
5890 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5892 * Description of Windiss_Math1 fix
5894 tSCC zWindiss_Math1Name[] =
5898 * File name selection pattern
5900 tSCC zWindiss_Math1List[] =
5903 * Machine/OS name selection pattern
5905 tSCC* apzWindiss_Math1Machs[] = {
5907 (const char*)NULL };
5908 #define WINDISS_MATH1_TEST_CT 0
5909 #define aWindiss_Math1Tests (tTestDesc*)NULL
5912 * Fix Command Arguments for Windiss_Math1
5914 static const char* apzWindiss_Math1Patch[] = { "sed",
5915 "-e", "s|inline long double cosl.*|#ifndef __GNUC__|",
5918 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5920 * Description of Windiss_Math2 fix
5922 tSCC zWindiss_Math2Name[] =
5926 * File name selection pattern
5928 tSCC zWindiss_Math2List[] =
5931 * Machine/OS name selection pattern
5933 tSCC* apzWindiss_Math2Machs[] = {
5935 (const char*)NULL };
5936 #define WINDISS_MATH2_TEST_CT 0
5937 #define aWindiss_Math2Tests (tTestDesc*)NULL
5940 * Fix Command Arguments for Windiss_Math2
5942 static const char* apzWindiss_Math2Patch[] = { "sed",
5943 "-e", "s|/\\* long double declarations \\*/|#endif /* __GNUC__ */|",
5946 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5948 * Description of Windiss_Valist fix
5950 tSCC zWindiss_ValistName[] =
5954 * File name selection pattern
5956 #define zWindiss_ValistList (char*)NULL
5958 * Machine/OS name selection pattern
5960 tSCC* apzWindiss_ValistMachs[] = {
5962 (const char*)NULL };
5965 * content selection pattern - do fix if pattern found
5967 tSCC zWindiss_ValistSelect0[] =
5968 "(#include.*)diab/va_list.h";
5970 #define WINDISS_VALIST_TEST_CT 1
5971 static tTestDesc aWindiss_ValistTests[] = {
5972 { TT_EGREP, zWindiss_ValistSelect0, (regex_t*)NULL }, };
5975 * Fix Command Arguments for Windiss_Valist
5977 static const char* apzWindiss_ValistPatch[] = { "sed",
5978 "-e", "s|diab/va_list.h|stdarg.h|",
5981 /* * * * * * * * * * * * * * * * * * * * * * * * * *
5983 * Description of X11_Class fix
5985 tSCC zX11_ClassName[] =
5989 * File name selection pattern
5991 tSCC zX11_ClassList[] =
5994 * Machine/OS name selection pattern
5996 #define apzX11_ClassMachs (const char**)NULL
5999 * content selection pattern - do fix if pattern found
6001 tSCC zX11_ClassSelect0[] =
6002 "^([ \t]*char \\*)class;(.*)";
6005 * content bypass pattern - skip fix if pattern found
6007 tSCC zX11_ClassBypass0[] =
6010 #define X11_CLASS_TEST_CT 2
6011 static tTestDesc aX11_ClassTests[] = {
6012 { TT_NEGREP, zX11_ClassBypass0, (regex_t*)NULL },
6013 { TT_EGREP, zX11_ClassSelect0, (regex_t*)NULL }, };
6016 * Fix Command Arguments for X11_Class
6018 static const char* apzX11_ClassPatch[] = {
6020 "#ifdef __cplusplus\n\
6027 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6029 * Description of X11_Class_Usage fix
6031 tSCC zX11_Class_UsageName[] =
6035 * File name selection pattern
6037 tSCC zX11_Class_UsageList[] =
6038 "|Xm/BaseClassI.h|";
6040 * Machine/OS name selection pattern
6042 #define apzX11_Class_UsageMachs (const char**)NULL
6045 * content selection pattern - do fix if pattern found
6047 tSCC zX11_Class_UsageSelect0[] =
6051 * content bypass pattern - skip fix if pattern found
6053 tSCC zX11_Class_UsageBypass0[] =
6056 #define X11_CLASS_USAGE_TEST_CT 2
6057 static tTestDesc aX11_Class_UsageTests[] = {
6058 { TT_NEGREP, zX11_Class_UsageBypass0, (regex_t*)NULL },
6059 { TT_EGREP, zX11_Class_UsageSelect0, (regex_t*)NULL }, };
6062 * Fix Command Arguments for X11_Class_Usage
6064 static const char* apzX11_Class_UsagePatch[] = {
6069 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6071 * Description of X11_New fix
6073 tSCC zX11_NewName[] =
6077 * File name selection pattern
6079 tSCC zX11_NewList[] =
6082 * Machine/OS name selection pattern
6084 #define apzX11_NewMachs (const char**)NULL
6087 * content bypass pattern - skip fix if pattern found
6089 tSCC zX11_NewBypass0[] =
6092 #define X11_NEW_TEST_CT 1
6093 static tTestDesc aX11_NewTests[] = {
6094 { TT_NEGREP, zX11_NewBypass0, (regex_t*)NULL }, };
6097 * Fix Command Arguments for X11_New
6099 static const char* apzX11_NewPatch[] = { "sed",
6100 "-e", "/Widget\told, new;/i\\\n\
6101 #ifdef __cplusplus\\\n\
6102 \tWidget\told, c_new;\\\n\
6104 "-e", "/Widget\told, new;/a\\\n\
6106 "-e", "s/Widget new,/Widget c_new,/g",
6109 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6111 * Description of X11_Sprintf fix
6113 tSCC zX11_SprintfName[] =
6117 * File name selection pattern
6119 tSCC zX11_SprintfList[] =
6120 "|X11/Xmu.h|X11/Xmu/Xmu.h|";
6122 * Machine/OS name selection pattern
6124 #define apzX11_SprintfMachs (const char**)NULL
6127 * content selection pattern - do fix if pattern found
6129 tSCC zX11_SprintfSelect0[] =
6130 "^extern char \\*\tsprintf\\(\\);$";
6132 #define X11_SPRINTF_TEST_CT 1
6133 static tTestDesc aX11_SprintfTests[] = {
6134 { TT_EGREP, zX11_SprintfSelect0, (regex_t*)NULL }, };
6137 * Fix Command Arguments for X11_Sprintf
6139 static const char* apzX11_SprintfPatch[] = {
6141 "#ifndef __STDC__\n\
6143 #endif /* !defined __STDC__ */",
6147 /* * * * * * * * * * * * * * * * * * * * * * * * * *
6151 #define REGEX_COUNT 174
6152 #define MACH_LIST_SIZE_LIMIT 261
6153 #define FIX_COUNT 155
6156 * Enumerate the fixes
6159 AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
6160 AAB_FD_ZERO_GNU_TYPES_H_FIXIDX,
6161 AAB_FD_ZERO_SELECTBITS_H_FIXIDX,
6162 AAB_SOLARIS_SYS_VARARGS_H_FIXIDX,
6163 AAB_SUN_MEMCPY_FIXIDX,
6164 AAB_ULTRIX_ANSI_COMPAT_FIXIDX,
6165 AAB_ULTRIX_LIMITS_FIXIDX,
6166 AAB_ULTRIX_MEMORY_FIXIDX,
6167 AAB_ULTRIX_STRING_FIXIDX,
6169 AIX_SYSMACHINE_FIXIDX,
6171 AIX_VOLATILE_FIXIDX,
6172 ALPHA___ASSERT_FIXIDX,
6173 ALPHA___EXTERN_PREFIX_FIXIDX,
6174 ALPHA_ASSERT_FIXIDX,
6175 ALPHA_GETOPT_FIXIDX,
6176 ALPHA_PARENS_FIXIDX,
6177 ALPHA_PTHREAD_FIXIDX,
6179 AVOID_BOOL_DEFINE_FIXIDX,
6180 AVOID_BOOL_TYPE_FIXIDX,
6181 AVOID_WCHAR_T_TYPE_FIXIDX,
6183 BAD_STRUCT_TERM_FIXIDX,
6185 BROKEN_ASSERT_STDIO_FIXIDX,
6186 BROKEN_ASSERT_STDLIB_FIXIDX,
6188 BSD_STDIO_ATTRS_CONFLICT_FIXIDX,
6189 CTRL_QUOTES_DEF_FIXIDX,
6190 CTRL_QUOTES_USE_FIXIDX,
6192 DEC_INTERN_ASM_FIXIDX,
6193 DJGPP_WCHAR_H_FIXIDX,
6195 FREEBSD_GCC3_BREAKAGE_FIXIDX,
6199 HPUX10_CPP_POW_INLINE_FIXIDX,
6200 HPUX11_CPP_POW_INLINE_FIXIDX,
6201 HPUX10_CTYPE_DECLARATIONS1_FIXIDX,
6202 HPUX10_CTYPE_DECLARATIONS2_FIXIDX,
6204 HPUX11_FABSF_FIXIDX,
6205 HPUX11_SIZE_T_FIXIDX,
6206 HPUX11_UINT32_C_FIXIDX,
6207 HPUX11_VSNPRINTF_FIXIDX,
6208 HPUX8_BOGUS_INLINES_FIXIDX,
6209 HPUX_CTYPE_MACROS_FIXIDX,
6210 HPUX_LONG_DOUBLE_FIXIDX,
6212 HPUX_SYSTIME_FIXIDX,
6213 INT_ABORT_FREE_AND_EXIT_FIXIDX,
6214 IO_QUOTES_DEF_FIXIDX,
6215 IO_QUOTES_USE_FIXIDX,
6216 IP_MISSING_SEMI_FIXIDX,
6217 IRIX___RESTRICT_FIXIDX,
6218 IRIX_ASM_APOSTROPHE_FIXIDX,
6219 IRIX_LIMITS_CONST_FIXIDX,
6220 IRIX_SOCKLEN_T_FIXIDX,
6221 IRIX_STDIO_VA_LIST_FIXIDX,
6222 IRIX_WCSFTIME_FIXIDX,
6224 ISC_OMITS_WITH_STDC_FIXIDX,
6225 KANDR_CONCAT_FIXIDX,
6226 LIBC1_G_VA_LIST_FIXIDX,
6227 LIBC1_IFDEFD_MEMX_FIXIDX,
6228 LIMITS_IFNDEFS_FIXIDX,
6229 LYNX_VOID_INT_FIXIDX,
6230 LYNXOS_FCNTL_PROTO_FIXIDX,
6231 MACHINE_ANSI_H_VA_LIST_FIXIDX,
6232 MACHINE_NAME_FIXIDX,
6233 MATH_EXCEPTION_FIXIDX,
6234 MATH_HUGE_VAL_FROM_DBL_MAX_FIXIDX,
6235 MATH_HUGE_VAL_IFNDEF_FIXIDX,
6236 NESTED_AUTH_DES_FIXIDX,
6237 NESTED_MOTOROLA_FIXIDX,
6238 NESTED_SYS_LIMITS_FIXIDX,
6239 NETBSD_EXTRA_SEMICOLON_FIXIDX,
6240 NEXT_MATH_PREFIX_FIXIDX,
6241 NEXT_TEMPLATE_FIXIDX,
6242 NEXT_VOLITILE_FIXIDX,
6243 NEXT_WAIT_UNION_FIXIDX,
6244 NODEENT_SYNTAX_FIXIDX,
6245 OSF_NAMESPACE_A_FIXIDX,
6246 OSF_NAMESPACE_C_FIXIDX,
6247 PTHREAD_PAGE_SIZE_FIXIDX,
6248 READ_RET_TYPE_FIXIDX,
6249 RS6000_DOUBLE_FIXIDX,
6250 RS6000_FCHMOD_FIXIDX,
6251 RS6000_PARAM_FIXIDX,
6254 SCO_STATIC_FUNC_FIXIDX,
6256 SOLARIS_MUTEX_INIT_1_FIXIDX,
6257 SOLARIS_MUTEX_INIT_2_FIXIDX,
6258 SOLARIS_SOCKET_FIXIDX,
6259 SOLARIS_STDIO_TAG_FIXIDX,
6260 SOLARIS_UNISTD_FIXIDX,
6261 SOLARIS_WIDEC_FIXIDX,
6263 STDIO_STDARG_H_FIXIDX,
6264 STDIO_VA_LIST_FIXIDX,
6265 STRICT_ANSI_NOT_FIXIDX,
6266 STRICT_ANSI_NOT_CTD_FIXIDX,
6267 STRICT_ANSI_ONLY_FIXIDX,
6269 STRUCT_SOCKADDR_FIXIDX,
6270 SUN_AUTH_PROTO_FIXIDX,
6271 SUN_BOGUS_IFDEF_FIXIDX,
6272 SUN_CATMACRO_FIXIDX,
6274 SUN_RUSERS_SEMI_FIXIDX,
6276 SUNOS_MATHERR_DECL_FIXIDX,
6277 SUNOS_STRLEN_FIXIDX,
6279 SVR4_DISABLE_OPT_FIXIDX,
6282 SYSV68_STRING_FIXIDX,
6283 SYSZ_STDLIB_FOR_SUN_FIXIDX,
6284 THREAD_KEYWORD_FIXIDX,
6285 TINFO_CPLUSPLUS_FIXIDX,
6286 ULTRIX_ATEXIT_PARAM_FIXIDX,
6287 ULTRIX_ATOF_PARAM_FIXIDX,
6288 ULTRIX_CONST_FIXIDX,
6289 ULTRIX_CONST2_FIXIDX,
6290 ULTRIX_FIX_FIXPROTO_FIXIDX,
6291 ULTRIX_IFDEF_FIXIDX,
6292 ULTRIX_MATH_IFDEF_FIXIDX,
6293 ULTRIX_NESTED_IOCTL_FIXIDX,
6294 ULTRIX_NESTED_SVC_FIXIDX,
6296 ULTRIX_STATIC_FIXIDX,
6297 ULTRIX_STRINGS_FIXIDX,
6298 UNDEFINE_NULL_FIXIDX,
6299 UNICOSMK_RESTRICT_FIXIDX,
6300 UW7_BYTEORDER_FIX_FIXIDX,
6301 VA_I960_MACRO_FIXIDX,
6303 VXWORKS_GCC_PROBLEM_FIXIDX,
6304 VXWORKS_NEEDS_VXTYPES_FIXIDX,
6305 VXWORKS_NEEDS_VXWORKS_FIXIDX,
6306 VXWORKS_TIME_FIXIDX,
6307 WINDISS_MATH1_FIXIDX,
6308 WINDISS_MATH2_FIXIDX,
6309 WINDISS_VALIST_FIXIDX,
6311 X11_CLASS_USAGE_FIXIDX,
6316 tFixDesc fixDescList[ FIX_COUNT ] = {
6317 { zAab_Fd_Zero_Asm_Posix_Types_HName, zAab_Fd_Zero_Asm_Posix_Types_HList,
6318 apzAab_Fd_Zero_Asm_Posix_Types_HMachs,
6319 AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6320 aAab_Fd_Zero_Asm_Posix_Types_HTests, apzAab_Fd_Zero_Asm_Posix_Types_HPatch, 0 },
6322 { zAab_Fd_Zero_Gnu_Types_HName, zAab_Fd_Zero_Gnu_Types_HList,
6323 apzAab_Fd_Zero_Gnu_Types_HMachs,
6324 AAB_FD_ZERO_GNU_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6325 aAab_Fd_Zero_Gnu_Types_HTests, apzAab_Fd_Zero_Gnu_Types_HPatch, 0 },
6327 { zAab_Fd_Zero_Selectbits_HName, zAab_Fd_Zero_Selectbits_HList,
6328 apzAab_Fd_Zero_Selectbits_HMachs,
6329 AAB_FD_ZERO_SELECTBITS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6330 aAab_Fd_Zero_Selectbits_HTests, apzAab_Fd_Zero_Selectbits_HPatch, 0 },
6332 { zAab_Solaris_Sys_Varargs_HName, zAab_Solaris_Sys_Varargs_HList,
6333 apzAab_Solaris_Sys_Varargs_HMachs,
6334 AAB_SOLARIS_SYS_VARARGS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6335 aAab_Solaris_Sys_Varargs_HTests, apzAab_Solaris_Sys_Varargs_HPatch, 0 },
6337 { zAab_Sun_MemcpyName, zAab_Sun_MemcpyList,
6338 apzAab_Sun_MemcpyMachs,
6339 AAB_SUN_MEMCPY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6340 aAab_Sun_MemcpyTests, apzAab_Sun_MemcpyPatch, 0 },
6342 { zAab_Ultrix_Ansi_CompatName, zAab_Ultrix_Ansi_CompatList,
6343 apzAab_Ultrix_Ansi_CompatMachs,
6344 AAB_ULTRIX_ANSI_COMPAT_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6345 aAab_Ultrix_Ansi_CompatTests, apzAab_Ultrix_Ansi_CompatPatch, 0 },
6347 { zAab_Ultrix_LimitsName, zAab_Ultrix_LimitsList,
6348 apzAab_Ultrix_LimitsMachs,
6349 AAB_ULTRIX_LIMITS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6350 aAab_Ultrix_LimitsTests, apzAab_Ultrix_LimitsPatch, 0 },
6352 { zAab_Ultrix_MemoryName, zAab_Ultrix_MemoryList,
6353 apzAab_Ultrix_MemoryMachs,
6354 AAB_ULTRIX_MEMORY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6355 aAab_Ultrix_MemoryTests, apzAab_Ultrix_MemoryPatch, 0 },
6357 { zAab_Ultrix_StringName, zAab_Ultrix_StringList,
6358 apzAab_Ultrix_StringMachs,
6359 AAB_ULTRIX_STRING_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
6360 aAab_Ultrix_StringTests, apzAab_Ultrix_StringPatch, 0 },
6362 { zAix_PthreadName, zAix_PthreadList,
6363 apzAix_PthreadMachs,
6364 AIX_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6365 aAix_PthreadTests, apzAix_PthreadPatch, 0 },
6367 { zAix_SysmachineName, zAix_SysmachineList,
6368 apzAix_SysmachineMachs,
6369 AIX_SYSMACHINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6370 aAix_SysmachineTests, apzAix_SysmachinePatch, 0 },
6372 { zAix_SyswaitName, zAix_SyswaitList,
6373 apzAix_SyswaitMachs,
6374 AIX_SYSWAIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6375 aAix_SyswaitTests, apzAix_SyswaitPatch, 0 },
6377 { zAix_VolatileName, zAix_VolatileList,
6378 apzAix_VolatileMachs,
6379 AIX_VOLATILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6380 aAix_VolatileTests, apzAix_VolatilePatch, 0 },
6382 { zAlpha___AssertName, zAlpha___AssertList,
6383 apzAlpha___AssertMachs,
6384 ALPHA___ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6385 aAlpha___AssertTests, apzAlpha___AssertPatch, 0 },
6387 { zAlpha___Extern_PrefixName, zAlpha___Extern_PrefixList,
6388 apzAlpha___Extern_PrefixMachs,
6389 ALPHA___EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6390 aAlpha___Extern_PrefixTests, apzAlpha___Extern_PrefixPatch, 0 },
6392 { zAlpha_AssertName, zAlpha_AssertList,
6393 apzAlpha_AssertMachs,
6394 ALPHA_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6395 aAlpha_AssertTests, apzAlpha_AssertPatch, 0 },
6397 { zAlpha_GetoptName, zAlpha_GetoptList,
6398 apzAlpha_GetoptMachs,
6399 ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6400 aAlpha_GetoptTests, apzAlpha_GetoptPatch, 0 },
6402 { zAlpha_ParensName, zAlpha_ParensList,
6403 apzAlpha_ParensMachs,
6404 ALPHA_PARENS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6405 aAlpha_ParensTests, apzAlpha_ParensPatch, 0 },
6407 { zAlpha_PthreadName, zAlpha_PthreadList,
6408 apzAlpha_PthreadMachs,
6409 ALPHA_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6410 aAlpha_PthreadTests, apzAlpha_PthreadPatch, 0 },
6412 { zAlpha_SbrkName, zAlpha_SbrkList,
6414 ALPHA_SBRK_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6415 aAlpha_SbrkTests, apzAlpha_SbrkPatch, 0 },
6417 { zAvoid_Bool_DefineName, zAvoid_Bool_DefineList,
6418 apzAvoid_Bool_DefineMachs,
6419 AVOID_BOOL_DEFINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6420 aAvoid_Bool_DefineTests, apzAvoid_Bool_DefinePatch, 0 },
6422 { zAvoid_Bool_TypeName, zAvoid_Bool_TypeList,
6423 apzAvoid_Bool_TypeMachs,
6424 AVOID_BOOL_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6425 aAvoid_Bool_TypeTests, apzAvoid_Bool_TypePatch, 0 },
6427 { zAvoid_Wchar_T_TypeName, zAvoid_Wchar_T_TypeList,
6428 apzAvoid_Wchar_T_TypeMachs,
6429 AVOID_WCHAR_T_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6430 aAvoid_Wchar_T_TypeTests, apzAvoid_Wchar_T_TypePatch, 0 },
6432 { zBad_LvalName, zBad_LvalList,
6434 BAD_LVAL_TEST_CT, FD_MACH_ONLY,
6435 aBad_LvalTests, apzBad_LvalPatch, 0 },
6437 { zBad_Struct_TermName, zBad_Struct_TermList,
6438 apzBad_Struct_TermMachs,
6439 BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6440 aBad_Struct_TermTests, apzBad_Struct_TermPatch, 0 },
6442 { zBadquoteName, zBadquoteList,
6444 BADQUOTE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6445 aBadquoteTests, apzBadquotePatch, 0 },
6447 { zBroken_Assert_StdioName, zBroken_Assert_StdioList,
6448 apzBroken_Assert_StdioMachs,
6449 BROKEN_ASSERT_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6450 aBroken_Assert_StdioTests, apzBroken_Assert_StdioPatch, 0 },
6452 { zBroken_Assert_StdlibName, zBroken_Assert_StdlibList,
6453 apzBroken_Assert_StdlibMachs,
6454 BROKEN_ASSERT_STDLIB_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6455 aBroken_Assert_StdlibTests, apzBroken_Assert_StdlibPatch, 0 },
6457 { zBroken_CabsName, zBroken_CabsList,
6458 apzBroken_CabsMachs,
6459 BROKEN_CABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6460 aBroken_CabsTests, apzBroken_CabsPatch, 0 },
6462 { zBsd_Stdio_Attrs_ConflictName, zBsd_Stdio_Attrs_ConflictList,
6463 apzBsd_Stdio_Attrs_ConflictMachs,
6464 BSD_STDIO_ATTRS_CONFLICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6465 aBsd_Stdio_Attrs_ConflictTests, apzBsd_Stdio_Attrs_ConflictPatch, 0 },
6467 { zCtrl_Quotes_DefName, zCtrl_Quotes_DefList,
6468 apzCtrl_Quotes_DefMachs,
6469 CTRL_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6470 aCtrl_Quotes_DefTests, apzCtrl_Quotes_DefPatch, 0 },
6472 { zCtrl_Quotes_UseName, zCtrl_Quotes_UseList,
6473 apzCtrl_Quotes_UseMachs,
6474 CTRL_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6475 aCtrl_Quotes_UseTests, apzCtrl_Quotes_UsePatch, 0 },
6477 { zCxx_UnreadyName, zCxx_UnreadyList,
6478 apzCxx_UnreadyMachs,
6479 CXX_UNREADY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6480 aCxx_UnreadyTests, apzCxx_UnreadyPatch, 0 },
6482 { zDec_Intern_AsmName, zDec_Intern_AsmList,
6483 apzDec_Intern_AsmMachs,
6484 DEC_INTERN_ASM_TEST_CT, FD_MACH_ONLY,
6485 aDec_Intern_AsmTests, apzDec_Intern_AsmPatch, 0 },
6487 { zDjgpp_Wchar_HName, zDjgpp_Wchar_HList,
6488 apzDjgpp_Wchar_HMachs,
6489 DJGPP_WCHAR_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6490 aDjgpp_Wchar_HTests, apzDjgpp_Wchar_HPatch, 0 },
6492 { zEcd_CursorName, zEcd_CursorList,
6494 ECD_CURSOR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6495 aEcd_CursorTests, apzEcd_CursorPatch, 0 },
6497 { zFreebsd_Gcc3_BreakageName, zFreebsd_Gcc3_BreakageList,
6498 apzFreebsd_Gcc3_BreakageMachs,
6499 FREEBSD_GCC3_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6500 aFreebsd_Gcc3_BreakageTests, apzFreebsd_Gcc3_BreakagePatch, 0 },
6502 { zGnu_TypesName, zGnu_TypesList,
6504 GNU_TYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6505 aGnu_TypesTests, apzGnu_TypesPatch, 0 },
6507 { zHp_InlineName, zHp_InlineList,
6509 HP_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6510 aHp_InlineTests, apzHp_InlinePatch, 0 },
6512 { zHp_SysfileName, zHp_SysfileList,
6514 HP_SYSFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6515 aHp_SysfileTests, apzHp_SysfilePatch, 0 },
6517 { zHpux10_Cpp_Pow_InlineName, zHpux10_Cpp_Pow_InlineList,
6518 apzHpux10_Cpp_Pow_InlineMachs,
6519 HPUX10_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6520 aHpux10_Cpp_Pow_InlineTests, apzHpux10_Cpp_Pow_InlinePatch, 0 },
6522 { zHpux11_Cpp_Pow_InlineName, zHpux11_Cpp_Pow_InlineList,
6523 apzHpux11_Cpp_Pow_InlineMachs,
6524 HPUX11_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6525 aHpux11_Cpp_Pow_InlineTests, apzHpux11_Cpp_Pow_InlinePatch, 0 },
6527 { zHpux10_Ctype_Declarations1Name, zHpux10_Ctype_Declarations1List,
6528 apzHpux10_Ctype_Declarations1Machs,
6529 HPUX10_CTYPE_DECLARATIONS1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6530 aHpux10_Ctype_Declarations1Tests, apzHpux10_Ctype_Declarations1Patch, 0 },
6532 { zHpux10_Ctype_Declarations2Name, zHpux10_Ctype_Declarations2List,
6533 apzHpux10_Ctype_Declarations2Machs,
6534 HPUX10_CTYPE_DECLARATIONS2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6535 aHpux10_Ctype_Declarations2Tests, apzHpux10_Ctype_Declarations2Patch, 0 },
6537 { zHpux11_AbsName, zHpux11_AbsList,
6539 HPUX11_ABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6540 aHpux11_AbsTests, apzHpux11_AbsPatch, 0 },
6542 { zHpux11_FabsfName, zHpux11_FabsfList,
6543 apzHpux11_FabsfMachs,
6544 HPUX11_FABSF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6545 aHpux11_FabsfTests, apzHpux11_FabsfPatch, 0 },
6547 { zHpux11_Size_TName, zHpux11_Size_TList,
6548 apzHpux11_Size_TMachs,
6549 HPUX11_SIZE_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6550 aHpux11_Size_TTests, apzHpux11_Size_TPatch, 0 },
6552 { zHpux11_Uint32_CName, zHpux11_Uint32_CList,
6553 apzHpux11_Uint32_CMachs,
6554 HPUX11_UINT32_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6555 aHpux11_Uint32_CTests, apzHpux11_Uint32_CPatch, 0 },
6557 { zHpux11_VsnprintfName, zHpux11_VsnprintfList,
6558 apzHpux11_VsnprintfMachs,
6559 HPUX11_VSNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6560 aHpux11_VsnprintfTests, apzHpux11_VsnprintfPatch, 0 },
6562 { zHpux8_Bogus_InlinesName, zHpux8_Bogus_InlinesList,
6563 apzHpux8_Bogus_InlinesMachs,
6564 HPUX8_BOGUS_INLINES_TEST_CT, FD_MACH_ONLY,
6565 aHpux8_Bogus_InlinesTests, apzHpux8_Bogus_InlinesPatch, 0 },
6567 { zHpux_Ctype_MacrosName, zHpux_Ctype_MacrosList,
6568 apzHpux_Ctype_MacrosMachs,
6569 HPUX_CTYPE_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6570 aHpux_Ctype_MacrosTests, apzHpux_Ctype_MacrosPatch, 0 },
6572 { zHpux_Long_DoubleName, zHpux_Long_DoubleList,
6573 apzHpux_Long_DoubleMachs,
6574 HPUX_LONG_DOUBLE_TEST_CT, FD_MACH_ONLY,
6575 aHpux_Long_DoubleTests, apzHpux_Long_DoublePatch, 0 },
6577 { zHpux_MaxintName, zHpux_MaxintList,
6578 apzHpux_MaxintMachs,
6579 HPUX_MAXINT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6580 aHpux_MaxintTests, apzHpux_MaxintPatch, 0 },
6582 { zHpux_SystimeName, zHpux_SystimeList,
6583 apzHpux_SystimeMachs,
6584 HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6585 aHpux_SystimeTests, apzHpux_SystimePatch, 0 },
6587 { zInt_Abort_Free_And_ExitName, zInt_Abort_Free_And_ExitList,
6588 apzInt_Abort_Free_And_ExitMachs,
6589 INT_ABORT_FREE_AND_EXIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6590 aInt_Abort_Free_And_ExitTests, apzInt_Abort_Free_And_ExitPatch, 0 },
6592 { zIo_Quotes_DefName, zIo_Quotes_DefList,
6593 apzIo_Quotes_DefMachs,
6594 IO_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6595 aIo_Quotes_DefTests, apzIo_Quotes_DefPatch, 0 },
6597 { zIo_Quotes_UseName, zIo_Quotes_UseList,
6598 apzIo_Quotes_UseMachs,
6599 IO_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6600 aIo_Quotes_UseTests, apzIo_Quotes_UsePatch, 0 },
6602 { zIp_Missing_SemiName, zIp_Missing_SemiList,
6603 apzIp_Missing_SemiMachs,
6604 IP_MISSING_SEMI_TEST_CT, FD_MACH_ONLY,
6605 aIp_Missing_SemiTests, apzIp_Missing_SemiPatch, 0 },
6607 { zIrix___RestrictName, zIrix___RestrictList,
6608 apzIrix___RestrictMachs,
6609 IRIX___RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6610 aIrix___RestrictTests, apzIrix___RestrictPatch, 0 },
6612 { zIrix_Asm_ApostropheName, zIrix_Asm_ApostropheList,
6613 apzIrix_Asm_ApostropheMachs,
6614 IRIX_ASM_APOSTROPHE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6615 aIrix_Asm_ApostropheTests, apzIrix_Asm_ApostrophePatch, 0 },
6617 { zIrix_Limits_ConstName, zIrix_Limits_ConstList,
6618 apzIrix_Limits_ConstMachs,
6619 IRIX_LIMITS_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6620 aIrix_Limits_ConstTests, apzIrix_Limits_ConstPatch, 0 },
6622 { zIrix_Socklen_TName, zIrix_Socklen_TList,
6623 apzIrix_Socklen_TMachs,
6624 IRIX_SOCKLEN_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6625 aIrix_Socklen_TTests, apzIrix_Socklen_TPatch, 0 },
6627 { zIrix_Stdio_Va_ListName, zIrix_Stdio_Va_ListList,
6628 apzIrix_Stdio_Va_ListMachs,
6629 IRIX_STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6630 aIrix_Stdio_Va_ListTests, apzIrix_Stdio_Va_ListPatch, 0 },
6632 { zIrix_WcsftimeName, zIrix_WcsftimeList,
6633 apzIrix_WcsftimeMachs,
6634 IRIX_WCSFTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6635 aIrix_WcsftimeTests, apzIrix_WcsftimePatch, 0 },
6637 { zIsc_FmodName, zIsc_FmodList,
6639 ISC_FMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6640 aIsc_FmodTests, apzIsc_FmodPatch, 0 },
6642 { zIsc_Omits_With_StdcName, zIsc_Omits_With_StdcList,
6643 apzIsc_Omits_With_StdcMachs,
6644 ISC_OMITS_WITH_STDC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6645 aIsc_Omits_With_StdcTests, apzIsc_Omits_With_StdcPatch, 0 },
6647 { zKandr_ConcatName, zKandr_ConcatList,
6648 apzKandr_ConcatMachs,
6649 KANDR_CONCAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6650 aKandr_ConcatTests, apzKandr_ConcatPatch, 0 },
6652 { zLibc1_G_Va_ListName, zLibc1_G_Va_ListList,
6653 apzLibc1_G_Va_ListMachs,
6654 LIBC1_G_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6655 aLibc1_G_Va_ListTests, apzLibc1_G_Va_ListPatch, 0 },
6657 { zLibc1_Ifdefd_MemxName, zLibc1_Ifdefd_MemxList,
6658 apzLibc1_Ifdefd_MemxMachs,
6659 LIBC1_IFDEFD_MEMX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6660 aLibc1_Ifdefd_MemxTests, apzLibc1_Ifdefd_MemxPatch, 0 },
6662 { zLimits_IfndefsName, zLimits_IfndefsList,
6663 apzLimits_IfndefsMachs,
6664 LIMITS_IFNDEFS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6665 aLimits_IfndefsTests, apzLimits_IfndefsPatch, 0 },
6667 { zLynx_Void_IntName, zLynx_Void_IntList,
6668 apzLynx_Void_IntMachs,
6669 LYNX_VOID_INT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6670 aLynx_Void_IntTests, apzLynx_Void_IntPatch, 0 },
6672 { zLynxos_Fcntl_ProtoName, zLynxos_Fcntl_ProtoList,
6673 apzLynxos_Fcntl_ProtoMachs,
6674 LYNXOS_FCNTL_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6675 aLynxos_Fcntl_ProtoTests, apzLynxos_Fcntl_ProtoPatch, 0 },
6677 { zMachine_Ansi_H_Va_ListName, zMachine_Ansi_H_Va_ListList,
6678 apzMachine_Ansi_H_Va_ListMachs,
6679 MACHINE_ANSI_H_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6680 aMachine_Ansi_H_Va_ListTests, apzMachine_Ansi_H_Va_ListPatch, 0 },
6682 { zMachine_NameName, zMachine_NameList,
6683 apzMachine_NameMachs,
6684 MACHINE_NAME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6685 aMachine_NameTests, apzMachine_NamePatch, 0 },
6687 { zMath_ExceptionName, zMath_ExceptionList,
6688 apzMath_ExceptionMachs,
6689 MATH_EXCEPTION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6690 aMath_ExceptionTests, apzMath_ExceptionPatch, 0 },
6692 { zMath_Huge_Val_From_Dbl_MaxName, zMath_Huge_Val_From_Dbl_MaxList,
6693 apzMath_Huge_Val_From_Dbl_MaxMachs,
6694 MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
6695 aMath_Huge_Val_From_Dbl_MaxTests, apzMath_Huge_Val_From_Dbl_MaxPatch, 0 },
6697 { zMath_Huge_Val_IfndefName, zMath_Huge_Val_IfndefList,
6698 apzMath_Huge_Val_IfndefMachs,
6699 MATH_HUGE_VAL_IFNDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6700 aMath_Huge_Val_IfndefTests, apzMath_Huge_Val_IfndefPatch, 0 },
6702 { zNested_Auth_DesName, zNested_Auth_DesList,
6703 apzNested_Auth_DesMachs,
6704 NESTED_AUTH_DES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6705 aNested_Auth_DesTests, apzNested_Auth_DesPatch, 0 },
6707 { zNested_MotorolaName, zNested_MotorolaList,
6708 apzNested_MotorolaMachs,
6709 NESTED_MOTOROLA_TEST_CT, FD_MACH_ONLY,
6710 aNested_MotorolaTests, apzNested_MotorolaPatch, 0 },
6712 { zNested_Sys_LimitsName, zNested_Sys_LimitsList,
6713 apzNested_Sys_LimitsMachs,
6714 NESTED_SYS_LIMITS_TEST_CT, FD_MACH_ONLY,
6715 aNested_Sys_LimitsTests, apzNested_Sys_LimitsPatch, 0 },
6717 { zNetbsd_Extra_SemicolonName, zNetbsd_Extra_SemicolonList,
6718 apzNetbsd_Extra_SemicolonMachs,
6719 NETBSD_EXTRA_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6720 aNetbsd_Extra_SemicolonTests, apzNetbsd_Extra_SemicolonPatch, 0 },
6722 { zNext_Math_PrefixName, zNext_Math_PrefixList,
6723 apzNext_Math_PrefixMachs,
6724 NEXT_MATH_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6725 aNext_Math_PrefixTests, apzNext_Math_PrefixPatch, 0 },
6727 { zNext_TemplateName, zNext_TemplateList,
6728 apzNext_TemplateMachs,
6729 NEXT_TEMPLATE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6730 aNext_TemplateTests, apzNext_TemplatePatch, 0 },
6732 { zNext_VolitileName, zNext_VolitileList,
6733 apzNext_VolitileMachs,
6734 NEXT_VOLITILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6735 aNext_VolitileTests, apzNext_VolitilePatch, 0 },
6737 { zNext_Wait_UnionName, zNext_Wait_UnionList,
6738 apzNext_Wait_UnionMachs,
6739 NEXT_WAIT_UNION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6740 aNext_Wait_UnionTests, apzNext_Wait_UnionPatch, 0 },
6742 { zNodeent_SyntaxName, zNodeent_SyntaxList,
6743 apzNodeent_SyntaxMachs,
6744 NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6745 aNodeent_SyntaxTests, apzNodeent_SyntaxPatch, 0 },
6747 { zOsf_Namespace_AName, zOsf_Namespace_AList,
6748 apzOsf_Namespace_AMachs,
6749 OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6750 aOsf_Namespace_ATests, apzOsf_Namespace_APatch, 0 },
6752 { zOsf_Namespace_CName, zOsf_Namespace_CList,
6753 apzOsf_Namespace_CMachs,
6754 OSF_NAMESPACE_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6755 aOsf_Namespace_CTests, apzOsf_Namespace_CPatch, 0 },
6757 { zPthread_Page_SizeName, zPthread_Page_SizeList,
6758 apzPthread_Page_SizeMachs,
6759 PTHREAD_PAGE_SIZE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6760 aPthread_Page_SizeTests, apzPthread_Page_SizePatch, 0 },
6762 { zRead_Ret_TypeName, zRead_Ret_TypeList,
6763 apzRead_Ret_TypeMachs,
6764 READ_RET_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6765 aRead_Ret_TypeTests, apzRead_Ret_TypePatch, 0 },
6767 { zRs6000_DoubleName, zRs6000_DoubleList,
6768 apzRs6000_DoubleMachs,
6769 RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6770 aRs6000_DoubleTests, apzRs6000_DoublePatch, 0 },
6772 { zRs6000_FchmodName, zRs6000_FchmodList,
6773 apzRs6000_FchmodMachs,
6774 RS6000_FCHMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6775 aRs6000_FchmodTests, apzRs6000_FchmodPatch, 0 },
6777 { zRs6000_ParamName, zRs6000_ParamList,
6778 apzRs6000_ParamMachs,
6779 RS6000_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6780 aRs6000_ParamTests, apzRs6000_ParamPatch, 0 },
6782 { zSco_MathName, zSco_MathList,
6784 SCO_MATH_TEST_CT, FD_MACH_ONLY,
6785 aSco_MathTests, apzSco_MathPatch, 0 },
6787 { zSco_RegsetName, zSco_RegsetList,
6789 SCO_REGSET_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6790 aSco_RegsetTests, apzSco_RegsetPatch, 0 },
6792 { zSco_Static_FuncName, zSco_Static_FuncList,
6793 apzSco_Static_FuncMachs,
6794 SCO_STATIC_FUNC_TEST_CT, FD_MACH_ONLY,
6795 aSco_Static_FuncTests, apzSco_Static_FuncPatch, 0 },
6797 { zSco_UtimeName, zSco_UtimeList,
6799 SCO_UTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6800 aSco_UtimeTests, apzSco_UtimePatch, 0 },
6802 { zSolaris_Mutex_Init_1Name, zSolaris_Mutex_Init_1List,
6803 apzSolaris_Mutex_Init_1Machs,
6804 SOLARIS_MUTEX_INIT_1_TEST_CT, FD_MACH_ONLY,
6805 aSolaris_Mutex_Init_1Tests, apzSolaris_Mutex_Init_1Patch, 0 },
6807 { zSolaris_Mutex_Init_2Name, zSolaris_Mutex_Init_2List,
6808 apzSolaris_Mutex_Init_2Machs,
6809 SOLARIS_MUTEX_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6810 aSolaris_Mutex_Init_2Tests, apzSolaris_Mutex_Init_2Patch, 0 },
6812 { zSolaris_SocketName, zSolaris_SocketList,
6813 apzSolaris_SocketMachs,
6814 SOLARIS_SOCKET_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6815 aSolaris_SocketTests, apzSolaris_SocketPatch, 0 },
6817 { zSolaris_Stdio_TagName, zSolaris_Stdio_TagList,
6818 apzSolaris_Stdio_TagMachs,
6819 SOLARIS_STDIO_TAG_TEST_CT, FD_MACH_ONLY,
6820 aSolaris_Stdio_TagTests, apzSolaris_Stdio_TagPatch, 0 },
6822 { zSolaris_UnistdName, zSolaris_UnistdList,
6823 apzSolaris_UnistdMachs,
6824 SOLARIS_UNISTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6825 aSolaris_UnistdTests, apzSolaris_UnistdPatch, 0 },
6827 { zSolaris_WidecName, zSolaris_WidecList,
6828 apzSolaris_WidecMachs,
6829 SOLARIS_WIDEC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6830 aSolaris_WidecTests, apzSolaris_WidecPatch, 0 },
6832 { zStatsswtchName, zStatsswtchList,
6834 STATSSWTCH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6835 aStatsswtchTests, apzStatsswtchPatch, 0 },
6837 { zStdio_Stdarg_HName, zStdio_Stdarg_HList,
6838 apzStdio_Stdarg_HMachs,
6839 STDIO_STDARG_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6840 aStdio_Stdarg_HTests, apzStdio_Stdarg_HPatch, 0 },
6842 { zStdio_Va_ListName, zStdio_Va_ListList,
6843 apzStdio_Va_ListMachs,
6844 STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY,
6845 aStdio_Va_ListTests, apzStdio_Va_ListPatch, 0 },
6847 { zStrict_Ansi_NotName, zStrict_Ansi_NotList,
6848 apzStrict_Ansi_NotMachs,
6849 STRICT_ANSI_NOT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6850 aStrict_Ansi_NotTests, apzStrict_Ansi_NotPatch, 0 },
6852 { zStrict_Ansi_Not_CtdName, zStrict_Ansi_Not_CtdList,
6853 apzStrict_Ansi_Not_CtdMachs,
6854 STRICT_ANSI_NOT_CTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6855 aStrict_Ansi_Not_CtdTests, apzStrict_Ansi_Not_CtdPatch, 0 },
6857 { zStrict_Ansi_OnlyName, zStrict_Ansi_OnlyList,
6858 apzStrict_Ansi_OnlyMachs,
6859 STRICT_ANSI_ONLY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6860 aStrict_Ansi_OnlyTests, apzStrict_Ansi_OnlyPatch, 0 },
6862 { zStruct_FileName, zStruct_FileList,
6863 apzStruct_FileMachs,
6864 STRUCT_FILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6865 aStruct_FileTests, apzStruct_FilePatch, 0 },
6867 { zStruct_SockaddrName, zStruct_SockaddrList,
6868 apzStruct_SockaddrMachs,
6869 STRUCT_SOCKADDR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6870 aStruct_SockaddrTests, apzStruct_SockaddrPatch, 0 },
6872 { zSun_Auth_ProtoName, zSun_Auth_ProtoList,
6873 apzSun_Auth_ProtoMachs,
6874 SUN_AUTH_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6875 aSun_Auth_ProtoTests, apzSun_Auth_ProtoPatch, 0 },
6877 { zSun_Bogus_IfdefName, zSun_Bogus_IfdefList,
6878 apzSun_Bogus_IfdefMachs,
6879 SUN_BOGUS_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6880 aSun_Bogus_IfdefTests, apzSun_Bogus_IfdefPatch, 0 },
6882 { zSun_CatmacroName, zSun_CatmacroList,
6883 apzSun_CatmacroMachs,
6884 SUN_CATMACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6885 aSun_CatmacroTests, apzSun_CatmacroPatch, 0 },
6887 { zSun_MallocName, zSun_MallocList,
6889 SUN_MALLOC_TEST_CT, FD_MACH_ONLY,
6890 aSun_MallocTests, apzSun_MallocPatch, 0 },
6892 { zSun_Rusers_SemiName, zSun_Rusers_SemiList,
6893 apzSun_Rusers_SemiMachs,
6894 SUN_RUSERS_SEMI_TEST_CT, FD_MACH_ONLY,
6895 aSun_Rusers_SemiTests, apzSun_Rusers_SemiPatch, 0 },
6897 { zSun_SignalName, zSun_SignalList,
6899 SUN_SIGNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6900 aSun_SignalTests, apzSun_SignalPatch, 0 },
6902 { zSunos_Matherr_DeclName, zSunos_Matherr_DeclList,
6903 apzSunos_Matherr_DeclMachs,
6904 SUNOS_MATHERR_DECL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6905 aSunos_Matherr_DeclTests, apzSunos_Matherr_DeclPatch, 0 },
6907 { zSunos_StrlenName, zSunos_StrlenList,
6908 apzSunos_StrlenMachs,
6909 SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6910 aSunos_StrlenTests, apzSunos_StrlenPatch, 0 },
6912 { zSvr4__PName, zSvr4__PList,
6914 SVR4__P_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6915 aSvr4__PTests, apzSvr4__PPatch, 0 },
6917 { zSvr4_Disable_OptName, zSvr4_Disable_OptList,
6918 apzSvr4_Disable_OptMachs,
6919 SVR4_DISABLE_OPT_TEST_CT, FD_MACH_ONLY,
6920 aSvr4_Disable_OptTests, apzSvr4_Disable_OptPatch, 0 },
6922 { zSvr4_GetcwdName, zSvr4_GetcwdList,
6923 apzSvr4_GetcwdMachs,
6924 SVR4_GETCWD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6925 aSvr4_GetcwdTests, apzSvr4_GetcwdPatch, 0 },
6927 { zSvr4_ProfilName, zSvr4_ProfilList,
6928 apzSvr4_ProfilMachs,
6929 SVR4_PROFIL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6930 aSvr4_ProfilTests, apzSvr4_ProfilPatch, 0 },
6932 { zSysv68_StringName, zSysv68_StringList,
6933 apzSysv68_StringMachs,
6934 SYSV68_STRING_TEST_CT, FD_MACH_ONLY,
6935 aSysv68_StringTests, apzSysv68_StringPatch, 0 },
6937 { zSysz_Stdlib_For_SunName, zSysz_Stdlib_For_SunList,
6938 apzSysz_Stdlib_For_SunMachs,
6939 SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6940 aSysz_Stdlib_For_SunTests, apzSysz_Stdlib_For_SunPatch, 0 },
6942 { zThread_KeywordName, zThread_KeywordList,
6943 apzThread_KeywordMachs,
6944 THREAD_KEYWORD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6945 aThread_KeywordTests, apzThread_KeywordPatch, 0 },
6947 { zTinfo_CplusplusName, zTinfo_CplusplusList,
6948 apzTinfo_CplusplusMachs,
6949 TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6950 aTinfo_CplusplusTests, apzTinfo_CplusplusPatch, 0 },
6952 { zUltrix_Atexit_ParamName, zUltrix_Atexit_ParamList,
6953 apzUltrix_Atexit_ParamMachs,
6954 ULTRIX_ATEXIT_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6955 aUltrix_Atexit_ParamTests, apzUltrix_Atexit_ParamPatch, 0 },
6957 { zUltrix_Atof_ParamName, zUltrix_Atof_ParamList,
6958 apzUltrix_Atof_ParamMachs,
6959 ULTRIX_ATOF_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6960 aUltrix_Atof_ParamTests, apzUltrix_Atof_ParamPatch, 0 },
6962 { zUltrix_ConstName, zUltrix_ConstList,
6963 apzUltrix_ConstMachs,
6964 ULTRIX_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6965 aUltrix_ConstTests, apzUltrix_ConstPatch, 0 },
6967 { zUltrix_Const2Name, zUltrix_Const2List,
6968 apzUltrix_Const2Machs,
6969 ULTRIX_CONST2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6970 aUltrix_Const2Tests, apzUltrix_Const2Patch, 0 },
6972 { zUltrix_Fix_FixprotoName, zUltrix_Fix_FixprotoList,
6973 apzUltrix_Fix_FixprotoMachs,
6974 ULTRIX_FIX_FIXPROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6975 aUltrix_Fix_FixprotoTests, apzUltrix_Fix_FixprotoPatch, 0 },
6977 { zUltrix_IfdefName, zUltrix_IfdefList,
6978 apzUltrix_IfdefMachs,
6979 ULTRIX_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6980 aUltrix_IfdefTests, apzUltrix_IfdefPatch, 0 },
6982 { zUltrix_Math_IfdefName, zUltrix_Math_IfdefList,
6983 apzUltrix_Math_IfdefMachs,
6984 ULTRIX_MATH_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
6985 aUltrix_Math_IfdefTests, apzUltrix_Math_IfdefPatch, 0 },
6987 { zUltrix_Nested_IoctlName, zUltrix_Nested_IoctlList,
6988 apzUltrix_Nested_IoctlMachs,
6989 ULTRIX_NESTED_IOCTL_TEST_CT, FD_MACH_ONLY,
6990 aUltrix_Nested_IoctlTests, apzUltrix_Nested_IoctlPatch, 0 },
6992 { zUltrix_Nested_SvcName, zUltrix_Nested_SvcList,
6993 apzUltrix_Nested_SvcMachs,
6994 ULTRIX_NESTED_SVC_TEST_CT, FD_MACH_ONLY,
6995 aUltrix_Nested_SvcTests, apzUltrix_Nested_SvcPatch, 0 },
6997 { zUltrix_StatName, zUltrix_StatList,
6998 apzUltrix_StatMachs,
6999 ULTRIX_STAT_TEST_CT, FD_MACH_ONLY,
7000 aUltrix_StatTests, apzUltrix_StatPatch, 0 },
7002 { zUltrix_StaticName, zUltrix_StaticList,
7003 apzUltrix_StaticMachs,
7004 ULTRIX_STATIC_TEST_CT, FD_MACH_ONLY,
7005 aUltrix_StaticTests, apzUltrix_StaticPatch, 0 },
7007 { zUltrix_StringsName, zUltrix_StringsList,
7008 apzUltrix_StringsMachs,
7009 ULTRIX_STRINGS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7010 aUltrix_StringsTests, apzUltrix_StringsPatch, 0 },
7012 { zUndefine_NullName, zUndefine_NullList,
7013 apzUndefine_NullMachs,
7014 UNDEFINE_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7015 aUndefine_NullTests, apzUndefine_NullPatch, 0 },
7017 { zUnicosmk_RestrictName, zUnicosmk_RestrictList,
7018 apzUnicosmk_RestrictMachs,
7019 UNICOSMK_RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7020 aUnicosmk_RestrictTests, apzUnicosmk_RestrictPatch, 0 },
7022 { zUw7_Byteorder_FixName, zUw7_Byteorder_FixList,
7023 apzUw7_Byteorder_FixMachs,
7024 UW7_BYTEORDER_FIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7025 aUw7_Byteorder_FixTests, apzUw7_Byteorder_FixPatch, 0 },
7027 { zVa_I960_MacroName, zVa_I960_MacroList,
7028 apzVa_I960_MacroMachs,
7029 VA_I960_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7030 aVa_I960_MacroTests, apzVa_I960_MacroPatch, 0 },
7032 { zVoid_NullName, zVoid_NullList,
7034 VOID_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7035 aVoid_NullTests, apzVoid_NullPatch, 0 },
7037 { zVxworks_Gcc_ProblemName, zVxworks_Gcc_ProblemList,
7038 apzVxworks_Gcc_ProblemMachs,
7039 VXWORKS_GCC_PROBLEM_TEST_CT, FD_MACH_ONLY,
7040 aVxworks_Gcc_ProblemTests, apzVxworks_Gcc_ProblemPatch, 0 },
7042 { zVxworks_Needs_VxtypesName, zVxworks_Needs_VxtypesList,
7043 apzVxworks_Needs_VxtypesMachs,
7044 VXWORKS_NEEDS_VXTYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7045 aVxworks_Needs_VxtypesTests, apzVxworks_Needs_VxtypesPatch, 0 },
7047 { zVxworks_Needs_VxworksName, zVxworks_Needs_VxworksList,
7048 apzVxworks_Needs_VxworksMachs,
7049 VXWORKS_NEEDS_VXWORKS_TEST_CT, FD_MACH_ONLY,
7050 aVxworks_Needs_VxworksTests, apzVxworks_Needs_VxworksPatch, 0 },
7052 { zVxworks_TimeName, zVxworks_TimeList,
7053 apzVxworks_TimeMachs,
7054 VXWORKS_TIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7055 aVxworks_TimeTests, apzVxworks_TimePatch, 0 },
7057 { zWindiss_Math1Name, zWindiss_Math1List,
7058 apzWindiss_Math1Machs,
7059 WINDISS_MATH1_TEST_CT, FD_MACH_ONLY,
7060 aWindiss_Math1Tests, apzWindiss_Math1Patch, 0 },
7062 { zWindiss_Math2Name, zWindiss_Math2List,
7063 apzWindiss_Math2Machs,
7064 WINDISS_MATH2_TEST_CT, FD_MACH_ONLY,
7065 aWindiss_Math2Tests, apzWindiss_Math2Patch, 0 },
7067 { zWindiss_ValistName, zWindiss_ValistList,
7068 apzWindiss_ValistMachs,
7069 WINDISS_VALIST_TEST_CT, FD_MACH_ONLY,
7070 aWindiss_ValistTests, apzWindiss_ValistPatch, 0 },
7072 { zX11_ClassName, zX11_ClassList,
7074 X11_CLASS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7075 aX11_ClassTests, apzX11_ClassPatch, 0 },
7077 { zX11_Class_UsageName, zX11_Class_UsageList,
7078 apzX11_Class_UsageMachs,
7079 X11_CLASS_USAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7080 aX11_Class_UsageTests, apzX11_Class_UsagePatch, 0 },
7082 { zX11_NewName, zX11_NewList,
7084 X11_NEW_TEST_CT, FD_MACH_ONLY,
7085 aX11_NewTests, apzX11_NewPatch, 0 },
7087 { zX11_SprintfName, zX11_SprintfList,
7088 apzX11_SprintfMachs,
7089 X11_SPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
7090 aX11_SprintfTests, apzX11_SprintfPatch, 0 }