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