]> git.ipfire.org Git - thirdparty/gcc.git/blame - fixincludes/fixincl.x
builtins.c (expand_builtin_sync_operation, [...]): Care for extending CONST_INTs...
[thirdparty/gcc.git] / fixincludes / fixincl.x
CommitLineData
8882ac3a
BK
1/* -*- buffer-read-only: t -*- vi: set ro:
2 *
3 * DO NOT EDIT THIS FILE (fixincl.x)
4 *
613698c0 5 * It has been AutoGen-ed Monday February 5, 2007 at 05:19:14 PM PST
8882ac3a
BK
6 * From the definitions inclhack.def
7 * and the template file fixincl
8 */
613698c0 9/* DO NOT SVN-MERGE THIS FILE, EITHER Mon Feb 5 17:19:14 PST 2007
8882ac3a
BK
10 *
11 * You must regenerate it. Use the ./genfixes script.
06bbab1b 12 *
8882ac3a
BK
13 *
14 * This is part of the fixincl program used to install modified versions of
15 * certain ANSI-incompatible system header files which are fixed to work
16 * correctly with ANSI C and placed in a directory that GNU C will search.
06bbab1b 17 *
502e2a2d 18 * This file contains 207 fixup descriptions.
06bbab1b 19 *
8d8d5752 20 * See README for more information.
06bbab1b 21 *
8d8d5752 22 * inclhack copyright (c) 1998, 1999, 2000, 2001
3be1fb72 23 * The Free Software Foundation, Inc.
be02fa1a 24 *
dac32862 25 * inclhack is free software.
06bbab1b
BK
26 *
27 * You may redistribute it and/or modify it under the terms of the
28 * GNU General Public License, as published by the Free Software
401be4b6
BK
29 * Foundation; either version 2 of the License, or (at your option)
30 * any later version.
06bbab1b
BK
31 *
32 * inclhack is distributed in the hope that it will be useful,
33 * but WITHOUT ANY WARRANTY; without even the implied warranty of
34 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
35 * See the GNU General Public License for more details.
36 *
37 * You should have received a copy of the GNU General Public License
401be4b6
BK
38 * along with inclhack. If not, write to:
39 * The Free Software Foundation, Inc.,
40 * 51 Franklin Street, Fifth Floor
41 * Boston, MA 02110-1301, USA.
3be1fb72
ZW
42 */
43
246e0bd8
GK
44/* * * * * * * * * * * * * * * * * * * * * * * * * *
45 *
46 * Description of Aab_Darwin7_9_Long_Double_Funcs fix
47 */
48tSCC zAab_Darwin7_9_Long_Double_FuncsName[] =
49 "AAB_darwin7_9_long_double_funcs";
50
51/*
52 * File name selection pattern
53 */
54tSCC zAab_Darwin7_9_Long_Double_FuncsList[] =
401be4b6 55 "architecture/ppc/math.h\0";
246e0bd8
GK
56/*
57 * Machine/OS name selection pattern
58 */
59tSCC* apzAab_Darwin7_9_Long_Double_FuncsMachs[] = {
60 "*-*-darwin7.9*",
61 (const char*)NULL };
62
63/*
64 * content bypass pattern - skip fix if pattern found
65 */
66tSCC zAab_Darwin7_9_Long_Double_FuncsBypass0[] =
67 "powl";
68
69#define AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT 1
70static tTestDesc aAab_Darwin7_9_Long_Double_FuncsTests[] = {
71 { TT_NEGREP, zAab_Darwin7_9_Long_Double_FuncsBypass0, (regex_t*)NULL }, };
72
73/*
74 * Fix Command Arguments for Aab_Darwin7_9_Long_Double_Funcs
75 */
76static const char* apzAab_Darwin7_9_Long_Double_FuncsPatch[] = {
77"/* This file prototypes the long double functions available on Mac OS\n\
78 10.3.9. */\n\
79#ifndef __MATH__\n\
bf73f6d2
AP
80# undef __APPLE_CC__\n\
81# define __APPLE_CC__ 1345\n\
246e0bd8 82# include_next <architecture/ppc/math.h>\n\
bf73f6d2
AP
83# undef __APPLE_CC__\n\
84# define __APPLE_CC__ 1\n\
246e0bd8
GK
85# ifndef __LIBMLDBL_COMPAT\n\
86# ifdef __LONG_DOUBLE_128__\n\
87# define __LIBMLDBL_COMPAT(sym) __asm(\"_\" #sym \"$LDBL128\")\n\
88# else\n\
89# define __LIBMLDBL_COMPAT(sym)\n\
90# endif /* __LONG_DOUBLE_128__ */\n\
91# endif /* __LIBMLDBL_COMPAT */\n\
92# ifdef __cplusplus\n\
93 extern \"C\" {\n\
94# endif\n\
95 extern long double acosl( long double ) __LIBMLDBL_COMPAT(acosl);\n\
96 extern long double asinl( long double ) __LIBMLDBL_COMPAT(asinl);\n\
97 extern long double atanl( long double ) __LIBMLDBL_COMPAT(atanl);\n\
98 extern long double atan2l( long double, long double ) __LIBMLDBL_COMPAT(atan2l);\n\
99 extern long double cosl( long double ) __LIBMLDBL_COMPAT(cosl);\n\
100 extern long double sinl( long double ) __LIBMLDBL_COMPAT(sinl);\n\
101 extern long double tanl( long double ) __LIBMLDBL_COMPAT(tanl);\n\
102 extern long double acoshl( long double ) __LIBMLDBL_COMPAT(acoshl);\n\
103 extern long double asinhl( long double ) __LIBMLDBL_COMPAT(asinhl);\n\
104 extern long double atanhl( long double ) __LIBMLDBL_COMPAT(atanhl);\n\
105 extern long double coshl( long double ) __LIBMLDBL_COMPAT(coshl);\n\
106 extern long double sinhl( long double ) __LIBMLDBL_COMPAT(sinhl);\n\
107 extern long double tanhl( long double ) __LIBMLDBL_COMPAT(tanhl);\n\
108 extern long double expl( long double ) __LIBMLDBL_COMPAT(expl);\n\
109 extern long double exp2l( long double ) __LIBMLDBL_COMPAT(exp2l);\n\
110 extern long double expm1l( long double ) __LIBMLDBL_COMPAT(expm1l);\n\
111 extern long double logl( long double ) __LIBMLDBL_COMPAT(logl);\n\
112 extern long double log10l( long double ) __LIBMLDBL_COMPAT(log10l);\n\
113 extern long double log2l( long double ) __LIBMLDBL_COMPAT(log2l);\n\
114 extern long double log1pl( long double ) __LIBMLDBL_COMPAT(log1pl);\n\
115 extern long double logbl( long double ) __LIBMLDBL_COMPAT(logbl);\n\
116 extern long double modfl( long double, long double * ) __LIBMLDBL_COMPAT(modfl);\n\
117 extern long double ldexpl( long double, int ) __LIBMLDBL_COMPAT(ldexpl);\n\
118 extern long double frexpl( long double, int * ) __LIBMLDBL_COMPAT(frexpl);\n\
119 extern int ilogbl( long double ) __LIBMLDBL_COMPAT(ilogbl);\n\
120 extern long double scalbnl( long double, int ) __LIBMLDBL_COMPAT(scalbnl);\n\
121 extern long double scalblnl( long double, long int ) __LIBMLDBL_COMPAT(scalblnl);\n\
122 extern long double fabsl( long double ) __LIBMLDBL_COMPAT(fabsl);\n\
123 extern long double cbrtl( long double ) __LIBMLDBL_COMPAT(cbrtl);\n\
124 extern long double hypotl( long double, long double ) __LIBMLDBL_COMPAT(hypotl);\n\
125 extern long double powl( long double, long double ) __LIBMLDBL_COMPAT(powl);\n\
126 extern long double sqrtl( long double ) __LIBMLDBL_COMPAT(sqrtl);\n\
127 extern long double erfl( long double ) __LIBMLDBL_COMPAT(erfl);\n\
128 extern long double erfcl( long double ) __LIBMLDBL_COMPAT(erfcl);\n\
129 extern long double lgammal( long double ) __LIBMLDBL_COMPAT(lgammal);\n\
130 extern long double tgammal( long double ) __LIBMLDBL_COMPAT(tgammal);\n\
131 extern long double ceill( long double ) __LIBMLDBL_COMPAT(ceill);\n\
132 extern long double floorl( long double ) __LIBMLDBL_COMPAT(floorl);\n\
133 extern long double nearbyintl( long double ) __LIBMLDBL_COMPAT(nearbyintl);\n\
134 extern long double rintl( long double ) __LIBMLDBL_COMPAT(rintl);\n\
135 extern long int lrintl( long double ) __LIBMLDBL_COMPAT(lrintl);\n\
136 extern long long int llrintl( long double ) __LIBMLDBL_COMPAT(llrintl);\n\
137 extern long double roundl( long double ) __LIBMLDBL_COMPAT(roundl);\n\
138 extern long int lroundl( long double ) __LIBMLDBL_COMPAT(lroundl);\n\
139 extern long long int llroundl( long double ) __LIBMLDBL_COMPAT(llroundl);\n\
140 extern long double truncl( long double ) __LIBMLDBL_COMPAT(truncl);\n\
141 extern long double fmodl( long double, long double) __LIBMLDBL_COMPAT(fmodl);\n\
142 extern long double remainderl( long double, long double ) __LIBMLDBL_COMPAT(remainderl);\n\
143 extern long double remquol( long double, long double, int * ) __LIBMLDBL_COMPAT(remquol);\n\
144 extern long double copysignl( long double, long double ) __LIBMLDBL_COMPAT(copysignl);\n\
145 extern long double nanl( const char * ) __LIBMLDBL_COMPAT(nanl);\n\
146 extern long double nextafterl( long double, long double ) __LIBMLDBL_COMPAT(nextafterl);\n\
147 extern long double nexttowardl( long double, long double ) __LIBMLDBL_COMPAT(nexttowardl);\n\
148 extern long double fdiml( long double, long double ) __LIBMLDBL_COMPAT(fdiml);\n\
149 extern long double fmaxl( long double, long double ) __LIBMLDBL_COMPAT(fmaxl);\n\
150 extern long double fminl( long double, long double ) __LIBMLDBL_COMPAT(fminl);\n\
151 extern long double fmal( long double, long double, long double ) __LIBMLDBL_COMPAT(fmal);\n\
152# ifdef __cplusplus\n\
153 }\n\
154# endif\n\
155#endif /* __MATH__ */",
156 (char*)NULL };
157
158/* * * * * * * * * * * * * * * * * * * * * * * * * *
159 *
160 * Description of Aab_Darwin7_9_Long_Double_Funcs_2 fix
161 */
162tSCC zAab_Darwin7_9_Long_Double_Funcs_2Name[] =
163 "AAB_darwin7_9_long_double_funcs_2";
164
165/*
166 * File name selection pattern
167 */
168tSCC zAab_Darwin7_9_Long_Double_Funcs_2List[] =
401be4b6 169 "math.h\0";
246e0bd8
GK
170/*
171 * Machine/OS name selection pattern
172 */
173tSCC* apzAab_Darwin7_9_Long_Double_Funcs_2Machs[] = {
174 "*-*-darwin7.9*",
175 (const char*)NULL };
176
177/*
178 * content selection pattern - do fix if pattern found
179 */
180tSCC zAab_Darwin7_9_Long_Double_Funcs_2Select0[] =
181 "#include[ \\t]+\\\"";
182
183#define AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_TEST_CT 1
184static tTestDesc aAab_Darwin7_9_Long_Double_Funcs_2Tests[] = {
185 { TT_EGREP, zAab_Darwin7_9_Long_Double_Funcs_2Select0, (regex_t*)NULL }, };
186
187/*
188 * Fix Command Arguments for Aab_Darwin7_9_Long_Double_Funcs_2
189 */
190static const char* apzAab_Darwin7_9_Long_Double_Funcs_2Patch[] = {
191 "format",
192 "%1<%2.h>",
193 "([ \\t]*#[ \\t]*include[ \\t]+)\"([a-z0-9/]+)\\.h\"",
194 (char*)NULL };
195
8aeb3b0e
BK
196/* * * * * * * * * * * * * * * * * * * * * * * * * *
197 *
d7eb5a45 198 * Description of Aab_Fd_Zero_Asm_Posix_Types_H fix
8aeb3b0e 199 */
d7eb5a45 200tSCC zAab_Fd_Zero_Asm_Posix_Types_HName[] =
3be1fb72
ZW
201 "AAB_fd_zero_asm_posix_types_h";
202
8aeb3b0e
BK
203/*
204 * File name selection pattern
205 */
d7eb5a45 206tSCC zAab_Fd_Zero_Asm_Posix_Types_HList[] =
401be4b6 207 "asm/posix_types.h\0";
8aeb3b0e
BK
208/*
209 * Machine/OS name selection pattern
210 */
d7eb5a45 211tSCC* apzAab_Fd_Zero_Asm_Posix_Types_HMachs[] = {
57119aa9 212 "i[34567]86-*-linux*",
c5984b7b 213 (const char*)NULL };
8aeb3b0e
BK
214
215/*
d7eb5a45 216 * content bypass pattern - skip fix if pattern found
8aeb3b0e 217 */
d7eb5a45
ZW
218tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass0[] =
219 "} while";
0f45f0f5
JM
220tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass1[] =
221 "x86_64";
d7eb5a45 222
0f45f0f5 223#define AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT 2
3af556f7 224static tTestDesc aAab_Fd_Zero_Asm_Posix_Types_HTests[] = {
0f45f0f5
JM
225 { TT_NEGREP, zAab_Fd_Zero_Asm_Posix_Types_HBypass0, (regex_t*)NULL },
226 { TT_NEGREP, zAab_Fd_Zero_Asm_Posix_Types_HBypass1, (regex_t*)NULL }, };
d7eb5a45
ZW
227
228/*
229 * Fix Command Arguments for Aab_Fd_Zero_Asm_Posix_Types_H
230 */
3af556f7 231static const char* apzAab_Fd_Zero_Asm_Posix_Types_HPatch[] = {
d7eb5a45
ZW
232"/* This file fixes a bug in the __FD_ZERO macro\n\
233 for older versions of the Linux kernel. */\n\
8aeb3b0e
BK
234#ifndef _POSIX_TYPES_H_WRAPPER\n\
235#include <features.h>\n\
dac32862 236 #include_next <asm/posix_types.h>\n\n\
8aeb3b0e
BK
237#if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
238#undef __FD_ZERO\n\
d7eb5a45
ZW
239#define __FD_ZERO(fdsetp) \\\n\
240 do { \\\n\
241 int __d0, __d1; \\\n\
8f2e963b
LR
242__asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
243: \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
244: \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
245 \"1\" ((__kernel_fd_set *) (fdsetp)) :\"memory\"); \\\n\
d7eb5a45 246 } while (0)\n\
dac32862 247#endif\n\n\
8aeb3b0e 248#define _POSIX_TYPES_H_WRAPPER\n\
8f2e963b 249#endif /* _POSIX_TYPES_H_WRAPPER */",
8aeb3b0e
BK
250 (char*)NULL };
251
252/* * * * * * * * * * * * * * * * * * * * * * * * * *
253 *
d7eb5a45 254 * Description of Aab_Fd_Zero_Gnu_Types_H fix
8aeb3b0e 255 */
d7eb5a45 256tSCC zAab_Fd_Zero_Gnu_Types_HName[] =
3be1fb72
ZW
257 "AAB_fd_zero_gnu_types_h";
258
8aeb3b0e
BK
259/*
260 * File name selection pattern
261 */
d7eb5a45 262tSCC zAab_Fd_Zero_Gnu_Types_HList[] =
401be4b6 263 "gnu/types.h\0";
8aeb3b0e
BK
264/*
265 * Machine/OS name selection pattern
266 */
d7eb5a45 267tSCC* apzAab_Fd_Zero_Gnu_Types_HMachs[] = {
57119aa9 268 "i[34567]86-*-linux*",
c5984b7b 269 (const char*)NULL };
d7eb5a45 270#define AAB_FD_ZERO_GNU_TYPES_H_TEST_CT 0
d7eb5a45 271#define aAab_Fd_Zero_Gnu_Types_HTests (tTestDesc*)NULL
8aeb3b0e
BK
272
273/*
d7eb5a45 274 * Fix Command Arguments for Aab_Fd_Zero_Gnu_Types_H
8aeb3b0e 275 */
3af556f7 276static const char* apzAab_Fd_Zero_Gnu_Types_HPatch[] = {
d7eb5a45 277"/* This file fixes a bug in the __FD_ZERO macro present in glibc 1.x. */\n\
8aeb3b0e
BK
278#ifndef _TYPES_H_WRAPPER\n\
279#include <features.h>\n\
b0588013 280#include_next <gnu/types.h>\n\n\
8aeb3b0e
BK
281#if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
282#undef __FD_ZERO\n\
7673b71c
BK
283# define __FD_ZERO(fdsetp) \\\n\
284 do { \\\n\
285 int __d0, __d1; \\\n\
286 __asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
287 : \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
288 : \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
289 \"1\" ((__fd_set *) (fdsetp)) :\"memory\"); \\\n\
d7eb5a45 290 } while (0)\n\
dac32862 291#endif\n\n\
8aeb3b0e 292#define _TYPES_H_WRAPPER\n\
b0588013 293#endif /* _TYPES_H_WRAPPER */",
8aeb3b0e
BK
294 (char*)NULL };
295
296/* * * * * * * * * * * * * * * * * * * * * * * * * *
297 *
d7eb5a45 298 * Description of Aab_Fd_Zero_Selectbits_H fix
8aeb3b0e 299 */
d7eb5a45 300tSCC zAab_Fd_Zero_Selectbits_HName[] =
3be1fb72
ZW
301 "AAB_fd_zero_selectbits_h";
302
8aeb3b0e
BK
303/*
304 * File name selection pattern
305 */
d7eb5a45 306tSCC zAab_Fd_Zero_Selectbits_HList[] =
401be4b6 307 "selectbits.h\0";
8aeb3b0e
BK
308/*
309 * Machine/OS name selection pattern
310 */
d7eb5a45 311tSCC* apzAab_Fd_Zero_Selectbits_HMachs[] = {
57119aa9 312 "i[34567]86-*-linux*",
c5984b7b 313 (const char*)NULL };
d7eb5a45 314#define AAB_FD_ZERO_SELECTBITS_H_TEST_CT 0
d7eb5a45 315#define aAab_Fd_Zero_Selectbits_HTests (tTestDesc*)NULL
8aeb3b0e
BK
316
317/*
d7eb5a45 318 * Fix Command Arguments for Aab_Fd_Zero_Selectbits_H
8aeb3b0e 319 */
3af556f7 320static const char* apzAab_Fd_Zero_Selectbits_HPatch[] = {
d7eb5a45 321"/* This file fixes a bug in the __FD_ZERO macro present in glibc 2.0.x. */\n\
8aeb3b0e 322#ifndef _SELECTBITS_H_WRAPPER\n\
b0588013
BK
323 #include <features.h>\n\
324 #include_next <selectbits.h>\n\n\
325 #if defined(__FD_ZERO) && defined(__GLIBC__) \\\\\n\
326 && defined(__GLIBC_MINOR__) && __GLIBC__ == 2 \\\\\n\
327 && __GLIBC_MINOR__ == 0\n\
328 #undef __FD_ZERO\n\
329 #define __FD_ZERO(fdsetp) \\\\\n\
330 do { \\\\\n\
331 int __d0, __d1; \\\\\n\
332 __asm__ __volatile__ (\"cld; rep; stosl\" \\\\\n\
333 : \"=&c\" (__d0), \"=&D\" (__d1) \\\\\n\
334 : \"a\" (0), \"0\" (sizeof (__fd_set) \\\\\n\
335 / sizeof (__fd_mask)), \\\\\n\
336 \"1\" ((__fd_mask *) (fdsetp)) \\\\\n\
337 : \"memory\"); \\\\\n\
338 } while (0)\n\
339 #endif\n\n\
340 #define _SELECTBITS_H_WRAPPER\n\
341#endif /* _SELECTBITS_H_WRAPPER */",
8aeb3b0e
BK
342 (char*)NULL };
343
0fca111b
SE
344/* * * * * * * * * * * * * * * * * * * * * * * * * *
345 *
346 * Description of Aab_Solaris_Sys_Varargs_H fix
347 */
348tSCC zAab_Solaris_Sys_Varargs_HName[] =
349 "AAB_solaris_sys_varargs_h";
350
351/*
352 * File name selection pattern
353 */
354tSCC zAab_Solaris_Sys_Varargs_HList[] =
401be4b6 355 "sys/varargs.h\0";
0fca111b
SE
356/*
357 * Machine/OS name selection pattern
358 */
359tSCC* apzAab_Solaris_Sys_Varargs_HMachs[] = {
360 "*-*-solaris*",
361 (const char*)NULL };
362#define AAB_SOLARIS_SYS_VARARGS_H_TEST_CT 0
363#define aAab_Solaris_Sys_Varargs_HTests (tTestDesc*)NULL
364
365/*
366 * Fix Command Arguments for Aab_Solaris_Sys_Varargs_H
367 */
368static const char* apzAab_Solaris_Sys_Varargs_HPatch[] = {
369"#ifdef __STDC__\n\
b0588013 370 #include <stdarg.h>\n\
0fca111b 371#else\n\
b0588013
BK
372 #include <varargs.h>\n\
373#endif",
0fca111b
SE
374 (char*)NULL };
375
b51207a4
ZW
376/* * * * * * * * * * * * * * * * * * * * * * * * * *
377 *
378 * Description of Aab_Sun_Memcpy fix
379 */
b51207a4 380tSCC zAab_Sun_MemcpyName[] =
3be1fb72
ZW
381 "AAB_sun_memcpy";
382
b51207a4
ZW
383/*
384 * File name selection pattern
385 */
386tSCC zAab_Sun_MemcpyList[] =
401be4b6 387 "memory.h\0";
b51207a4
ZW
388/*
389 * Machine/OS name selection pattern
390 */
391#define apzAab_Sun_MemcpyMachs (const char**)NULL
392
393/*
394 * content selection pattern - do fix if pattern found
395 */
396tSCC zAab_Sun_MemcpySelect0[] =
397 "/\\*\t@\\(#\\)(head/memory.h\t50.1\t |memory\\.h 1\\.[2-4] 8./../.. SMI; from S5R2 1\\.2\t)\\*/";
398
399#define AAB_SUN_MEMCPY_TEST_CT 1
3af556f7 400static tTestDesc aAab_Sun_MemcpyTests[] = {
b51207a4
ZW
401 { TT_EGREP, zAab_Sun_MemcpySelect0, (regex_t*)NULL }, };
402
403/*
404 * Fix Command Arguments for Aab_Sun_Memcpy
405 */
3af556f7 406static const char* apzAab_Sun_MemcpyPatch[] = {
b51207a4
ZW
407"/* This file was generated by fixincludes */\n\
408#ifndef __memory_h__\n\
b0588013
BK
409 #define __memory_h__\n\n\
410 #ifdef __STDC__\n\
411 extern void *memccpy();\n\
412 extern void *memchr();\n\
413 extern void *memcpy();\n\
414 extern void *memset();\n\
415 #else\n\
416 extern char *memccpy();\n\
417 extern char *memchr();\n\
418 extern char *memcpy();\n\
419 extern char *memset();\n\
420 #endif /* __STDC__ */\n\n\
421 extern int memcmp();\n\n\
422#endif /* __memory_h__ */\n\
423_EndOfHeader;\n\
424};\n\n\n\
425/*\n\
426 * Completely replace <sys/varargs.h> with a file that includes gcc's\n\
427 * stdarg.h or varargs.h files as appropriate.\n\
428 */\n\
429#ifdef SVR4\n\
430fix = {\n\
431 hackname = AAB_svr4_no_varargs;\n\
432 files = sys/varargs.h;\n\
433 replace = \"/* This file was generated by fixincludes. */\\n\"\n\
434 \"#ifndef _SYS_VARARGS_H\\n\"\n\
5ded58d0 435 \"#define _SYS_VARARGS_H\\n\\n\"\n\n\
b0588013
BK
436 \"#ifdef __STDC__\\n\"\n\
437 \"#include <stdarg.h>\\n\"\n\
438 \"#else\\n\"\n\
439 \"#include <varargs.h>\\n\"\n\
5ded58d0 440 \"#endif\\n\\n\"\n\n\
b0588013
BK
441 \"#endif /* _SYS_VARARGS_H */\\n\";\n\
442};\n\
443#endif\n\n\n\
444/*\n\
791996d1
NN
445 * Completely replace <sys/byteorder.h> with a file that implements gcc's\n\
446 * optimized byteswapping. (The original probably implemented some\n\
447 * incompatible optimized byteswapping.)\n\
b0588013
BK
448 */\n\
449fix = {\n\
450 hackname = AAB_svr4_replace_byteorder;\n\
b0588013
BK
451 mach = \"*-*-sysv4*\";\n\
452 mach = \"i[34567]86-*-sysv5*\";\n\
de0656cf 453 mach = \"i[34567]86-*-sco3.2v5*\";\n\
b0588013
BK
454 mach = \"i[34567]86-*-udk*\";\n\
455 mach = \"i[34567]86-*-solaris2.[0-4]\";\n\
456 mach = \"powerpcle-*-solaris2.[0-4]\";\n\
457 mach = \"sparc-*-solaris2.[0-4]\";\n\
791996d1 458 mach = \"i[34567]86-sequent-ptx*\";\n\
b0588013
BK
459 files = sys/byteorder.h;\n\
460 replace = <<- _EndOfHeader_\n\
461#ifndef _SYS_BYTEORDER_H\n\
dac32862 462#define _SYS_BYTEORDER_H\n\n\
19162d0e 463/* Functions to convert `short' and `long' quantities from host byte order\n\
dac32862
BK
464 to (internet) network byte order (i.e. big-endian).\n\n\
465 Written by Ron Guilmette (rfg@ncd.com).\n\n\
19162d0e 466 This isn't actually used by GCC. It is installed by fixinc.svr4.\n\n\
dac32862 467 For big-endian machines these functions are essentially no-ops.\n\n\
86765ca0 468 For little-endian machines, we define the functions using specialized\n\
dac32862 469 asm sequences in cases where doing so yields better code (e.g. i386). */\n\n\
86765ca0 470#if !defined (__GNUC__) && !defined (__GNUG__)\n\
b0588013 471 #error You lose! This file is only useful with GNU compilers.\n\
dac32862 472#endif\n\n\
86765ca0 473#ifndef __BYTE_ORDER__\n\
b0588013
BK
474 /* Byte order defines. These are as defined on UnixWare 1.1, but with\n\
475 double underscores added at the front and back. */\n\
476 #define __LITTLE_ENDIAN__ 1234\n\
477 #define __BIG_ENDIAN__ 4321\n\
478 #define __PDP_ENDIAN__ 3412\n\
dac32862 479#endif\n\n\
86765ca0 480#ifdef __STDC__\n\
b0588013
BK
481 static __inline__ unsigned long htonl (unsigned long);\n\
482 static __inline__ unsigned short htons (unsigned int);\n\
483 static __inline__ unsigned long ntohl (unsigned long);\n\
484 static __inline__ unsigned short ntohs (unsigned int);\n\
dac32862
BK
485#endif /* defined (__STDC__) */\n\n\
486#if defined (__i386__)\n\n\
b0588013
BK
487 #ifndef __BYTE_ORDER__\n\
488 #define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
489 #endif\n\n\
490 /* Convert a host long to a network long. */\n\n\
491 /* We must use a new-style function definition, so that this will also\n\
492 be valid for C++. */\n\
493 static __inline__ unsigned long\n\
494 htonl (unsigned long __arg)\n\
495 {\n\
496 register unsigned long __result;\n\n\
497 __asm__ (\"xchg%B0 %b0,%h0\n\
498 ror%L0 $16,%0\n\
499 xchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
500 return __result;\n\
501 }\n\n\
502 /* Convert a host short to a network short. */\n\n\
503 static __inline__ unsigned short\n\
504 htons (unsigned int __arg)\n\
505 {\n\
506 register unsigned short __result;\n\n\
507 __asm__ (\"xchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
508 return __result;\n\
509 }\n\n\
510#elif (defined (__ns32k__) || defined (__vax__) || defined (__arm__))\n\n\
511 #ifndef __BYTE_ORDER__\n\
512 #define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
513 #endif\n\n\
514 /* For other little-endian machines, using C code is just as efficient as\n\
515 using assembly code. */\n\n\
516 /* Convert a host long to a network long. */\n\n\
517 static __inline__ unsigned long\n\
518 htonl (unsigned long __arg)\n\
519 {\n\
520 register unsigned long __result;\n\n\
521 __result = (__arg >> 24) & 0x000000ff;\n\
522 __result |= (__arg >> 8) & 0x0000ff00;\n\
523 __result |= (__arg << 8) & 0x00ff0000;\n\
524 __result |= (__arg << 24) & 0xff000000;\n\
525 return __result;\n\
526 }\n\n\
527 /* Convert a host short to a network short. */\n\n\
528 static __inline__ unsigned short\n\
529 htons (unsigned int __arg)\n\
530 {\n\
531 register unsigned short __result;\n\n\
532 __result = (__arg << 8) & 0xff00;\n\
533 __result |= (__arg >> 8) & 0x00ff;\n\
534 return __result;\n\
535 }\n\n\
dac32862 536#else /* must be a big-endian machine */\n\n\
b0588013
BK
537 #ifndef __BYTE_ORDER__\n\
538 #define __BYTE_ORDER__ __BIG_ENDIAN__\n\
539 #endif\n\n\
540 /* Convert a host long to a network long. */\n\n\
541 static __inline__ unsigned long\n\
542 htonl (unsigned long __arg)\n\
543 {\n\
544 return __arg;\n\
545 }\n\n\
546 /* Convert a host short to a network short. */\n\n\
547 static __inline__ unsigned short\n\
548 htons (unsigned int __arg)\n\
549 {\n\
550 return __arg;\n\
551 }\n\n\
dac32862
BK
552#endif /* big-endian */\n\n\
553/* Convert a network long to a host long. */\n\n\
86765ca0
RL
554static __inline__ unsigned long\n\
555ntohl (unsigned long __arg)\n\
556{\n\
557 return htonl (__arg);\n\
dac32862
BK
558}\n\n\
559/* Convert a network short to a host short. */\n\n\
86765ca0
RL
560static __inline__ unsigned short\n\
561ntohs (unsigned int __arg)\n\
562{\n\
563 return htons (__arg);\n\
564}\n\
b0588013 565#endif",
165bfb59
BK
566 (char*)NULL };
567
568/* * * * * * * * * * * * * * * * * * * * * * * * * *
569 *
570 * Description of Aab_Ultrix_Ansi_Compat fix
571 */
572tSCC zAab_Ultrix_Ansi_CompatName[] =
573 "AAB_ultrix_ansi_compat";
574
575/*
576 * File name selection pattern
577 */
578tSCC zAab_Ultrix_Ansi_CompatList[] =
401be4b6 579 "ansi_compat.h\0";
165bfb59
BK
580/*
581 * Machine/OS name selection pattern
582 */
583#define apzAab_Ultrix_Ansi_CompatMachs (const char**)NULL
584
585/*
586 * content selection pattern - do fix if pattern found
587 */
588tSCC zAab_Ultrix_Ansi_CompatSelect0[] =
589 "ULTRIX";
590
591#define AAB_ULTRIX_ANSI_COMPAT_TEST_CT 1
592static tTestDesc aAab_Ultrix_Ansi_CompatTests[] = {
593 { TT_EGREP, zAab_Ultrix_Ansi_CompatSelect0, (regex_t*)NULL }, };
594
595/*
596 * Fix Command Arguments for Aab_Ultrix_Ansi_Compat
597 */
598static const char* apzAab_Ultrix_Ansi_CompatPatch[] = {
599"/* This file intentionally left blank. */\n",
600 (char*)NULL };
601
602/* * * * * * * * * * * * * * * * * * * * * * * * * *
603 *
604 * Description of Aab_Ultrix_Limits fix
605 */
606tSCC zAab_Ultrix_LimitsName[] =
607 "AAB_ultrix_limits";
608
609/*
610 * File name selection pattern
611 */
612tSCC zAab_Ultrix_LimitsList[] =
401be4b6 613 "limits.h\0";
165bfb59
BK
614/*
615 * Machine/OS name selection pattern
616 */
617tSCC* apzAab_Ultrix_LimitsMachs[] = {
618 "*-*-ultrix4.3",
619 (const char*)NULL };
620#define AAB_ULTRIX_LIMITS_TEST_CT 0
621#define aAab_Ultrix_LimitsTests (tTestDesc*)NULL
622
623/*
624 * Fix Command Arguments for Aab_Ultrix_Limits
625 */
626static const char* apzAab_Ultrix_LimitsPatch[] = {
627"#ifndef _LIMITS_INCLUDED\n\
b0588013
BK
628 #define _LIMITS_INCLUDED\n\
629 #include <sys/limits.h>\n\
630#endif /* _LIMITS_INCLUDED */",
165bfb59
BK
631 (char*)NULL };
632
633/* * * * * * * * * * * * * * * * * * * * * * * * * *
634 *
635 * Description of Aab_Ultrix_Memory fix
636 */
637tSCC zAab_Ultrix_MemoryName[] =
638 "AAB_ultrix_memory";
639
640/*
641 * File name selection pattern
642 */
643tSCC zAab_Ultrix_MemoryList[] =
401be4b6 644 "memory.h\0";
165bfb59
BK
645/*
646 * Machine/OS name selection pattern
647 */
648tSCC* apzAab_Ultrix_MemoryMachs[] = {
649 "*-*-ultrix4.3",
650 (const char*)NULL };
651#define AAB_ULTRIX_MEMORY_TEST_CT 0
652#define aAab_Ultrix_MemoryTests (tTestDesc*)NULL
653
654/*
655 * Fix Command Arguments for Aab_Ultrix_Memory
656 */
657static const char* apzAab_Ultrix_MemoryPatch[] = {
658"#ifndef _MEMORY_INCLUDED\n\
b0588013
BK
659 #define _MEMORY_INCLUDED\n\
660 #include <strings.h>\n\
661#endif /* _MEMORY_INCLUDED */",
165bfb59
BK
662 (char*)NULL };
663
664/* * * * * * * * * * * * * * * * * * * * * * * * * *
665 *
666 * Description of Aab_Ultrix_String fix
667 */
668tSCC zAab_Ultrix_StringName[] =
669 "AAB_ultrix_string";
670
671/*
672 * File name selection pattern
673 */
674tSCC zAab_Ultrix_StringList[] =
401be4b6 675 "string.h\0";
165bfb59
BK
676/*
677 * Machine/OS name selection pattern
678 */
679tSCC* apzAab_Ultrix_StringMachs[] = {
680 "*-*-ultrix4.3",
681 (const char*)NULL };
682#define AAB_ULTRIX_STRING_TEST_CT 0
683#define aAab_Ultrix_StringTests (tTestDesc*)NULL
684
685/*
686 * Fix Command Arguments for Aab_Ultrix_String
687 */
688static const char* apzAab_Ultrix_StringPatch[] = {
689"#ifndef _STRING_INCLUDED\n\
b0588013
BK
690 #define _STRING_INCLUDED\n\
691 #include <strings.h>\n\
692#endif /* _STRING_INCLUDED */",
bde8e564
BK
693 (char*)NULL };
694
2c82e043
GK
695/* * * * * * * * * * * * * * * * * * * * * * * * * *
696 *
697 * Description of Aix_Pthread fix
698 */
2c82e043
GK
699tSCC zAix_PthreadName[] =
700 "aix_pthread";
701
702/*
703 * File name selection pattern
704 */
705tSCC zAix_PthreadList[] =
401be4b6 706 "pthread.h\0";
2c82e043
GK
707/*
708 * Machine/OS name selection pattern
709 */
710#define apzAix_PthreadMachs (const char**)NULL
711
712/*
713 * content selection pattern - do fix if pattern found
714 */
715tSCC zAix_PthreadSelect0[] =
716 "(#define [A-Za-z_0-9]+)(\\\\\n\
717[^A-Za-z_0-9 \t\n\
718(])";
719
720#define AIX_PTHREAD_TEST_CT 1
3af556f7 721static tTestDesc aAix_PthreadTests[] = {
2c82e043
GK
722 { TT_EGREP, zAix_PthreadSelect0, (regex_t*)NULL }, };
723
724/*
725 * Fix Command Arguments for Aix_Pthread
726 */
3af556f7 727static const char* apzAix_PthreadPatch[] = {
2c82e043
GK
728 "format",
729 "%1 %2",
730 (char*)NULL };
731
732/* * * * * * * * * * * * * * * * * * * * * * * * * *
733 *
734 * Description of Aix_Sysmachine fix
735 */
2c82e043
GK
736tSCC zAix_SysmachineName[] =
737 "aix_sysmachine";
738
739/*
740 * File name selection pattern
741 */
742tSCC zAix_SysmachineList[] =
401be4b6 743 "sys/machine.h\0";
2c82e043
GK
744/*
745 * Machine/OS name selection pattern
746 */
747#define apzAix_SysmachineMachs (const char**)NULL
748
749/*
750 * content selection pattern - do fix if pattern found
751 */
752tSCC zAix_SysmachineSelect0[] =
753 "\\\\ +\n";
754
755#define AIX_SYSMACHINE_TEST_CT 1
3af556f7 756static tTestDesc aAix_SysmachineTests[] = {
2c82e043
GK
757 { TT_EGREP, zAix_SysmachineSelect0, (regex_t*)NULL }, };
758
759/*
760 * Fix Command Arguments for Aix_Sysmachine
761 */
3af556f7 762static const char* apzAix_SysmachinePatch[] = {
2c82e043
GK
763 "format",
764 "\\\n",
765 (char*)NULL };
766
5abc1f74
BK
767/* * * * * * * * * * * * * * * * * * * * * * * * * *
768 *
769 * Description of Aix_Syswait fix
770 */
06bbab1b 771tSCC zAix_SyswaitName[] =
3be1fb72
ZW
772 "aix_syswait";
773
06bbab1b
BK
774/*
775 * File name selection pattern
776 */
777tSCC zAix_SyswaitList[] =
401be4b6 778 "sys/wait.h\0";
06bbab1b
BK
779/*
780 * Machine/OS name selection pattern
781 */
782#define apzAix_SyswaitMachs (const char**)NULL
783
784/*
be02fa1a 785 * content selection pattern - do fix if pattern found
06bbab1b
BK
786 */
787tSCC zAix_SyswaitSelect0[] =
88acf854
BK
788 "^extern pid_t wait3\\(\\);\n";
789tSCC zAix_SyswaitSelect1[] =
06bbab1b
BK
790 "bos325,";
791
88acf854 792#define AIX_SYSWAIT_TEST_CT 2
3af556f7 793static tTestDesc aAix_SyswaitTests[] = {
88acf854
BK
794 { TT_EGREP, zAix_SyswaitSelect0, (regex_t*)NULL },
795 { TT_EGREP, zAix_SyswaitSelect1, (regex_t*)NULL }, };
06bbab1b
BK
796
797/*
798 * Fix Command Arguments for Aix_Syswait
799 */
3af556f7 800static const char* apzAix_SyswaitPatch[] = {
88acf854
BK
801 "format",
802 "struct rusage;\n\
803%0",
06bbab1b
BK
804 (char*)NULL };
805
d3535e80
RS
806/* * * * * * * * * * * * * * * * * * * * * * * * * *
807 *
808 * Description of Aix_Syswait_2 fix
809 */
810tSCC zAix_Syswait_2Name[] =
811 "aix_syswait_2";
812
813/*
814 * File name selection pattern
815 */
816tSCC zAix_Syswait_2List[] =
401be4b6 817 "sys/wait.h\0";
d3535e80
RS
818/*
819 * Machine/OS name selection pattern
820 */
821#define apzAix_Syswait_2Machs (const char**)NULL
822
823/*
824 * content selection pattern - do fix if pattern found
825 */
826tSCC zAix_Syswait_2Select0[] =
827 "\\? (\\(\\(\\(\\(unsigned[^)]*\\)[^)]*\\) >> [^)]*\\) \\& 0xff\\) : -1)";
828
829#define AIX_SYSWAIT_2_TEST_CT 1
830static tTestDesc aAix_Syswait_2Tests[] = {
831 { TT_EGREP, zAix_Syswait_2Select0, (regex_t*)NULL }, };
832
833/*
834 * Fix Command Arguments for Aix_Syswait_2
835 */
836static const char* apzAix_Syswait_2Patch[] = {
837 "format",
838 "? (int)%1",
839 (char*)NULL };
840
06bbab1b
BK
841/* * * * * * * * * * * * * * * * * * * * * * * * * *
842 *
5abc1f74 843 * Description of Aix_Volatile fix
06bbab1b
BK
844 */
845tSCC zAix_VolatileName[] =
3be1fb72
ZW
846 "aix_volatile";
847
06bbab1b
BK
848/*
849 * File name selection pattern
850 */
851tSCC zAix_VolatileList[] =
401be4b6 852 "sys/signal.h\0";
06bbab1b
BK
853/*
854 * Machine/OS name selection pattern
855 */
856#define apzAix_VolatileMachs (const char**)NULL
857
858/*
be02fa1a 859 * content selection pattern - do fix if pattern found
06bbab1b
BK
860 */
861tSCC zAix_VolatileSelect0[] =
862 "typedef volatile int sig_atomic_t";
863
864#define AIX_VOLATILE_TEST_CT 1
3af556f7 865static tTestDesc aAix_VolatileTests[] = {
5abc1f74 866 { TT_EGREP, zAix_VolatileSelect0, (regex_t*)NULL }, };
06bbab1b
BK
867
868/*
869 * Fix Command Arguments for Aix_Volatile
870 */
3af556f7 871static const char* apzAix_VolatilePatch[] = {
99d05d99
BK
872 "format",
873 "typedef int sig_atomic_t",
06bbab1b
BK
874 (char*)NULL };
875
a88072eb
RO
876/* * * * * * * * * * * * * * * * * * * * * * * * * *
877 *
878 * Description of Alpha___Assert fix
879 */
a88072eb
RO
880tSCC zAlpha___AssertName[] =
881 "alpha___assert";
882
883/*
884 * File name selection pattern
885 */
886tSCC zAlpha___AssertList[] =
401be4b6 887 "assert.h\0";
a88072eb
RO
888/*
889 * Machine/OS name selection pattern
890 */
891#define apzAlpha___AssertMachs (const char**)NULL
892
893/*
894 * content selection pattern - do fix if pattern found
895 */
896tSCC zAlpha___AssertSelect0[] =
897 "__assert\\(char \\*, char \\*, int\\)";
898
899#define ALPHA___ASSERT_TEST_CT 1
900static tTestDesc aAlpha___AssertTests[] = {
901 { TT_EGREP, zAlpha___AssertSelect0, (regex_t*)NULL }, };
902
903/*
904 * Fix Command Arguments for Alpha___Assert
905 */
906static const char* apzAlpha___AssertPatch[] = {
907 "format",
908 "__assert(const char *, const char *, int)",
909 (char*)NULL };
910
f8dc212b
RO
911/* * * * * * * * * * * * * * * * * * * * * * * * * *
912 *
913 * Description of Alpha___Extern_Prefix fix
914 */
915tSCC zAlpha___Extern_PrefixName[] =
916 "alpha___extern_prefix";
917
918/*
919 * File name selection pattern
920 */
fb2c2608 921#define zAlpha___Extern_PrefixList (char*)NULL
f8dc212b
RO
922/*
923 * Machine/OS name selection pattern
924 */
925tSCC* apzAlpha___Extern_PrefixMachs[] = {
fb2c2608 926 "alpha*-dec-osf*",
f8dc212b
RO
927 (const char*)NULL };
928
929/*
930 * content selection pattern - do fix if pattern found
931 */
932tSCC zAlpha___Extern_PrefixSelect0[] =
fb2c2608
RO
933 "(.*)(defined\\(__DECC\\)|def[ \t]*__DECC)[ \t]*\n\
934(#[ \t]*pragma[ \t]*extern_prefix.*)";
f8dc212b
RO
935
936#define ALPHA___EXTERN_PREFIX_TEST_CT 1
937static tTestDesc aAlpha___Extern_PrefixTests[] = {
938 { TT_EGREP, zAlpha___Extern_PrefixSelect0, (regex_t*)NULL }, };
939
940/*
941 * Fix Command Arguments for Alpha___Extern_Prefix
942 */
943static const char* apzAlpha___Extern_PrefixPatch[] = {
fb2c2608
RO
944 "format",
945 "%1 (defined(__DECC) || defined(__PRAGMA_EXTERN_PREFIX))\n\
946%3",
947 (char*)NULL };
948
949/* * * * * * * * * * * * * * * * * * * * * * * * * *
950 *
951 * Description of Alpha___Extern_Prefix_Standards fix
952 */
953tSCC zAlpha___Extern_Prefix_StandardsName[] =
954 "alpha___extern_prefix_standards";
955
956/*
957 * File name selection pattern
958 */
959tSCC zAlpha___Extern_Prefix_StandardsList[] =
401be4b6 960 "standards.h\0";
fb2c2608
RO
961/*
962 * Machine/OS name selection pattern
963 */
964tSCC* apzAlpha___Extern_Prefix_StandardsMachs[] = {
965 "alpha*-dec-osf*",
966 (const char*)NULL };
967
968/*
969 * content selection pattern - do fix if pattern found
970 */
971tSCC zAlpha___Extern_Prefix_StandardsSelect0[] =
972 ".*!defined\\(_LIBC_POLLUTION_H_\\) && !defined\\(__DECC\\)";
973
974#define ALPHA___EXTERN_PREFIX_STANDARDS_TEST_CT 1
975static tTestDesc aAlpha___Extern_Prefix_StandardsTests[] = {
976 { TT_EGREP, zAlpha___Extern_Prefix_StandardsSelect0, (regex_t*)NULL }, };
977
978/*
979 * Fix Command Arguments for Alpha___Extern_Prefix_Standards
980 */
981static const char* apzAlpha___Extern_Prefix_StandardsPatch[] = {
982 "format",
983 "%0 && !defined(__PRAGMA_EXTERN_PREFIX)",
984 (char*)NULL };
985
986/* * * * * * * * * * * * * * * * * * * * * * * * * *
987 *
988 * Description of Alpha___Extern_Prefix_Sys_Stat fix
989 */
990tSCC zAlpha___Extern_Prefix_Sys_StatName[] =
991 "alpha___extern_prefix_sys_stat";
992
993/*
994 * File name selection pattern
995 */
996tSCC zAlpha___Extern_Prefix_Sys_StatList[] =
401be4b6 997 "sys/stat.h\0sys/mount.h\0";
fb2c2608
RO
998/*
999 * Machine/OS name selection pattern
1000 */
1001tSCC* apzAlpha___Extern_Prefix_Sys_StatMachs[] = {
1002 "alpha*-dec-osf5*",
1003 (const char*)NULL };
1004
1005/*
1006 * content selection pattern - do fix if pattern found
1007 */
1008tSCC zAlpha___Extern_Prefix_Sys_StatSelect0[] =
1009 "#[ \t]*if[ \t]*defined\\(__DECC\\)";
1010
1011#define ALPHA___EXTERN_PREFIX_SYS_STAT_TEST_CT 1
1012static tTestDesc aAlpha___Extern_Prefix_Sys_StatTests[] = {
1013 { TT_EGREP, zAlpha___Extern_Prefix_Sys_StatSelect0, (regex_t*)NULL }, };
1014
1015/*
1016 * Fix Command Arguments for Alpha___Extern_Prefix_Sys_Stat
1017 */
1018static const char* apzAlpha___Extern_Prefix_Sys_StatPatch[] = {
f8dc212b
RO
1019 "format",
1020 "%0 || defined(__PRAGMA_EXTERN_PREFIX)",
1021 (char*)NULL };
1022
aaa4d130
RO
1023/* * * * * * * * * * * * * * * * * * * * * * * * * *
1024 *
1025 * Description of Alpha_Assert fix
1026 */
1027tSCC zAlpha_AssertName[] =
1028 "alpha_assert";
1029
1030/*
1031 * File name selection pattern
1032 */
1033tSCC zAlpha_AssertList[] =
401be4b6 1034 "assert.h\0";
aaa4d130
RO
1035/*
1036 * Machine/OS name selection pattern
1037 */
1038#define apzAlpha_AssertMachs (const char**)NULL
1039
1040/*
1041 * content selection pattern - do fix if pattern found
1042 */
1043tSCC zAlpha_AssertSelect0[] =
1044 "(#define assert\\(EX\\).*)\\(\\(int\\) \\(EX\\)\\)";
1045
1046#define ALPHA_ASSERT_TEST_CT 1
1047static tTestDesc aAlpha_AssertTests[] = {
1048 { TT_EGREP, zAlpha_AssertSelect0, (regex_t*)NULL }, };
1049
1050/*
1051 * Fix Command Arguments for Alpha_Assert
1052 */
1053static const char* apzAlpha_AssertPatch[] = {
1054 "format",
1055 "%1(EX)",
1056 (char*)NULL };
1057
f6c930a3
RO
1058/* * * * * * * * * * * * * * * * * * * * * * * * * *
1059 *
1060 * Description of Alpha_Bad_Lval fix
1061 */
1062tSCC zAlpha_Bad_LvalName[] =
1063 "alpha_bad_lval";
1064
1065/*
1066 * File name selection pattern
1067 */
1068#define zAlpha_Bad_LvalList (char*)NULL
1069/*
1070 * Machine/OS name selection pattern
1071 */
1072tSCC* apzAlpha_Bad_LvalMachs[] = {
1073 "alpha*-dec-osf*",
1074 (const char*)NULL };
1075
1076/*
1077 * content selection pattern - do fix if pattern found
1078 */
1079tSCC zAlpha_Bad_LvalSelect0[] =
1080 "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";
1081
1082#define ALPHA_BAD_LVAL_TEST_CT 1
1083static tTestDesc aAlpha_Bad_LvalTests[] = {
1084 { TT_EGREP, zAlpha_Bad_LvalSelect0, (regex_t*)NULL }, };
1085
1086/*
1087 * Fix Command Arguments for Alpha_Bad_Lval
1088 */
1089static const char* apzAlpha_Bad_LvalPatch[] = { "sed",
1090 "-e", "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
1091 (char*)NULL };
1092
06bbab1b
BK
1093/* * * * * * * * * * * * * * * * * * * * * * * * * *
1094 *
5abc1f74 1095 * Description of Alpha_Getopt fix
06bbab1b
BK
1096 */
1097tSCC zAlpha_GetoptName[] =
3be1fb72
ZW
1098 "alpha_getopt";
1099
06bbab1b
BK
1100/*
1101 * File name selection pattern
1102 */
1103tSCC zAlpha_GetoptList[] =
401be4b6 1104 "stdio.h\0stdlib.h\0";
06bbab1b
BK
1105/*
1106 * Machine/OS name selection pattern
1107 */
1108#define apzAlpha_GetoptMachs (const char**)NULL
1109
1110/*
be02fa1a 1111 * content selection pattern - do fix if pattern found
06bbab1b
BK
1112 */
1113tSCC zAlpha_GetoptSelect0[] =
87b6d63a 1114 "getopt\\(int, char \\*\\[\\], *char \\*\\)";
06bbab1b
BK
1115
1116#define ALPHA_GETOPT_TEST_CT 1
3af556f7 1117static tTestDesc aAlpha_GetoptTests[] = {
5abc1f74 1118 { TT_EGREP, zAlpha_GetoptSelect0, (regex_t*)NULL }, };
06bbab1b
BK
1119
1120/*
1121 * Fix Command Arguments for Alpha_Getopt
1122 */
3af556f7 1123static const char* apzAlpha_GetoptPatch[] = {
99d05d99
BK
1124 "format",
1125 "getopt(int, char *const[], const char *)",
06bbab1b
BK
1126 (char*)NULL };
1127
1128/* * * * * * * * * * * * * * * * * * * * * * * * * *
1129 *
5abc1f74 1130 * Description of Alpha_Parens fix
06bbab1b
BK
1131 */
1132tSCC zAlpha_ParensName[] =
3be1fb72
ZW
1133 "alpha_parens";
1134
06bbab1b
BK
1135/*
1136 * File name selection pattern
1137 */
1138tSCC zAlpha_ParensList[] =
401be4b6 1139 "sym.h\0";
06bbab1b
BK
1140/*
1141 * Machine/OS name selection pattern
1142 */
1143#define apzAlpha_ParensMachs (const char**)NULL
1144
1145/*
be02fa1a 1146 * content selection pattern - do fix if pattern found
06bbab1b
BK
1147 */
1148tSCC zAlpha_ParensSelect0[] =
1149 "#ifndef\\(__mips64\\)";
1150
1151#define ALPHA_PARENS_TEST_CT 1
3af556f7 1152static tTestDesc aAlpha_ParensTests[] = {
5abc1f74 1153 { TT_EGREP, zAlpha_ParensSelect0, (regex_t*)NULL }, };
06bbab1b
BK
1154
1155/*
1156 * Fix Command Arguments for Alpha_Parens
1157 */
3af556f7 1158static const char* apzAlpha_ParensPatch[] = {
99d05d99
BK
1159 "format",
1160 "#ifndef __mips64",
06bbab1b
BK
1161 (char*)NULL };
1162
2a4e8ebc
RO
1163/* * * * * * * * * * * * * * * * * * * * * * * * * *
1164 *
1165 * Description of Alpha_Pthread fix
1166 */
1167tSCC zAlpha_PthreadName[] =
1168 "alpha_pthread";
1169
1170/*
1171 * File name selection pattern
1172 */
1173tSCC zAlpha_PthreadList[] =
401be4b6 1174 "pthread.h\0";
2a4e8ebc
RO
1175/*
1176 * Machine/OS name selection pattern
1177 */
1178tSCC* apzAlpha_PthreadMachs[] = {
1179 "alpha*-dec-osf*",
1180 (const char*)NULL };
1181
1182/*
1183 * content selection pattern - do fix if pattern found
1184 */
1185tSCC zAlpha_PthreadSelect0[] =
fb2c2608 1186 "((#[ \t]*if)([ \t]*defined[ \t]*\\(_PTHREAD_ENV_DECC\\)|def _PTHREAD_ENV_DECC)(.*))\n\
2a4e8ebc
RO
1187(#[ \t]*define _PTHREAD_USE_PTDNAM_)";
1188
1189#define ALPHA_PTHREAD_TEST_CT 1
1190static tTestDesc aAlpha_PthreadTests[] = {
1191 { TT_EGREP, zAlpha_PthreadSelect0, (regex_t*)NULL }, };
1192
1193/*
1194 * Fix Command Arguments for Alpha_Pthread
1195 */
1196static const char* apzAlpha_PthreadPatch[] = {
1197 "format",
fb2c2608
RO
1198 "%2 defined (_PTHREAD_ENV_DECC)%4 || defined (__PRAGMA_EXTERN_PREFIX)\n\
1199%5",
2a4e8ebc
RO
1200 (char*)NULL };
1201
821281db
RO
1202/* * * * * * * * * * * * * * * * * * * * * * * * * *
1203 *
1204 * Description of Alpha_Pthread_Gcc fix
1205 */
1206tSCC zAlpha_Pthread_GccName[] =
1207 "alpha_pthread_gcc";
1208
1209/*
1210 * File name selection pattern
1211 */
1212tSCC zAlpha_Pthread_GccList[] =
401be4b6 1213 "pthread.h\0";
821281db
RO
1214/*
1215 * Machine/OS name selection pattern
1216 */
1217tSCC* apzAlpha_Pthread_GccMachs[] = {
1218 "alpha*-dec-osf*",
1219 (const char*)NULL };
1220
1221/*
1222 * content selection pattern - do fix if pattern found
1223 */
1224tSCC zAlpha_Pthread_GccSelect0[] =
1225 "#else\n\
1226# error <pthread.h>: unrecognized compiler.";
1227
1228#define ALPHA_PTHREAD_GCC_TEST_CT 1
1229static tTestDesc aAlpha_Pthread_GccTests[] = {
1230 { TT_EGREP, zAlpha_Pthread_GccSelect0, (regex_t*)NULL }, };
1231
1232/*
1233 * Fix Command Arguments for Alpha_Pthread_Gcc
1234 */
1235static const char* apzAlpha_Pthread_GccPatch[] = {
1236 "format",
1237 "#elif defined (__GNUC__)\n\
1238# define _PTHREAD_ENV_GCC\n\
1239%0",
1240 (char*)NULL };
1241
1fda9d7b
RS
1242/* * * * * * * * * * * * * * * * * * * * * * * * * *
1243 *
1244 * Description of Alpha_Pthread_Init fix
1245 */
1246tSCC zAlpha_Pthread_InitName[] =
1247 "alpha_pthread_init";
1248
1249/*
1250 * File name selection pattern
1251 */
1252tSCC zAlpha_Pthread_InitList[] =
401be4b6 1253 "pthread.h\0";
1fda9d7b
RS
1254/*
1255 * Machine/OS name selection pattern
1256 */
1257tSCC* apzAlpha_Pthread_InitMachs[] = {
1258 "alpha*-dec-osf*",
1259 (const char*)NULL };
1260
1261/*
1262 * content selection pattern - do fix if pattern found
1263 */
1264tSCC zAlpha_Pthread_InitSelect0[] =
743348ea 1265 " \\* @\\(#\\).RCSfile: pthread\\.h,v \\$ .Revision: 1\\.1\\.33\\.21 \\$ \\(DEC\\) .Date: 2000/08/15 15:30:13 \\$";
1fda9d7b
RS
1266
1267#define ALPHA_PTHREAD_INIT_TEST_CT 1
1268static tTestDesc aAlpha_Pthread_InitTests[] = {
1269 { TT_EGREP, zAlpha_Pthread_InitSelect0, (regex_t*)NULL }, };
1270
1271/*
1272 * Fix Command Arguments for Alpha_Pthread_Init
1273 */
1274static const char* apzAlpha_Pthread_InitPatch[] = { "sed",
1275 "-e", "s@MVALID\\(.*\\)A}@MVALID\\1A, 0, 0, 0, 0, 0, 0 }@\n\
1276s@MVALID\\(.*\\)_}@MVALID\\1_, 0, 0, 0, 0 }@\n\
1277s@CVALID\\(.*\\)A}@CVALID\\1A, 0, 0, 0, 0 }@\n\
1278s@CVALID\\(.*\\)_}@CVALID\\1_, 0, 0 }@\n\
1279s@WVALID\\(.*\\)A}@WVALID\\1A, 0, 0, 0, 0, 0, 0, 0, 0, 0 }@\n\
1280s@WVALID\\(.*\\)_}@WVALID\\1_, 0, 0, 0, 0, 0, 0, 0 }@\n",
1281 (char*)NULL };
1282
06bbab1b
BK
1283/* * * * * * * * * * * * * * * * * * * * * * * * * *
1284 *
5abc1f74 1285 * Description of Alpha_Sbrk fix
06bbab1b
BK
1286 */
1287tSCC zAlpha_SbrkName[] =
3be1fb72
ZW
1288 "alpha_sbrk";
1289
06bbab1b
BK
1290/*
1291 * File name selection pattern
1292 */
1293tSCC zAlpha_SbrkList[] =
401be4b6 1294 "unistd.h\0";
06bbab1b
BK
1295/*
1296 * Machine/OS name selection pattern
1297 */
1298#define apzAlpha_SbrkMachs (const char**)NULL
1299
1300/*
be02fa1a 1301 * content selection pattern - do fix if pattern found
06bbab1b
BK
1302 */
1303tSCC zAlpha_SbrkSelect0[] =
1304 "char[ \t]*\\*[\t ]*sbrk[ \t]*\\(";
1305
1306#define ALPHA_SBRK_TEST_CT 1
3af556f7 1307static tTestDesc aAlpha_SbrkTests[] = {
5abc1f74 1308 { TT_EGREP, zAlpha_SbrkSelect0, (regex_t*)NULL }, };
06bbab1b
BK
1309
1310/*
1311 * Fix Command Arguments for Alpha_Sbrk
1312 */
3af556f7 1313static const char* apzAlpha_SbrkPatch[] = {
99d05d99
BK
1314 "format",
1315 "void *sbrk(",
06bbab1b
BK
1316 (char*)NULL };
1317
f502cbff
RO
1318/* * * * * * * * * * * * * * * * * * * * * * * * * *
1319 *
1320 * Description of Alpha_Wchar fix
1321 */
1322tSCC zAlpha_WcharName[] =
1323 "alpha_wchar";
1324
1325/*
1326 * File name selection pattern
1327 */
1328tSCC zAlpha_WcharList[] =
401be4b6 1329 "wchar.h\0";
f502cbff
RO
1330/*
1331 * Machine/OS name selection pattern
1332 */
1333tSCC* apzAlpha_WcharMachs[] = {
1334 "alpha*-dec-osf4*",
1335 (const char*)NULL };
1336
1337/*
1338 * content selection pattern - do fix if pattern found
1339 */
1340tSCC zAlpha_WcharSelect0[] =
1341 "#define wcstok wcstok_r";
1342
1343#define ALPHA_WCHAR_TEST_CT 1
1344static tTestDesc aAlpha_WcharTests[] = {
1345 { TT_EGREP, zAlpha_WcharSelect0, (regex_t*)NULL }, };
1346
1347/*
1348 * Fix Command Arguments for Alpha_Wchar
1349 */
1350static const char* apzAlpha_WcharPatch[] = { "sed",
1351 "-e", "s@#define wcstok wcstok_r@extern wchar_t *wcstok __((wchar_t *, const wchar_t *, wchar_t **)) __asm__(\"wcstok_r\");@",
1352 "-e", "s@#define wcsftime __wcsftime_isoc@extern size_t wcsftime __((wchar_t *, size_t, const wchar_t *, const struct tm *)) __asm__(\"__wcsftime_isoc\");@",
1353 (char*)NULL };
1354
06bbab1b
BK
1355/* * * * * * * * * * * * * * * * * * * * * * * * * *
1356 *
cd64831f 1357 * Description of Avoid_Bool_Define fix
06bbab1b 1358 */
cd64831f
BK
1359tSCC zAvoid_Bool_DefineName[] =
1360 "avoid_bool_define";
3be1fb72 1361
06bbab1b
BK
1362/*
1363 * File name selection pattern
1364 */
cd64831f 1365tSCC zAvoid_Bool_DefineList[] =
401be4b6 1366 "curses.h\0curses_colr/curses.h\0term.h\0tinfo.h\0";
06bbab1b
BK
1367/*
1368 * Machine/OS name selection pattern
1369 */
cd64831f 1370#define apzAvoid_Bool_DefineMachs (const char**)NULL
5c0d5b94
ZW
1371
1372/*
1373 * content selection pattern - do fix if pattern found
1374 */
cd64831f
BK
1375tSCC zAvoid_Bool_DefineSelect0[] =
1376 "#[ \t]*define[ \t]+bool[ \t]";
1377
a8228686
BK
1378/*
1379 * content bypass pattern - skip fix if pattern found
1380 */
1381tSCC zAvoid_Bool_DefineBypass0[] =
bf66f7b0 1382 "__cplusplus";
a8228686
BK
1383
1384#define AVOID_BOOL_DEFINE_TEST_CT 2
3af556f7 1385static tTestDesc aAvoid_Bool_DefineTests[] = {
a8228686 1386 { TT_NEGREP, zAvoid_Bool_DefineBypass0, (regex_t*)NULL },
cd64831f 1387 { TT_EGREP, zAvoid_Bool_DefineSelect0, (regex_t*)NULL }, };
5c0d5b94
ZW
1388
1389/*
cd64831f 1390 * Fix Command Arguments for Avoid_Bool_Define
5c0d5b94 1391 */
3af556f7 1392static const char* apzAvoid_Bool_DefinePatch[] = {
cd64831f
BK
1393 "format",
1394 "#ifndef __cplusplus\n\
1395%0\n\
1396#endif",
1397 "^[ \t]*#[ \t]*define[ \t]+bool[ \t].*",
1398 (char*)NULL };
5c0d5b94 1399
cd64831f
BK
1400/* * * * * * * * * * * * * * * * * * * * * * * * * *
1401 *
1402 * Description of Avoid_Bool_Type fix
1403 */
cd64831f
BK
1404tSCC zAvoid_Bool_TypeName[] =
1405 "avoid_bool_type";
06bbab1b
BK
1406
1407/*
cd64831f 1408 * File name selection pattern
06bbab1b 1409 */
cd64831f 1410tSCC zAvoid_Bool_TypeList[] =
401be4b6 1411 "curses.h\0curses_colr/curses.h\0term.h\0tinfo.h\0";
cd64831f
BK
1412/*
1413 * Machine/OS name selection pattern
1414 */
1415#define apzAvoid_Bool_TypeMachs (const char**)NULL
1416
1417/*
1418 * content selection pattern - do fix if pattern found
1419 */
1420tSCC zAvoid_Bool_TypeSelect0[] =
1421 "^[ \t]*typedef[ \t].*[ \t]bool[ \t]*;";
1422
a8228686
BK
1423/*
1424 * content bypass pattern - skip fix if pattern found
1425 */
1426tSCC zAvoid_Bool_TypeBypass0[] =
bf66f7b0 1427 "__cplusplus";
a8228686
BK
1428
1429#define AVOID_BOOL_TYPE_TEST_CT 2
3af556f7 1430static tTestDesc aAvoid_Bool_TypeTests[] = {
a8228686 1431 { TT_NEGREP, zAvoid_Bool_TypeBypass0, (regex_t*)NULL },
cd64831f
BK
1432 { TT_EGREP, zAvoid_Bool_TypeSelect0, (regex_t*)NULL }, };
1433
1434/*
1435 * Fix Command Arguments for Avoid_Bool_Type
1436 */
3af556f7 1437static const char* apzAvoid_Bool_TypePatch[] = {
cd64831f
BK
1438 "format",
1439 "#ifndef __cplusplus\n\
1440%0\n\
1441#endif",
06bbab1b
BK
1442 (char*)NULL };
1443
8b4c8a86
MM
1444/* * * * * * * * * * * * * * * * * * * * * * * * * *
1445 *
1446 * Description of Avoid_Wchar_T_Type fix
1447 */
8b4c8a86
MM
1448tSCC zAvoid_Wchar_T_TypeName[] =
1449 "avoid_wchar_t_type";
1450
1451/*
1452 * File name selection pattern
1453 */
1454#define zAvoid_Wchar_T_TypeList (char*)NULL
1455/*
1456 * Machine/OS name selection pattern
1457 */
1458#define apzAvoid_Wchar_T_TypeMachs (const char**)NULL
1459
1460/*
1461 * content selection pattern - do fix if pattern found
1462 */
1463tSCC zAvoid_Wchar_T_TypeSelect0[] =
1464 "^[ \t]*typedef[ \t].*[ \t]wchar_t[ \t]*;";
1465
5ded58d0
ZW
1466/*
1467 * content bypass pattern - skip fix if pattern found
1468 */
1469tSCC zAvoid_Wchar_T_TypeBypass0[] =
4146d8d0 1470 "__cplusplus";
5ded58d0
ZW
1471tSCC zAvoid_Wchar_T_TypeBypass1[] =
1472 "_LINUX_NLS_H";
1473tSCC zAvoid_Wchar_T_TypeBypass2[] =
1474 "XFree86: xc/lib/X11/Xlib\\.h";
1475
1476#define AVOID_WCHAR_T_TYPE_TEST_CT 4
8b4c8a86 1477static tTestDesc aAvoid_Wchar_T_TypeTests[] = {
5ded58d0
ZW
1478 { TT_NEGREP, zAvoid_Wchar_T_TypeBypass0, (regex_t*)NULL },
1479 { TT_NEGREP, zAvoid_Wchar_T_TypeBypass1, (regex_t*)NULL },
1480 { TT_NEGREP, zAvoid_Wchar_T_TypeBypass2, (regex_t*)NULL },
8b4c8a86
MM
1481 { TT_EGREP, zAvoid_Wchar_T_TypeSelect0, (regex_t*)NULL }, };
1482
1483/*
1484 * Fix Command Arguments for Avoid_Wchar_T_Type
1485 */
1486static const char* apzAvoid_Wchar_T_TypePatch[] = {
1487 "format",
1488 "#ifndef __cplusplus\n\
1489%0\n\
1490#endif",
8b4c8a86
MM
1491 (char*)NULL };
1492
06bbab1b
BK
1493/* * * * * * * * * * * * * * * * * * * * * * * * * *
1494 *
5abc1f74 1495 * Description of Bad_Struct_Term fix
06bbab1b
BK
1496 */
1497tSCC zBad_Struct_TermName[] =
3be1fb72
ZW
1498 "bad_struct_term";
1499
06bbab1b
BK
1500/*
1501 * File name selection pattern
1502 */
1503tSCC zBad_Struct_TermList[] =
401be4b6 1504 "curses.h\0";
06bbab1b
BK
1505/*
1506 * Machine/OS name selection pattern
1507 */
1508#define apzBad_Struct_TermMachs (const char**)NULL
1509
1510/*
be02fa1a 1511 * content selection pattern - do fix if pattern found
06bbab1b
BK
1512 */
1513tSCC zBad_Struct_TermSelect0[] =
1514 "^[ \t]*typedef[ \t]+struct[ \t]+term[ \t]*;";
1515
1516#define BAD_STRUCT_TERM_TEST_CT 1
3af556f7 1517static tTestDesc aBad_Struct_TermTests[] = {
5abc1f74 1518 { TT_EGREP, zBad_Struct_TermSelect0, (regex_t*)NULL }, };
06bbab1b
BK
1519
1520/*
1521 * Fix Command Arguments for Bad_Struct_Term
1522 */
3af556f7 1523static const char* apzBad_Struct_TermPatch[] = {
cd64831f
BK
1524 "format",
1525 "struct term;",
06bbab1b
BK
1526 (char*)NULL };
1527
1528/* * * * * * * * * * * * * * * * * * * * * * * * * *
1529 *
5abc1f74 1530 * Description of Badquote fix
06bbab1b
BK
1531 */
1532tSCC zBadquoteName[] =
3be1fb72
ZW
1533 "badquote";
1534
06bbab1b
BK
1535/*
1536 * File name selection pattern
1537 */
1538tSCC zBadquoteList[] =
401be4b6 1539 "sundev/vuid_event.h\0";
06bbab1b
BK
1540/*
1541 * Machine/OS name selection pattern
1542 */
1543#define apzBadquoteMachs (const char**)NULL
cd64831f
BK
1544
1545/*
1546 * content selection pattern - do fix if pattern found
1547 */
1548tSCC zBadquoteSelect0[] =
1549 "doesn't";
1550
1551#define BADQUOTE_TEST_CT 1
3af556f7 1552static tTestDesc aBadquoteTests[] = {
cd64831f 1553 { TT_EGREP, zBadquoteSelect0, (regex_t*)NULL }, };
06bbab1b
BK
1554
1555/*
1556 * Fix Command Arguments for Badquote
1557 */
3af556f7 1558static const char* apzBadquotePatch[] = {
cd64831f
BK
1559 "format",
1560 "does not",
06bbab1b
BK
1561 (char*)NULL };
1562
06bbab1b
BK
1563/* * * * * * * * * * * * * * * * * * * * * * * * * *
1564 *
5abc1f74 1565 * Description of Broken_Assert_Stdio fix
06bbab1b
BK
1566 */
1567tSCC zBroken_Assert_StdioName[] =
3be1fb72
ZW
1568 "broken_assert_stdio";
1569
06bbab1b
BK
1570/*
1571 * File name selection pattern
1572 */
1573tSCC zBroken_Assert_StdioList[] =
401be4b6 1574 "assert.h\0";
06bbab1b
BK
1575/*
1576 * Machine/OS name selection pattern
1577 */
1578#define apzBroken_Assert_StdioMachs (const char**)NULL
1579
1580/*
be02fa1a 1581 * content selection pattern - do fix if pattern found
06bbab1b
BK
1582 */
1583tSCC zBroken_Assert_StdioSelect0[] =
1584 "stderr";
1585
1586/*
be02fa1a 1587 * content bypass pattern - skip fix if pattern found
06bbab1b
BK
1588 */
1589tSCC zBroken_Assert_StdioBypass0[] =
87b6d63a 1590 "include.*stdio\\.h";
06bbab1b
BK
1591
1592#define BROKEN_ASSERT_STDIO_TEST_CT 2
3af556f7 1593static tTestDesc aBroken_Assert_StdioTests[] = {
5abc1f74
BK
1594 { TT_NEGREP, zBroken_Assert_StdioBypass0, (regex_t*)NULL },
1595 { TT_EGREP, zBroken_Assert_StdioSelect0, (regex_t*)NULL }, };
06bbab1b
BK
1596
1597/*
1598 * Fix Command Arguments for Broken_Assert_Stdio
1599 */
3af556f7 1600static const char* apzBroken_Assert_StdioPatch[] = {
ba8fcfc3
BK
1601 "wrap",
1602 "#include <stdio.h>\n",
06bbab1b
BK
1603 (char*)NULL };
1604
1605/* * * * * * * * * * * * * * * * * * * * * * * * * *
1606 *
5abc1f74 1607 * Description of Broken_Assert_Stdlib fix
06bbab1b
BK
1608 */
1609tSCC zBroken_Assert_StdlibName[] =
3be1fb72
ZW
1610 "broken_assert_stdlib";
1611
06bbab1b
BK
1612/*
1613 * File name selection pattern
1614 */
1615tSCC zBroken_Assert_StdlibList[] =
401be4b6 1616 "assert.h\0";
06bbab1b
BK
1617/*
1618 * Machine/OS name selection pattern
1619 */
1620#define apzBroken_Assert_StdlibMachs (const char**)NULL
1621
1622/*
be02fa1a 1623 * content selection pattern - do fix if pattern found
06bbab1b
BK
1624 */
1625tSCC zBroken_Assert_StdlibSelect0[] =
1626 "exit *\\(|abort *\\(";
1627
1628/*
be02fa1a 1629 * content bypass pattern - skip fix if pattern found
06bbab1b
BK
1630 */
1631tSCC zBroken_Assert_StdlibBypass0[] =
87b6d63a 1632 "include.*stdlib\\.h";
06bbab1b
BK
1633
1634#define BROKEN_ASSERT_STDLIB_TEST_CT 2
3af556f7 1635static tTestDesc aBroken_Assert_StdlibTests[] = {
5abc1f74
BK
1636 { TT_NEGREP, zBroken_Assert_StdlibBypass0, (regex_t*)NULL },
1637 { TT_EGREP, zBroken_Assert_StdlibSelect0, (regex_t*)NULL }, };
06bbab1b
BK
1638
1639/*
1640 * Fix Command Arguments for Broken_Assert_Stdlib
1641 */
3af556f7 1642static const char* apzBroken_Assert_StdlibPatch[] = {
ba8fcfc3
BK
1643 "wrap",
1644 "#ifdef __cplusplus\n\
1645#include <stdlib.h>\n\
1646#endif\n",
06bbab1b
BK
1647 (char*)NULL };
1648
72b9c7fb
BK
1649/* * * * * * * * * * * * * * * * * * * * * * * * * *
1650 *
1651 * Description of Broken_Cabs fix
1652 */
72b9c7fb
BK
1653tSCC zBroken_CabsName[] =
1654 "broken_cabs";
1655
1656/*
1657 * File name selection pattern
1658 */
1659tSCC zBroken_CabsList[] =
401be4b6 1660 "math.h\0architecture/*/math.h\0";
72b9c7fb
BK
1661/*
1662 * Machine/OS name selection pattern
1663 */
1664#define apzBroken_CabsMachs (const char**)NULL
1665
1666/*
1667 * content selection pattern - do fix if pattern found
1668 */
1669tSCC zBroken_CabsSelect0[] =
11f4453b 1670 "^extern[ \t]+double[ \t]+cabs";
72b9c7fb
BK
1671
1672#define BROKEN_CABS_TEST_CT 1
3af556f7 1673static tTestDesc aBroken_CabsTests[] = {
72b9c7fb
BK
1674 { TT_EGREP, zBroken_CabsSelect0, (regex_t*)NULL }, };
1675
1676/*
1677 * Fix Command Arguments for Broken_Cabs
1678 */
a942e89f
DF
1679static const char* apzBroken_CabsPatch[] = { "sed",
1680 "-e", "s/^extern[ \t]*double[ \t]*cabs[ \t]*([^\\)]*);//",
1681 "-e", "s/^extern[ \t]*long[ \t]*double[ \t]*cabsl[ \t]*([^\\)]*);//",
72b9c7fb
BK
1682 (char*)NULL };
1683
bf73f6d2
AP
1684/* * * * * * * * * * * * * * * * * * * * * * * * * *
1685 *
1686 * Description of Broken_Nan fix
1687 */
1688tSCC zBroken_NanName[] =
1689 "broken_nan";
1690
1691/*
1692 * File name selection pattern
1693 */
1694tSCC zBroken_NanList[] =
401be4b6 1695 "architecture/ppc/math.h\0architecture/*/math.h\0";
bf73f6d2
AP
1696/*
1697 * Machine/OS name selection pattern
1698 */
1699#define apzBroken_NanMachs (const char**)NULL
1700
1701/*
1702 * content selection pattern - do fix if pattern found
1703 */
1704tSCC zBroken_NanSelect0[] =
1705 "#if defined(__APPLE_CC__) && (__APPLE_CC__ >= 1345)";
1706
1707/*
1708 * content bypass pattern - skip fix if pattern found
1709 */
1710tSCC zBroken_NanBypass0[] =
1711 "powl";
1712
1713#define BROKEN_NAN_TEST_CT 2
1714static tTestDesc aBroken_NanTests[] = {
1715 { TT_NEGREP, zBroken_NanBypass0, (regex_t*)NULL },
1716 { TT_EGREP, zBroken_NanSelect0, (regex_t*)NULL }, };
1717
1718/*
1719 * Fix Command Arguments for Broken_Nan
1720 */
1721static const char* apzBroken_NanPatch[] = {
1722 "format",
1723 "#if 1",
1724 (char*)NULL };
1725
8882ac3a
BK
1726/* * * * * * * * * * * * * * * * * * * * * * * * * *
1727 *
1728 * Description of Bsd_Stdio_Attrs_Conflict fix
1729 */
1730tSCC zBsd_Stdio_Attrs_ConflictName[] =
1731 "bsd_stdio_attrs_conflict";
1732
1733/*
1734 * File name selection pattern
1735 */
1736tSCC zBsd_Stdio_Attrs_ConflictList[] =
401be4b6 1737 "stdio.h\0";
8882ac3a
BK
1738/*
1739 * Machine/OS name selection pattern
1740 */
1741tSCC* apzBsd_Stdio_Attrs_ConflictMachs[] = {
1742 "*-*-*bsd*",
1743 "*-*-*darwin*",
1744 (const char*)NULL };
1745
1746/*
1747 * content selection pattern - do fix if pattern found
1748 */
1749tSCC zBsd_Stdio_Attrs_ConflictSelect0[] =
1750 "^#define[ \t]*vfscanf[ \t]*__svfscanf[ \t]*$";
1751
1752#define BSD_STDIO_ATTRS_CONFLICT_TEST_CT 1
1753static tTestDesc aBsd_Stdio_Attrs_ConflictTests[] = {
1754 { TT_EGREP, zBsd_Stdio_Attrs_ConflictSelect0, (regex_t*)NULL }, };
1755
1756/*
1757 * Fix Command Arguments for Bsd_Stdio_Attrs_Conflict
1758 */
1759static const char* apzBsd_Stdio_Attrs_ConflictPatch[] = {
1760 "format",
1761 "#define _BSD_STRING(_BSD_X) _BSD_STRINGX(_BSD_X)\n\
1762#define _BSD_STRINGX(_BSD_X) #_BSD_X\n\
1763int vfscanf(FILE *, const char *, __builtin_va_list) __asm__ (_BSD_STRING(__USER_LABEL_PREFIX__) \"__svfscanf\");",
1764 (char*)NULL };
1765
48bd9529
BK
1766/* * * * * * * * * * * * * * * * * * * * * * * * * *
1767 *
79589c4d 1768 * Description of Ctrl_Quotes_Def fix
48bd9529 1769 */
79589c4d
BK
1770tSCC zCtrl_Quotes_DefName[] =
1771 "ctrl_quotes_def";
3be1fb72 1772
48bd9529
BK
1773/*
1774 * File name selection pattern
1775 */
79589c4d 1776#define zCtrl_Quotes_DefList (char*)NULL
48bd9529
BK
1777/*
1778 * Machine/OS name selection pattern
1779 */
79589c4d 1780#define apzCtrl_Quotes_DefMachs (const char**)NULL
48bd9529
BK
1781
1782/*
79589c4d 1783 * content selection pattern - do fix if pattern found
48bd9529 1784 */
79589c4d 1785tSCC zCtrl_Quotes_DefSelect0[] =
cf6d5133 1786 "define[ \t]+[A-Z0-9_]+CTRL\\([a-zA-Z][,)]";
79589c4d
BK
1787
1788#define CTRL_QUOTES_DEF_TEST_CT 1
3af556f7 1789static tTestDesc aCtrl_Quotes_DefTests[] = {
79589c4d
BK
1790 { TT_EGREP, zCtrl_Quotes_DefSelect0, (regex_t*)NULL }, };
1791
1792/*
1793 * Fix Command Arguments for Ctrl_Quotes_Def
1794 */
3af556f7 1795static const char* apzCtrl_Quotes_DefPatch[] = {
79589c4d
BK
1796 "char_macro_def",
1797 "CTRL",
48bd9529
BK
1798 (char*)NULL };
1799
06bbab1b
BK
1800/* * * * * * * * * * * * * * * * * * * * * * * * * *
1801 *
79589c4d 1802 * Description of Ctrl_Quotes_Use fix
06bbab1b 1803 */
79589c4d
BK
1804tSCC zCtrl_Quotes_UseName[] =
1805 "ctrl_quotes_use";
3be1fb72 1806
06bbab1b
BK
1807/*
1808 * File name selection pattern
1809 */
79589c4d 1810#define zCtrl_Quotes_UseList (char*)NULL
06bbab1b
BK
1811/*
1812 * Machine/OS name selection pattern
1813 */
79589c4d 1814#define apzCtrl_Quotes_UseMachs (const char**)NULL
06bbab1b
BK
1815
1816/*
79589c4d 1817 * content selection pattern - do fix if pattern found
06bbab1b 1818 */
79589c4d
BK
1819tSCC zCtrl_Quotes_UseSelect0[] =
1820 "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+CTRL[ \t]*\\( *[^,']";
1821
1822#define CTRL_QUOTES_USE_TEST_CT 1
3af556f7 1823static tTestDesc aCtrl_Quotes_UseTests[] = {
79589c4d
BK
1824 { TT_EGREP, zCtrl_Quotes_UseSelect0, (regex_t*)NULL }, };
1825
1826/*
1827 * Fix Command Arguments for Ctrl_Quotes_Use
1828 */
3af556f7 1829static const char* apzCtrl_Quotes_UsePatch[] = {
79589c4d
BK
1830 "char_macro_use",
1831 "CTRL",
06bbab1b
BK
1832 (char*)NULL };
1833
06bbab1b
BK
1834/* * * * * * * * * * * * * * * * * * * * * * * * * *
1835 *
79589c4d 1836 * Description of Cxx_Unready fix
06bbab1b 1837 */
79589c4d
BK
1838tSCC zCxx_UnreadyName[] =
1839 "cxx_unready";
3be1fb72 1840
06bbab1b
BK
1841/*
1842 * File name selection pattern
1843 */
79589c4d 1844tSCC zCxx_UnreadyList[] =
401be4b6 1845 "sys/mman.h\0rpc/types.h\0";
06bbab1b
BK
1846/*
1847 * Machine/OS name selection pattern
1848 */
79589c4d 1849#define apzCxx_UnreadyMachs (const char**)NULL
06bbab1b
BK
1850
1851/*
be02fa1a 1852 * content selection pattern - do fix if pattern found
06bbab1b 1853 */
79589c4d
BK
1854tSCC zCxx_UnreadySelect0[] =
1855 "[^#]+malloc.*;";
06bbab1b 1856
79589c4d
BK
1857/*
1858 * content bypass pattern - skip fix if pattern found
1859 */
1860tSCC zCxx_UnreadyBypass0[] =
1861 "\"C\"|__BEGIN_DECLS";
1862
1863#define CXX_UNREADY_TEST_CT 2
3af556f7 1864static tTestDesc aCxx_UnreadyTests[] = {
79589c4d
BK
1865 { TT_NEGREP, zCxx_UnreadyBypass0, (regex_t*)NULL },
1866 { TT_EGREP, zCxx_UnreadySelect0, (regex_t*)NULL }, };
06bbab1b
BK
1867
1868/*
79589c4d 1869 * Fix Command Arguments for Cxx_Unready
06bbab1b 1870 */
3af556f7 1871static const char* apzCxx_UnreadyPatch[] = {
79589c4d
BK
1872 "wrap",
1873 "#ifdef __cplusplus\n\
1874extern \"C\" {\n\
1875#endif\n",
1876 "#ifdef __cplusplus\n\
1877}\n\
1878#endif\n",
06bbab1b
BK
1879 (char*)NULL };
1880
005c1a13
GK
1881/* * * * * * * * * * * * * * * * * * * * * * * * * *
1882 *
1883 * Description of Darwin_Gcc4_Breakage fix
1884 */
1885tSCC zDarwin_Gcc4_BreakageName[] =
1886 "darwin_gcc4_breakage";
1887
1888/*
1889 * File name selection pattern
1890 */
1891tSCC zDarwin_Gcc4_BreakageList[] =
401be4b6 1892 "AvailabilityMacros.h\0";
005c1a13
GK
1893/*
1894 * Machine/OS name selection pattern
1895 */
1896tSCC* apzDarwin_Gcc4_BreakageMachs[] = {
1897 "*-*-darwin*",
1898 (const char*)NULL };
1899
1900/*
1901 * content selection pattern - do fix if pattern found
1902 */
1903tSCC zDarwin_Gcc4_BreakageSelect0[] =
1904 "\\(__GNUC__ >= 3\\) && \\(__GNUC_MINOR__ >= 1\\)";
1905
1906#define DARWIN_GCC4_BREAKAGE_TEST_CT 1
1907static tTestDesc aDarwin_Gcc4_BreakageTests[] = {
1908 { TT_EGREP, zDarwin_Gcc4_BreakageSelect0, (regex_t*)NULL }, };
1909
1910/*
1911 * Fix Command Arguments for Darwin_Gcc4_Breakage
1912 */
1913static const char* apzDarwin_Gcc4_BreakagePatch[] = {
1914 "format",
1915 "((__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))",
1916 (char*)NULL };
1917
3afbff37
GK
1918/* * * * * * * * * * * * * * * * * * * * * * * * * *
1919 *
1920 * Description of Darwin_Private_Extern fix
1921 */
1922tSCC zDarwin_Private_ExternName[] =
1923 "darwin_private_extern";
1924
1925/*
1926 * File name selection pattern
1927 */
1928tSCC zDarwin_Private_ExternList[] =
401be4b6 1929 "mach-o/dyld.h\0";
3afbff37
GK
1930/*
1931 * Machine/OS name selection pattern
1932 */
1933tSCC* apzDarwin_Private_ExternMachs[] = {
1934 "*-*-darwin*",
1935 (const char*)NULL };
1936
1937/*
1938 * content selection pattern - do fix if pattern found
1939 */
1940tSCC zDarwin_Private_ExternSelect0[] =
1941 "__private_extern__ [a-z_]+ _dyld_";
1942
1943#define DARWIN_PRIVATE_EXTERN_TEST_CT 1
1944static tTestDesc aDarwin_Private_ExternTests[] = {
1945 { TT_EGREP, zDarwin_Private_ExternSelect0, (regex_t*)NULL }, };
1946
1947/*
1948 * Fix Command Arguments for Darwin_Private_Extern
1949 */
1950static const char* apzDarwin_Private_ExternPatch[] = {
1951 "format",
1952 "extern",
1953 "__private_extern__",
1954 (char*)NULL };
1955
06bbab1b
BK
1956/* * * * * * * * * * * * * * * * * * * * * * * * * *
1957 *
79589c4d 1958 * Description of Dec_Intern_Asm fix
06bbab1b 1959 */
79589c4d
BK
1960tSCC zDec_Intern_AsmName[] =
1961 "dec_intern_asm";
3be1fb72 1962
06bbab1b
BK
1963/*
1964 * File name selection pattern
1965 */
79589c4d 1966tSCC zDec_Intern_AsmList[] =
401be4b6 1967 "c_asm.h\0";
06bbab1b
BK
1968/*
1969 * Machine/OS name selection pattern
1970 */
79589c4d
BK
1971#define apzDec_Intern_AsmMachs (const char**)NULL
1972#define DEC_INTERN_ASM_TEST_CT 0
1973#define aDec_Intern_AsmTests (tTestDesc*)NULL
06bbab1b
BK
1974
1975/*
79589c4d 1976 * Fix Command Arguments for Dec_Intern_Asm
06bbab1b 1977 */
3af556f7 1978static const char* apzDec_Intern_AsmPatch[] = { "sed",
79589c4d
BK
1979 "-e", "/^[ \t]*float[ \t]*fasm/i\\\n\
1980#ifdef __DECC\n",
1981 "-e", "/^[ \t]*#[ \t]*pragma[ \t]*intrinsic([ \t]*dasm/a\\\n\
1982#endif\n",
1983 (char*)NULL };
06bbab1b 1984
6822468a
LB
1985/* * * * * * * * * * * * * * * * * * * * * * * * * *
1986 *
1987 * Description of Djgpp_Wchar_H fix
1988 */
6822468a
LB
1989tSCC zDjgpp_Wchar_HName[] =
1990 "djgpp_wchar_h";
1991
1992/*
1993 * File name selection pattern
1994 */
1995#define zDjgpp_Wchar_HList (char*)NULL
1996/*
1997 * Machine/OS name selection pattern
1998 */
1999#define apzDjgpp_Wchar_HMachs (const char**)NULL
2000
2001/*
2002 * content selection pattern - do fix if pattern found
2003 */
2004tSCC zDjgpp_Wchar_HSelect0[] =
2005 "__DJ_wint_t";
2006
2007/*
2008 * content bypass pattern - skip fix if pattern found
2009 */
2010tSCC zDjgpp_Wchar_HBypass0[] =
2011 "sys/djtypes.h";
2012
2013#define DJGPP_WCHAR_H_TEST_CT 2
2014static tTestDesc aDjgpp_Wchar_HTests[] = {
2015 { TT_NEGREP, zDjgpp_Wchar_HBypass0, (regex_t*)NULL },
2016 { TT_EGREP, zDjgpp_Wchar_HSelect0, (regex_t*)NULL }, };
2017
2018/*
2019 * Fix Command Arguments for Djgpp_Wchar_H
2020 */
2021static const char* apzDjgpp_Wchar_HPatch[] = {
2022 "format",
2023 "%0\n\
2024#include <sys/djtypes.h>",
2025 "#include <stddef.h>",
2026 (char*)NULL };
2027
79589c4d
BK
2028/* * * * * * * * * * * * * * * * * * * * * * * * * *
2029 *
2030 * Description of Ecd_Cursor fix
2031 */
79589c4d
BK
2032tSCC zEcd_CursorName[] =
2033 "ecd_cursor";
06bbab1b
BK
2034
2035/*
79589c4d 2036 * File name selection pattern
06bbab1b 2037 */
79589c4d 2038tSCC zEcd_CursorList[] =
401be4b6 2039 "sunwindow/win_lock.h\0sunwindow/win_cursor.h\0";
79589c4d
BK
2040/*
2041 * Machine/OS name selection pattern
2042 */
2043#define apzEcd_CursorMachs (const char**)NULL
cd64831f
BK
2044
2045/*
2046 * content selection pattern - do fix if pattern found
2047 */
2048tSCC zEcd_CursorSelect0[] =
2049 "ecd\\.cursor";
2050
2051#define ECD_CURSOR_TEST_CT 1
3af556f7 2052static tTestDesc aEcd_CursorTests[] = {
cd64831f 2053 { TT_EGREP, zEcd_CursorSelect0, (regex_t*)NULL }, };
79589c4d
BK
2054
2055/*
2056 * Fix Command Arguments for Ecd_Cursor
2057 */
3af556f7 2058static const char* apzEcd_CursorPatch[] = {
cd64831f
BK
2059 "format",
2060 "ecd_cursor",
06bbab1b
BK
2061 (char*)NULL };
2062
793146e3
BK
2063/* * * * * * * * * * * * * * * * * * * * * * * * * *
2064 *
2065 * Description of Exception_Structure fix
2066 */
2067tSCC zException_StructureName[] =
2068 "exception_structure";
2069
2070/*
2071 * File name selection pattern
2072 */
2073tSCC zException_StructureList[] =
401be4b6 2074 "math.h\0";
793146e3
BK
2075/*
2076 * Machine/OS name selection pattern
2077 */
2078#define apzException_StructureMachs (const char**)NULL
2079
2080/*
2081 * content selection pattern - do fix if pattern found
2082 */
2083tSCC zException_StructureSelect0[] =
2084 "matherr";
2085
2086/*
2087 * content bypass pattern - skip fix if pattern found
2088 */
2089tSCC zException_StructureBypass0[] =
61fec9ff 2090 "matherr.*(struct exception|__MATH_EXCEPTION|[ \\t]*__FP_EXCEPTION[ \\t]*\\*[ \\t]*)";
793146e3
BK
2091
2092#define EXCEPTION_STRUCTURE_TEST_CT 2
2093static tTestDesc aException_StructureTests[] = {
2094 { TT_NEGREP, zException_StructureBypass0, (regex_t*)NULL },
2095 { TT_EGREP, zException_StructureSelect0, (regex_t*)NULL }, };
2096
2097/*
2098 * Fix Command Arguments for Exception_Structure
2099 */
2100static const char* apzException_StructurePatch[] = {
2101 "wrap",
2102 "struct exception;\n",
2103 (char*)NULL };
2104
89647e8a
LR
2105/* * * * * * * * * * * * * * * * * * * * * * * * * *
2106 *
2107 * Description of Freebsd_Gcc3_Breakage fix
2108 */
89647e8a
LR
2109tSCC zFreebsd_Gcc3_BreakageName[] =
2110 "freebsd_gcc3_breakage";
2111
2112/*
2113 * File name selection pattern
2114 */
2115tSCC zFreebsd_Gcc3_BreakageList[] =
401be4b6 2116 "sys/cdefs.h\0";
89647e8a
LR
2117/*
2118 * Machine/OS name selection pattern
2119 */
2120tSCC* apzFreebsd_Gcc3_BreakageMachs[] = {
2121 "*-*-freebsd*",
2122 (const char*)NULL };
2123
2124/*
2125 * content selection pattern - do fix if pattern found
2126 */
2127tSCC zFreebsd_Gcc3_BreakageSelect0[] =
2128 "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7$";
2129
2130/*
2131 * content bypass pattern - skip fix if pattern found
2132 */
2133tSCC zFreebsd_Gcc3_BreakageBypass0[] =
2134 "__GNUC__[ \\t]*([>=]=[ \\t]*[3-9]|>[ \\t]*2)";
2135
2136#define FREEBSD_GCC3_BREAKAGE_TEST_CT 2
2137static tTestDesc aFreebsd_Gcc3_BreakageTests[] = {
2138 { TT_NEGREP, zFreebsd_Gcc3_BreakageBypass0, (regex_t*)NULL },
2139 { TT_EGREP, zFreebsd_Gcc3_BreakageSelect0, (regex_t*)NULL }, };
2140
2141/*
2142 * Fix Command Arguments for Freebsd_Gcc3_Breakage
2143 */
2144static const char* apzFreebsd_Gcc3_BreakagePatch[] = {
2145 "format",
2146 "%0 || __GNUC__ >= 3",
2147 (char*)NULL };
2148
28785dde
LR
2149/* * * * * * * * * * * * * * * * * * * * * * * * * *
2150 *
2151 * Description of Freebsd_Gcc4_Breakage fix
2152 */
2153tSCC zFreebsd_Gcc4_BreakageName[] =
2154 "freebsd_gcc4_breakage";
2155
2156/*
2157 * File name selection pattern
2158 */
2159tSCC zFreebsd_Gcc4_BreakageList[] =
401be4b6 2160 "sys/cdefs.h\0";
28785dde
LR
2161/*
2162 * Machine/OS name selection pattern
2163 */
2164tSCC* apzFreebsd_Gcc4_BreakageMachs[] = {
2165 "*-*-freebsd*",
2166 (const char*)NULL };
2167
2168/*
2169 * content selection pattern - do fix if pattern found
2170 */
2171tSCC zFreebsd_Gcc4_BreakageSelect0[] =
2172 "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 \\|\\| __GNUC__ == 3$";
2173
2174#define FREEBSD_GCC4_BREAKAGE_TEST_CT 1
2175static tTestDesc aFreebsd_Gcc4_BreakageTests[] = {
2176 { TT_EGREP, zFreebsd_Gcc4_BreakageSelect0, (regex_t*)NULL }, };
2177
2178/*
2179 * Fix Command Arguments for Freebsd_Gcc4_Breakage
2180 */
2181static const char* apzFreebsd_Gcc4_BreakagePatch[] = {
2182 "format",
2183 "#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 || __GNUC__ >= 3",
2184 (char*)NULL };
2185
502e2a2d
GK
2186/* * * * * * * * * * * * * * * * * * * * * * * * * *
2187 *
2188 * Description of Glibc_C99_Inline_1 fix
2189 */
2190tSCC zGlibc_C99_Inline_1Name[] =
2191 "glibc_c99_inline_1";
2192
2193/*
2194 * File name selection pattern
2195 */
2196tSCC zGlibc_C99_Inline_1List[] =
401be4b6 2197 "features.h\0*/features.h\0";
502e2a2d
GK
2198/*
2199 * Machine/OS name selection pattern
2200 */
2201#define apzGlibc_C99_Inline_1Machs (const char**)NULL
2202
2203/*
2204 * content selection pattern - do fix if pattern found
2205 */
2206tSCC zGlibc_C99_Inline_1Select0[] =
2207 "^ *&& !defined __OPTIMIZE_SIZE__ && !defined __NO_INLINE__$";
2208
2209#define GLIBC_C99_INLINE_1_TEST_CT 1
2210static tTestDesc aGlibc_C99_Inline_1Tests[] = {
2211 { TT_EGREP, zGlibc_C99_Inline_1Select0, (regex_t*)NULL }, };
2212
2213/*
2214 * Fix Command Arguments for Glibc_C99_Inline_1
2215 */
2216static const char* apzGlibc_C99_Inline_1Patch[] = {
2217 "format",
2218 "%0 && __STDC_VERSION__ < 199901L",
2219 (char*)NULL };
2220
2221/* * * * * * * * * * * * * * * * * * * * * * * * * *
2222 *
2223 * Description of Glibc_C99_Inline_2 fix
2224 */
2225tSCC zGlibc_C99_Inline_2Name[] =
2226 "glibc_c99_inline_2";
2227
2228/*
2229 * File name selection pattern
2230 */
2231tSCC zGlibc_C99_Inline_2List[] =
401be4b6 2232 "sys/stat.h\0*/sys/stat.h\0";
502e2a2d
GK
2233/*
2234 * Machine/OS name selection pattern
2235 */
2236#define apzGlibc_C99_Inline_2Machs (const char**)NULL
2237
2238/*
2239 * content selection pattern - do fix if pattern found
2240 */
2241tSCC zGlibc_C99_Inline_2Select0[] =
2242 "extern __inline__ int";
2243
2244#define GLIBC_C99_INLINE_2_TEST_CT 1
2245static tTestDesc aGlibc_C99_Inline_2Tests[] = {
2246 { TT_EGREP, zGlibc_C99_Inline_2Select0, (regex_t*)NULL }, };
2247
2248/*
2249 * Fix Command Arguments for Glibc_C99_Inline_2
2250 */
2251static const char* apzGlibc_C99_Inline_2Patch[] = { "sed",
2252 "-e", "s/extern int \\(stat\\|lstat\\|fstat\\|mknod\\)/#if __STDC_VERSION__ < 199901L\\\n\
2253extern\\\n\
2254#endif\\\n\
2255__inline__ int \\1/",
98e06787 2256 "-e", "s/extern int __REDIRECT\\(_NTH\\|\\) (\\(stat\\|lstat\\|fstat\\)/#if __STDC_VERSION__ < 199901L\\\n\
502e2a2d
GK
2257extern\\\n\
2258#endif\\\n\
98e06787
RG
2259__inline__ int __REDIRECT\\1 (\\2/",
2260 "-e", "s/^extern __inline__ int/#if __STDC_VERSION__ < 199901L\\\n\
502e2a2d
GK
2261extern\\\n\
2262#endif\\\n\
98e06787 2263__inline__ int/",
502e2a2d
GK
2264 (char*)NULL };
2265
2266/* * * * * * * * * * * * * * * * * * * * * * * * * *
2267 *
2268 * Description of Glibc_C99_Inline_3 fix
2269 */
2270tSCC zGlibc_C99_Inline_3Name[] =
2271 "glibc_c99_inline_3";
2272
2273/*
2274 * File name selection pattern
2275 */
2276tSCC zGlibc_C99_Inline_3List[] =
401be4b6 2277 "bits/string2.h\0*/bits/string2.h\0";
502e2a2d
GK
2278/*
2279 * Machine/OS name selection pattern
2280 */
2281#define apzGlibc_C99_Inline_3Machs (const char**)NULL
2282
2283/*
2284 * content bypass pattern - skip fix if pattern found
2285 */
2286tSCC zGlibc_C99_Inline_3Bypass0[] =
2287 "__STDC_VERSION__";
2288
2289#define GLIBC_C99_INLINE_3_TEST_CT 1
2290static tTestDesc aGlibc_C99_Inline_3Tests[] = {
2291 { TT_NEGREP, zGlibc_C99_Inline_3Bypass0, (regex_t*)NULL }, };
2292
2293/*
2294 * Fix Command Arguments for Glibc_C99_Inline_3
2295 */
2296static const char* apzGlibc_C99_Inline_3Patch[] = {
2297 "format",
2298 "# if defined(__cplusplus) || __STDC_VERSION__ >= 19901L",
2299 "^# ifdef __cplusplus$",
2300 (char*)NULL };
2301
2302/* * * * * * * * * * * * * * * * * * * * * * * * * *
2303 *
2304 * Description of Glibc_C99_Inline_4 fix
2305 */
2306tSCC zGlibc_C99_Inline_4Name[] =
2307 "glibc_c99_inline_4";
2308
2309/*
2310 * File name selection pattern
2311 */
2312tSCC zGlibc_C99_Inline_4List[] =
401be4b6 2313 "sys/sysmacros.h\0*/sys/sysmacros.h\0";
502e2a2d
GK
2314/*
2315 * Machine/OS name selection pattern
2316 */
2317#define apzGlibc_C99_Inline_4Machs (const char**)NULL
2318
5c4f0f47
BK
2319/*
2320 * content selection pattern - do fix if pattern found
2321 */
2322tSCC zGlibc_C99_Inline_4Select0[] =
cefde4f5 2323 "(^| )extern ";
5c4f0f47 2324
502e2a2d
GK
2325/*
2326 * content bypass pattern - skip fix if pattern found
2327 */
2328tSCC zGlibc_C99_Inline_4Bypass0[] =
2329 "__STDC_VERSION__";
2330
5c4f0f47 2331#define GLIBC_C99_INLINE_4_TEST_CT 2
502e2a2d 2332static tTestDesc aGlibc_C99_Inline_4Tests[] = {
5c4f0f47
BK
2333 { TT_NEGREP, zGlibc_C99_Inline_4Bypass0, (regex_t*)NULL },
2334 { TT_EGREP, zGlibc_C99_Inline_4Select0, (regex_t*)NULL }, };
502e2a2d
GK
2335
2336/*
2337 * Fix Command Arguments for Glibc_C99_Inline_4
2338 */
2339static const char* apzGlibc_C99_Inline_4Patch[] = {
2340 "format",
2341 "\n\
cefde4f5 2342#if __STDC_VERSION__ < 199901L\n\
502e2a2d
GK
2343extern\n\
2344#endif\n",
502e2a2d
GK
2345 (char*)NULL };
2346
f6f7aabc
UB
2347/* * * * * * * * * * * * * * * * * * * * * * * * * *
2348 *
2349 * Description of Glibc_Mutex_Init fix
2350 */
2351tSCC zGlibc_Mutex_InitName[] =
2352 "glibc_mutex_init";
2353
2354/*
2355 * File name selection pattern
2356 */
2357tSCC zGlibc_Mutex_InitList[] =
401be4b6 2358 "pthread.h\0";
f6f7aabc
UB
2359/*
2360 * Machine/OS name selection pattern
2361 */
2362#define apzGlibc_Mutex_InitMachs (const char**)NULL
2363
2364/*
2365 * content selection pattern - do fix if pattern found
2366 */
2367tSCC zGlibc_Mutex_InitSelect0[] =
2368 "\\{ *\\{ *0, *\\} *\\}";
2369
2370#define GLIBC_MUTEX_INIT_TEST_CT 1
2371static tTestDesc aGlibc_Mutex_InitTests[] = {
2372 { TT_EGREP, zGlibc_Mutex_InitSelect0, (regex_t*)NULL }, };
2373
2374/*
2375 * Fix Command Arguments for Glibc_Mutex_Init
2376 */
2377static const char* apzGlibc_Mutex_InitPatch[] = { "sed",
2378 "-e", "/define[ \t]\\+PTHREAD_MUTEX_INITIALIZER[ \t]*\\\\/,+1s/{ { 0, } }/{ { 0, 0, 0, 0, 0, 0 } }/",
4d98def0
UB
2379 "-e", "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(RECURSIVE\\|ERRORCHECK\\|ADAPTIVE\\)_NP\\) }/{ \\1, 0 }/",
2380 "-e", "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(RECURSIVE\\|ERRORCHECK\\|ADAPTIVE\\)_NP\\) }/{ \\1, 0, 0 }/",
f6f7aabc 2381 "-e", "/define[ \t]\\+PTHREAD_RWLOCK_INITIALIZER[ \t]*\\\\/N;s/^[ \t]*#[ \t]*\\(define[ \t]\\+PTHREAD_RWLOCK_INITIALIZER[ \t]*\\\\\\)\\n[ \t]*{ { 0, } }/# if __WORDSIZE == 64\\n# \\1\\n { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }\\n# else\\n# \\1\\n { { 0, 0, 0, 0, 0, 0, 0, 0 } }\\n# endif/",
4d98def0 2382 "-e", "s/{ \\(0, 0, 0, 0, 0, 0, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP\\) }/{ \\1, 0 }/",
f6f7aabc
UB
2383 "-e", "/define[ \t]\\+PTHREAD_COND_INITIALIZER/s/{ { 0, } }/{ { 0, 0, 0, 0, 0, (void *) 0, 0, 0 } }/",
2384 (char*)NULL };
2385
7b78a14a
BK
2386/* * * * * * * * * * * * * * * * * * * * * * * * * *
2387 *
2388 * Description of Gnu_Types fix
2389 */
2390tSCC zGnu_TypesName[] =
2391 "gnu_types";
2392
2393/*
2394 * File name selection pattern
2395 */
2396tSCC zGnu_TypesList[] =
401be4b6 2397 "sys/types.h\0stdlib.h\0sys/stdtypes.h\0stddef.h\0memory.h\0unistd.h\0";
7b78a14a
BK
2398/*
2399 * Machine/OS name selection pattern
2400 */
9fcc7481
MM
2401tSCC* apzGnu_TypesMachs[] = {
2402 "*-*-solaris2.1[0-9]*",
2403 (const char*)NULL };
7b78a14a
BK
2404
2405/*
2406 * content selection pattern - do fix if pattern found
2407 */
2408tSCC zGnu_TypesSelect0[] =
2409 "^[ \t]*typedef[ \t]+.*[ \t](ptrdiff|size|wchar)_t;";
2410
2411/*
2412 * content bypass pattern - skip fix if pattern found
2413 */
2414tSCC zGnu_TypesBypass0[] =
2415 "_GCC_(PTRDIFF|SIZE|WCHAR)_T";
2416
2417#define GNU_TYPES_TEST_CT 2
2418static tTestDesc aGnu_TypesTests[] = {
2419 { TT_NEGREP, zGnu_TypesBypass0, (regex_t*)NULL },
2420 { TT_EGREP, zGnu_TypesSelect0, (regex_t*)NULL }, };
2421
2422/*
2423 * Fix Command Arguments for Gnu_Types
2424 */
2425static const char* apzGnu_TypesPatch[] = {
2426 "gnu_type",
2427 (char*)NULL };
2428
06bbab1b
BK
2429/* * * * * * * * * * * * * * * * * * * * * * * * * *
2430 *
79589c4d 2431 * Description of Hp_Inline fix
06bbab1b 2432 */
79589c4d
BK
2433tSCC zHp_InlineName[] =
2434 "hp_inline";
3be1fb72 2435
06bbab1b
BK
2436/*
2437 * File name selection pattern
2438 */
79589c4d 2439tSCC zHp_InlineList[] =
401be4b6 2440 "sys/spinlock.h\0machine/machparam.h\0";
06bbab1b
BK
2441/*
2442 * Machine/OS name selection pattern
2443 */
79589c4d 2444#define apzHp_InlineMachs (const char**)NULL
87b6d63a
BK
2445
2446/*
2447 * content selection pattern - do fix if pattern found
2448 */
79589c4d 2449tSCC zHp_InlineSelect0[] =
cd64831f 2450 "[ \t]*#[ \t]*include[ \t]+\"\\.\\./machine/";
87b6d63a 2451
79589c4d 2452#define HP_INLINE_TEST_CT 1
3af556f7 2453static tTestDesc aHp_InlineTests[] = {
79589c4d 2454 { TT_EGREP, zHp_InlineSelect0, (regex_t*)NULL }, };
06bbab1b
BK
2455
2456/*
79589c4d 2457 * Fix Command Arguments for Hp_Inline
06bbab1b 2458 */
3af556f7 2459static const char* apzHp_InlinePatch[] = {
cd64831f
BK
2460 "format",
2461 "%1<machine/%2.h>",
2462 "([ \t]*#[ \t]*include[ \t]+)\"\\.\\./machine/([a-z]+)\\.h\"",
06bbab1b
BK
2463 (char*)NULL };
2464
2465/* * * * * * * * * * * * * * * * * * * * * * * * * *
2466 *
79589c4d 2467 * Description of Hp_Sysfile fix
06bbab1b 2468 */
79589c4d
BK
2469tSCC zHp_SysfileName[] =
2470 "hp_sysfile";
3be1fb72 2471
06bbab1b
BK
2472/*
2473 * File name selection pattern
2474 */
79589c4d 2475tSCC zHp_SysfileList[] =
401be4b6 2476 "sys/file.h\0";
06bbab1b
BK
2477/*
2478 * Machine/OS name selection pattern
2479 */
79589c4d 2480#define apzHp_SysfileMachs (const char**)NULL
06bbab1b
BK
2481
2482/*
be02fa1a 2483 * content selection pattern - do fix if pattern found
06bbab1b 2484 */
79589c4d
BK
2485tSCC zHp_SysfileSelect0[] =
2486 "HPUX_SOURCE";
06bbab1b 2487
79589c4d 2488#define HP_SYSFILE_TEST_CT 1
3af556f7 2489static tTestDesc aHp_SysfileTests[] = {
79589c4d 2490 { TT_EGREP, zHp_SysfileSelect0, (regex_t*)NULL }, };
06bbab1b
BK
2491
2492/*
79589c4d 2493 * Fix Command Arguments for Hp_Sysfile
06bbab1b 2494 */
3af556f7 2495static const char* apzHp_SysfilePatch[] = {
cd64831f
BK
2496 "format",
2497 "(struct file *, ...)",
2498 "\\(\\.\\.\\.\\)",
06bbab1b
BK
2499 (char*)NULL };
2500
5ffd49b8
JDA
2501/* * * * * * * * * * * * * * * * * * * * * * * * * *
2502 *
2503 * Description of Hpux10_Cpp_Pow_Inline fix
2504 */
2505tSCC zHpux10_Cpp_Pow_InlineName[] =
2506 "hpux10_cpp_pow_inline";
2507
2508/*
2509 * File name selection pattern
2510 */
2511tSCC zHpux10_Cpp_Pow_InlineList[] =
401be4b6 2512 "fixinc-test-limits.h\0math.h\0";
5ffd49b8
JDA
2513/*
2514 * Machine/OS name selection pattern
2515 */
2516#define apzHpux10_Cpp_Pow_InlineMachs (const char**)NULL
2517
2518/*
2519 * content selection pattern - do fix if pattern found
2520 */
2521tSCC zHpux10_Cpp_Pow_InlineSelect0[] =
2522 "^# +ifdef +__cplusplus\n\
ab747408
ZW
2523 +\\}\n\
2524 +inline +double +pow\\(double +__d,int +__expon\\) +\\{\n\
5ffd49b8 2525[ \t]+return +pow\\(__d,\\(double\\)__expon\\);\n\
ab747408
ZW
2526 +\\}\n\
2527 +extern +\"C\" +\\{\n\
5ffd49b8
JDA
2528#else\n\
2529# +endif";
2530
2531#define HPUX10_CPP_POW_INLINE_TEST_CT 1
2532static tTestDesc aHpux10_Cpp_Pow_InlineTests[] = {
2533 { TT_EGREP, zHpux10_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
2534
2535/*
2536 * Fix Command Arguments for Hpux10_Cpp_Pow_Inline
2537 */
2538static const char* apzHpux10_Cpp_Pow_InlinePatch[] = {
2539 "format",
2540 "",
2541 (char*)NULL };
2542
eb559363
BK
2543/* * * * * * * * * * * * * * * * * * * * * * * * * *
2544 *
2545 * Description of Hpux11_Cpp_Pow_Inline fix
2546 */
2547tSCC zHpux11_Cpp_Pow_InlineName[] =
2548 "hpux11_cpp_pow_inline";
2549
2550/*
2551 * File name selection pattern
2552 */
2553tSCC zHpux11_Cpp_Pow_InlineList[] =
401be4b6 2554 "math.h\0";
eb559363
BK
2555/*
2556 * Machine/OS name selection pattern
2557 */
2558#define apzHpux11_Cpp_Pow_InlineMachs (const char**)NULL
2559
2560/*
2561 * content selection pattern - do fix if pattern found
2562 */
2563tSCC zHpux11_Cpp_Pow_InlineSelect0[] =
ab747408 2564 " +inline double pow\\(double d,int expon\\) \\{\n\
eb559363 2565 +return pow\\(d, \\(double\\)expon\\);\n\
ab747408 2566 +\\}\n";
eb559363
BK
2567
2568#define HPUX11_CPP_POW_INLINE_TEST_CT 1
2569static tTestDesc aHpux11_Cpp_Pow_InlineTests[] = {
2570 { TT_EGREP, zHpux11_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
2571
2572/*
2573 * Fix Command Arguments for Hpux11_Cpp_Pow_Inline
2574 */
2575static const char* apzHpux11_Cpp_Pow_InlinePatch[] = {
2576 "format",
2577 "",
2578 (char*)NULL };
2579
27eaa708
BK
2580/* * * * * * * * * * * * * * * * * * * * * * * * * *
2581 *
afc41460 2582 * Description of Hpux10_Ctype_Declarations1 fix
27eaa708 2583 */
afc41460
BK
2584tSCC zHpux10_Ctype_Declarations1Name[] =
2585 "hpux10_ctype_declarations1";
27eaa708
BK
2586
2587/*
2588 * File name selection pattern
2589 */
afc41460 2590tSCC zHpux10_Ctype_Declarations1List[] =
401be4b6 2591 "ctype.h\0";
27eaa708
BK
2592/*
2593 * Machine/OS name selection pattern
2594 */
afc41460 2595#define apzHpux10_Ctype_Declarations1Machs (const char**)NULL
27eaa708
BK
2596
2597/*
2598 * content selection pattern - do fix if pattern found
2599 */
afc41460
BK
2600tSCC zHpux10_Ctype_Declarations1Select0[] =
2601 "^#[ \t]*define _toupper\\(__c\\)[ \t]*__toupper\\(__c\\)";
27eaa708 2602
afc41460
BK
2603/*
2604 * content bypass pattern - skip fix if pattern found
2605 */
2606tSCC zHpux10_Ctype_Declarations1Bypass0[] =
2607 "^[ \t]*extern[ \t]*int[ \t]*__tolower[ \t]*\\(";
2608
2609#define HPUX10_CTYPE_DECLARATIONS1_TEST_CT 2
2610static tTestDesc aHpux10_Ctype_Declarations1Tests[] = {
2611 { TT_NEGREP, zHpux10_Ctype_Declarations1Bypass0, (regex_t*)NULL },
2612 { TT_EGREP, zHpux10_Ctype_Declarations1Select0, (regex_t*)NULL }, };
27eaa708
BK
2613
2614/*
afc41460 2615 * Fix Command Arguments for Hpux10_Ctype_Declarations1
27eaa708 2616 */
afc41460 2617static const char* apzHpux10_Ctype_Declarations1Patch[] = {
27eaa708 2618 "format",
afc41460
BK
2619 "#ifdef _PROTOTYPES\n\
2620extern int __tolower(int);\n\
2621extern int __toupper(int);\n\
2622#else /* NOT _PROTOTYPES */\n\
2623extern int __tolower();\n\
2624extern int __toupper();\n\
2625#endif /* _PROTOTYPES */\n\n\
2626%0\n",
27eaa708
BK
2627 (char*)NULL };
2628
2026dcf9
JDA
2629/* * * * * * * * * * * * * * * * * * * * * * * * * *
2630 *
afc41460 2631 * Description of Hpux10_Ctype_Declarations2 fix
2026dcf9 2632 */
afc41460
BK
2633tSCC zHpux10_Ctype_Declarations2Name[] =
2634 "hpux10_ctype_declarations2";
2026dcf9
JDA
2635
2636/*
2637 * File name selection pattern
2638 */
afc41460 2639tSCC zHpux10_Ctype_Declarations2List[] =
401be4b6 2640 "ctype.h\0";
2026dcf9
JDA
2641/*
2642 * Machine/OS name selection pattern
2643 */
afc41460 2644#define apzHpux10_Ctype_Declarations2Machs (const char**)NULL
2026dcf9
JDA
2645
2646/*
2647 * content selection pattern - do fix if pattern found
2648 */
afc41460
BK
2649tSCC zHpux10_Ctype_Declarations2Select0[] =
2650 "^# if defined\\(_SB_CTYPE_MACROS\\) && \\!defined\\(__lint\\)";
2026dcf9 2651
c20b55c0
JDA
2652/*
2653 * content bypass pattern - skip fix if pattern found
2654 */
afc41460
BK
2655tSCC zHpux10_Ctype_Declarations2Bypass0[] =
2656 "^[ \t]*extern[ \t]*int[ \t]*_isalnum[ \t]*\\(";
c20b55c0 2657
afc41460
BK
2658#define HPUX10_CTYPE_DECLARATIONS2_TEST_CT 2
2659static tTestDesc aHpux10_Ctype_Declarations2Tests[] = {
2660 { TT_NEGREP, zHpux10_Ctype_Declarations2Bypass0, (regex_t*)NULL },
2661 { TT_EGREP, zHpux10_Ctype_Declarations2Select0, (regex_t*)NULL }, };
2026dcf9
JDA
2662
2663/*
afc41460 2664 * Fix Command Arguments for Hpux10_Ctype_Declarations2
2026dcf9 2665 */
afc41460
BK
2666static const char* apzHpux10_Ctype_Declarations2Patch[] = {
2667 "format",
2668 "%0\n\n\
2669#ifdef _PROTOTYPES\n\
2670 extern int _isalnum(int);\n\
2671 extern int _isalpha(int);\n\
2672 extern int _iscntrl(int);\n\
2673 extern int _isdigit(int);\n\
2674 extern int _isgraph(int);\n\
2675 extern int _islower(int);\n\
2676 extern int _isprint(int);\n\
2677 extern int _ispunct(int);\n\
2678 extern int _isspace(int);\n\
2679 extern int _isupper(int);\n\
2680 extern int _isxdigit(int);\n\
2681# else /* not _PROTOTYPES */\n\
2682 extern int _isalnum();\n\
2683 extern int _isalpha();\n\
2684 extern int _iscntrl();\n\
2685 extern int _isdigit();\n\
2686 extern int _isgraph();\n\
2687 extern int _islower();\n\
2688 extern int _isprint();\n\
2689 extern int _ispunct();\n\
2690 extern int _isspace();\n\
2691 extern int _isupper();\n\
2692 extern int _isxdigit();\n\
2693#endif /* _PROTOTYPES */\n",
2694 (char*)NULL };
2695
4b60eb3b
JDA
2696/* * * * * * * * * * * * * * * * * * * * * * * * * *
2697 *
2698 * Description of Hpux10_Stdio_Declarations fix
2699 */
2700tSCC zHpux10_Stdio_DeclarationsName[] =
2701 "hpux10_stdio_declarations";
2702
2703/*
2704 * File name selection pattern
2705 */
2706tSCC zHpux10_Stdio_DeclarationsList[] =
401be4b6 2707 "stdio.h\0";
4b60eb3b
JDA
2708/*
2709 * Machine/OS name selection pattern
2710 */
2711#define apzHpux10_Stdio_DeclarationsMachs (const char**)NULL
2712
2713/*
2714 * content selection pattern - do fix if pattern found
2715 */
2716tSCC zHpux10_Stdio_DeclarationsSelect0[] =
2717 "^#[ \t]*define _iob[ \t]*__iob";
2718
2719/*
2720 * content bypass pattern - skip fix if pattern found
2721 */
2722tSCC zHpux10_Stdio_DeclarationsBypass0[] =
2723 "^[ \t]*extern[ \t]*int[ \t]*vsnprintf[ \t]*\\(";
2724
2725#define HPUX10_STDIO_DECLARATIONS_TEST_CT 2
2726static tTestDesc aHpux10_Stdio_DeclarationsTests[] = {
2727 { TT_NEGREP, zHpux10_Stdio_DeclarationsBypass0, (regex_t*)NULL },
2728 { TT_EGREP, zHpux10_Stdio_DeclarationsSelect0, (regex_t*)NULL }, };
2729
2730/*
2731 * Fix Command Arguments for Hpux10_Stdio_Declarations
2732 */
2733static const char* apzHpux10_Stdio_DeclarationsPatch[] = {
2734 "format",
2735 "%0\n\n\
2736# if defined(__STDC__) || defined(__cplusplus)\n\
2737 extern int snprintf(char *, size_t, const char *, ...);\n\
2738 extern int vsnprintf(char *, size_t, const char *, __va_list);\n\
2739# else /* not __STDC__) || __cplusplus */\n\
2740 extern int snprintf();\n\
2741 extern int vsnprintf();\n\
2742# endif /* __STDC__) || __cplusplus */\n",
2743 (char*)NULL };
2744
afc41460
BK
2745/* * * * * * * * * * * * * * * * * * * * * * * * * *
2746 *
2747 * Description of Hpux11_Abs fix
2748 */
2749tSCC zHpux11_AbsName[] =
2750 "hpux11_abs";
2751
2752/*
2753 * File name selection pattern
2754 */
2755tSCC zHpux11_AbsList[] =
401be4b6 2756 "stdlib.h\0";
afc41460
BK
2757/*
2758 * Machine/OS name selection pattern
2759 */
2760tSCC* apzHpux11_AbsMachs[] = {
2761 "ia64-hp-hpux11*",
2762 (const char*)NULL };
2763
2764/*
2765 * content selection pattern - do fix if pattern found
2766 */
2767tSCC zHpux11_AbsSelect0[] =
2768 "ifndef _MATH_INCLUDED";
2769
2770#define HPUX11_ABS_TEST_CT 1
2771static tTestDesc aHpux11_AbsTests[] = {
2772 { TT_EGREP, zHpux11_AbsSelect0, (regex_t*)NULL }, };
2773
2774/*
2775 * Fix Command Arguments for Hpux11_Abs
2776 */
2777static const char* apzHpux11_AbsPatch[] = {
2778 "format",
2779 "if !defined(_MATH_INCLUDED) || defined(__GNUG__)",
2026dcf9
JDA
2780 (char*)NULL };
2781
2dc693ee
BK
2782/* * * * * * * * * * * * * * * * * * * * * * * * * *
2783 *
2784 * Description of Hpux11_Fabsf fix
2785 */
2dc693ee
BK
2786tSCC zHpux11_FabsfName[] =
2787 "hpux11_fabsf";
2788
2789/*
2790 * File name selection pattern
2791 */
2792tSCC zHpux11_FabsfList[] =
401be4b6 2793 "math.h\0";
2dc693ee
BK
2794/*
2795 * Machine/OS name selection pattern
2796 */
2797#define apzHpux11_FabsfMachs (const char**)NULL
2798
2799/*
2800 * content selection pattern - do fix if pattern found
2801 */
2802tSCC zHpux11_FabsfSelect0[] =
2803 "^[ \t]*#[ \t]*define[ \t]+fabsf\\(.*";
2804
2805/*
2806 * content bypass pattern - skip fix if pattern found
2807 */
2808tSCC zHpux11_FabsfBypass0[] =
2809 "__cplusplus";
2810
2811#define HPUX11_FABSF_TEST_CT 2
3af556f7 2812static tTestDesc aHpux11_FabsfTests[] = {
2dc693ee
BK
2813 { TT_NEGREP, zHpux11_FabsfBypass0, (regex_t*)NULL },
2814 { TT_EGREP, zHpux11_FabsfSelect0, (regex_t*)NULL }, };
2815
2816/*
2817 * Fix Command Arguments for Hpux11_Fabsf
2818 */
3af556f7 2819static const char* apzHpux11_FabsfPatch[] = {
2dc693ee
BK
2820 "format",
2821 "#ifndef __cplusplus\n\
2822%0\n\
2823#endif",
2824 (char*)NULL };
2825
34b3b0f6
JM
2826/* * * * * * * * * * * * * * * * * * * * * * * * * *
2827 *
2828 * Description of Hpux11_Size_T fix
2829 */
2830tSCC zHpux11_Size_TName[] =
2831 "hpux11_size_t";
2832
2833/*
2834 * File name selection pattern
2835 */
2836#define zHpux11_Size_TList (char*)NULL
2837/*
2838 * Machine/OS name selection pattern
2839 */
2840tSCC* apzHpux11_Size_TMachs[] = {
b5639a49 2841 "*-hp-hpux11*",
34b3b0f6
JM
2842 (const char*)NULL };
2843
2844/*
2845 * content selection pattern - do fix if pattern found
2846 */
2847tSCC zHpux11_Size_TSelect0[] =
b5639a49 2848 "__size_t";
34b3b0f6
JM
2849
2850#define HPUX11_SIZE_T_TEST_CT 1
2851static tTestDesc aHpux11_Size_TTests[] = {
2852 { TT_EGREP, zHpux11_Size_TSelect0, (regex_t*)NULL }, };
2853
2854/*
2855 * Fix Command Arguments for Hpux11_Size_T
2856 */
2857static const char* apzHpux11_Size_TPatch[] = {
2858 "format",
2859 "_hpux_size_t",
34b3b0f6
JM
2860 (char*)NULL };
2861
11f9a0ed
BK
2862/* * * * * * * * * * * * * * * * * * * * * * * * * *
2863 *
2864 * Description of Hpux11_Snprintf fix
2865 */
2866tSCC zHpux11_SnprintfName[] =
2867 "hpux11_snprintf";
2868
2869/*
2870 * File name selection pattern
2871 */
2872tSCC zHpux11_SnprintfList[] =
401be4b6 2873 "stdio.h\0";
11f9a0ed
BK
2874/*
2875 * Machine/OS name selection pattern
2876 */
2877#define apzHpux11_SnprintfMachs (const char**)NULL
2878
2879/*
2880 * content selection pattern - do fix if pattern found
2881 */
2882tSCC zHpux11_SnprintfSelect0[] =
2883 "(extern int snprintf *\\(char *\\*, *(|__|_hpux_)size_t,) *(char *\\*, *\\.\\.\\.\\);)";
2884
2885#define HPUX11_SNPRINTF_TEST_CT 1
2886static tTestDesc aHpux11_SnprintfTests[] = {
2887 { TT_EGREP, zHpux11_SnprintfSelect0, (regex_t*)NULL }, };
2888
2889/*
2890 * Fix Command Arguments for Hpux11_Snprintf
2891 */
2892static const char* apzHpux11_SnprintfPatch[] = {
2893 "format",
2894 "%1 const %3",
2895 (char*)NULL };
2896
d7eb5a45
ZW
2897/* * * * * * * * * * * * * * * * * * * * * * * * * *
2898 *
cd64831f 2899 * Description of Hpux11_Uint32_C fix
d7eb5a45 2900 */
cd64831f
BK
2901tSCC zHpux11_Uint32_CName[] =
2902 "hpux11_uint32_c";
3be1fb72 2903
d7eb5a45
ZW
2904/*
2905 * File name selection pattern
2906 */
cd64831f 2907tSCC zHpux11_Uint32_CList[] =
401be4b6 2908 "inttypes.h\0";
d7eb5a45
ZW
2909/*
2910 * Machine/OS name selection pattern
2911 */
cd64831f 2912#define apzHpux11_Uint32_CMachs (const char**)NULL
d7eb5a45
ZW
2913
2914/*
2915 * content selection pattern - do fix if pattern found
2916 */
cd64831f
BK
2917tSCC zHpux11_Uint32_CSelect0[] =
2918 "^#define UINT32_C\\(__c\\)[ \t]*__CONCAT__\\(__CONCAT_U__\\(__c\\),l\\)";
d7eb5a45 2919
cd64831f 2920#define HPUX11_UINT32_C_TEST_CT 1
3af556f7 2921static tTestDesc aHpux11_Uint32_CTests[] = {
cd64831f 2922 { TT_EGREP, zHpux11_Uint32_CSelect0, (regex_t*)NULL }, };
d7eb5a45
ZW
2923
2924/*
cd64831f 2925 * Fix Command Arguments for Hpux11_Uint32_C
d7eb5a45 2926 */
3af556f7 2927static const char* apzHpux11_Uint32_CPatch[] = {
cd64831f
BK
2928 "format",
2929 "#define UINT32_C(__c) __CONCAT__(__c,ul)",
d7eb5a45
ZW
2930 (char*)NULL };
2931
2026dcf9
JDA
2932/* * * * * * * * * * * * * * * * * * * * * * * * * *
2933 *
afc41460 2934 * Description of Hpux11_Vsnprintf fix
2026dcf9 2935 */
afc41460
BK
2936tSCC zHpux11_VsnprintfName[] =
2937 "hpux11_vsnprintf";
2026dcf9
JDA
2938
2939/*
2940 * File name selection pattern
2941 */
afc41460 2942tSCC zHpux11_VsnprintfList[] =
401be4b6 2943 "stdio.h\0";
2026dcf9
JDA
2944/*
2945 * Machine/OS name selection pattern
2946 */
afc41460 2947#define apzHpux11_VsnprintfMachs (const char**)NULL
2026dcf9
JDA
2948
2949/*
2950 * content selection pattern - do fix if pattern found
2951 */
afc41460
BK
2952tSCC zHpux11_VsnprintfSelect0[] =
2953 "(extern int vsnprintf\\(char \\*, _[hpux]*_size_t, const char \\*,) __va__list\\);";
2026dcf9 2954
afc41460
BK
2955#define HPUX11_VSNPRINTF_TEST_CT 1
2956static tTestDesc aHpux11_VsnprintfTests[] = {
2957 { TT_EGREP, zHpux11_VsnprintfSelect0, (regex_t*)NULL }, };
2026dcf9
JDA
2958
2959/*
afc41460 2960 * Fix Command Arguments for Hpux11_Vsnprintf
2026dcf9 2961 */
afc41460 2962static const char* apzHpux11_VsnprintfPatch[] = {
2026dcf9 2963 "format",
afc41460 2964 "%1 __va_list);",
2026dcf9
JDA
2965 (char*)NULL };
2966
2967/* * * * * * * * * * * * * * * * * * * * * * * * * *
2968 *
afc41460 2969 * Description of Hpux8_Bogus_Inlines fix
2026dcf9 2970 */
afc41460
BK
2971tSCC zHpux8_Bogus_InlinesName[] =
2972 "hpux8_bogus_inlines";
2026dcf9
JDA
2973
2974/*
2975 * File name selection pattern
2976 */
afc41460 2977tSCC zHpux8_Bogus_InlinesList[] =
401be4b6 2978 "math.h\0";
2026dcf9
JDA
2979/*
2980 * Machine/OS name selection pattern
2981 */
afc41460 2982#define apzHpux8_Bogus_InlinesMachs (const char**)NULL
2026dcf9
JDA
2983
2984/*
2985 * content selection pattern - do fix if pattern found
2986 */
afc41460
BK
2987tSCC zHpux8_Bogus_InlinesSelect0[] =
2988 "inline";
2026dcf9 2989
793387fa
JM
2990/*
2991 * content bypass pattern - skip fix if pattern found
2992 */
2993tSCC zHpux8_Bogus_InlinesBypass0[] =
2994 "__GNUG__";
2995
2996#define HPUX8_BOGUS_INLINES_TEST_CT 2
afc41460 2997static tTestDesc aHpux8_Bogus_InlinesTests[] = {
793387fa 2998 { TT_NEGREP, zHpux8_Bogus_InlinesBypass0, (regex_t*)NULL },
afc41460 2999 { TT_EGREP, zHpux8_Bogus_InlinesSelect0, (regex_t*)NULL }, };
2026dcf9
JDA
3000
3001/*
afc41460 3002 * Fix Command Arguments for Hpux8_Bogus_Inlines
2026dcf9 3003 */
afc41460
BK
3004static const char* apzHpux8_Bogus_InlinesPatch[] = { "sed",
3005 "-e", "s@inline int abs(int [a-z][a-z]*) {.*}@extern \"C\" int abs(int);@",
3006 "-e", "s@inline double abs(double [a-z][a-z]*) {.*}@@",
3007 "-e", "s@inline int sqr(int [a-z][a-z]*) {.*}@@",
3008 "-e", "s@inline double sqr(double [a-z][a-z]*) {.*}@@",
2026dcf9
JDA
3009 (char*)NULL };
3010
3011/* * * * * * * * * * * * * * * * * * * * * * * * * *
3012 *
3013 * Description of Hpux_Ctype_Macros fix
3014 */
3015tSCC zHpux_Ctype_MacrosName[] =
3016 "hpux_ctype_macros";
3017
3018/*
3019 * File name selection pattern
3020 */
3021tSCC zHpux_Ctype_MacrosList[] =
401be4b6 3022 "ctype.h\0";
2026dcf9
JDA
3023/*
3024 * Machine/OS name selection pattern
3025 */
3026#define apzHpux_Ctype_MacrosMachs (const char**)NULL
3027
3028/*
3029 * content selection pattern - do fix if pattern found
3030 */
3031tSCC zHpux_Ctype_MacrosSelect0[] =
3032 "((: |\\()__SB_masks \\? )(__SB_masks\\[__(alnum|c)\\] & _IS)";
3033
3034#define HPUX_CTYPE_MACROS_TEST_CT 1
3035static tTestDesc aHpux_Ctype_MacrosTests[] = {
3036 { TT_EGREP, zHpux_Ctype_MacrosSelect0, (regex_t*)NULL }, };
3037
3038/*
3039 * Fix Command Arguments for Hpux_Ctype_Macros
3040 */
3041static const char* apzHpux_Ctype_MacrosPatch[] = {
3042 "format",
3043 "%1(int)%3",
3044 (char*)NULL };
3045
7fbdc950
JM
3046/* * * * * * * * * * * * * * * * * * * * * * * * * *
3047 *
3048 * Description of Hpux_Htonl fix
3049 */
3050tSCC zHpux_HtonlName[] =
3051 "hpux_htonl";
3052
3053/*
3054 * File name selection pattern
3055 */
3056tSCC zHpux_HtonlList[] =
401be4b6 3057 "netinet/in.h\0";
7fbdc950
JM
3058/*
3059 * Machine/OS name selection pattern
3060 */
3061#define apzHpux_HtonlMachs (const char**)NULL
3062
3063/*
3064 * content selection pattern - do fix if pattern found
3065 */
3066tSCC zHpux_HtonlSelect0[] =
3067 "#ifndef _XOPEN_SOURCE_EXTENDED\n\
3068(/\\*\n\
3069 \\* Macros for number representation conversion\\.\n\
3070 \\*/\n\
3071#ifndef ntohl)";
3072
3073#define HPUX_HTONL_TEST_CT 1
3074static tTestDesc aHpux_HtonlTests[] = {
3075 { TT_EGREP, zHpux_HtonlSelect0, (regex_t*)NULL }, };
3076
3077/*
3078 * Fix Command Arguments for Hpux_Htonl
3079 */
3080static const char* apzHpux_HtonlPatch[] = {
3081 "format",
3082 "#if 1\n\
3083%1",
3084 (char*)NULL };
3085
b8d0bbf7
BK
3086/* * * * * * * * * * * * * * * * * * * * * * * * * *
3087 *
afc41460 3088 * Description of Hpux_Long_Double fix
b8d0bbf7 3089 */
afc41460
BK
3090tSCC zHpux_Long_DoubleName[] =
3091 "hpux_long_double";
b8d0bbf7
BK
3092
3093/*
3094 * File name selection pattern
3095 */
afc41460 3096tSCC zHpux_Long_DoubleList[] =
401be4b6 3097 "stdlib.h\0";
b8d0bbf7
BK
3098/*
3099 * Machine/OS name selection pattern
3100 */
afc41460 3101#define apzHpux_Long_DoubleMachs (const char**)NULL
b8d0bbf7
BK
3102
3103/*
3104 * content selection pattern - do fix if pattern found
3105 */
afc41460
BK
3106tSCC zHpux_Long_DoubleSelect0[] =
3107 "extern[ \t]long_double[ \t]strtold";
abf7cec7
GRK
3108
3109/*
afc41460 3110 * content bypass pattern - skip fix if pattern found
abf7cec7 3111 */
afc41460
BK
3112tSCC zHpux_Long_DoubleBypass0[] =
3113 "long_double_t";
abf7cec7 3114
afc41460
BK
3115#define HPUX_LONG_DOUBLE_TEST_CT 2
3116static tTestDesc aHpux_Long_DoubleTests[] = {
3117 { TT_NEGREP, zHpux_Long_DoubleBypass0, (regex_t*)NULL },
3118 { TT_EGREP, zHpux_Long_DoubleSelect0, (regex_t*)NULL }, };
abf7cec7
GRK
3119
3120/*
afc41460 3121 * Fix Command Arguments for Hpux_Long_Double
abf7cec7 3122 */
afc41460
BK
3123static const char* apzHpux_Long_DoublePatch[] = { "sed",
3124 "-e", "/^#[ \t]*ifndef _LONG_DOUBLE/,/\\/\\* _LONG_DOUBLE \\*\\//D",
3125 "-e", "s/long_double/long double/g",
abf7cec7
GRK
3126 (char*)NULL };
3127
06bbab1b
BK
3128/* * * * * * * * * * * * * * * * * * * * * * * * * *
3129 *
7b78a14a 3130 * Description of Hpux_Systime fix
06bbab1b 3131 */
7b78a14a
BK
3132tSCC zHpux_SystimeName[] =
3133 "hpux_systime";
3be1fb72 3134
06bbab1b
BK
3135/*
3136 * File name selection pattern
3137 */
7b78a14a 3138tSCC zHpux_SystimeList[] =
401be4b6 3139 "sys/time.h\0";
06bbab1b
BK
3140/*
3141 * Machine/OS name selection pattern
3142 */
7b78a14a 3143#define apzHpux_SystimeMachs (const char**)NULL
06bbab1b
BK
3144
3145/*
b51207a4 3146 * content selection pattern - do fix if pattern found
06bbab1b 3147 */
7b78a14a
BK
3148tSCC zHpux_SystimeSelect0[] =
3149 "^extern struct sigevent;";
06bbab1b 3150
7b78a14a
BK
3151#define HPUX_SYSTIME_TEST_CT 1
3152static tTestDesc aHpux_SystimeTests[] = {
3153 { TT_EGREP, zHpux_SystimeSelect0, (regex_t*)NULL }, };
06bbab1b
BK
3154
3155/*
7b78a14a 3156 * Fix Command Arguments for Hpux_Systime
06bbab1b 3157 */
7b78a14a 3158static const char* apzHpux_SystimePatch[] = {
79589c4d 3159 "format",
7b78a14a
BK
3160 "struct sigevent;",
3161 (char*)NULL };
3162
e084430d
SE
3163/* * * * * * * * * * * * * * * * * * * * * * * * * *
3164 *
3165 * Description of Hpux_Spu_Info fix
3166 */
3167tSCC zHpux_Spu_InfoName[] =
3168 "hpux_spu_info";
3169
3170/*
3171 * File name selection pattern
3172 */
3173tSCC zHpux_Spu_InfoList[] =
401be4b6 3174 "ia64/sys/getppdp.h\0";
e084430d
SE
3175/*
3176 * Machine/OS name selection pattern
3177 */
3178tSCC* apzHpux_Spu_InfoMachs[] = {
3179 "*-hp-hpux*",
3180 (const char*)NULL };
3181
3182/*
3183 * content selection pattern - do fix if pattern found
3184 */
3185tSCC zHpux_Spu_InfoSelect0[] =
3186 "^.*extern.*spu_info.*";
3187
3188#define HPUX_SPU_INFO_TEST_CT 1
3189static tTestDesc aHpux_Spu_InfoTests[] = {
3190 { TT_EGREP, zHpux_Spu_InfoSelect0, (regex_t*)NULL }, };
3191
3192/*
3193 * Fix Command Arguments for Hpux_Spu_Info
3194 */
3195static const char* apzHpux_Spu_InfoPatch[] = {
3196 "format",
3197 "#ifdef _KERNEL\n\
3198%0\n\
3199#endif",
3200 (char*)NULL };
3201
be645fd9
SE
3202/* * * * * * * * * * * * * * * * * * * * * * * * * *
3203 *
3204 * Description of Hpux11_Extern_Sendfile fix
3205 */
3206tSCC zHpux11_Extern_SendfileName[] =
3207 "hpux11_extern_sendfile";
3208
3209/*
3210 * File name selection pattern
3211 */
3212tSCC zHpux11_Extern_SendfileList[] =
401be4b6 3213 "sys/socket.h\0";
be645fd9
SE
3214/*
3215 * Machine/OS name selection pattern
3216 */
3217tSCC* apzHpux11_Extern_SendfileMachs[] = {
3218 "*-hp-hpux11.[12]*",
3219 (const char*)NULL };
3220
3221/*
3222 * content selection pattern - do fix if pattern found
3223 */
3224tSCC zHpux11_Extern_SendfileSelect0[] =
3225 "^[ \t]*extern sbsize_t sendfile.*\n\
3226.*, int\\)\\);\n";
3227
3228#define HPUX11_EXTERN_SENDFILE_TEST_CT 1
3229static tTestDesc aHpux11_Extern_SendfileTests[] = {
3230 { TT_EGREP, zHpux11_Extern_SendfileSelect0, (regex_t*)NULL }, };
3231
3232/*
3233 * Fix Command Arguments for Hpux11_Extern_Sendfile
3234 */
3235static const char* apzHpux11_Extern_SendfilePatch[] = {
3236 "format",
3237 "#ifndef _APP32_64BIT_OFF_T\n\
3238%0#endif\n",
3239 (char*)NULL };
3240
3241/* * * * * * * * * * * * * * * * * * * * * * * * * *
3242 *
3243 * Description of Hpux11_Extern_Sendpath fix
3244 */
3245tSCC zHpux11_Extern_SendpathName[] =
3246 "hpux11_extern_sendpath";
3247
3248/*
3249 * File name selection pattern
3250 */
3251tSCC zHpux11_Extern_SendpathList[] =
401be4b6 3252 "sys/socket.h\0";
be645fd9
SE
3253/*
3254 * Machine/OS name selection pattern
3255 */
3256tSCC* apzHpux11_Extern_SendpathMachs[] = {
3257 "*-hp-hpux11.[12]*",
3258 (const char*)NULL };
3259
3260/*
3261 * content selection pattern - do fix if pattern found
3262 */
3263tSCC zHpux11_Extern_SendpathSelect0[] =
3264 "^[ \t]*extern sbsize_t sendpath.*\n\
3265.*, int\\)\\);\n";
3266
3267#define HPUX11_EXTERN_SENDPATH_TEST_CT 1
3268static tTestDesc aHpux11_Extern_SendpathTests[] = {
3269 { TT_EGREP, zHpux11_Extern_SendpathSelect0, (regex_t*)NULL }, };
3270
3271/*
3272 * Fix Command Arguments for Hpux11_Extern_Sendpath
3273 */
3274static const char* apzHpux11_Extern_SendpathPatch[] = {
3275 "format",
3276 "#ifndef _APP32_64BIT_OFF_T\n\
3277%0#endif\n",
3278 (char*)NULL };
3279
e10e3ac8
SE
3280/* * * * * * * * * * * * * * * * * * * * * * * * * *
3281 *
3282 * Description of Hpux_Extern_Errno fix
3283 */
3284tSCC zHpux_Extern_ErrnoName[] =
3285 "hpux_extern_errno";
3286
3287/*
3288 * File name selection pattern
3289 */
3290tSCC zHpux_Extern_ErrnoList[] =
401be4b6 3291 "errno.h\0";
e10e3ac8
SE
3292/*
3293 * Machine/OS name selection pattern
3294 */
3295tSCC* apzHpux_Extern_ErrnoMachs[] = {
3296 "*-hp-hpux10.*",
3297 "*-hp-hpux11.[0-2]*",
3298 (const char*)NULL };
3299
3300/*
3301 * content selection pattern - do fix if pattern found
3302 */
3303tSCC zHpux_Extern_ErrnoSelect0[] =
3304 "^[ \t]*extern int errno;$";
3305
3306#define HPUX_EXTERN_ERRNO_TEST_CT 1
3307static tTestDesc aHpux_Extern_ErrnoTests[] = {
3308 { TT_EGREP, zHpux_Extern_ErrnoSelect0, (regex_t*)NULL }, };
3309
3310/*
3311 * Fix Command Arguments for Hpux_Extern_Errno
3312 */
3313static const char* apzHpux_Extern_ErrnoPatch[] = {
3314 "format",
3315 "#ifdef __cplusplus\n\
3316extern \"C\" {\n\
3317#endif\n\
3318%0\n\
3319#ifdef __cplusplus\n\
3320}\n\
3321#endif",
3322 (char*)NULL };
3323
6c65aa40
JDA
3324/* * * * * * * * * * * * * * * * * * * * * * * * * *
3325 *
3326 * Description of Hpux_Pthread_Initializers fix
3327 */
3328tSCC zHpux_Pthread_InitializersName[] =
3329 "hpux_pthread_initializers";
3330
3331/*
3332 * File name selection pattern
3333 */
3334tSCC zHpux_Pthread_InitializersList[] =
401be4b6 3335 "sys/pthread.h\0";
6c65aa40
JDA
3336/*
3337 * Machine/OS name selection pattern
3338 */
3339tSCC* apzHpux_Pthread_InitializersMachs[] = {
3340 "*-hp-hpux11.[0-3]*",
3341 (const char*)NULL };
3342#define HPUX_PTHREAD_INITIALIZERS_TEST_CT 0
3343#define aHpux_Pthread_InitializersTests (tTestDesc*)NULL
3344
3345/*
3346 * Fix Command Arguments for Hpux_Pthread_Initializers
3347 */
3348static const char* apzHpux_Pthread_InitializersPatch[] = { "sed",
3349 "-e", "s@^[ \t]*1, 1, 1, 1,[ \t]*\\\\@\t{ 1, 1, 1, 1 },\t\t\t\t\t\t\t\\\\@",
3350 "-e", "s@^[ \t]*1,[ \t]*\\\\@\t{ 1, 0 }@",
3351 "-e", "/^[ \t]*0$/d",
3352 "-e", "s@__PTHREAD_MUTEX_VALID, 0@{ __PTHREAD_MUTEX_VALID, 0 }@",
3353 "-e", "s@^[ \t]*0, 0, -1, 0,[ \t]*\\\\@\t{ 0, 0, -1, 0 },\t\t\t\t\t\t\\\\@",
3354 "-e", "s@0, __LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\@{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@",
3355 "-e", "s@^[ \t]*__LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\@\t{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@",
3356 "-e", "s@^[ \t]*0, 0[ \t]*\\\\@\t{ 0, 0 }\t\t\t\t\t\t\t\\\\@",
3357 "-e", "s@__PTHREAD_COND_VALID, 0@{ __PTHREAD_COND_VALID, 0 }@",
3358 "-e", "s@__LWP_COND_VALID, 0,[ \t]*\\\\@{ __LWP_COND_VALID, 0 },\t\t\t\t\t\\\\@",
3359 "-e", "s@__PTHREAD_RWLOCK_VALID, 0@{ __PTHREAD_RWLOCK_VALID, 0 }@",
3360 "-e", "s@__LWP_RWLOCK_VALID, 0,[ \t]*\\\\@{ __LWP_RWLOCK_VALID, 0 },\t\t\t\t\t\\\\@",
3361 "-e", "s@^[ \t]*0, 0, 0, 0, 0, 0, 0[ \t]*\\\\@\t{ 0, 0, 0, 0, 0 }, { 0, 0}\t\t\t\t\t\\\\@",
3362 (char*)NULL };
3363
77923c29
JM
3364/* * * * * * * * * * * * * * * * * * * * * * * * * *
3365 *
3366 * Description of Huge_Val_Hex fix
3367 */
3368tSCC zHuge_Val_HexName[] =
3369 "huge_val_hex";
3370
3371/*
3372 * File name selection pattern
3373 */
3374tSCC zHuge_Val_HexList[] =
401be4b6 3375 "bits/huge_val.h\0";
77923c29
JM
3376/*
3377 * Machine/OS name selection pattern
3378 */
3379#define apzHuge_Val_HexMachs (const char**)NULL
3380
3381/*
3382 * content selection pattern - do fix if pattern found
3383 */
3384tSCC zHuge_Val_HexSelect0[] =
3385 "^#[ \t]*define[ \t]*HUGE_VAL[ \t].*0x1\\.0p.*";
3386
3387/*
3388 * content bypass pattern - skip fix if pattern found
3389 */
3390tSCC zHuge_Val_HexBypass0[] =
3391 "__builtin_huge_val";
3392
3393#define HUGE_VAL_HEX_TEST_CT 2
3394static tTestDesc aHuge_Val_HexTests[] = {
3395 { TT_NEGREP, zHuge_Val_HexBypass0, (regex_t*)NULL },
3396 { TT_EGREP, zHuge_Val_HexSelect0, (regex_t*)NULL }, };
3397
3398/*
3399 * Fix Command Arguments for Huge_Val_Hex
3400 */
3401static const char* apzHuge_Val_HexPatch[] = {
3402 "format",
3403 "#define HUGE_VAL (__builtin_huge_val())\n",
3404 (char*)NULL };
3405
3406/* * * * * * * * * * * * * * * * * * * * * * * * * *
3407 *
3408 * Description of Huge_Valf_Hex fix
3409 */
3410tSCC zHuge_Valf_HexName[] =
3411 "huge_valf_hex";
3412
3413/*
3414 * File name selection pattern
3415 */
3416tSCC zHuge_Valf_HexList[] =
401be4b6 3417 "bits/huge_val.h\0";
77923c29
JM
3418/*
3419 * Machine/OS name selection pattern
3420 */
3421#define apzHuge_Valf_HexMachs (const char**)NULL
3422
3423/*
3424 * content selection pattern - do fix if pattern found
3425 */
3426tSCC zHuge_Valf_HexSelect0[] =
3427 "^#[ \t]*define[ \t]*HUGE_VALF[ \t].*0x1\\.0p.*";
3428
3429/*
3430 * content bypass pattern - skip fix if pattern found
3431 */
3432tSCC zHuge_Valf_HexBypass0[] =
3433 "__builtin_huge_valf";
3434
3435#define HUGE_VALF_HEX_TEST_CT 2
3436static tTestDesc aHuge_Valf_HexTests[] = {
3437 { TT_NEGREP, zHuge_Valf_HexBypass0, (regex_t*)NULL },
3438 { TT_EGREP, zHuge_Valf_HexSelect0, (regex_t*)NULL }, };
3439
3440/*
3441 * Fix Command Arguments for Huge_Valf_Hex
3442 */
3443static const char* apzHuge_Valf_HexPatch[] = {
3444 "format",
3445 "#define HUGE_VALF (__builtin_huge_valf())\n",
3446 (char*)NULL };
3447
3448/* * * * * * * * * * * * * * * * * * * * * * * * * *
3449 *
3450 * Description of Huge_Vall_Hex fix
3451 */
3452tSCC zHuge_Vall_HexName[] =
3453 "huge_vall_hex";
3454
3455/*
3456 * File name selection pattern
3457 */
3458tSCC zHuge_Vall_HexList[] =
401be4b6 3459 "bits/huge_val.h\0";
77923c29
JM
3460/*
3461 * Machine/OS name selection pattern
3462 */
3463#define apzHuge_Vall_HexMachs (const char**)NULL
3464
3465/*
3466 * content selection pattern - do fix if pattern found
3467 */
3468tSCC zHuge_Vall_HexSelect0[] =
3469 "^#[ \t]*define[ \t]*HUGE_VALL[ \t].*0x1\\.0p.*";
3470
3471/*
3472 * content bypass pattern - skip fix if pattern found
3473 */
3474tSCC zHuge_Vall_HexBypass0[] =
3475 "__builtin_huge_vall";
3476
3477#define HUGE_VALL_HEX_TEST_CT 2
3478static tTestDesc aHuge_Vall_HexTests[] = {
3479 { TT_NEGREP, zHuge_Vall_HexBypass0, (regex_t*)NULL },
3480 { TT_EGREP, zHuge_Vall_HexSelect0, (regex_t*)NULL }, };
3481
3482/*
3483 * Fix Command Arguments for Huge_Vall_Hex
3484 */
3485static const char* apzHuge_Vall_HexPatch[] = {
3486 "format",
3487 "#define HUGE_VALL (__builtin_huge_vall())\n",
3488 (char*)NULL };
3489
7b78a14a
BK
3490/* * * * * * * * * * * * * * * * * * * * * * * * * *
3491 *
3492 * Description of Int_Abort_Free_And_Exit fix
3493 */
3494tSCC zInt_Abort_Free_And_ExitName[] =
3495 "int_abort_free_and_exit";
3496
3497/*
3498 * File name selection pattern
3499 */
3500tSCC zInt_Abort_Free_And_ExitList[] =
401be4b6 3501 "stdlib.h\0";
7b78a14a
BK
3502/*
3503 * Machine/OS name selection pattern
3504 */
3505#define apzInt_Abort_Free_And_ExitMachs (const char**)NULL
3506
3507/*
3508 * content selection pattern - do fix if pattern found
3509 */
3510tSCC zInt_Abort_Free_And_ExitSelect0[] =
3511 "int[ \t]+(abort|free|exit)[ \t]*\\(";
3512
793387fa
JM
3513/*
3514 * content bypass pattern - skip fix if pattern found
3515 */
3516tSCC zInt_Abort_Free_And_ExitBypass0[] =
3517 "_CLASSIC_ANSI_TYPES";
3518
3519#define INT_ABORT_FREE_AND_EXIT_TEST_CT 2
7b78a14a 3520static tTestDesc aInt_Abort_Free_And_ExitTests[] = {
793387fa 3521 { TT_NEGREP, zInt_Abort_Free_And_ExitBypass0, (regex_t*)NULL },
7b78a14a
BK
3522 { TT_EGREP, zInt_Abort_Free_And_ExitSelect0, (regex_t*)NULL }, };
3523
3524/*
3525 * Fix Command Arguments for Int_Abort_Free_And_Exit
3526 */
3527static const char* apzInt_Abort_Free_And_ExitPatch[] = {
3528 "format",
3529 "void\t%1(",
06bbab1b
BK
3530 (char*)NULL };
3531
06bbab1b
BK
3532/* * * * * * * * * * * * * * * * * * * * * * * * * *
3533 *
88acf854 3534 * Description of Io_Quotes_Def fix
06bbab1b 3535 */
88acf854
BK
3536tSCC zIo_Quotes_DefName[] =
3537 "io_quotes_def";
3be1fb72 3538
06bbab1b
BK
3539/*
3540 * File name selection pattern
3541 */
88acf854 3542#define zIo_Quotes_DefList (char*)NULL
06bbab1b
BK
3543/*
3544 * Machine/OS name selection pattern
3545 */
88acf854 3546#define apzIo_Quotes_DefMachs (const char**)NULL
06bbab1b
BK
3547
3548/*
be02fa1a 3549 * content selection pattern - do fix if pattern found
06bbab1b 3550 */
88acf854 3551tSCC zIo_Quotes_DefSelect0[] =
cf6d5133 3552 "define[ \t]+[A-Z0-9_]+IO[A-Z]*\\([a-zA-Z][,)]";
06bbab1b 3553
88acf854 3554#define IO_QUOTES_DEF_TEST_CT 1
3af556f7 3555static tTestDesc aIo_Quotes_DefTests[] = {
88acf854 3556 { TT_EGREP, zIo_Quotes_DefSelect0, (regex_t*)NULL }, };
06bbab1b
BK
3557
3558/*
88acf854 3559 * Fix Command Arguments for Io_Quotes_Def
06bbab1b 3560 */
3af556f7 3561static const char* apzIo_Quotes_DefPatch[] = {
4c6d912f
ZW
3562 "char_macro_def",
3563 "IO",
5c0d5b94
ZW
3564 (char*)NULL };
3565
3566/* * * * * * * * * * * * * * * * * * * * * * * * * *
3567 *
99d05d99 3568 * Description of Io_Quotes_Use fix
5c0d5b94 3569 */
99d05d99
BK
3570tSCC zIo_Quotes_UseName[] =
3571 "io_quotes_use";
3be1fb72 3572
5c0d5b94
ZW
3573/*
3574 * File name selection pattern
3575 */
99d05d99 3576#define zIo_Quotes_UseList (char*)NULL
5c0d5b94
ZW
3577/*
3578 * Machine/OS name selection pattern
3579 */
99d05d99 3580#define apzIo_Quotes_UseMachs (const char**)NULL
5c0d5b94
ZW
3581
3582/*
3583 * content selection pattern - do fix if pattern found
3584 */
99d05d99
BK
3585tSCC zIo_Quotes_UseSelect0[] =
3586 "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+IO[A-Z]*[ \t]*\\( *[^,']";
5c0d5b94 3587
99d05d99 3588#define IO_QUOTES_USE_TEST_CT 1
3af556f7 3589static tTestDesc aIo_Quotes_UseTests[] = {
99d05d99 3590 { TT_EGREP, zIo_Quotes_UseSelect0, (regex_t*)NULL }, };
5c0d5b94
ZW
3591
3592/*
99d05d99 3593 * Fix Command Arguments for Io_Quotes_Use
5c0d5b94 3594 */
3af556f7 3595static const char* apzIo_Quotes_UsePatch[] = {
4c6d912f 3596 "char_macro_use",
99d05d99 3597 "IO",
06bbab1b
BK
3598 (char*)NULL };
3599
3600/* * * * * * * * * * * * * * * * * * * * * * * * * *
3601 *
7b78a14a 3602 * Description of Ip_Missing_Semi fix
06bbab1b 3603 */
7b78a14a
BK
3604tSCC zIp_Missing_SemiName[] =
3605 "ip_missing_semi";
3be1fb72 3606
06bbab1b
BK
3607/*
3608 * File name selection pattern
3609 */
7b78a14a 3610tSCC zIp_Missing_SemiList[] =
401be4b6 3611 "netinet/ip.h\0";
06bbab1b
BK
3612/*
3613 * Machine/OS name selection pattern
3614 */
7b78a14a 3615#define apzIp_Missing_SemiMachs (const char**)NULL
d7eb5a45
ZW
3616
3617/*
3618 * content selection pattern - do fix if pattern found
79589c4d 3619 */
7b78a14a
BK
3620tSCC zIp_Missing_SemiSelect0[] =
3621 "}$";
79589c4d 3622
7b78a14a
BK
3623#define IP_MISSING_SEMI_TEST_CT 1
3624static tTestDesc aIp_Missing_SemiTests[] = {
3625 { TT_EGREP, zIp_Missing_SemiSelect0, (regex_t*)NULL }, };
039df8c7
DA
3626
3627/*
7b78a14a 3628 * Fix Command Arguments for Ip_Missing_Semi
06bbab1b 3629 */
7b78a14a
BK
3630static const char* apzIp_Missing_SemiPatch[] = { "sed",
3631 "-e", "/^struct/,/^};/s/}$/};/",
06bbab1b
BK
3632 (char*)NULL };
3633
7a9cdb10
DD
3634/* * * * * * * * * * * * * * * * * * * * * * * * * *
3635 *
3636 * Description of Irix___Restrict fix
3637 */
3638tSCC zIrix___RestrictName[] =
3639 "irix___restrict";
3640
3641/*
3642 * File name selection pattern
3643 */
3644tSCC zIrix___RestrictList[] =
401be4b6 3645 "internal/sgimacros.h\0";
7a9cdb10
DD
3646/*
3647 * Machine/OS name selection pattern
3648 */
3649tSCC* apzIrix___RestrictMachs[] = {
3650 "mips-sgi-irix6.5",
3651 (const char*)NULL };
3652
3653/*
3654 * content selection pattern - do fix if pattern found
3655 */
3656tSCC zIrix___RestrictSelect0[] =
3657 "(#ifdef __c99\n\
3658)(#[ \t]*define __restrict restrict)";
3659
3660#define IRIX___RESTRICT_TEST_CT 1
3661static tTestDesc aIrix___RestrictTests[] = {
3662 { TT_EGREP, zIrix___RestrictSelect0, (regex_t*)NULL }, };
3663
3664/*
3665 * Fix Command Arguments for Irix___Restrict
3666 */
3667static const char* apzIrix___RestrictPatch[] = {
3668 "format",
3669 "%1# ifndef __cplusplus\n\
3670%2\n\
3671# endif",
3672 (char*)NULL };
3673
e0704143
RS
3674/* * * * * * * * * * * * * * * * * * * * * * * * * *
3675 *
3676 * Description of Irix___Generic1 fix
3677 */
3678tSCC zIrix___Generic1Name[] =
3679 "irix___generic1";
3680
3681/*
3682 * File name selection pattern
3683 */
3684tSCC zIrix___Generic1List[] =
401be4b6 3685 "internal/math_core.h\0";
e0704143
RS
3686/*
3687 * Machine/OS name selection pattern
3688 */
3689tSCC* apzIrix___Generic1Machs[] = {
3690 "mips-sgi-irix6.5",
3691 (const char*)NULL };
3692
3693/*
3694 * content selection pattern - do fix if pattern found
3695 */
3696tSCC zIrix___Generic1Select0[] =
3697 "#define ([a-z]+)\\(x\\) *__generic.*";
3698
3699#define IRIX___GENERIC1_TEST_CT 1
3700static tTestDesc aIrix___Generic1Tests[] = {
3701 { TT_EGREP, zIrix___Generic1Select0, (regex_t*)NULL }, };
3702
3703/*
3704 * Fix Command Arguments for Irix___Generic1
3705 */
3706static const char* apzIrix___Generic1Patch[] = {
3707 "format",
3708 "extern int %1(double);\n\
3709extern int %1f(float);\n\
3710extern int %1l(long double);\n\
3711#define %1(x) (sizeof(x) == sizeof(double) ? _%1(x) \\\n\
3712 : sizeof(x) == sizeof(float) ? _%1f(x) \\\n\
3713 : _%1l(x))\n",
3714 (char*)NULL };
3715
3716/* * * * * * * * * * * * * * * * * * * * * * * * * *
3717 *
3718 * Description of Irix___Generic2 fix
3719 */
3720tSCC zIrix___Generic2Name[] =
3721 "irix___generic2";
3722
3723/*
3724 * File name selection pattern
3725 */
3726tSCC zIrix___Generic2List[] =
401be4b6 3727 "internal/math_core.h\0";
e0704143
RS
3728/*
3729 * Machine/OS name selection pattern
3730 */
3731tSCC* apzIrix___Generic2Machs[] = {
3732 "mips-sgi-irix6.5",
3733 (const char*)NULL };
3734
3735/*
3736 * content selection pattern - do fix if pattern found
3737 */
3738tSCC zIrix___Generic2Select0[] =
3739 "#define ([a-z]+)\\(x,y\\) *__generic.*";
3740
3741#define IRIX___GENERIC2_TEST_CT 1
3742static tTestDesc aIrix___Generic2Tests[] = {
3743 { TT_EGREP, zIrix___Generic2Select0, (regex_t*)NULL }, };
3744
3745/*
3746 * Fix Command Arguments for Irix___Generic2
3747 */
3748static const char* apzIrix___Generic2Patch[] = {
3749 "format",
3750 "#define %1(x,y) \\\n\
3751 ((sizeof(x)<=4 && sizeof(y)<=4) ? _%1f(x,y) \\\n\
3752 : (sizeof(x)<=8 && sizeof(y)<=8) ? _%1(x,y) \\\n\
3753 : _%1l(x,y))\n",
3754 (char*)NULL };
3755
06bbab1b
BK
3756/* * * * * * * * * * * * * * * * * * * * * * * * * *
3757 *
7b78a14a 3758 * Description of Irix_Asm_Apostrophe fix
06bbab1b 3759 */
7b78a14a
BK
3760tSCC zIrix_Asm_ApostropheName[] =
3761 "irix_asm_apostrophe";
3be1fb72 3762
06bbab1b
BK
3763/*
3764 * File name selection pattern
3765 */
7b78a14a 3766tSCC zIrix_Asm_ApostropheList[] =
401be4b6 3767 "sys/asm.h\0";
06bbab1b
BK
3768/*
3769 * Machine/OS name selection pattern
3770 */
7b78a14a 3771#define apzIrix_Asm_ApostropheMachs (const char**)NULL
06bbab1b
BK
3772
3773/*
be02fa1a 3774 * content selection pattern - do fix if pattern found
06bbab1b 3775 */
7b78a14a
BK
3776tSCC zIrix_Asm_ApostropheSelect0[] =
3777 "^[ \t]*#.*[Ww]e're";
3be1fb72 3778
7b78a14a
BK
3779#define IRIX_ASM_APOSTROPHE_TEST_CT 1
3780static tTestDesc aIrix_Asm_ApostropheTests[] = {
3781 { TT_EGREP, zIrix_Asm_ApostropheSelect0, (regex_t*)NULL }, };
06bbab1b
BK
3782
3783/*
7b78a14a 3784 * Fix Command Arguments for Irix_Asm_Apostrophe
06bbab1b 3785 */
7b78a14a 3786static const char* apzIrix_Asm_ApostrophePatch[] = {
a8228686 3787 "format",
7b78a14a
BK
3788 "%1 are",
3789 "^([ \t]*#.*[Ww]e)'re",
06bbab1b
BK
3790 (char*)NULL };
3791
3792/* * * * * * * * * * * * * * * * * * * * * * * * * *
3793 *
7b78a14a 3794 * Description of Irix_Limits_Const fix
94cc6036 3795 */
7b78a14a
BK
3796tSCC zIrix_Limits_ConstName[] =
3797 "irix_limits_const";
3be1fb72 3798
94cc6036
BK
3799/*
3800 * File name selection pattern
3801 */
7b78a14a 3802tSCC zIrix_Limits_ConstList[] =
401be4b6 3803 "fixinc-test-limits.h\0limits.h\0";
94cc6036
BK
3804/*
3805 * Machine/OS name selection pattern
3806 */
7b78a14a 3807#define apzIrix_Limits_ConstMachs (const char**)NULL
94cc6036
BK
3808
3809/*
3810 * content selection pattern - do fix if pattern found
3811 */
7b78a14a
BK
3812tSCC zIrix_Limits_ConstSelect0[] =
3813 "^extern const ";
94cc6036 3814
7b78a14a
BK
3815#define IRIX_LIMITS_CONST_TEST_CT 1
3816static tTestDesc aIrix_Limits_ConstTests[] = {
3817 { TT_EGREP, zIrix_Limits_ConstSelect0, (regex_t*)NULL }, };
94cc6036
BK
3818
3819/*
7b78a14a 3820 * Fix Command Arguments for Irix_Limits_Const
94cc6036 3821 */
7b78a14a 3822static const char* apzIrix_Limits_ConstPatch[] = {
79589c4d 3823 "format",
7b78a14a 3824 "extern __const ",
06bbab1b
BK
3825 (char*)NULL };
3826
f23147fe
RO
3827/* * * * * * * * * * * * * * * * * * * * * * * * * *
3828 *
3829 * Description of Irix_Socklen_T fix
3830 */
3831tSCC zIrix_Socklen_TName[] =
3832 "irix_socklen_t";
3833
3834/*
3835 * File name selection pattern
3836 */
3837tSCC zIrix_Socklen_TList[] =
401be4b6 3838 "sys/socket.h\0";
f23147fe
RO
3839/*
3840 * Machine/OS name selection pattern
3841 */
3842tSCC* apzIrix_Socklen_TMachs[] = {
3843 "mips-sgi-irix6.5",
3844 (const char*)NULL };
3845
3846/*
3847 * content selection pattern - do fix if pattern found
3848 */
3849tSCC zIrix_Socklen_TSelect0[] =
3850 "(#define _SOCKLEN_T\n\
3851)(typedef u_int32_t socklen_t;)";
3852
3853#define IRIX_SOCKLEN_T_TEST_CT 1
3854static tTestDesc aIrix_Socklen_TTests[] = {
3855 { TT_EGREP, zIrix_Socklen_TSelect0, (regex_t*)NULL }, };
3856
3857/*
3858 * Fix Command Arguments for Irix_Socklen_T
3859 */
3860static const char* apzIrix_Socklen_TPatch[] = {
3861 "format",
3862 "%1#if _NO_XOPEN4 && _NO_XOPEN5\n\
3863typedef int socklen_t;\n\
3864#else\n\
3865%2\n\
3866#endif /* _NO_XOPEN4 && _NO_XOPEN5 */",
3867 (char*)NULL };
3868
3b3a1054
BK
3869/* * * * * * * * * * * * * * * * * * * * * * * * * *
3870 *
3871 * Description of Irix_Stdio_Va_List fix
3872 */
3b3a1054
BK
3873tSCC zIrix_Stdio_Va_ListName[] =
3874 "irix_stdio_va_list";
3875
3876/*
3877 * File name selection pattern
3878 */
3879tSCC zIrix_Stdio_Va_ListList[] =
401be4b6 3880 "stdio.h\0internal/stdio_core.h\0";
3b3a1054
BK
3881/*
3882 * Machine/OS name selection pattern
3883 */
3884#define apzIrix_Stdio_Va_ListMachs (const char**)NULL
3885
3886/*
3887 * content selection pattern - do fix if pattern found
3888 */
3889tSCC zIrix_Stdio_Va_ListSelect0[] =
9a557707 3890 "/\\* va_list \\*/ char \\*";
3b3a1054
BK
3891
3892#define IRIX_STDIO_VA_LIST_TEST_CT 1
3893static tTestDesc aIrix_Stdio_Va_ListTests[] = {
3894 { TT_EGREP, zIrix_Stdio_Va_ListSelect0, (regex_t*)NULL }, };
3895
3896/*
3897 * Fix Command Arguments for Irix_Stdio_Va_List
3898 */
3899static const char* apzIrix_Stdio_Va_ListPatch[] = {
3900 "format",
9a557707 3901 "__gnuc_va_list",
3b3a1054
BK
3902 (char*)NULL };
3903
f23147fe
RO
3904/* * * * * * * * * * * * * * * * * * * * * * * * * *
3905 *
3906 * Description of Irix_Wcsftime fix
3907 */
3908tSCC zIrix_WcsftimeName[] =
3909 "irix_wcsftime";
3910
3911/*
3912 * File name selection pattern
3913 */
3914tSCC zIrix_WcsftimeList[] =
401be4b6 3915 "internal/wchar_core.h\0";
f23147fe
RO
3916/*
3917 * Machine/OS name selection pattern
3918 */
3919tSCC* apzIrix_WcsftimeMachs[] = {
3920 "mips-sgi-irix6.5",
3921 (const char*)NULL };
3922
3923/*
3924 * content selection pattern - do fix if pattern found
3925 */
3926tSCC zIrix_WcsftimeSelect0[] =
3927 "#if _NO_XOPEN5\n\
3928(extern size_t[ \t]+wcsftime.*const char *.*)";
3929
3930#define IRIX_WCSFTIME_TEST_CT 1
3931static tTestDesc aIrix_WcsftimeTests[] = {
3932 { TT_EGREP, zIrix_WcsftimeSelect0, (regex_t*)NULL }, };
3933
3934/*
3935 * Fix Command Arguments for Irix_Wcsftime
3936 */
3937static const char* apzIrix_WcsftimePatch[] = {
3938 "format",
3939 "#if _NO_XOPEN5 && !defined(__c99)\n\
3940%1",
3941 (char*)NULL };
3942
8d8d5752
JO
3943/* * * * * * * * * * * * * * * * * * * * * * * * * *
3944 *
7b78a14a 3945 * Description of Isc_Fmod fix
8d8d5752 3946 */
7b78a14a
BK
3947tSCC zIsc_FmodName[] =
3948 "isc_fmod";
8d8d5752
JO
3949
3950/*
3951 * File name selection pattern
3952 */
7b78a14a 3953tSCC zIsc_FmodList[] =
401be4b6 3954 "math.h\0";
8d8d5752
JO
3955/*
3956 * Machine/OS name selection pattern
3957 */
7b78a14a 3958#define apzIsc_FmodMachs (const char**)NULL
8d8d5752
JO
3959
3960/*
3961 * content selection pattern - do fix if pattern found
3962 */
7b78a14a
BK
3963tSCC zIsc_FmodSelect0[] =
3964 "fmod\\(double\\)";
8d8d5752 3965
7b78a14a
BK
3966#define ISC_FMOD_TEST_CT 1
3967static tTestDesc aIsc_FmodTests[] = {
3968 { TT_EGREP, zIsc_FmodSelect0, (regex_t*)NULL }, };
8d8d5752
JO
3969
3970/*
7b78a14a 3971 * Fix Command Arguments for Isc_Fmod
8d8d5752 3972 */
7b78a14a 3973static const char* apzIsc_FmodPatch[] = {
8d8d5752 3974 "format",
7b78a14a 3975 "fmod(double, double)",
8d8d5752
JO
3976 (char*)NULL };
3977
06bbab1b
BK
3978/* * * * * * * * * * * * * * * * * * * * * * * * * *
3979 *
7b78a14a 3980 * Description of Isc_Omits_With_Stdc fix
06bbab1b 3981 */
7b78a14a
BK
3982tSCC zIsc_Omits_With_StdcName[] =
3983 "isc_omits_with_stdc";
3be1fb72 3984
06bbab1b
BK
3985/*
3986 * File name selection pattern
3987 */
7b78a14a 3988tSCC zIsc_Omits_With_StdcList[] =
401be4b6 3989 "stdio.h\0math.h\0ctype.h\0sys/limits.h\0sys/fcntl.h\0sys/dirent.h\0";
06bbab1b
BK
3990/*
3991 * Machine/OS name selection pattern
3992 */
7b78a14a 3993#define apzIsc_Omits_With_StdcMachs (const char**)NULL
06bbab1b
BK
3994
3995/*
be02fa1a 3996 * content selection pattern - do fix if pattern found
06bbab1b 3997 */
7b78a14a
BK
3998tSCC zIsc_Omits_With_StdcSelect0[] =
3999 "!defined\\(__STDC__\\) && !defined\\(_POSIX_SOURCE\\)";
06bbab1b 4000
7b78a14a
BK
4001#define ISC_OMITS_WITH_STDC_TEST_CT 1
4002static tTestDesc aIsc_Omits_With_StdcTests[] = {
4003 { TT_EGREP, zIsc_Omits_With_StdcSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4004
4005/*
7b78a14a 4006 * Fix Command Arguments for Isc_Omits_With_Stdc
06bbab1b 4007 */
7b78a14a 4008static const char* apzIsc_Omits_With_StdcPatch[] = {
79589c4d 4009 "format",
7b78a14a 4010 "!defined(_POSIX_SOURCE)",
06bbab1b
BK
4011 (char*)NULL };
4012
4013/* * * * * * * * * * * * * * * * * * * * * * * * * *
4014 *
5abc1f74 4015 * Description of Kandr_Concat fix
06bbab1b
BK
4016 */
4017tSCC zKandr_ConcatName[] =
3be1fb72
ZW
4018 "kandr_concat";
4019
06bbab1b
BK
4020/*
4021 * File name selection pattern
4022 */
4023tSCC zKandr_ConcatList[] =
401be4b6 4024 "sparc/asm_linkage.h\0sun*/asm_linkage.h\0arm/as_support.h\0arm/mc_type.h\0arm/xcb.h\0dev/chardefmac.h\0dev/ps_irq.h\0dev/screen.h\0dev/scsi.h\0sys/tty.h\0Xm.acorn/XmP.h\0bsd43/bsd43_.h\0";
06bbab1b
BK
4025/*
4026 * Machine/OS name selection pattern
4027 */
4028#define apzKandr_ConcatMachs (const char**)NULL
4029
4030/*
be02fa1a 4031 * content selection pattern - do fix if pattern found
06bbab1b
BK
4032 */
4033tSCC zKandr_ConcatSelect0[] =
4034 "/\\*\\*/";
4035
4036#define KANDR_CONCAT_TEST_CT 1
3af556f7 4037static tTestDesc aKandr_ConcatTests[] = {
5abc1f74 4038 { TT_EGREP, zKandr_ConcatSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4039
4040/*
4041 * Fix Command Arguments for Kandr_Concat
4042 */
3af556f7 4043static const char* apzKandr_ConcatPatch[] = {
79589c4d
BK
4044 "format",
4045 "##",
06bbab1b
BK
4046 (char*)NULL };
4047
27eaa708
BK
4048/* * * * * * * * * * * * * * * * * * * * * * * * * *
4049 *
4050 * Description of Libc1_G_Va_List fix
4051 */
4052tSCC zLibc1_G_Va_ListName[] =
4053 "libc1_G_va_list";
4054
4055/*
4056 * File name selection pattern
4057 */
4058tSCC zLibc1_G_Va_ListList[] =
401be4b6 4059 "_G_config.h\0";
27eaa708
BK
4060/*
4061 * Machine/OS name selection pattern
4062 */
4063tSCC* apzLibc1_G_Va_ListMachs[] = {
4064 "*-*-linux*libc1",
4065 (const char*)NULL };
4066
4067/*
4068 * content selection pattern - do fix if pattern found
4069 */
4070tSCC zLibc1_G_Va_ListSelect0[] =
4071 "typedef void \\* _G_va_list;";
4072
4073#define LIBC1_G_VA_LIST_TEST_CT 1
4074static tTestDesc aLibc1_G_Va_ListTests[] = {
4075 { TT_EGREP, zLibc1_G_Va_ListSelect0, (regex_t*)NULL }, };
4076
4077/*
4078 * Fix Command Arguments for Libc1_G_Va_List
4079 */
4080static const char* apzLibc1_G_Va_ListPatch[] = {
4081 "format",
4082 "typedef __builtin_va_list _G_va_list;",
4083 (char*)NULL };
4084
62a37b6f
HPN
4085/* * * * * * * * * * * * * * * * * * * * * * * * * *
4086 *
4087 * Description of Libc1_Ifdefd_Memx fix
4088 */
62a37b6f
HPN
4089tSCC zLibc1_Ifdefd_MemxName[] =
4090 "libc1_ifdefd_memx";
4091
4092/*
4093 * File name selection pattern
4094 */
4095tSCC zLibc1_Ifdefd_MemxList[] =
401be4b6 4096 "testing.h\0string.h\0";
62a37b6f
HPN
4097/*
4098 * Machine/OS name selection pattern
4099 */
4100#define apzLibc1_Ifdefd_MemxMachs (const char**)NULL
4101
4102/*
4103 * content selection pattern - do fix if pattern found
4104 */
4105tSCC zLibc1_Ifdefd_MemxSelect0[] =
4106 "' is a built-in function for gcc 2\\.x\\. \\*/";
4107
4108/*
4109 * content bypass pattern - skip fix if pattern found
4110 */
4111tSCC zLibc1_Ifdefd_MemxBypass0[] =
4112 "__cplusplus";
4113
4114#define LIBC1_IFDEFD_MEMX_TEST_CT 2
3af556f7 4115static tTestDesc aLibc1_Ifdefd_MemxTests[] = {
62a37b6f
HPN
4116 { TT_NEGREP, zLibc1_Ifdefd_MemxBypass0, (regex_t*)NULL },
4117 { TT_EGREP, zLibc1_Ifdefd_MemxSelect0, (regex_t*)NULL }, };
4118
4119/*
4120 * Fix Command Arguments for Libc1_Ifdefd_Memx
4121 */
3af556f7 4122static const char* apzLibc1_Ifdefd_MemxPatch[] = {
62a37b6f 4123 "format",
4f923eb8 4124 "%1",
62a37b6f 4125 "/\\* `mem...' is a built-in function for gcc 2\\.x\\. \\*/\n\
4f923eb8 4126#if defined\\(__STDC__\\) && __GNUC__ < 2\n\
62a37b6f 4127(/\\* .* \\*/\n\
4f923eb8
BK
4128extern [a-z_]+ mem.*(\n\
4129[^#].*)*;)\n\
4130#endif",
62a37b6f
HPN
4131 (char*)NULL };
4132
fa71a5c3
RS
4133/* * * * * * * * * * * * * * * * * * * * * * * * * *
4134 *
4135 * Description of Linux_Ia64_Ucontext fix
4136 */
4137tSCC zLinux_Ia64_UcontextName[] =
4138 "linux_ia64_ucontext";
4139
4140/*
4141 * File name selection pattern
4142 */
4143tSCC zLinux_Ia64_UcontextList[] =
401be4b6 4144 "sys/ucontext.h\0";
fa71a5c3
RS
4145/*
4146 * Machine/OS name selection pattern
4147 */
4148tSCC* apzLinux_Ia64_UcontextMachs[] = {
4149 "ia64-*-linux*",
4150 (const char*)NULL };
4151
4152/*
4153 * content selection pattern - do fix if pattern found
4154 */
4155tSCC zLinux_Ia64_UcontextSelect0[] =
4156 "\\(\\(\\(char \\*\\) &\\(\\(struct sigcontext \\*\\) 0\\)->sc_gr\\[0\\]\\) - \\(char \\*\\) 0\\)";
4157
4158#define LINUX_IA64_UCONTEXT_TEST_CT 1
4159static tTestDesc aLinux_Ia64_UcontextTests[] = {
4160 { TT_EGREP, zLinux_Ia64_UcontextSelect0, (regex_t*)NULL }, };
4161
4162/*
4163 * Fix Command Arguments for Linux_Ia64_Ucontext
4164 */
4165static const char* apzLinux_Ia64_UcontextPatch[] = {
4166 "format",
4167 "__builtin_offsetof (struct sigcontext, sc_gr[0])",
4168 (char*)NULL };
4169
06bbab1b
BK
4170/* * * * * * * * * * * * * * * * * * * * * * * * * *
4171 *
d635c707 4172 * Description of Lynxos_No_Warning_In_Sys_Time_H fix
06bbab1b 4173 */
d635c707
AN
4174tSCC zLynxos_No_Warning_In_Sys_Time_HName[] =
4175 "lynxos_no_warning_in_sys_time_h";
3be1fb72 4176
06bbab1b
BK
4177/*
4178 * File name selection pattern
4179 */
d635c707 4180tSCC zLynxos_No_Warning_In_Sys_Time_HList[] =
401be4b6 4181 "sys/time.h\0";
06bbab1b
BK
4182/*
4183 * Machine/OS name selection pattern
4184 */
d635c707 4185#define apzLynxos_No_Warning_In_Sys_Time_HMachs (const char**)NULL
06bbab1b
BK
4186
4187/*
be02fa1a 4188 * content selection pattern - do fix if pattern found
06bbab1b 4189 */
d635c707
AN
4190tSCC zLynxos_No_Warning_In_Sys_Time_HSelect0[] =
4191 "#warning[ \t]+Using <time.h> instead of <sys/time.h>";
06bbab1b 4192
d635c707
AN
4193#define LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT 1
4194static tTestDesc aLynxos_No_Warning_In_Sys_Time_HTests[] = {
4195 { TT_EGREP, zLynxos_No_Warning_In_Sys_Time_HSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4196
4197/*
d635c707 4198 * Fix Command Arguments for Lynxos_No_Warning_In_Sys_Time_H
06bbab1b 4199 */
d635c707 4200static const char* apzLynxos_No_Warning_In_Sys_Time_HPatch[] = {
79589c4d
BK
4201 "format",
4202 "",
06bbab1b
BK
4203 (char*)NULL };
4204
4205/* * * * * * * * * * * * * * * * * * * * * * * * * *
4206 *
d635c707 4207 * Description of Lynxos_Missing_Putenv fix
06bbab1b 4208 */
d635c707
AN
4209tSCC zLynxos_Missing_PutenvName[] =
4210 "lynxos_missing_putenv";
3be1fb72 4211
06bbab1b
BK
4212/*
4213 * File name selection pattern
4214 */
d635c707 4215tSCC zLynxos_Missing_PutenvList[] =
401be4b6 4216 "stdlib.h\0";
06bbab1b
BK
4217/*
4218 * Machine/OS name selection pattern
4219 */
d635c707
AN
4220tSCC* apzLynxos_Missing_PutenvMachs[] = {
4221 "*-*-lynxos*",
4222 (const char*)NULL };
48bd9529
BK
4223
4224/*
be02fa1a 4225 * content selection pattern - do fix if pattern found
48bd9529 4226 */
d635c707
AN
4227tSCC zLynxos_Missing_PutenvSelect0[] =
4228 "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);";
48bd9529 4229
d635c707
AN
4230/*
4231 * content bypass pattern - skip fix if pattern found
4232 */
4233tSCC zLynxos_Missing_PutenvBypass0[] =
4234 "putenv[ \\t]*\\(";
4235
4236#define LYNXOS_MISSING_PUTENV_TEST_CT 2
4237static tTestDesc aLynxos_Missing_PutenvTests[] = {
4238 { TT_NEGREP, zLynxos_Missing_PutenvBypass0, (regex_t*)NULL },
4239 { TT_EGREP, zLynxos_Missing_PutenvSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4240
4241/*
d635c707 4242 * Fix Command Arguments for Lynxos_Missing_Putenv
06bbab1b 4243 */
d635c707 4244static const char* apzLynxos_Missing_PutenvPatch[] = {
79589c4d 4245 "format",
d635c707
AN
4246 "%0\n\
4247extern int putenv\t\t\t\t_AP((char *));",
4248 "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);",
06bbab1b
BK
4249 (char*)NULL };
4250
3be1fb72
ZW
4251/* * * * * * * * * * * * * * * * * * * * * * * * * *
4252 *
4253 * Description of Machine_Ansi_H_Va_List fix
4254 */
3be1fb72
ZW
4255tSCC zMachine_Ansi_H_Va_ListName[] =
4256 "machine_ansi_h_va_list";
4257
4258/*
4259 * File name selection pattern
4260 */
1435059e 4261#define zMachine_Ansi_H_Va_ListList (char*)NULL
3be1fb72
ZW
4262/*
4263 * Machine/OS name selection pattern
4264 */
4265#define apzMachine_Ansi_H_Va_ListMachs (const char**)NULL
4266
4267/*
4268 * content selection pattern - do fix if pattern found
4269 */
4270tSCC zMachine_Ansi_H_Va_ListSelect0[] =
a8228686 4271 "define[ \t]+_BSD_VA_LIST_[ \t]";
3be1fb72
ZW
4272
4273/*
4274 * content bypass pattern - skip fix if pattern found
4275 */
4276tSCC zMachine_Ansi_H_Va_ListBypass0[] =
4277 "__builtin_va_list";
4278
4279#define MACHINE_ANSI_H_VA_LIST_TEST_CT 2
3af556f7 4280static tTestDesc aMachine_Ansi_H_Va_ListTests[] = {
3be1fb72
ZW
4281 { TT_NEGREP, zMachine_Ansi_H_Va_ListBypass0, (regex_t*)NULL },
4282 { TT_EGREP, zMachine_Ansi_H_Va_ListSelect0, (regex_t*)NULL }, };
4283
4284/*
4285 * Fix Command Arguments for Machine_Ansi_H_Va_List
4286 */
3af556f7 4287static const char* apzMachine_Ansi_H_Va_ListPatch[] = {
a8228686
BK
4288 "format",
4289 "%1__builtin_va_list",
4290 "(define[ \t]+_BSD_VA_LIST_[ \t]+).*",
3be1fb72
ZW
4291 (char*)NULL };
4292
06bbab1b
BK
4293/* * * * * * * * * * * * * * * * * * * * * * * * * *
4294 *
5abc1f74 4295 * Description of Machine_Name fix
06bbab1b
BK
4296 */
4297tSCC zMachine_NameName[] =
3be1fb72
ZW
4298 "machine_name";
4299
06bbab1b
BK
4300/*
4301 * File name selection pattern
4302 */
4303#define zMachine_NameList (char*)NULL
4304/*
4305 * Machine/OS name selection pattern
4306 */
4307#define apzMachine_NameMachs (const char**)NULL
4308
4309/*
52c207e2 4310 * perform the C function call test
06bbab1b 4311 */
52c207e2 4312tSCC zMachine_NameFTst0[] = "machine_name";
06bbab1b
BK
4313
4314#define MACHINE_NAME_TEST_CT 1
3af556f7 4315static tTestDesc aMachine_NameTests[] = {
52c207e2 4316 { TT_FUNCTION, zMachine_NameFTst0, 0 /* unused */ }, };
06bbab1b
BK
4317
4318/*
4319 * Fix Command Arguments for Machine_Name
4320 */
3af556f7 4321static const char* apzMachine_NamePatch[] = {
f5b105ca 4322 "machine_name",
06bbab1b
BK
4323 (char*)NULL };
4324
4325/* * * * * * * * * * * * * * * * * * * * * * * * * *
4326 *
5abc1f74 4327 * Description of Math_Exception fix
06bbab1b
BK
4328 */
4329tSCC zMath_ExceptionName[] =
3be1fb72
ZW
4330 "math_exception";
4331
06bbab1b
BK
4332/*
4333 * File name selection pattern
4334 */
4335tSCC zMath_ExceptionList[] =
401be4b6 4336 "math.h\0";
06bbab1b
BK
4337/*
4338 * Machine/OS name selection pattern
4339 */
4340#define apzMath_ExceptionMachs (const char**)NULL
4341
4342/*
be02fa1a 4343 * content selection pattern - do fix if pattern found
06bbab1b
BK
4344 */
4345tSCC zMath_ExceptionSelect0[] =
4346 "struct exception";
4347
d7eb5a45
ZW
4348/*
4349 * content bypass pattern - skip fix if pattern found
4350 */
4351tSCC zMath_ExceptionBypass0[] =
61fec9ff 4352 "We have a problem when using C\\+\\+|for C\\+\\+, _[a-z0-9A-Z_]+_exception; for C, exception";
d7eb5a45
ZW
4353
4354#define MATH_EXCEPTION_TEST_CT 2
3af556f7 4355static tTestDesc aMath_ExceptionTests[] = {
d7eb5a45 4356 { TT_NEGREP, zMath_ExceptionBypass0, (regex_t*)NULL },
5abc1f74 4357 { TT_EGREP, zMath_ExceptionSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4358
4359/*
4360 * Fix Command Arguments for Math_Exception
4361 */
3af556f7 4362static const char* apzMath_ExceptionPatch[] = {
ba8fcfc3
BK
4363 "wrap",
4364 "#ifdef __cplusplus\n\
4365#define exception __math_exception\n\
c329beb0 4366#endif\n",
ba8fcfc3
BK
4367 "#ifdef __cplusplus\n\
4368#undef exception\n\
c329beb0 4369#endif\n",
06bbab1b
BK
4370 (char*)NULL };
4371
4372/* * * * * * * * * * * * * * * * * * * * * * * * * *
4373 *
d7eb5a45 4374 * Description of Math_Huge_Val_From_Dbl_Max fix
06bbab1b 4375 */
d7eb5a45 4376tSCC zMath_Huge_Val_From_Dbl_MaxName[] =
3be1fb72
ZW
4377 "math_huge_val_from_dbl_max";
4378
06bbab1b
BK
4379/*
4380 * File name selection pattern
4381 */
d7eb5a45 4382tSCC zMath_Huge_Val_From_Dbl_MaxList[] =
401be4b6 4383 "math.h\0";
06bbab1b
BK
4384/*
4385 * Machine/OS name selection pattern
4386 */
d7eb5a45
ZW
4387#define apzMath_Huge_Val_From_Dbl_MaxMachs (const char**)NULL
4388
4389/*
4390 * content selection pattern - do fix if pattern found
4391 */
4392tSCC zMath_Huge_Val_From_Dbl_MaxSelect0[] =
b5e20633 4393 "define[ \t]+HUGE_VAL[ \t]+DBL_MAX";
06bbab1b
BK
4394
4395/*
d7eb5a45 4396 * content bypass pattern - skip fix if pattern found
06bbab1b 4397 */
d7eb5a45 4398tSCC zMath_Huge_Val_From_Dbl_MaxBypass0[] =
b5e20633 4399 "define[ \t]+DBL_MAX";
d7eb5a45
ZW
4400
4401#define MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT 2
3af556f7 4402static tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = {
d7eb5a45
ZW
4403 { TT_NEGREP, zMath_Huge_Val_From_Dbl_MaxBypass0, (regex_t*)NULL },
4404 { TT_EGREP, zMath_Huge_Val_From_Dbl_MaxSelect0, (regex_t*)NULL }, };
4405
4406/*
4407 * Fix Command Arguments for Math_Huge_Val_From_Dbl_Max
4408 */
3af556f7 4409static const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c",
dac32862 4410 "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h | sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n\
d7eb5a45 4411\tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\
b5e20633 4412\tthen sed -e '/define[ \t]*HUGE_VAL[ \t]*DBL_MAX/s@DBL_MAX@'\"$dbl_max_def@\"\n\
d7eb5a45
ZW
4413\telse cat\n\
4414\tfi",
4415 (char*)NULL };
4416
7b78a14a
BK
4417/* * * * * * * * * * * * * * * * * * * * * * * * * *
4418 *
4419 * Description of Nested_Auth_Des fix
4420 */
4421tSCC zNested_Auth_DesName[] =
4422 "nested_auth_des";
4423
4424/*
4425 * File name selection pattern
4426 */
4427tSCC zNested_Auth_DesList[] =
401be4b6 4428 "rpc/rpc.h\0";
7b78a14a
BK
4429/*
4430 * Machine/OS name selection pattern
4431 */
4432#define apzNested_Auth_DesMachs (const char**)NULL
4433
4434/*
4435 * content selection pattern - do fix if pattern found
4436 */
4437tSCC zNested_Auth_DesSelect0[] =
4438 "(/\\*.*rpc/auth_des\\.h>.*)/\\*";
4439
4440#define NESTED_AUTH_DES_TEST_CT 1
4441static tTestDesc aNested_Auth_DesTests[] = {
4442 { TT_EGREP, zNested_Auth_DesSelect0, (regex_t*)NULL }, };
4443
4444/*
4445 * Fix Command Arguments for Nested_Auth_Des
4446 */
4447static const char* apzNested_Auth_DesPatch[] = {
4448 "format",
4449 "%1*/ /*",
4450 (char*)NULL };
4451
06bbab1b
BK
4452/* * * * * * * * * * * * * * * * * * * * * * * * * *
4453 *
79589c4d
BK
4454 * Description of Nested_Motorola fix
4455 */
79589c4d
BK
4456tSCC zNested_MotorolaName[] =
4457 "nested_motorola";
4458
4459/*
4460 * File name selection pattern
4461 */
4462tSCC zNested_MotorolaList[] =
401be4b6 4463 "sys/limits.h\0limits.h\0";
79589c4d
BK
4464/*
4465 * Machine/OS name selection pattern
4466 */
4467tSCC* apzNested_MotorolaMachs[] = {
4468 "m68k-motorola-sysv*",
4469 (const char*)NULL };
b5e20633
BK
4470
4471/*
4472 * content selection pattern - do fix if pattern found
4473 */
4474tSCC zNested_MotorolaSelect0[] =
4475 "max # bytes atomic in write|error value returned by Math lib";
4476
4477#define NESTED_MOTOROLA_TEST_CT 1
3af556f7 4478static tTestDesc aNested_MotorolaTests[] = {
b5e20633 4479 { TT_EGREP, zNested_MotorolaSelect0, (regex_t*)NULL }, };
79589c4d
BK
4480
4481/*
4482 * Fix Command Arguments for Nested_Motorola
4483 */
3af556f7 4484static const char* apzNested_MotorolaPatch[] = { "sed",
79589c4d
BK
4485 "-e", "s@^\\(#undef[ \t][ \t]*PIPE_BUF[ \t]*/\\* max # bytes atomic in write to a\\)$@\\1 */@",
4486 "-e", "s@\\(/\\*#define\tHUGE_VAL\t3.[0-9e+]* \\)\\(/\\*error value returned by Math lib\\*/\\)$@\\1*/ \\2@",
4487 (char*)NULL };
4488
4489/* * * * * * * * * * * * * * * * * * * * * * * * * *
4490 *
4491 * Description of Nested_Sys_Limits fix
4492 */
79589c4d
BK
4493tSCC zNested_Sys_LimitsName[] =
4494 "nested_sys_limits";
4495
4496/*
4497 * File name selection pattern
4498 */
4499tSCC zNested_Sys_LimitsList[] =
401be4b6 4500 "sys/limits.h\0";
79589c4d
BK
4501/*
4502 * Machine/OS name selection pattern
4503 */
4504#define apzNested_Sys_LimitsMachs (const char**)NULL
4505
4506/*
4507 * content selection pattern - do fix if pattern found
4508 */
4509tSCC zNested_Sys_LimitsSelect0[] =
4510 "CHILD_MAX";
4511
4512#define NESTED_SYS_LIMITS_TEST_CT 1
3af556f7 4513static tTestDesc aNested_Sys_LimitsTests[] = {
79589c4d
BK
4514 { TT_EGREP, zNested_Sys_LimitsSelect0, (regex_t*)NULL }, };
4515
4516/*
4517 * Fix Command Arguments for Nested_Sys_Limits
4518 */
27eaa708
BK
4519static const char* apzNested_Sys_LimitsPatch[] = { "sed",
4520 "-e", "/CHILD_MAX/s,/\\* Max, Max,",
4521 "-e", "/OPEN_MAX/s,/\\* Max, Max,",
06bbab1b
BK
4522 (char*)NULL };
4523
3edc4b23
KW
4524/* * * * * * * * * * * * * * * * * * * * * * * * * *
4525 *
4526 * Description of Netbsd_Extra_Semicolon fix
4527 */
4528tSCC zNetbsd_Extra_SemicolonName[] =
4529 "netbsd_extra_semicolon";
4530
4531/*
4532 * File name selection pattern
4533 */
4534tSCC zNetbsd_Extra_SemicolonList[] =
401be4b6 4535 "sys/cdefs.h\0";
3edc4b23
KW
4536/*
4537 * Machine/OS name selection pattern
4538 */
4539tSCC* apzNetbsd_Extra_SemicolonMachs[] = {
4540 "*-*-netbsd*",
4541 (const char*)NULL };
4542
4543/*
4544 * content selection pattern - do fix if pattern found
4545 */
4546tSCC zNetbsd_Extra_SemicolonSelect0[] =
4547 "#define[ \t]*__END_DECLS[ \t]*};";
4548
4549#define NETBSD_EXTRA_SEMICOLON_TEST_CT 1
4550static tTestDesc aNetbsd_Extra_SemicolonTests[] = {
4551 { TT_EGREP, zNetbsd_Extra_SemicolonSelect0, (regex_t*)NULL }, };
4552
4553/*
4554 * Fix Command Arguments for Netbsd_Extra_Semicolon
4555 */
4556static const char* apzNetbsd_Extra_SemicolonPatch[] = {
4557 "format",
4558 "#define __END_DECLS }",
4559 (char*)NULL };
4560
06bbab1b
BK
4561/* * * * * * * * * * * * * * * * * * * * * * * * * *
4562 *
5abc1f74 4563 * Description of Next_Math_Prefix fix
06bbab1b
BK
4564 */
4565tSCC zNext_Math_PrefixName[] =
3be1fb72
ZW
4566 "next_math_prefix";
4567
06bbab1b
BK
4568/*
4569 * File name selection pattern
4570 */
4571tSCC zNext_Math_PrefixList[] =
401be4b6 4572 "ansi/math.h\0";
06bbab1b
BK
4573/*
4574 * Machine/OS name selection pattern
4575 */
4576#define apzNext_Math_PrefixMachs (const char**)NULL
4577
4578/*
be02fa1a 4579 * content selection pattern - do fix if pattern found
06bbab1b
BK
4580 */
4581tSCC zNext_Math_PrefixSelect0[] =
a8228686 4582 "^extern[ \t]+double[ \t]+__const__[ \t]";
06bbab1b
BK
4583
4584#define NEXT_MATH_PREFIX_TEST_CT 1
3af556f7 4585static tTestDesc aNext_Math_PrefixTests[] = {
5abc1f74 4586 { TT_EGREP, zNext_Math_PrefixSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4587
4588/*
4589 * Fix Command Arguments for Next_Math_Prefix
4590 */
3af556f7 4591static const char* apzNext_Math_PrefixPatch[] = {
a8228686
BK
4592 "format",
4593 "extern double %1(",
4594 "^extern[ \t]+double[ \t]+__const__[ \t]+([a-z]+)\\(",
06bbab1b
BK
4595 (char*)NULL };
4596
4597/* * * * * * * * * * * * * * * * * * * * * * * * * *
4598 *
5abc1f74 4599 * Description of Next_Template fix
06bbab1b
BK
4600 */
4601tSCC zNext_TemplateName[] =
3be1fb72
ZW
4602 "next_template";
4603
06bbab1b
BK
4604/*
4605 * File name selection pattern
4606 */
4607tSCC zNext_TemplateList[] =
401be4b6 4608 "bsd/libc.h\0";
06bbab1b
BK
4609/*
4610 * Machine/OS name selection pattern
4611 */
4612#define apzNext_TemplateMachs (const char**)NULL
4613
4614/*
be02fa1a 4615 * content selection pattern - do fix if pattern found
06bbab1b
BK
4616 */
4617tSCC zNext_TemplateSelect0[] =
a8228686 4618 "[ \t]template\\)";
06bbab1b
BK
4619
4620#define NEXT_TEMPLATE_TEST_CT 1
3af556f7 4621static tTestDesc aNext_TemplateTests[] = {
5abc1f74 4622 { TT_EGREP, zNext_TemplateSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4623
4624/*
4625 * Fix Command Arguments for Next_Template
4626 */
3af556f7 4627static const char* apzNext_TemplatePatch[] = {
a8228686
BK
4628 "format",
4629 "(%1)",
4630 "\\(([^)]*)[ \t]template\\)",
06bbab1b
BK
4631 (char*)NULL };
4632
4633/* * * * * * * * * * * * * * * * * * * * * * * * * *
4634 *
5abc1f74 4635 * Description of Next_Volitile fix
06bbab1b
BK
4636 */
4637tSCC zNext_VolitileName[] =
3be1fb72
ZW
4638 "next_volitile";
4639
06bbab1b
BK
4640/*
4641 * File name selection pattern
4642 */
4643tSCC zNext_VolitileList[] =
401be4b6 4644 "ansi/stdlib.h\0";
06bbab1b
BK
4645/*
4646 * Machine/OS name selection pattern
4647 */
4648#define apzNext_VolitileMachs (const char**)NULL
4649
4650/*
be02fa1a 4651 * content selection pattern - do fix if pattern found
06bbab1b
BK
4652 */
4653tSCC zNext_VolitileSelect0[] =
a8228686 4654 "^extern[ \t]+volatile[ \t]+void[ \t]";
06bbab1b
BK
4655
4656#define NEXT_VOLITILE_TEST_CT 1
3af556f7 4657static tTestDesc aNext_VolitileTests[] = {
5abc1f74 4658 { TT_EGREP, zNext_VolitileSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4659
4660/*
4661 * Fix Command Arguments for Next_Volitile
4662 */
3af556f7 4663static const char* apzNext_VolitilePatch[] = {
a8228686
BK
4664 "format",
4665 "extern void %1(",
4666 "^extern[ \t]+volatile[ \t]+void[ \t]+(exit|abort)\\(",
06bbab1b
BK
4667 (char*)NULL };
4668
4669/* * * * * * * * * * * * * * * * * * * * * * * * * *
4670 *
5abc1f74 4671 * Description of Next_Wait_Union fix
06bbab1b
BK
4672 */
4673tSCC zNext_Wait_UnionName[] =
3be1fb72
ZW
4674 "next_wait_union";
4675
06bbab1b
BK
4676/*
4677 * File name selection pattern
4678 */
4679tSCC zNext_Wait_UnionList[] =
401be4b6 4680 "sys/wait.h\0";
06bbab1b
BK
4681/*
4682 * Machine/OS name selection pattern
4683 */
4684#define apzNext_Wait_UnionMachs (const char**)NULL
4685
4686/*
be02fa1a 4687 * content selection pattern - do fix if pattern found
06bbab1b
BK
4688 */
4689tSCC zNext_Wait_UnionSelect0[] =
4690 "wait\\(union wait";
4691
4692#define NEXT_WAIT_UNION_TEST_CT 1
3af556f7 4693static tTestDesc aNext_Wait_UnionTests[] = {
5abc1f74 4694 { TT_EGREP, zNext_Wait_UnionSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4695
4696/*
4697 * Fix Command Arguments for Next_Wait_Union
4698 */
3af556f7 4699static const char* apzNext_Wait_UnionPatch[] = {
cb8d5168
BK
4700 "format",
4701 "wait(void",
06bbab1b
BK
4702 (char*)NULL };
4703
4704/* * * * * * * * * * * * * * * * * * * * * * * * * *
4705 *
5abc1f74 4706 * Description of Nodeent_Syntax fix
06bbab1b
BK
4707 */
4708tSCC zNodeent_SyntaxName[] =
3be1fb72
ZW
4709 "nodeent_syntax";
4710
06bbab1b
BK
4711/*
4712 * File name selection pattern
4713 */
4714tSCC zNodeent_SyntaxList[] =
401be4b6 4715 "netdnet/dnetdb.h\0";
06bbab1b
BK
4716/*
4717 * Machine/OS name selection pattern
4718 */
4719#define apzNodeent_SyntaxMachs (const char**)NULL
cb8d5168
BK
4720
4721/*
4722 * content selection pattern - do fix if pattern found
4723 */
4724tSCC zNodeent_SyntaxSelect0[] =
4725 "char[ \t]*\\*na_addr[ \t]*$";
4726
4727#define NODEENT_SYNTAX_TEST_CT 1
3af556f7 4728static tTestDesc aNodeent_SyntaxTests[] = {
cb8d5168 4729 { TT_EGREP, zNodeent_SyntaxSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4730
4731/*
4732 * Fix Command Arguments for Nodeent_Syntax
4733 */
3af556f7 4734static const char* apzNodeent_SyntaxPatch[] = {
cb8d5168
BK
4735 "format",
4736 "%0;",
06bbab1b
BK
4737 (char*)NULL };
4738
dc70e81d
JM
4739/* * * * * * * * * * * * * * * * * * * * * * * * * *
4740 *
4741 * Description of Obstack_Lvalue_Cast fix
4742 */
4743tSCC zObstack_Lvalue_CastName[] =
4744 "obstack_lvalue_cast";
4745
4746/*
4747 * File name selection pattern
4748 */
4749tSCC zObstack_Lvalue_CastList[] =
401be4b6 4750 "obstack.h\0";
dc70e81d
JM
4751/*
4752 * Machine/OS name selection pattern
4753 */
4754#define apzObstack_Lvalue_CastMachs (const char**)NULL
4755
4756/*
4757 * content selection pattern - do fix if pattern found
4758 */
4759tSCC zObstack_Lvalue_CastSelect0[] =
4760 "\\*\\(\\(([^()]*)\\*\\)(.*)\\)\\+\\+ = \\(([^()]*)\\)";
4761
4762#define OBSTACK_LVALUE_CAST_TEST_CT 1
4763static tTestDesc aObstack_Lvalue_CastTests[] = {
4764 { TT_EGREP, zObstack_Lvalue_CastSelect0, (regex_t*)NULL }, };
4765
4766/*
4767 * Fix Command Arguments for Obstack_Lvalue_Cast
4768 */
4769static const char* apzObstack_Lvalue_CastPatch[] = {
4770 "format",
4771 "((*((%1*)%2) = (%3)), (%2 += sizeof (%1)))",
4772 (char*)NULL };
4773
06bbab1b
BK
4774/* * * * * * * * * * * * * * * * * * * * * * * * * *
4775 *
5abc1f74 4776 * Description of Osf_Namespace_A fix
06bbab1b
BK
4777 */
4778tSCC zOsf_Namespace_AName[] =
3be1fb72
ZW
4779 "osf_namespace_a";
4780
06bbab1b
BK
4781/*
4782 * File name selection pattern
4783 */
4784tSCC zOsf_Namespace_AList[] =
401be4b6 4785 "reg_types.h\0sys/lc_core.h\0";
06bbab1b
BK
4786/*
4787 * Machine/OS name selection pattern
4788 */
4789#define apzOsf_Namespace_AMachs (const char**)NULL
4790
4791/*
be02fa1a 4792 * perform the 'test' shell command - do fix on success
06bbab1b
BK
4793 */
4794tSCC zOsf_Namespace_ATest0[] =
48bd9529
BK
4795 " -r reg_types.h";
4796tSCC zOsf_Namespace_ATest1[] =
4797 " -r sys/lc_core.h";
4798tSCC zOsf_Namespace_ATest2[] =
4799 " -n \"`grep '} regex_t;' reg_types.h`\"";
4800tSCC zOsf_Namespace_ATest3[] =
4801 " -z \"`grep __regex_t regex.h`\"";
4802
4803#define OSF_NAMESPACE_A_TEST_CT 4
3af556f7 4804static tTestDesc aOsf_Namespace_ATests[] = {
5abc1f74
BK
4805 { TT_TEST, zOsf_Namespace_ATest0, 0 /* unused */ },
4806 { TT_TEST, zOsf_Namespace_ATest1, 0 /* unused */ },
4807 { TT_TEST, zOsf_Namespace_ATest2, 0 /* unused */ },
4808 { TT_TEST, zOsf_Namespace_ATest3, 0 /* unused */ }, };
06bbab1b
BK
4809
4810/*
4811 * Fix Command Arguments for Osf_Namespace_A
4812 */
3af556f7 4813static const char* apzOsf_Namespace_APatch[] = {
cb8d5168
BK
4814 "format",
4815 "__%0",
ef6df611 4816 "reg(ex|off|match)_t",
06bbab1b
BK
4817 (char*)NULL };
4818
4819/* * * * * * * * * * * * * * * * * * * * * * * * * *
4820 *
cb8d5168 4821 * Description of Osf_Namespace_C fix
06bbab1b 4822 */
cb8d5168
BK
4823tSCC zOsf_Namespace_CName[] =
4824 "osf_namespace_c";
3be1fb72 4825
06bbab1b
BK
4826/*
4827 * File name selection pattern
4828 */
cb8d5168 4829tSCC zOsf_Namespace_CList[] =
401be4b6 4830 "regex.h\0";
06bbab1b
BK
4831/*
4832 * Machine/OS name selection pattern
4833 */
cb8d5168
BK
4834#define apzOsf_Namespace_CMachs (const char**)NULL
4835
4836/*
4837 * content selection pattern - do fix if pattern found
4838 */
4839tSCC zOsf_Namespace_CSelect0[] =
4840 "#include <reg_types.h>.*";
06bbab1b
BK
4841
4842/*
be02fa1a 4843 * perform the 'test' shell command - do fix on success
06bbab1b 4844 */
cb8d5168 4845tSCC zOsf_Namespace_CTest0[] =
48bd9529 4846 " -r reg_types.h";
cb8d5168 4847tSCC zOsf_Namespace_CTest1[] =
48bd9529 4848 " -r sys/lc_core.h";
cb8d5168 4849tSCC zOsf_Namespace_CTest2[] =
48bd9529 4850 " -n \"`grep '} regex_t;' reg_types.h`\"";
cb8d5168 4851tSCC zOsf_Namespace_CTest3[] =
48bd9529
BK
4852 " -z \"`grep __regex_t regex.h`\"";
4853
cb8d5168 4854#define OSF_NAMESPACE_C_TEST_CT 5
3af556f7 4855static tTestDesc aOsf_Namespace_CTests[] = {
cb8d5168
BK
4856 { TT_TEST, zOsf_Namespace_CTest0, 0 /* unused */ },
4857 { TT_TEST, zOsf_Namespace_CTest1, 0 /* unused */ },
4858 { TT_TEST, zOsf_Namespace_CTest2, 0 /* unused */ },
4859 { TT_TEST, zOsf_Namespace_CTest3, 0 /* unused */ },
4860 { TT_EGREP, zOsf_Namespace_CSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4861
4862/*
cb8d5168 4863 * Fix Command Arguments for Osf_Namespace_C
06bbab1b 4864 */
3af556f7 4865static const char* apzOsf_Namespace_CPatch[] = {
cb8d5168
BK
4866 "format",
4867 "%0\n\
4868typedef __regex_t\tregex_t;\n\
4869typedef __regoff_t\tregoff_t;\n\
4870typedef __regmatch_t\tregmatch_t;",
06bbab1b
BK
4871 (char*)NULL };
4872
4873/* * * * * * * * * * * * * * * * * * * * * * * * * *
4874 *
5abc1f74 4875 * Description of Pthread_Page_Size fix
06bbab1b
BK
4876 */
4877tSCC zPthread_Page_SizeName[] =
3be1fb72
ZW
4878 "pthread_page_size";
4879
06bbab1b
BK
4880/*
4881 * File name selection pattern
4882 */
4883tSCC zPthread_Page_SizeList[] =
401be4b6 4884 "pthread.h\0";
06bbab1b
BK
4885/*
4886 * Machine/OS name selection pattern
4887 */
4888#define apzPthread_Page_SizeMachs (const char**)NULL
4889
4890/*
be02fa1a 4891 * content selection pattern - do fix if pattern found
06bbab1b
BK
4892 */
4893tSCC zPthread_Page_SizeSelect0[] =
4894 "^int __page_size";
4895
4896#define PTHREAD_PAGE_SIZE_TEST_CT 1
3af556f7 4897static tTestDesc aPthread_Page_SizeTests[] = {
5abc1f74 4898 { TT_EGREP, zPthread_Page_SizeSelect0, (regex_t*)NULL }, };
06bbab1b
BK
4899
4900/*
4901 * Fix Command Arguments for Pthread_Page_Size
4902 */
3af556f7 4903static const char* apzPthread_Page_SizePatch[] = {
cb8d5168
BK
4904 "format",
4905 "extern %0",
06bbab1b
BK
4906 (char*)NULL };
4907
14bfd7c7
RG
4908/* * * * * * * * * * * * * * * * * * * * * * * * * *
4909 *
4910 * Description of Pthread_Incomplete_Struct_Argument fix
4911 */
4912tSCC zPthread_Incomplete_Struct_ArgumentName[] =
4913 "pthread_incomplete_struct_argument";
4914
4915/*
4916 * File name selection pattern
4917 */
4918tSCC zPthread_Incomplete_Struct_ArgumentList[] =
401be4b6 4919 "pthread.h\0";
14bfd7c7
RG
4920/*
4921 * Machine/OS name selection pattern
4922 */
4923#define apzPthread_Incomplete_Struct_ArgumentMachs (const char**)NULL
4924
4925/*
4926 * content selection pattern - do fix if pattern found
4927 */
4928tSCC zPthread_Incomplete_Struct_ArgumentSelect0[] =
4929 "struct __jmp_buf_tag";
4930
4931#define PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT 1
4932static tTestDesc aPthread_Incomplete_Struct_ArgumentTests[] = {
4933 { TT_EGREP, zPthread_Incomplete_Struct_ArgumentSelect0, (regex_t*)NULL }, };
4934
4935/*
4936 * Fix Command Arguments for Pthread_Incomplete_Struct_Argument
4937 */
4938static const char* apzPthread_Incomplete_Struct_ArgumentPatch[] = {
4939 "format",
4940 "%1 *%2%3",
4941 "^(extern int __sigsetjmp \\(struct __jmp_buf_tag) (__env)\\[1\\](.*)$",
4942 (char*)NULL };
4943
06bbab1b
BK
4944/* * * * * * * * * * * * * * * * * * * * * * * * * *
4945 *
5abc1f74 4946 * Description of Read_Ret_Type fix
d71ef9d4
BK
4947 */
4948tSCC zRead_Ret_TypeName[] =
3be1fb72
ZW
4949 "read_ret_type";
4950
d71ef9d4
BK
4951/*
4952 * File name selection pattern
4953 */
4954tSCC zRead_Ret_TypeList[] =
401be4b6 4955 "stdio.h\0";
d71ef9d4
BK
4956/*
4957 * Machine/OS name selection pattern
4958 */
4959#define apzRead_Ret_TypeMachs (const char**)NULL
4960
4961/*
4962 * content selection pattern - do fix if pattern found
4963 */
4964tSCC zRead_Ret_TypeSelect0[] =
4965 "extern int\t.*, fread\\(\\), fwrite\\(\\)";
4966
4967#define READ_RET_TYPE_TEST_CT 1
3af556f7 4968static tTestDesc aRead_Ret_TypeTests[] = {
5abc1f74 4969 { TT_EGREP, zRead_Ret_TypeSelect0, (regex_t*)NULL }, };
d71ef9d4
BK
4970
4971/*
4972 * Fix Command Arguments for Read_Ret_Type
4973 */
3af556f7 4974static const char* apzRead_Ret_TypePatch[] = {
cb8d5168
BK
4975 "format",
4976 "extern unsigned int fread(), fwrite();\n\
4977%1%2",
4978 "(extern int\t.*), fread\\(\\), fwrite\\(\\)(.*)",
d71ef9d4
BK
4979 (char*)NULL };
4980
6ed6a1b9
JM
4981/* * * * * * * * * * * * * * * * * * * * * * * * * *
4982 *
4983 * Description of Rpc_Xdr_Lvalue_Cast_A fix
4984 */
4985tSCC zRpc_Xdr_Lvalue_Cast_AName[] =
4986 "rpc_xdr_lvalue_cast_a";
4987
4988/*
4989 * File name selection pattern
4990 */
4991tSCC zRpc_Xdr_Lvalue_Cast_AList[] =
401be4b6 4992 "rpc/xdr.h\0";
6ed6a1b9
JM
4993/*
4994 * Machine/OS name selection pattern
4995 */
4996#define apzRpc_Xdr_Lvalue_Cast_AMachs (const char**)NULL
4997
4998/*
4999 * content selection pattern - do fix if pattern found
5000 */
5001tSCC zRpc_Xdr_Lvalue_Cast_ASelect0[] =
5002 "#define[ \t]*IXDR_GET_LONG.*\\\\\n\
5003.*__extension__.*";
5004
5005#define RPC_XDR_LVALUE_CAST_A_TEST_CT 1
5006static tTestDesc aRpc_Xdr_Lvalue_Cast_ATests[] = {
5007 { TT_EGREP, zRpc_Xdr_Lvalue_Cast_ASelect0, (regex_t*)NULL }, };
5008
5009/*
5010 * Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_A
5011 */
5012static const char* apzRpc_Xdr_Lvalue_Cast_APatch[] = {
5013 "format",
5014 "#define IXDR_GET_LONG(buf) ((long)IXDR_GET_U_INT32(buf))",
5015 (char*)NULL };
5016
5017/* * * * * * * * * * * * * * * * * * * * * * * * * *
5018 *
5019 * Description of Rpc_Xdr_Lvalue_Cast_B fix
5020 */
5021tSCC zRpc_Xdr_Lvalue_Cast_BName[] =
5022 "rpc_xdr_lvalue_cast_b";
5023
5024/*
5025 * File name selection pattern
5026 */
5027tSCC zRpc_Xdr_Lvalue_Cast_BList[] =
401be4b6 5028 "rpc/xdr.h\0";
6ed6a1b9
JM
5029/*
5030 * Machine/OS name selection pattern
5031 */
5032#define apzRpc_Xdr_Lvalue_Cast_BMachs (const char**)NULL
5033
5034/*
5035 * content selection pattern - do fix if pattern found
5036 */
5037tSCC zRpc_Xdr_Lvalue_Cast_BSelect0[] =
5038 "#define[ \t]*IXDR_PUT_LONG.*\\\\\n\
5039.*__extension__.*";
5040
5041#define RPC_XDR_LVALUE_CAST_B_TEST_CT 1
5042static tTestDesc aRpc_Xdr_Lvalue_Cast_BTests[] = {
5043 { TT_EGREP, zRpc_Xdr_Lvalue_Cast_BSelect0, (regex_t*)NULL }, };
5044
5045/*
5046 * Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_B
5047 */
5048static const char* apzRpc_Xdr_Lvalue_Cast_BPatch[] = {
5049 "format",
5050 "#define IXDR_PUT_LONG(buf, v) ((long)IXDR_PUT_INT32(buf, (long)(v)))",
5051 (char*)NULL };
5052
d71ef9d4
BK
5053/* * * * * * * * * * * * * * * * * * * * * * * * * *
5054 *
5abc1f74 5055 * Description of Rs6000_Double fix
06bbab1b
BK
5056 */
5057tSCC zRs6000_DoubleName[] =
3be1fb72
ZW
5058 "rs6000_double";
5059
06bbab1b
BK
5060/*
5061 * File name selection pattern
5062 */
5063tSCC zRs6000_DoubleList[] =
401be4b6 5064 "math.h\0";
06bbab1b
BK
5065/*
5066 * Machine/OS name selection pattern
5067 */
5068#define apzRs6000_DoubleMachs (const char**)NULL
5069
5070/*
be02fa1a 5071 * content selection pattern - do fix if pattern found
06bbab1b
BK
5072 */
5073tSCC zRs6000_DoubleSelect0[] =
5074 "[^a-zA-Z_]class\\(";
5075
5076#define RS6000_DOUBLE_TEST_CT 1
3af556f7 5077static tTestDesc aRs6000_DoubleTests[] = {
5abc1f74 5078 { TT_EGREP, zRs6000_DoubleSelect0, (regex_t*)NULL }, };
06bbab1b
BK
5079
5080/*
5081 * Fix Command Arguments for Rs6000_Double
5082 */
3af556f7 5083static const char* apzRs6000_DoublePatch[] = {
cb8d5168
BK
5084 "format",
5085 "#ifndef __cplusplus\n\
5086%0\n\
5087#endif",
5088 "^.*[^a-zA-Z_]class\\(.*",
06bbab1b
BK
5089 (char*)NULL };
5090
5091/* * * * * * * * * * * * * * * * * * * * * * * * * *
5092 *
5abc1f74 5093 * Description of Rs6000_Fchmod fix
06bbab1b
BK
5094 */
5095tSCC zRs6000_FchmodName[] =
3be1fb72
ZW
5096 "rs6000_fchmod";
5097
06bbab1b
BK
5098/*
5099 * File name selection pattern
5100 */
5101tSCC zRs6000_FchmodList[] =
401be4b6 5102 "sys/stat.h\0";
06bbab1b
BK
5103/*
5104 * Machine/OS name selection pattern
5105 */
5106#define apzRs6000_FchmodMachs (const char**)NULL
5107
5108/*
be02fa1a 5109 * content selection pattern - do fix if pattern found
06bbab1b
BK
5110 */
5111tSCC zRs6000_FchmodSelect0[] =
cb8d5168 5112 "fchmod\\(char \\*";
06bbab1b
BK
5113
5114#define RS6000_FCHMOD_TEST_CT 1
3af556f7 5115static tTestDesc aRs6000_FchmodTests[] = {
5abc1f74 5116 { TT_EGREP, zRs6000_FchmodSelect0, (regex_t*)NULL }, };
06bbab1b
BK
5117
5118/*
5119 * Fix Command Arguments for Rs6000_Fchmod
5120 */
3af556f7 5121static const char* apzRs6000_FchmodPatch[] = {
cb8d5168
BK
5122 "format",
5123 "fchmod(int",
06bbab1b
BK
5124 (char*)NULL };
5125
5126/* * * * * * * * * * * * * * * * * * * * * * * * * *
5127 *
5abc1f74 5128 * Description of Rs6000_Param fix
06bbab1b
BK
5129 */
5130tSCC zRs6000_ParamName[] =
3be1fb72
ZW
5131 "rs6000_param";
5132
06bbab1b
BK
5133/*
5134 * File name selection pattern
5135 */
5136tSCC zRs6000_ParamList[] =
401be4b6 5137 "stdio.h\0unistd.h\0";
06bbab1b
BK
5138/*
5139 * Machine/OS name selection pattern
5140 */
5141#define apzRs6000_ParamMachs (const char**)NULL
d7eb5a45
ZW
5142
5143/*
5144 * content selection pattern - do fix if pattern found
5145 */
5146tSCC zRs6000_ParamSelect0[] =
cb8d5168 5147 "rename\\(const char \\*old, const char \\*new\\)";
d7eb5a45
ZW
5148
5149#define RS6000_PARAM_TEST_CT 1
3af556f7 5150static tTestDesc aRs6000_ParamTests[] = {
d7eb5a45 5151 { TT_EGREP, zRs6000_ParamSelect0, (regex_t*)NULL }, };
06bbab1b
BK
5152
5153/*
5154 * Fix Command Arguments for Rs6000_Param
5155 */
3af556f7 5156static const char* apzRs6000_ParamPatch[] = {
cb8d5168
BK
5157 "format",
5158 "rename(const char *_old, const char *_new)",
06bbab1b
BK
5159 (char*)NULL };
5160
de0656cf
KJ
5161/* * * * * * * * * * * * * * * * * * * * * * * * * *
5162 *
5163 * Description of Sco_Math fix
5164 */
5165tSCC zSco_MathName[] =
5166 "sco_math";
5167
5168/*
5169 * File name selection pattern
5170 */
5171tSCC zSco_MathList[] =
401be4b6 5172 "math.h\0*/math.h\0";
de0656cf
KJ
5173/*
5174 * Machine/OS name selection pattern
5175 */
5176#define apzSco_MathMachs (const char**)NULL
5177
5178/*
5179 * content selection pattern - do fix if pattern found
5180 */
5181tSCC zSco_MathSelect0[] =
5182 "inline double abs";
5183
492d5b4f
JM
5184/*
5185 * content bypass pattern - skip fix if pattern found
5186 */
5187tSCC zSco_MathBypass0[] =
5188 "__GNUG__";
5189
5190#define SCO_MATH_TEST_CT 2
de0656cf 5191static tTestDesc aSco_MathTests[] = {
492d5b4f 5192 { TT_NEGREP, zSco_MathBypass0, (regex_t*)NULL },
de0656cf
KJ
5193 { TT_EGREP, zSco_MathSelect0, (regex_t*)NULL }, };
5194
5195/*
5196 * Fix Command Arguments for Sco_Math
5197 */
5198static const char* apzSco_MathPatch[] = { "sed",
5199 "-e", "/#define.*__fp_class(a) \\\\/i\\\n\
5200#ifndef __GNUC__\n",
5201 "-e", "/.*__builtin_generic/a\\\n\
5202#else\\\n\
5203#define __fp_class(a) \\\\\\\n\
5204 __builtin_choose_expr(__builtin_types_compatible_p(typeof(a),long double),\\\\\\\n\
5205 __fpclassifyl(a), \\\\\\\n\
5206 __builtin_choose_expr(__builtin_types_compatible_p(typeof(a), float), \\\\\\\n\
5207 __fpclassifyf(a),__fpclassify(a)))\\\n\
5208#endif",
5209 "-e", "/extern \"C\\+\\+\"/N;/inline double abs/i\\\n\
5210#ifndef __GNUC__\n",
5211 "-e", "/inline long double trunc/N;/inline long double trunc.*}.*extern \"C\\+\\+\"/a\\\n\
5212#endif /* ! __GNUC__ */",
5213 (char*)NULL };
5214
5215/* * * * * * * * * * * * * * * * * * * * * * * * * *
5216 *
5217 * Description of Sco_Regset fix
5218 */
5219tSCC zSco_RegsetName[] =
5220 "sco_regset";
5221
5222/*
5223 * File name selection pattern
5224 */
5225tSCC zSco_RegsetList[] =
401be4b6 5226 "sys/regset.h\0";
de0656cf
KJ
5227/*
5228 * Machine/OS name selection pattern
5229 */
5230tSCC* apzSco_RegsetMachs[] = {
5231 "*-*-sco3.2v5*",
5232 (const char*)NULL };
5233
5234/*
5235 * content selection pattern - do fix if pattern found
5236 */
5237tSCC zSco_RegsetSelect0[] =
5238 "(struct[ \t]+.*)fpstate";
5239
5240#define SCO_REGSET_TEST_CT 1
5241static tTestDesc aSco_RegsetTests[] = {
5242 { TT_EGREP, zSco_RegsetSelect0, (regex_t*)NULL }, };
5243
5244/*
5245 * Fix Command Arguments for Sco_Regset
5246 */
5247static const char* apzSco_RegsetPatch[] = {
5248 "format",
5249 "%1rsfpstate",
5250 (char*)NULL };
5251
4c188026
BK
5252/* * * * * * * * * * * * * * * * * * * * * * * * * *
5253 *
79589c4d 5254 * Description of Sco_Static_Func fix
4c188026 5255 */
79589c4d
BK
5256tSCC zSco_Static_FuncName[] =
5257 "sco_static_func";
4c188026
BK
5258
5259/*
5260 * File name selection pattern
5261 */
79589c4d 5262tSCC zSco_Static_FuncList[] =
401be4b6 5263 "sys/stat.h\0";
4c188026
BK
5264/*
5265 * Machine/OS name selection pattern
5266 */
79589c4d 5267tSCC* apzSco_Static_FuncMachs[] = {
4c188026
BK
5268 "i?86-*-sco3.2*",
5269 (const char*)NULL };
5270
5271/*
5272 * content selection pattern - do fix if pattern found
5273 */
79589c4d
BK
5274tSCC zSco_Static_FuncSelect0[] =
5275 "^static int";
4c188026 5276
79589c4d 5277#define SCO_STATIC_FUNC_TEST_CT 1
3af556f7 5278static tTestDesc aSco_Static_FuncTests[] = {
79589c4d 5279 { TT_EGREP, zSco_Static_FuncSelect0, (regex_t*)NULL }, };
4c188026
BK
5280
5281/*
79589c4d 5282 * Fix Command Arguments for Sco_Static_Func
4c188026 5283 */
3af556f7 5284static const char* apzSco_Static_FuncPatch[] = { "sed",
79589c4d
BK
5285 "-e", "/^static int/i\\\n\
5286#if __cplusplus\\\n\
5287extern \"C\" {\\\n\
5288#endif /* __cplusplus */",
5289 "-e", "/^}$/a\\\n\
5290#if __cplusplus\\\n\
5291 }\\\n\
5292#endif /* __cplusplus */",
4c188026
BK
5293 (char*)NULL };
5294
6ee71e49
BK
5295/* * * * * * * * * * * * * * * * * * * * * * * * * *
5296 *
7b78a14a 5297 * Description of Sco_Utime fix
6ee71e49 5298 */
7b78a14a
BK
5299tSCC zSco_UtimeName[] =
5300 "sco_utime";
6ee71e49
BK
5301
5302/*
5303 * File name selection pattern
5304 */
7b78a14a 5305tSCC zSco_UtimeList[] =
401be4b6 5306 "sys/times.h\0";
6ee71e49
BK
5307/*
5308 * Machine/OS name selection pattern
5309 */
7b78a14a
BK
5310tSCC* apzSco_UtimeMachs[] = {
5311 "i?86-*-sco3.2v4*",
5312 (const char*)NULL };
6ee71e49
BK
5313
5314/*
5315 * content selection pattern - do fix if pattern found
5316 */
7b78a14a
BK
5317tSCC zSco_UtimeSelect0[] =
5318 "\\(const char \\*, struct utimbuf \\*\\);";
a26c3bb5 5319
7b78a14a
BK
5320#define SCO_UTIME_TEST_CT 1
5321static tTestDesc aSco_UtimeTests[] = {
5322 { TT_EGREP, zSco_UtimeSelect0, (regex_t*)NULL }, };
6ee71e49
BK
5323
5324/*
7b78a14a 5325 * Fix Command Arguments for Sco_Utime
6ee71e49 5326 */
7b78a14a 5327static const char* apzSco_UtimePatch[] = {
6ee71e49 5328 "format",
7b78a14a 5329 "(const char *, const struct utimbuf *);",
6ee71e49
BK
5330 (char*)NULL };
5331
925a4487
EB
5332/* * * * * * * * * * * * * * * * * * * * * * * * * *
5333 *
5334 * Description of Solaris_Math_1 fix
5335 */
5336tSCC zSolaris_Math_1Name[] =
5337 "solaris_math_1";
5338
5339/*
5340 * File name selection pattern
5341 */
5342tSCC zSolaris_Math_1List[] =
401be4b6 5343 "iso/math_c99.h\0";
925a4487
EB
5344/*
5345 * Machine/OS name selection pattern
5346 */
5347#define apzSolaris_Math_1Machs (const char**)NULL
5348
5349/*
5350 * content selection pattern - do fix if pattern found
5351 */
5352tSCC zSolaris_Math_1Select0[] =
5353 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5354
5355/*
5356 * content bypass pattern - skip fix if pattern found
5357 */
5358tSCC zSolaris_Math_1Bypass0[] =
5359 "__GNUC__";
5360
5361#define SOLARIS_MATH_1_TEST_CT 2
5362static tTestDesc aSolaris_Math_1Tests[] = {
5363 { TT_NEGREP, zSolaris_Math_1Bypass0, (regex_t*)NULL },
5364 { TT_EGREP, zSolaris_Math_1Select0, (regex_t*)NULL }, };
5365
5366/*
5367 * Fix Command Arguments for Solaris_Math_1
5368 */
5369static const char* apzSolaris_Math_1Patch[] = {
5370 "format",
5371 "#define\tHUGE_VA%1\t(__builtin_huge_va%2())",
5372 "^#define[ \t]+HUGE_VA([LF]+)[ \t]+__builtin_huge_va([lf]+)",
5373 (char*)NULL };
5374
5375/* * * * * * * * * * * * * * * * * * * * * * * * * *
5376 *
5377 * Description of Solaris_Math_2 fix
5378 */
5379tSCC zSolaris_Math_2Name[] =
5380 "solaris_math_2";
5381
5382/*
5383 * File name selection pattern
5384 */
5385tSCC zSolaris_Math_2List[] =
401be4b6 5386 "iso/math_c99.h\0";
925a4487
EB
5387/*
5388 * Machine/OS name selection pattern
5389 */
5390#define apzSolaris_Math_2Machs (const char**)NULL
5391
5392/*
5393 * content selection pattern - do fix if pattern found
5394 */
5395tSCC zSolaris_Math_2Select0[] =
5396 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5397
5398/*
5399 * content bypass pattern - skip fix if pattern found
5400 */
5401tSCC zSolaris_Math_2Bypass0[] =
5402 "__GNUC__";
5403
5404#define SOLARIS_MATH_2_TEST_CT 2
5405static tTestDesc aSolaris_Math_2Tests[] = {
5406 { TT_NEGREP, zSolaris_Math_2Bypass0, (regex_t*)NULL },
5407 { TT_EGREP, zSolaris_Math_2Select0, (regex_t*)NULL }, };
5408
5409/*
5410 * Fix Command Arguments for Solaris_Math_2
5411 */
5412static const char* apzSolaris_Math_2Patch[] = {
5413 "format",
5414 "#define\tINFINITY\t(__builtin_inff())",
5415 "^#define[ \t]+INFINITY[ \t]+__builtin_infinity",
5416 (char*)NULL };
5417
5418/* * * * * * * * * * * * * * * * * * * * * * * * * *
5419 *
5420 * Description of Solaris_Math_3 fix
5421 */
5422tSCC zSolaris_Math_3Name[] =
5423 "solaris_math_3";
5424
5425/*
5426 * File name selection pattern
5427 */
5428tSCC zSolaris_Math_3List[] =
401be4b6 5429 "iso/math_c99.h\0";
925a4487
EB
5430/*
5431 * Machine/OS name selection pattern
5432 */
5433#define apzSolaris_Math_3Machs (const char**)NULL
5434
5435/*
5436 * content selection pattern - do fix if pattern found
5437 */
5438tSCC zSolaris_Math_3Select0[] =
5439 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5440
5441/*
5442 * content bypass pattern - skip fix if pattern found
5443 */
5444tSCC zSolaris_Math_3Bypass0[] =
5445 "__GNUC__";
5446
5447#define SOLARIS_MATH_3_TEST_CT 2
5448static tTestDesc aSolaris_Math_3Tests[] = {
5449 { TT_NEGREP, zSolaris_Math_3Bypass0, (regex_t*)NULL },
5450 { TT_EGREP, zSolaris_Math_3Select0, (regex_t*)NULL }, };
5451
5452/*
5453 * Fix Command Arguments for Solaris_Math_3
5454 */
5455static const char* apzSolaris_Math_3Patch[] = {
5456 "format",
5457 "#define\tNAN\t\t(__builtin_nanf(\"\"))",
5458 "^#define[ \t]+NAN[ \t]+__builtin_nan",
5459 (char*)NULL };
5460
5461/* * * * * * * * * * * * * * * * * * * * * * * * * *
5462 *
5463 * Description of Solaris_Math_4 fix
5464 */
5465tSCC zSolaris_Math_4Name[] =
5466 "solaris_math_4";
5467
5468/*
5469 * File name selection pattern
5470 */
5471tSCC zSolaris_Math_4List[] =
401be4b6 5472 "iso/math_c99.h\0";
925a4487
EB
5473/*
5474 * Machine/OS name selection pattern
5475 */
5476#define apzSolaris_Math_4Machs (const char**)NULL
5477
5478/*
5479 * content selection pattern - do fix if pattern found
5480 */
5481tSCC zSolaris_Math_4Select0[] =
5482 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5483
5484/*
5485 * content bypass pattern - skip fix if pattern found
5486 */
5487tSCC zSolaris_Math_4Bypass0[] =
5488 "__GNUC__";
5489
5490#define SOLARIS_MATH_4_TEST_CT 2
5491static tTestDesc aSolaris_Math_4Tests[] = {
5492 { TT_NEGREP, zSolaris_Math_4Bypass0, (regex_t*)NULL },
5493 { TT_EGREP, zSolaris_Math_4Select0, (regex_t*)NULL }, };
5494
5495/*
5496 * Fix Command Arguments for Solaris_Math_4
5497 */
5498static const char* apzSolaris_Math_4Patch[] = {
5499 "format",
5500 "#define\tfpclassify(x) \\\n\
5501 __extension__ ({ __typeof(x) __x_fp = (x); \\\n\
5502\t\t isnan(__x_fp) \\\n\
5503\t\t ? FP_NAN \\\n\
5504\t\t : isinf(__x_fp) \\\n\
5505\t\t ? FP_INFINITE \\\n\
5506\t\t : isnormal(__x_fp) \\\n\
5507\t\t\t ? FP_NORMAL \\\n\
5508\t\t\t : __x_fp == 0.0 \\\n\
5509\t\t\t ? FP_ZERO \\\n\
5510\t\t\t : FP_SUBNORMAL; })",
5511 "^#define[ \t]+fpclassify\\(x\\)[ \t]+__builtin_fpclassify\\(x\\)",
5512 (char*)NULL };
5513
5514/* * * * * * * * * * * * * * * * * * * * * * * * * *
5515 *
5516 * Description of Solaris_Math_5 fix
5517 */
5518tSCC zSolaris_Math_5Name[] =
5519 "solaris_math_5";
5520
5521/*
5522 * File name selection pattern
5523 */
5524tSCC zSolaris_Math_5List[] =
401be4b6 5525 "iso/math_c99.h\0";
925a4487
EB
5526/*
5527 * Machine/OS name selection pattern
5528 */
5529#define apzSolaris_Math_5Machs (const char**)NULL
5530
5531/*
5532 * content selection pattern - do fix if pattern found
5533 */
5534tSCC zSolaris_Math_5Select0[] =
5535 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5536
5537/*
5538 * content bypass pattern - skip fix if pattern found
5539 */
5540tSCC zSolaris_Math_5Bypass0[] =
5541 "__GNUC__";
5542
5543#define SOLARIS_MATH_5_TEST_CT 2
5544static tTestDesc aSolaris_Math_5Tests[] = {
5545 { TT_NEGREP, zSolaris_Math_5Bypass0, (regex_t*)NULL },
5546 { TT_EGREP, zSolaris_Math_5Select0, (regex_t*)NULL }, };
5547
5548/*
5549 * Fix Command Arguments for Solaris_Math_5
5550 */
5551static const char* apzSolaris_Math_5Patch[] = {
5552 "format",
5553 "#define\tisfinite(x) \\\n\
5554 __extension__ ({ __typeof (x) __x_f = (x); \\\n\
5555\t\t __builtin_expect(!isnan(__x_f - __x_f), 1); })",
5556 "^#define[ \t]+isfinite\\(x\\)[ \t]+__builtin_isfinite\\(x\\)",
5557 (char*)NULL };
5558
5559/* * * * * * * * * * * * * * * * * * * * * * * * * *
5560 *
5561 * Description of Solaris_Math_6 fix
5562 */
5563tSCC zSolaris_Math_6Name[] =
5564 "solaris_math_6";
5565
5566/*
5567 * File name selection pattern
5568 */
5569tSCC zSolaris_Math_6List[] =
401be4b6 5570 "iso/math_c99.h\0";
925a4487
EB
5571/*
5572 * Machine/OS name selection pattern
5573 */
5574#define apzSolaris_Math_6Machs (const char**)NULL
5575
5576/*
5577 * content selection pattern - do fix if pattern found
5578 */
5579tSCC zSolaris_Math_6Select0[] =
5580 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5581
5582/*
5583 * content bypass pattern - skip fix if pattern found
5584 */
5585tSCC zSolaris_Math_6Bypass0[] =
5586 "__GNUC__";
5587
5588#define SOLARIS_MATH_6_TEST_CT 2
5589static tTestDesc aSolaris_Math_6Tests[] = {
5590 { TT_NEGREP, zSolaris_Math_6Bypass0, (regex_t*)NULL },
5591 { TT_EGREP, zSolaris_Math_6Select0, (regex_t*)NULL }, };
5592
5593/*
5594 * Fix Command Arguments for Solaris_Math_6
5595 */
5596static const char* apzSolaris_Math_6Patch[] = {
5597 "format",
5598 "#define\tisinf(x) \\\n\
5599 __extension__ ({ __typeof (x) __x_i = (x); \\\n\
5600\t\t __builtin_expect(!isnan(__x_i) && !isfinite(__x_i), 0); })",
5601 "^#define[ \t]+isinf\\(x\\)[ \t]+__builtin_isinf\\(x\\)",
5602 (char*)NULL };
5603
5604/* * * * * * * * * * * * * * * * * * * * * * * * * *
5605 *
5606 * Description of Solaris_Math_7 fix
5607 */
5608tSCC zSolaris_Math_7Name[] =
5609 "solaris_math_7";
5610
5611/*
5612 * File name selection pattern
5613 */
5614tSCC zSolaris_Math_7List[] =
401be4b6 5615 "iso/math_c99.h\0";
925a4487
EB
5616/*
5617 * Machine/OS name selection pattern
5618 */
5619#define apzSolaris_Math_7Machs (const char**)NULL
5620
5621/*
5622 * content selection pattern - do fix if pattern found
5623 */
5624tSCC zSolaris_Math_7Select0[] =
5625 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5626
5627/*
5628 * content bypass pattern - skip fix if pattern found
5629 */
5630tSCC zSolaris_Math_7Bypass0[] =
5631 "__GNUC__";
5632
5633#define SOLARIS_MATH_7_TEST_CT 2
5634static tTestDesc aSolaris_Math_7Tests[] = {
5635 { TT_NEGREP, zSolaris_Math_7Bypass0, (regex_t*)NULL },
5636 { TT_EGREP, zSolaris_Math_7Select0, (regex_t*)NULL }, };
5637
5638/*
5639 * Fix Command Arguments for Solaris_Math_7
5640 */
5641static const char* apzSolaris_Math_7Patch[] = {
5642 "format",
5643 "#define\tisnormal(x) \\\n\
5644 __extension__ ({ __typeof(x) __x_n = (x); \\\n\
5645\t\t if (__x_n < 0.0) __x_n = -__x_n; \\\n\
5646\t\t __builtin_expect(isfinite(__x_n) \\\n\
5647\t\t\t\t && (sizeof(__x_n) == sizeof(float) \\\n\
5648\t\t\t\t\t ? __x_n >= __FLT_MIN__ \\\n\
5649\t\t\t\t\t : sizeof(__x_n) == sizeof(long double) \\\n\
5650\t\t\t\t\t ? __x_n >= __LDBL_MIN__ \\\n\
5651\t\t\t\t\t : __x_n >= __DBL_MIN__), 1); })",
5652 "^#define[ \t]+isnormal\\(x\\)[ \t]+__builtin_isnormal\\(x\\)",
5653 (char*)NULL };
5654
5655/* * * * * * * * * * * * * * * * * * * * * * * * * *
5656 *
5657 * Description of Solaris_Math_8 fix
5658 */
5659tSCC zSolaris_Math_8Name[] =
5660 "solaris_math_8";
5661
5662/*
5663 * File name selection pattern
5664 */
5665tSCC zSolaris_Math_8List[] =
401be4b6 5666 "iso/math_c99.h\0";
925a4487
EB
5667/*
5668 * Machine/OS name selection pattern
5669 */
5670#define apzSolaris_Math_8Machs (const char**)NULL
5671
5672/*
5673 * content selection pattern - do fix if pattern found
5674 */
5675tSCC zSolaris_Math_8Select0[] =
5676 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5677
5678/*
5679 * content bypass pattern - skip fix if pattern found
5680 */
5681tSCC zSolaris_Math_8Bypass0[] =
5682 "__GNUC__";
5683
5684#define SOLARIS_MATH_8_TEST_CT 2
5685static tTestDesc aSolaris_Math_8Tests[] = {
5686 { TT_NEGREP, zSolaris_Math_8Bypass0, (regex_t*)NULL },
5687 { TT_EGREP, zSolaris_Math_8Select0, (regex_t*)NULL }, };
5688
5689/*
5690 * Fix Command Arguments for Solaris_Math_8
5691 */
5692static const char* apzSolaris_Math_8Patch[] = {
5693 "format",
5694 "#define\tsignbit(x)\t(sizeof(x) == sizeof(float) \\\n\
5695\t\t\t ? __builtin_signbitf(x) \\\n\
5696\t\t\t : sizeof(x) == sizeof(long double) \\\n\
5697\t\t\t ? __builtin_signbitl(x) \\\n\
5698\t\t\t : __builtin_signbit(x))",
5699 "^#define[ \t]+signbit\\(x\\)[ \t]+__builtin_signbit\\(x\\)",
5700 (char*)NULL };
5701
5702/* * * * * * * * * * * * * * * * * * * * * * * * * *
5703 *
5704 * Description of Solaris_Math_9 fix
5705 */
5706tSCC zSolaris_Math_9Name[] =
5707 "solaris_math_9";
5708
5709/*
5710 * File name selection pattern
5711 */
5712tSCC zSolaris_Math_9List[] =
401be4b6 5713 "iso/math_c99.h\0";
925a4487
EB
5714/*
5715 * Machine/OS name selection pattern
5716 */
5717#define apzSolaris_Math_9Machs (const char**)NULL
5718
5719/*
5720 * content selection pattern - do fix if pattern found
5721 */
5722tSCC zSolaris_Math_9Select0[] =
5723 "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5724
5725/*
5726 * content bypass pattern - skip fix if pattern found
5727 */
5728tSCC zSolaris_Math_9Bypass0[] =
5729 "__GNUC__";
5730
5731#define SOLARIS_MATH_9_TEST_CT 2
5732static tTestDesc aSolaris_Math_9Tests[] = {
5733 { TT_NEGREP, zSolaris_Math_9Bypass0, (regex_t*)NULL },
5734 { TT_EGREP, zSolaris_Math_9Select0, (regex_t*)NULL }, };
5735
5736/*
5737 * Fix Command Arguments for Solaris_Math_9
5738 */
5739static const char* apzSolaris_Math_9Patch[] = {
5740 "format",
5741 "#define\t%1(x, y)%2__builtin_%1(x, y)",
5742 "^#define[ \t]+([a-z]+)\\(x, y\\)([ \t]+)\\(\\(x\\) __builtin_[a-z]+\\(y\\)\\)",
5743 (char*)NULL };
5744
6ee71e49
BK
5745/* * * * * * * * * * * * * * * * * * * * * * * * * *
5746 *
7a9cdb10 5747 * Description of Solaris_Mutex_Init_1 fix
6ee71e49 5748 */
7a9cdb10
DD
5749tSCC zSolaris_Mutex_Init_1Name[] =
5750 "solaris_mutex_init_1";
6ee71e49
BK
5751
5752/*
5753 * File name selection pattern
5754 */
7a9cdb10 5755tSCC zSolaris_Mutex_Init_1List[] =
401be4b6 5756 "pthread.h\0";
6ee71e49
BK
5757/*
5758 * Machine/OS name selection pattern
5759 */
7a9cdb10 5760#define apzSolaris_Mutex_Init_1Machs (const char**)NULL
6ee71e49
BK
5761
5762/*
5763 * content selection pattern - do fix if pattern found
5764 */
7a9cdb10 5765tSCC zSolaris_Mutex_Init_1Select0[] =
ce4a8f7d 5766 "@\\(#\\)pthread.h[ \t]+1.1[0-9][ \t]+9[567]/[0-9/]+ SMI";
7a9cdb10
DD
5767
5768#define SOLARIS_MUTEX_INIT_1_TEST_CT 1
5769static tTestDesc aSolaris_Mutex_Init_1Tests[] = {
5770 { TT_EGREP, zSolaris_Mutex_Init_1Select0, (regex_t*)NULL }, };
5771
5772/*
5773 * Fix Command Arguments for Solaris_Mutex_Init_1
5774 */
5775static const char* apzSolaris_Mutex_Init_1Patch[] = { "sed",
5776 "-e", "/define[ \t]*PTHREAD_MUTEX_INI/s/{0, 0,/{{{0}, 0}, {{{0}}},/\n\
5777/define[ \t]*PTHREAD_COND_INI/s/{0,/{{{0},0},/",
5778 (char*)NULL };
5779
5780/* * * * * * * * * * * * * * * * * * * * * * * * * *
5781 *
5782 * Description of Solaris_Mutex_Init_2 fix
5783 */
5784tSCC zSolaris_Mutex_Init_2Name[] =
5785 "solaris_mutex_init_2";
5786
5787/*
5788 * File name selection pattern
5789 */
5790tSCC zSolaris_Mutex_Init_2List[] =
401be4b6 5791 "pthread.h\0";
7a9cdb10
DD
5792/*
5793 * Machine/OS name selection pattern
5794 */
a77d42cf
KG
5795tSCC* apzSolaris_Mutex_Init_2Machs[] = {
5796 "*-*-solaris2.[0-9]",
5797 "*-*-solaris2.[0-9][!0-9]*",
5798 (const char*)NULL };
7a9cdb10
DD
5799
5800/*
5801 * content selection pattern - do fix if pattern found
5802 */
5803tSCC zSolaris_Mutex_Init_2Select0[] =
eb559363 5804 "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
a26c3bb5 5805
7a9cdb10
DD
5806#define SOLARIS_MUTEX_INIT_2_TEST_CT 1
5807static tTestDesc aSolaris_Mutex_Init_2Tests[] = {
5808 { TT_EGREP, zSolaris_Mutex_Init_2Select0, (regex_t*)NULL }, };
6ee71e49
BK
5809
5810/*
7a9cdb10 5811 * Fix Command Arguments for Solaris_Mutex_Init_2
6ee71e49 5812 */
7a9cdb10 5813static const char* apzSolaris_Mutex_Init_2Patch[] = {
6ee71e49 5814 "format",
eb559363
BK
5815 "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
5816%0\n\
5817#else\n\
a77d42cf 5818%1, {0}}%4\n\
eb559363 5819#endif",
a77d42cf
KG
5820 "(^#define[ \t]+PTHREAD_(MUTEX|COND)_INITIALIZER[ \t]+(|/*.**/[ \t]*\\\\\n\
5821[ \t]*)\\{.*),[ \t]*0\\}(|[ \t].*)$",
6ee71e49
BK
5822 (char*)NULL };
5823
2b655a0a
KG
5824/* * * * * * * * * * * * * * * * * * * * * * * * * *
5825 *
5826 * Description of Solaris_Rwlock_Init_1 fix
5827 */
5828tSCC zSolaris_Rwlock_Init_1Name[] =
5829 "solaris_rwlock_init_1";
5830
5831/*
5832 * File name selection pattern
5833 */
5834tSCC zSolaris_Rwlock_Init_1List[] =
401be4b6 5835 "pthread.h\0";
2b655a0a
KG
5836/*
5837 * Machine/OS name selection pattern
5838 */
5839tSCC* apzSolaris_Rwlock_Init_1Machs[] = {
5840 "*-*-solaris*",
5841 (const char*)NULL };
5842
5843/*
5844 * content selection pattern - do fix if pattern found
5845 */
5846tSCC zSolaris_Rwlock_Init_1Select0[] =
5847 "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5848
5849#define SOLARIS_RWLOCK_INIT_1_TEST_CT 1
5850static tTestDesc aSolaris_Rwlock_Init_1Tests[] = {
5851 { TT_EGREP, zSolaris_Rwlock_Init_1Select0, (regex_t*)NULL }, };
5852
5853/*
5854 * Fix Command Arguments for Solaris_Rwlock_Init_1
5855 */
5856static const char* apzSolaris_Rwlock_Init_1Patch[] = {
5857 "format",
5858 "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
5859%0\n\
5860#else\n\
5861%1{0, 0, 0, {{0}, {0}, {0}}, {{0}, {0}}, {{0}, {0}}}\n\
5862#endif",
5863 "(^#define[ \t]+PTHREAD_RWLOCK_INITIALIZER[ \t]+)\\{0, 0, 0, \\{0, 0, 0\\}, \\{0, 0\\}, \\{0, 0\\}\\}[ \t]*$",
5864 (char*)NULL };
5865
5866/* * * * * * * * * * * * * * * * * * * * * * * * * *
5867 *
5868 * Description of Solaris_Once_Init_1 fix
5869 */
5870tSCC zSolaris_Once_Init_1Name[] =
5871 "solaris_once_init_1";
5872
5873/*
5874 * File name selection pattern
5875 */
5876tSCC zSolaris_Once_Init_1List[] =
401be4b6 5877 "pthread.h\0";
2b655a0a
KG
5878/*
5879 * Machine/OS name selection pattern
5880 */
5881tSCC* apzSolaris_Once_Init_1Machs[] = {
5882 "*-*-solaris*",
5883 (const char*)NULL };
5884
5885/*
5886 * content selection pattern - do fix if pattern found
5887 */
5888tSCC zSolaris_Once_Init_1Select0[] =
5889 "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5890
5891#define SOLARIS_ONCE_INIT_1_TEST_CT 1
5892static tTestDesc aSolaris_Once_Init_1Tests[] = {
5893 { TT_EGREP, zSolaris_Once_Init_1Select0, (regex_t*)NULL }, };
5894
5895/*
5896 * Fix Command Arguments for Solaris_Once_Init_1
5897 */
5898static const char* apzSolaris_Once_Init_1Patch[] = {
5899 "format",
5900 "%1{%2}%3",
5901 "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{)([^}]+)(\\})[ \t]*$",
5902 (char*)NULL };
5903
0a1f02df
KG
5904/* * * * * * * * * * * * * * * * * * * * * * * * * *
5905 *
5906 * Description of Solaris_Once_Init_2 fix
5907 */
5908tSCC zSolaris_Once_Init_2Name[] =
5909 "solaris_once_init_2";
5910
5911/*
5912 * File name selection pattern
5913 */
5914tSCC zSolaris_Once_Init_2List[] =
401be4b6 5915 "pthread.h\0";
0a1f02df
KG
5916/*
5917 * Machine/OS name selection pattern
5918 */
5919tSCC* apzSolaris_Once_Init_2Machs[] = {
5920 "*-*-solaris2.[0-9]",
5921 "*-*-solaris2.[0-9][!0-9]*",
5922 (const char*)NULL };
5923
5924/*
5925 * content selection pattern - do fix if pattern found
5926 */
5927tSCC zSolaris_Once_Init_2Select0[] =
5928 "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
5929
5930#define SOLARIS_ONCE_INIT_2_TEST_CT 1
5931static tTestDesc aSolaris_Once_Init_2Tests[] = {
5932 { TT_EGREP, zSolaris_Once_Init_2Select0, (regex_t*)NULL }, };
5933
5934/*
5935 * Fix Command Arguments for Solaris_Once_Init_2
5936 */
5937static const char* apzSolaris_Once_Init_2Patch[] = {
5938 "format",
5939 "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
5940%0\n\
5941#else\n\
5942%1{0}, {0}, {0}, {%3}%4\n\
5943#endif",
5944 "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{\\{)(0, 0, 0, )(PTHREAD_[A-Z_]+)(\\}\\})[ \t]*$",
5945 (char*)NULL };
5946
6bf1ffe1
EB
5947/* * * * * * * * * * * * * * * * * * * * * * * * * *
5948 *
5949 * Description of Solaris_Socket fix
5950 */
5951tSCC zSolaris_SocketName[] =
5952 "solaris_socket";
5953
5954/*
5955 * File name selection pattern
5956 */
5957tSCC zSolaris_SocketList[] =
401be4b6 5958 "sys/socket.h\0";
6bf1ffe1
EB
5959/*
5960 * Machine/OS name selection pattern
5961 */
5962#define apzSolaris_SocketMachs (const char**)NULL
5963
5964/*
5965 * content selection pattern - do fix if pattern found
5966 */
5967tSCC zSolaris_SocketSelect0[] =
5968 "@\\(#\\)socket.h[ \t]+1.[123][0-9][ \t]+9[567]/[0-9/]+ SMI";
5969
5970#define SOLARIS_SOCKET_TEST_CT 1
5971static tTestDesc aSolaris_SocketTests[] = {
5972 { TT_EGREP, zSolaris_SocketSelect0, (regex_t*)NULL }, };
5973
5974/*
5975 * Fix Command Arguments for Solaris_Socket
5976 */
5977static const char* apzSolaris_SocketPatch[] = {
5978 "format",
5979 "extern int %1(int, %2void *, int, int);",
5980 "^extern int (recv|send)\\(int, (const )*char \\*, int, int\\);",
5981 (char*)NULL };
5982
fba39eaf
RH
5983/* * * * * * * * * * * * * * * * * * * * * * * * * *
5984 *
5985 * Description of Solaris_Stdio_Tag fix
5986 */
5987tSCC zSolaris_Stdio_TagName[] =
5988 "solaris_stdio_tag";
5989
5990/*
5991 * File name selection pattern
5992 */
5993tSCC zSolaris_Stdio_TagList[] =
401be4b6 5994 "stdio_tag.h\0";
fba39eaf
RH
5995/*
5996 * Machine/OS name selection pattern
5997 */
5998#define apzSolaris_Stdio_TagMachs (const char**)NULL
5999
6000/*
6001 * content selection pattern - do fix if pattern found
6002 */
6003tSCC zSolaris_Stdio_TagSelect0[] =
6004 "__cplusplus < 54321L";
6005
9fcc7481
MM
6006/*
6007 * content bypass pattern - skip fix if pattern found
6008 */
6009tSCC zSolaris_Stdio_TagBypass0[] =
6010 "__GNUC__";
6011
6012#define SOLARIS_STDIO_TAG_TEST_CT 2
fba39eaf 6013static tTestDesc aSolaris_Stdio_TagTests[] = {
9fcc7481 6014 { TT_NEGREP, zSolaris_Stdio_TagBypass0, (regex_t*)NULL },
fba39eaf
RH
6015 { TT_EGREP, zSolaris_Stdio_TagSelect0, (regex_t*)NULL }, };
6016
6017/*
6018 * Fix Command Arguments for Solaris_Stdio_Tag
6019 */
6020static const char* apzSolaris_Stdio_TagPatch[] = { "sed",
6021 "-e", "s/defined(__cplusplus) && (__cplusplus < 54321L)/0/",
6022 (char*)NULL };
6023
6bf1ffe1
EB
6024/* * * * * * * * * * * * * * * * * * * * * * * * * *
6025 *
6026 * Description of Solaris_Unistd fix
6027 */
6028tSCC zSolaris_UnistdName[] =
6029 "solaris_unistd";
6030
6031/*
6032 * File name selection pattern
6033 */
6034tSCC zSolaris_UnistdList[] =
401be4b6 6035 "unistd.h\0";
6bf1ffe1
EB
6036/*
6037 * Machine/OS name selection pattern
6038 */
6039#define apzSolaris_UnistdMachs (const char**)NULL
6040
6041/*
6042 * content selection pattern - do fix if pattern found
6043 */
6044tSCC zSolaris_UnistdSelect0[] =
6045 "@\\(#\\)unistd.h[ \t]+1.3[0-9][ \t]+9[567]/[0-9/]+ SMI";
6046
6047/*
6048 * content bypass pattern - skip fix if pattern found
6049 */
6050tSCC zSolaris_UnistdBypass0[] =
6051 "getpagesize";
6052
6053#define SOLARIS_UNISTD_TEST_CT 2
6054static tTestDesc aSolaris_UnistdTests[] = {
6055 { TT_NEGREP, zSolaris_UnistdBypass0, (regex_t*)NULL },
6056 { TT_EGREP, zSolaris_UnistdSelect0, (regex_t*)NULL }, };
6057
6058/*
6059 * Fix Command Arguments for Solaris_Unistd
6060 */
6061static const char* apzSolaris_UnistdPatch[] = {
6062 "format",
6063 "extern int getpagesize();\n\
6064%0",
6065 "^extern (pid_t|int) getpgid\\(.*\\);",
6066 (char*)NULL };
6067
d8af0868
RO
6068/* * * * * * * * * * * * * * * * * * * * * * * * * *
6069 *
6070 * Description of Solaris_Widec fix
6071 */
6072tSCC zSolaris_WidecName[] =
6073 "solaris_widec";
6074
6075/*
6076 * File name selection pattern
6077 */
6078tSCC zSolaris_WidecList[] =
401be4b6 6079 "widec.h\0";
d8af0868
RO
6080/*
6081 * Machine/OS name selection pattern
6082 */
6083tSCC* apzSolaris_WidecMachs[] = {
51ac684e
RO
6084 "*-*-solaris2.[0-5]",
6085 "*-*-solaris2.[0-5].*",
d8af0868
RO
6086 (const char*)NULL };
6087
6088/*
6089 * content selection pattern - do fix if pattern found
6090 */
6091tSCC zSolaris_WidecSelect0[] =
6092 "#include <euc.h>";
6093
6094/*
6095 * content bypass pattern - skip fix if pattern found
6096 */
6097tSCC zSolaris_WidecBypass0[] =
6098 "include.*wchar\\.h";
6099
6100#define SOLARIS_WIDEC_TEST_CT 2
6101static tTestDesc aSolaris_WidecTests[] = {
6102 { TT_NEGREP, zSolaris_WidecBypass0, (regex_t*)NULL },
6103 { TT_EGREP, zSolaris_WidecSelect0, (regex_t*)NULL }, };
6104
6105/*
6106 * Fix Command Arguments for Solaris_Widec
6107 */
6108static const char* apzSolaris_WidecPatch[] = {
6109 "format",
6110 "%0\n\
6111#include <wchar.h>",
6112 (char*)NULL };
6113
6ee71e49
BK
6114/* * * * * * * * * * * * * * * * * * * * * * * * * *
6115 *
7b78a14a 6116 * Description of Statsswtch fix
6ee71e49 6117 */
7b78a14a
BK
6118tSCC zStatsswtchName[] =
6119 "statsswtch";
6ee71e49
BK
6120
6121/*
6122 * File name selection pattern
6123 */
7b78a14a 6124tSCC zStatsswtchList[] =
401be4b6 6125 "rpcsvc/rstat.h\0";
6ee71e49
BK
6126/*
6127 * Machine/OS name selection pattern
6128 */
7b78a14a 6129#define apzStatsswtchMachs (const char**)NULL
6ee71e49
BK
6130
6131/*
6132 * content selection pattern - do fix if pattern found
6133 */
7b78a14a
BK
6134tSCC zStatsswtchSelect0[] =
6135 "boottime$";
a26c3bb5 6136
7b78a14a
BK
6137#define STATSSWTCH_TEST_CT 1
6138static tTestDesc aStatsswtchTests[] = {
6139 { TT_EGREP, zStatsswtchSelect0, (regex_t*)NULL }, };
6ee71e49
BK
6140
6141/*
7b78a14a 6142 * Fix Command Arguments for Statsswtch
6ee71e49 6143 */
7b78a14a 6144static const char* apzStatsswtchPatch[] = {
6ee71e49 6145 "format",
7b78a14a 6146 "boottime;",
6ee71e49
BK
6147 (char*)NULL };
6148
4c188026
BK
6149/* * * * * * * * * * * * * * * * * * * * * * * * * *
6150 *
7b78a14a 6151 * Description of Stdio_Stdarg_H fix
4c188026 6152 */
7b78a14a
BK
6153tSCC zStdio_Stdarg_HName[] =
6154 "stdio_stdarg_h";
4c188026
BK
6155
6156/*
6157 * File name selection pattern
6158 */
7b78a14a 6159tSCC zStdio_Stdarg_HList[] =
401be4b6 6160 "stdio.h\0";
4c188026
BK
6161/*
6162 * Machine/OS name selection pattern
6163 */
9fcc7481 6164tSCC* apzStdio_Stdarg_HMachs[] = {
5fabfd4c 6165 "*-*-solaris2.1[0-9]*",
9fcc7481 6166 (const char*)NULL };
4c188026
BK
6167
6168/*
7b78a14a 6169 * content bypass pattern - skip fix if pattern found
4c188026 6170 */
7b78a14a
BK
6171tSCC zStdio_Stdarg_HBypass0[] =
6172 "include.*(stdarg.h|machine/ansi.h)";
4c188026 6173
7b78a14a
BK
6174#define STDIO_STDARG_H_TEST_CT 1
6175static tTestDesc aStdio_Stdarg_HTests[] = {
6176 { TT_NEGREP, zStdio_Stdarg_HBypass0, (regex_t*)NULL }, };
4c188026
BK
6177
6178/*
7b78a14a 6179 * Fix Command Arguments for Stdio_Stdarg_H
4c188026 6180 */
7b78a14a
BK
6181static const char* apzStdio_Stdarg_HPatch[] = {
6182 "wrap",
6183 "#define __need___va_list\n\
6184#include <stdarg.h>\n",
4c188026
BK
6185 (char*)NULL };
6186
1f98d85e
WB
6187/* * * * * * * * * * * * * * * * * * * * * * * * * *
6188 *
7b78a14a 6189 * Description of Stdio_Va_List fix
1f98d85e 6190 */
7b78a14a
BK
6191tSCC zStdio_Va_ListName[] =
6192 "stdio_va_list";
1f98d85e
WB
6193
6194/*
6195 * File name selection pattern
6196 */
7b78a14a 6197tSCC zStdio_Va_ListList[] =
401be4b6 6198 "stdio.h\0internal/stdio_core.h\0internal/wchar_core.h\0";
1f98d85e
WB
6199/*
6200 * Machine/OS name selection pattern
6201 */
9fcc7481 6202tSCC* apzStdio_Va_ListMachs[] = {
5fabfd4c 6203 "*-*-solaris2.1[0-9]*",
9fcc7481 6204 (const char*)NULL };
1f98d85e
WB
6205
6206/*
7b78a14a 6207 * content bypass pattern - skip fix if pattern found
1f98d85e 6208 */
7b78a14a 6209tSCC zStdio_Va_ListBypass0[] =
5ded58d0 6210 "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
1f98d85e 6211
976c217a 6212#define STDIO_VA_LIST_TEST_CT 1
7b78a14a 6213static tTestDesc aStdio_Va_ListTests[] = {
976c217a 6214 { TT_NEGREP, zStdio_Va_ListBypass0, (regex_t*)NULL }, };
1f98d85e
WB
6215
6216/*
7b78a14a 6217 * Fix Command Arguments for Stdio_Va_List
1f98d85e 6218 */
7b78a14a 6219static const char* apzStdio_Va_ListPatch[] = { "sed",
871a3122 6220 "-e", "s@[ \t]va_list\\([ \t)]\\)@ __gnuc_va_list\\1@\n\
1a78e5a7 6221s@(va_list)&@(__gnuc_va_list)\\&@\n\
7b78a14a 6222s@ _VA_LIST_));@ __gnuc_va_list));@\n\
6d638aac 6223s@ __VA_LIST__));@ __gnuc_va_list));@\n\
7b78a14a
BK
6224s@ va_list@ __not_va_list__@\n\
6225s@\\*va_list@*__not_va_list__@\n\
6226s@ __va_list)@ __gnuc_va_list)@\n\
6227s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
0fca111b 6228s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
7b78a14a 6229s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
631099c9 6230s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
7b78a14a
BK
6231s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
6232s@VA_LIST@DUMMY_VA_LIST@\n\
6233s@_Va_LIST@_VA_LIST@",
1f98d85e
WB
6234 (char*)NULL };
6235
40d05429
MS
6236/* * * * * * * * * * * * * * * * * * * * * * * * * *
6237 *
6238 * Description of Stdio_Va_List_Clients fix
6239 */
6240tSCC zStdio_Va_List_ClientsName[] =
6241 "stdio_va_list_clients";
6242
6243/*
6244 * File name selection pattern
6245 */
6246tSCC zStdio_Va_List_ClientsList[] =
401be4b6 6247 "com_err.h\0cps.h\0curses.h\0krb5.h\0lc_core.h\0pfmt.h\0wchar.h\0curses_colr/curses.h\0";
40d05429
MS
6248/*
6249 * Machine/OS name selection pattern
6250 */
6251#define apzStdio_Va_List_ClientsMachs (const char**)NULL
6252
6253/*
6254 * content bypass pattern - skip fix if pattern found
6255 */
6256tSCC zStdio_Va_List_ClientsBypass0[] =
6257 "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
6258tSCC zStdio_Va_List_ClientsBypass1[] =
6259 "include <stdarg\\.h>|#ifdef va_start";
6260
6261#define STDIO_VA_LIST_CLIENTS_TEST_CT 2
6262static tTestDesc aStdio_Va_List_ClientsTests[] = {
6263 { TT_NEGREP, zStdio_Va_List_ClientsBypass0, (regex_t*)NULL },
6264 { TT_NEGREP, zStdio_Va_List_ClientsBypass1, (regex_t*)NULL }, };
6265
6266/*
6267 * Fix Command Arguments for Stdio_Va_List_Clients
6268 */
6269static const char* apzStdio_Va_List_ClientsPatch[] = { "sed",
6270 "-e", "s@[ \t]va_list\\([ \t)]\\)@ __gnuc_va_list\\1@\n\
6271s@(va_list)&@(__gnuc_va_list)\\&@\n\
6272s@ _VA_LIST_));@ __gnuc_va_list));@\n\
6273s@ __VA_LIST__));@ __gnuc_va_list));@\n\
6274s@ va_list@ __not_va_list__@\n\
6275s@\\*va_list@*__not_va_list__@\n\
6276s@ __va_list)@ __gnuc_va_list)@\n\
6277s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
6278s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
6279s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
6280s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
6281s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
6282s@VA_LIST@DUMMY_VA_LIST@\n\
6283s@_Va_LIST@_VA_LIST@",
6284 (char*)NULL };
6285
06bbab1b
BK
6286/* * * * * * * * * * * * * * * * * * * * * * * * * *
6287 *
7b78a14a 6288 * Description of Strict_Ansi_Not fix
06bbab1b 6289 */
7b78a14a
BK
6290tSCC zStrict_Ansi_NotName[] =
6291 "strict_ansi_not";
3be1fb72 6292
06bbab1b
BK
6293/*
6294 * File name selection pattern
6295 */
7b78a14a 6296#define zStrict_Ansi_NotList (char*)NULL
06bbab1b
BK
6297/*
6298 * Machine/OS name selection pattern
6299 */
7b78a14a
BK
6300#define apzStrict_Ansi_NotMachs (const char**)NULL
6301
6302/*
6303 * content selection pattern - do fix if pattern found
6304 */
6305tSCC zStrict_Ansi_NotSelect0[] =
b5639a49 6306 "^([ \t]*#[ \t]*if.*)(!__STDC__|__STDC__[ \t]*==[ \t]*0|__STDC__[ \t]*!=[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*0)";
06bbab1b 6307
8f2e963b
LR
6308/*
6309 * content bypass pattern - skip fix if pattern found
6310 */
6311tSCC zStrict_Ansi_NotBypass0[] =
6312 "GNU and MIPS C compilers define __STDC__ differently";
5ded58d0
ZW
6313tSCC zStrict_Ansi_NotBypass1[] =
6314 "__SCO_VERSION__.*__STDC__ != 1";
8f2e963b 6315
06bbab1b 6316/*
7b78a14a 6317 * perform the C function call test
06bbab1b 6318 */
7b78a14a 6319tSCC zStrict_Ansi_NotFTst0[] = "stdc_0_in_system_headers";
06bbab1b 6320
5ded58d0 6321#define STRICT_ANSI_NOT_TEST_CT 4
7b78a14a
BK
6322static tTestDesc aStrict_Ansi_NotTests[] = {
6323 { TT_FUNCTION, zStrict_Ansi_NotFTst0, 0 /* unused */ },
8f2e963b 6324 { TT_NEGREP, zStrict_Ansi_NotBypass0, (regex_t*)NULL },
5ded58d0 6325 { TT_NEGREP, zStrict_Ansi_NotBypass1, (regex_t*)NULL },
7b78a14a 6326 { TT_EGREP, zStrict_Ansi_NotSelect0, (regex_t*)NULL }, };
06bbab1b
BK
6327
6328/*
7b78a14a 6329 * Fix Command Arguments for Strict_Ansi_Not
06bbab1b 6330 */
7b78a14a 6331static const char* apzStrict_Ansi_NotPatch[] = {
cb8d5168 6332 "format",
b5639a49 6333 "%1 !defined(__STRICT_ANSI__)",
06bbab1b
BK
6334 (char*)NULL };
6335
3be1fb72
ZW
6336/* * * * * * * * * * * * * * * * * * * * * * * * * *
6337 *
7b78a14a 6338 * Description of Strict_Ansi_Not_Ctd fix
3be1fb72 6339 */
7b78a14a
BK
6340tSCC zStrict_Ansi_Not_CtdName[] =
6341 "strict_ansi_not_ctd";
3be1fb72
ZW
6342
6343/*
6344 * File name selection pattern
6345 */
7b78a14a 6346tSCC zStrict_Ansi_Not_CtdList[] =
401be4b6 6347 "math.h\0limits.h\0stdio.h\0signal.h\0stdlib.h\0sys/signal.h\0time.h\0";
3be1fb72
ZW
6348/*
6349 * Machine/OS name selection pattern
6350 */
7b78a14a 6351#define apzStrict_Ansi_Not_CtdMachs (const char**)NULL
3be1fb72
ZW
6352
6353/*
7b78a14a 6354 * content selection pattern - do fix if pattern found
3be1fb72 6355 */
7b78a14a 6356tSCC zStrict_Ansi_Not_CtdSelect0[] =
b5639a49 6357 "^([ \t]*(\\(|&&|\\|\\|)([ \t(]*!*[ \t]*defined\\([a-zA-Z_0-9]+\\)[ \t]*[|&][|&])*[ \t(]*)(__STDC__[ \t]*(|-[ \t]*0[ \t]*)==[ \t]*0)";
3be1fb72 6358
7b78a14a
BK
6359/*
6360 * perform the C function call test
6361 */
6362tSCC zStrict_Ansi_Not_CtdFTst0[] = "stdc_0_in_system_headers";
6363
6364#define STRICT_ANSI_NOT_CTD_TEST_CT 2
6365static tTestDesc aStrict_Ansi_Not_CtdTests[] = {
6366 { TT_FUNCTION, zStrict_Ansi_Not_CtdFTst0, 0 /* unused */ },
6367 { TT_EGREP, zStrict_Ansi_Not_CtdSelect0, (regex_t*)NULL }, };
3be1fb72
ZW
6368
6369/*
7b78a14a 6370 * Fix Command Arguments for Strict_Ansi_Not_Ctd
3be1fb72 6371 */
7b78a14a
BK
6372static const char* apzStrict_Ansi_Not_CtdPatch[] = {
6373 "format",
b5639a49 6374 "%1 !defined(__STRICT_ANSI__)",
3be1fb72
ZW
6375 (char*)NULL };
6376
06bbab1b
BK
6377/* * * * * * * * * * * * * * * * * * * * * * * * * *
6378 *
7b78a14a 6379 * Description of Strict_Ansi_Only fix
06bbab1b 6380 */
7b78a14a
BK
6381tSCC zStrict_Ansi_OnlyName[] =
6382 "strict_ansi_only";
3be1fb72 6383
06bbab1b
BK
6384/*
6385 * File name selection pattern
6386 */
7b78a14a 6387#define zStrict_Ansi_OnlyList (char*)NULL
06bbab1b
BK
6388/*
6389 * Machine/OS name selection pattern
6390 */
7b78a14a 6391#define apzStrict_Ansi_OnlyMachs (const char**)NULL
d7eb5a45
ZW
6392
6393/*
7b78a14a 6394 * content selection pattern - do fix if pattern found
d7eb5a45 6395 */
7b78a14a 6396tSCC zStrict_Ansi_OnlySelect0[] =
b5639a49 6397 "^([ \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)";
d7eb5a45 6398
7b78a14a
BK
6399/*
6400 * perform the C function call test
6401 */
6402tSCC zStrict_Ansi_OnlyFTst0[] = "stdc_0_in_system_headers";
6403
6404#define STRICT_ANSI_ONLY_TEST_CT 2
6405static tTestDesc aStrict_Ansi_OnlyTests[] = {
6406 { TT_FUNCTION, zStrict_Ansi_OnlyFTst0, 0 /* unused */ },
6407 { TT_EGREP, zStrict_Ansi_OnlySelect0, (regex_t*)NULL }, };
06bbab1b
BK
6408
6409/*
7b78a14a 6410 * Fix Command Arguments for Strict_Ansi_Only
06bbab1b 6411 */
7b78a14a
BK
6412static const char* apzStrict_Ansi_OnlyPatch[] = {
6413 "format",
b5639a49 6414 "%1 defined(__STRICT_ANSI__)",
06bbab1b
BK
6415 (char*)NULL };
6416
79589c4d
BK
6417/* * * * * * * * * * * * * * * * * * * * * * * * * *
6418 *
6419 * Description of Struct_File fix
6420 */
79589c4d
BK
6421tSCC zStruct_FileName[] =
6422 "struct_file";
6423
6424/*
6425 * File name selection pattern
6426 */
6427tSCC zStruct_FileList[] =
401be4b6 6428 "rpc/xdr.h\0";
79589c4d
BK
6429/*
6430 * Machine/OS name selection pattern
6431 */
6432#define apzStruct_FileMachs (const char**)NULL
6433
6434/*
6435 * content selection pattern - do fix if pattern found
6436 */
6437tSCC zStruct_FileSelect0[] =
6438 "^.*xdrstdio_create.*struct __file_s";
6439
6440#define STRUCT_FILE_TEST_CT 1
3af556f7 6441static tTestDesc aStruct_FileTests[] = {
79589c4d
BK
6442 { TT_EGREP, zStruct_FileSelect0, (regex_t*)NULL }, };
6443
6444/*
6445 * Fix Command Arguments for Struct_File
6446 */
3af556f7 6447static const char* apzStruct_FilePatch[] = {
79589c4d
BK
6448 "format",
6449 "struct __file_s;\n\
6450%0",
6451 (char*)NULL };
6452
6453/* * * * * * * * * * * * * * * * * * * * * * * * * *
6454 *
6455 * Description of Struct_Sockaddr fix
6456 */
79589c4d
BK
6457tSCC zStruct_SockaddrName[] =
6458 "struct_sockaddr";
6459
6460/*
6461 * File name selection pattern
6462 */
6463tSCC zStruct_SockaddrList[] =
401be4b6 6464 "rpc/auth.h\0";
79589c4d
BK
6465/*
6466 * Machine/OS name selection pattern
6467 */
6468#define apzStruct_SockaddrMachs (const char**)NULL
6469
6470/*
6471 * content selection pattern - do fix if pattern found
6472 */
6473tSCC zStruct_SockaddrSelect0[] =
3b57c563 6474 "^.*authdes_create.*struct sockaddr[^_]";
79589c4d
BK
6475
6476/*
6477 * content bypass pattern - skip fix if pattern found
6478 */
6479tSCC zStruct_SockaddrBypass0[] =
6480 "<sys/socket.h>";
3b57c563
NN
6481tSCC zStruct_SockaddrBypass1[] =
6482 "struct sockaddr;\n";
79589c4d 6483
3b57c563 6484#define STRUCT_SOCKADDR_TEST_CT 3
3af556f7 6485static tTestDesc aStruct_SockaddrTests[] = {
79589c4d 6486 { TT_NEGREP, zStruct_SockaddrBypass0, (regex_t*)NULL },
3b57c563 6487 { TT_NEGREP, zStruct_SockaddrBypass1, (regex_t*)NULL },
79589c4d
BK
6488 { TT_EGREP, zStruct_SockaddrSelect0, (regex_t*)NULL }, };
6489
6490/*
6491 * Fix Command Arguments for Struct_Sockaddr
6492 */
3af556f7 6493static const char* apzStruct_SockaddrPatch[] = {
79589c4d
BK
6494 "format",
6495 "struct sockaddr;\n\
6496%0",
6497 (char*)NULL };
6498
4c188026
BK
6499/* * * * * * * * * * * * * * * * * * * * * * * * * *
6500 *
6501 * Description of Sun_Auth_Proto fix
6502 */
4c188026
BK
6503tSCC zSun_Auth_ProtoName[] =
6504 "sun_auth_proto";
6505
6506/*
6507 * File name selection pattern
6508 */
6509tSCC zSun_Auth_ProtoList[] =
401be4b6 6510 "rpc/auth.h\0rpc/clnt.h\0rpc/svc.h\0rpc/xdr.h\0";
4c188026
BK
6511/*
6512 * Machine/OS name selection pattern
6513 */
6514#define apzSun_Auth_ProtoMachs (const char**)NULL
6515
6516/*
6517 * content selection pattern - do fix if pattern found
6518 */
6519tSCC zSun_Auth_ProtoSelect0[] =
6520 "\\(\\*[a-z][a-z_]*\\)\\(\\)";
6521
793387fa
JM
6522/*
6523 * content bypass pattern - skip fix if pattern found
6524 */
6525tSCC zSun_Auth_ProtoBypass0[] =
6526 "__cplusplus";
6527
6528#define SUN_AUTH_PROTO_TEST_CT 2
3af556f7 6529static tTestDesc aSun_Auth_ProtoTests[] = {
793387fa 6530 { TT_NEGREP, zSun_Auth_ProtoBypass0, (regex_t*)NULL },
4c188026
BK
6531 { TT_EGREP, zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };
6532
6533/*
6534 * Fix Command Arguments for Sun_Auth_Proto
6535 */
3af556f7 6536static const char* apzSun_Auth_ProtoPatch[] = {
cb8d5168
BK
6537 "format",
6538 "#ifdef __cplusplus\n\
6539%1(...);%2\n\
6540#else\n\
6541%1();%2\n\
6542#endif",
6543 "(.*\\(\\*[a-z][a-z_]*\\))\\(\\);(.*)",
4c188026
BK
6544 (char*)NULL };
6545
06bbab1b
BK
6546/* * * * * * * * * * * * * * * * * * * * * * * * * *
6547 *
5abc1f74 6548 * Description of Sun_Bogus_Ifdef fix
06bbab1b
BK
6549 */
6550tSCC zSun_Bogus_IfdefName[] =
3be1fb72
ZW
6551 "sun_bogus_ifdef";
6552
06bbab1b
BK
6553/*
6554 * File name selection pattern
6555 */
6556tSCC zSun_Bogus_IfdefList[] =
401be4b6 6557 "hsfs/hsfs_spec.h\0hsfs/iso_spec.h\0";
06bbab1b
BK
6558/*
6559 * Machine/OS name selection pattern
6560 */
6561#define apzSun_Bogus_IfdefMachs (const char**)NULL
6562
6563/*
be02fa1a 6564 * content selection pattern - do fix if pattern found
06bbab1b
BK
6565 */
6566tSCC zSun_Bogus_IfdefSelect0[] =
cb8d5168 6567 "#ifdef(.*\\|\\|.*)";
06bbab1b
BK
6568
6569#define SUN_BOGUS_IFDEF_TEST_CT 1
3af556f7 6570static tTestDesc aSun_Bogus_IfdefTests[] = {
5abc1f74 6571 { TT_EGREP, zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };
06bbab1b
BK
6572
6573/*
6574 * Fix Command Arguments for Sun_Bogus_Ifdef
6575 */
3af556f7 6576static const char* apzSun_Bogus_IfdefPatch[] = {
cb8d5168
BK
6577 "format",
6578 "#if%1",
06bbab1b
BK
6579 (char*)NULL };
6580
6581/* * * * * * * * * * * * * * * * * * * * * * * * * *
6582 *
5abc1f74 6583 * Description of Sun_Catmacro fix
06bbab1b
BK
6584 */
6585tSCC zSun_CatmacroName[] =
3be1fb72
ZW
6586 "sun_catmacro";
6587
06bbab1b
BK
6588/*
6589 * File name selection pattern
6590 */
6591tSCC zSun_CatmacroList[] =
401be4b6 6592 "pixrect/memvar.h\0";
06bbab1b
BK
6593/*
6594 * Machine/OS name selection pattern
6595 */
6596#define apzSun_CatmacroMachs (const char**)NULL
6597
6598/*
be02fa1a 6599 * content selection pattern - do fix if pattern found
06bbab1b
BK
6600 */
6601tSCC zSun_CatmacroSelect0[] =
cb8d5168 6602 "^#define[ \t]+CAT\\(a,b\\).*";
06bbab1b
BK
6603
6604#define SUN_CATMACRO_TEST_CT 1
3af556f7 6605static tTestDesc aSun_CatmacroTests[] = {
5abc1f74 6606 { TT_EGREP, zSun_CatmacroSelect0, (regex_t*)NULL }, };
06bbab1b
BK
6607
6608/*
6609 * Fix Command Arguments for Sun_Catmacro
6610 */
3af556f7 6611static const char* apzSun_CatmacroPatch[] = {
cb8d5168
BK
6612 "format",
6613 "#ifdef __STDC__\n\
6614# define CAT(a,b) a##b\n\
6615#else\n\
6616%0\n\
6617#endif",
06bbab1b
BK
6618 (char*)NULL };
6619
6620/* * * * * * * * * * * * * * * * * * * * * * * * * *
6621 *
5abc1f74 6622 * Description of Sun_Malloc fix
06bbab1b
BK
6623 */
6624tSCC zSun_MallocName[] =
3be1fb72
ZW
6625 "sun_malloc";
6626
06bbab1b
BK
6627/*
6628 * File name selection pattern
6629 */
6630tSCC zSun_MallocList[] =
401be4b6 6631 "malloc.h\0";
06bbab1b
BK
6632/*
6633 * Machine/OS name selection pattern
6634 */
6635#define apzSun_MallocMachs (const char**)NULL
793387fa
JM
6636
6637/*
6638 * content bypass pattern - skip fix if pattern found
6639 */
6640tSCC zSun_MallocBypass0[] =
6641 "_CLASSIC_ANSI_TYPES";
6642
6643#define SUN_MALLOC_TEST_CT 1
6644static tTestDesc aSun_MallocTests[] = {
6645 { TT_NEGREP, zSun_MallocBypass0, (regex_t*)NULL }, };
06bbab1b
BK
6646
6647/*
6648 * Fix Command Arguments for Sun_Malloc
6649 */
3af556f7 6650static const char* apzSun_MallocPatch[] = { "sed",
be02fa1a
BK
6651 "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
6652 "-e", "s/int[ \t][ \t]*free/void\tfree/g",
6653 "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
6654 "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
93a718f6 6655 "-e", "s/char\\([ \t]*\\*[ \t]*calloc\\)/void\\1/g",
06bbab1b
BK
6656 (char*)NULL };
6657
06bbab1b
BK
6658/* * * * * * * * * * * * * * * * * * * * * * * * * *
6659 *
5abc1f74 6660 * Description of Sun_Rusers_Semi fix
06bbab1b
BK
6661 */
6662tSCC zSun_Rusers_SemiName[] =
3be1fb72
ZW
6663 "sun_rusers_semi";
6664
06bbab1b
BK
6665/*
6666 * File name selection pattern
6667 */
6668tSCC zSun_Rusers_SemiList[] =
401be4b6 6669 "rpcsvc/rusers.h\0";
06bbab1b
BK
6670/*
6671 * Machine/OS name selection pattern
6672 */
6673#define apzSun_Rusers_SemiMachs (const char**)NULL
6674
6675/*
be02fa1a 6676 * content selection pattern - do fix if pattern found
06bbab1b
BK
6677 */
6678tSCC zSun_Rusers_SemiSelect0[] =
6679 "_cnt$";
6680
6681#define SUN_RUSERS_SEMI_TEST_CT 1
3af556f7 6682static tTestDesc aSun_Rusers_SemiTests[] = {
5abc1f74 6683 { TT_EGREP, zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };
06bbab1b
BK
6684
6685/*
6686 * Fix Command Arguments for Sun_Rusers_Semi
6687 */
3af556f7 6688static const char* apzSun_Rusers_SemiPatch[] = { "sed",
be02fa1a 6689 "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
06bbab1b
BK
6690 (char*)NULL };
6691
6692/* * * * * * * * * * * * * * * * * * * * * * * * * *
6693 *
5abc1f74 6694 * Description of Sun_Signal fix
06bbab1b
BK
6695 */
6696tSCC zSun_SignalName[] =
3be1fb72
ZW
6697 "sun_signal";
6698
06bbab1b
BK
6699/*
6700 * File name selection pattern
6701 */
6702tSCC zSun_SignalList[] =
401be4b6 6703 "sys/signal.h\0signal.h\0";
06bbab1b
BK
6704/*
6705 * Machine/OS name selection pattern
6706 */
6707#define apzSun_SignalMachs (const char**)NULL
6708
6709/*
be02fa1a 6710 * content selection pattern - do fix if pattern found
06bbab1b
BK
6711 */
6712tSCC zSun_SignalSelect0[] =
cb8d5168 6713 "^void\t\\(\\*signal\\(\\)\\)\\(\\);.*";
06bbab1b
BK
6714
6715#define SUN_SIGNAL_TEST_CT 1
3af556f7 6716static tTestDesc aSun_SignalTests[] = {
5abc1f74 6717 { TT_EGREP, zSun_SignalSelect0, (regex_t*)NULL }, };
06bbab1b
BK
6718
6719/*
6720 * Fix Command Arguments for Sun_Signal
6721 */
3af556f7 6722static const char* apzSun_SignalPatch[] = {
cb8d5168
BK
6723 "format",
6724 "#ifdef __cplusplus\n\
6725void\t(*signal(...))(...);\n\
6726#else\n\
6727%0\n\
6728#endif",
06bbab1b
BK
6729 (char*)NULL };
6730
06bbab1b
BK
6731/* * * * * * * * * * * * * * * * * * * * * * * * * *
6732 *
5abc1f74 6733 * Description of Sunos_Strlen fix
06bbab1b
BK
6734 */
6735tSCC zSunos_StrlenName[] =
3be1fb72
ZW
6736 "sunos_strlen";
6737
06bbab1b
BK
6738/*
6739 * File name selection pattern
6740 */
6741tSCC zSunos_StrlenList[] =
401be4b6 6742 "strings.h\0";
06bbab1b
BK
6743/*
6744 * Machine/OS name selection pattern
6745 */
6746#define apzSunos_StrlenMachs (const char**)NULL
d7eb5a45
ZW
6747
6748/*
6749 * content selection pattern - do fix if pattern found
6750 */
6751tSCC zSunos_StrlenSelect0[] =
cb8d5168 6752 "int[ \t]*strlen\\(\\);(.*)";
d7eb5a45
ZW
6753
6754#define SUNOS_STRLEN_TEST_CT 1
3af556f7 6755static tTestDesc aSunos_StrlenTests[] = {
d7eb5a45 6756 { TT_EGREP, zSunos_StrlenSelect0, (regex_t*)NULL }, };
06bbab1b
BK
6757
6758/*
6759 * Fix Command Arguments for Sunos_Strlen
6760 */
3af556f7 6761static const char* apzSunos_StrlenPatch[] = {
cb8d5168
BK
6762 "format",
6763 "__SIZE_TYPE__ strlen();%1",
6764 (char*)NULL };
6765
de0656cf
KJ
6766/* * * * * * * * * * * * * * * * * * * * * * * * * *
6767 *
6768 * Description of Svr4_Disable_Opt fix
6769 */
6770tSCC zSvr4_Disable_OptName[] =
6771 "svr4_disable_opt";
6772
6773/*
6774 * File name selection pattern
6775 */
6776tSCC zSvr4_Disable_OptList[] =
401be4b6 6777 "string.h\0";
de0656cf
KJ
6778/*
6779 * Machine/OS name selection pattern
6780 */
6781#define apzSvr4_Disable_OptMachs (const char**)NULL
6782
6783/*
6784 * content selection pattern - do fix if pattern found
6785 */
6786tSCC zSvr4_Disable_OptSelect0[] =
6787 "#define.*__std_hdr_";
6788
6789#define SVR4_DISABLE_OPT_TEST_CT 1
6790static tTestDesc aSvr4_Disable_OptTests[] = {
6791 { TT_EGREP, zSvr4_Disable_OptSelect0, (regex_t*)NULL }, };
6792
6793/*
6794 * Fix Command Arguments for Svr4_Disable_Opt
6795 */
6796static const char* apzSvr4_Disable_OptPatch[] = { "sed",
6797 "-e", "/#define.*__std_hdr_/d",
6798 (char*)NULL };
6799
4c188026
BK
6800/* * * * * * * * * * * * * * * * * * * * * * * * * *
6801 *
6802 * Description of Svr4_Getcwd fix
6803 */
4c188026
BK
6804tSCC zSvr4_GetcwdName[] =
6805 "svr4_getcwd";
6806
6807/*
6808 * File name selection pattern
6809 */
6810tSCC zSvr4_GetcwdList[] =
401be4b6 6811 "stdlib.h\0unistd.h\0prototypes.h\0";
4c188026
BK
6812/*
6813 * Machine/OS name selection pattern
6814 */
6815#define apzSvr4_GetcwdMachs (const char**)NULL
6816
6817/*
6818 * content selection pattern - do fix if pattern found
6819 */
6820tSCC zSvr4_GetcwdSelect0[] =
6821 "getcwd\\(char \\*, int\\)";
6822
6823#define SVR4_GETCWD_TEST_CT 1
3af556f7 6824static tTestDesc aSvr4_GetcwdTests[] = {
4c188026
BK
6825 { TT_EGREP, zSvr4_GetcwdSelect0, (regex_t*)NULL }, };
6826
6827/*
6828 * Fix Command Arguments for Svr4_Getcwd
6829 */
3af556f7 6830static const char* apzSvr4_GetcwdPatch[] = {
cb8d5168
BK
6831 "format",
6832 "getcwd(char *, size_t)",
4c188026
BK
6833 (char*)NULL };
6834
825d7d64
NN
6835/* * * * * * * * * * * * * * * * * * * * * * * * * *
6836 *
6837 * Description of Svr4_Krnl fix
6838 */
6839tSCC zSvr4_KrnlName[] =
6840 "svr4_krnl";
6841
6842/*
6843 * File name selection pattern
6844 */
6845tSCC zSvr4_KrnlList[] =
401be4b6 6846 "fs/rfs/rf_cache.h\0sys/erec.h\0sys/err.h\0sys/char.h\0sys/getpages.h\0sys/map.h\0sys/cmn_err.h\0sys/kdebugger.h\0";
825d7d64
NN
6847/*
6848 * Machine/OS name selection pattern
6849 */
6850tSCC* apzSvr4_KrnlMachs[] = {
6851 "*-*-sysv4*",
6852 "i?86-sequent-ptx*",
825d7d64
NN
6853 (const char*)NULL };
6854
6855/*
6856 * content bypass pattern - skip fix if pattern found
6857 */
6858tSCC zSvr4_KrnlBypass0[] =
6859 "_KERNEL";
6860
6861#define SVR4_KRNL_TEST_CT 1
6862static tTestDesc aSvr4_KrnlTests[] = {
6863 { TT_NEGREP, zSvr4_KrnlBypass0, (regex_t*)NULL }, };
6864
6865/*
6866 * Fix Command Arguments for Svr4_Krnl
6867 */
6868static const char* apzSvr4_KrnlPatch[] = {
6869 "wrap",
6870 "#ifdef _KERNEL\n",
6871 "#endif /* _KERNEL */\n",
6872 (char*)NULL };
6873
4c188026
BK
6874/* * * * * * * * * * * * * * * * * * * * * * * * * *
6875 *
6876 * Description of Svr4_Profil fix
6877 */
4c188026
BK
6878tSCC zSvr4_ProfilName[] =
6879 "svr4_profil";
6880
6881/*
6882 * File name selection pattern
6883 */
6884tSCC zSvr4_ProfilList[] =
401be4b6 6885 "stdlib.h\0unistd.h\0";
4c188026
BK
6886/*
6887 * Machine/OS name selection pattern
6888 */
6889#define apzSvr4_ProfilMachs (const char**)NULL
cb8d5168
BK
6890
6891/*
6892 * content selection pattern - do fix if pattern found
6893 */
6894tSCC zSvr4_ProfilSelect0[] =
6895 "profil\\(unsigned short \\*, unsigned int, unsigned int, unsigned int\\)";
6896
553cba65
RO
6897/*
6898 * content bypass pattern - skip fix if pattern found
6899 */
6900tSCC zSvr4_ProfilBypass0[] =
6901 "Silicon Graphics";
6902
6903#define SVR4_PROFIL_TEST_CT 2
3af556f7 6904static tTestDesc aSvr4_ProfilTests[] = {
553cba65 6905 { TT_NEGREP, zSvr4_ProfilBypass0, (regex_t*)NULL },
cb8d5168 6906 { TT_EGREP, zSvr4_ProfilSelect0, (regex_t*)NULL }, };
4c188026
BK
6907
6908/*
6909 * Fix Command Arguments for Svr4_Profil
6910 */
3af556f7 6911static const char* apzSvr4_ProfilPatch[] = {
cb8d5168
BK
6912 "format",
6913 "profil(unsigned short *, size_t, int, unsigned int)",
4c188026
BK
6914 (char*)NULL };
6915
1d109416
NN
6916/* * * * * * * * * * * * * * * * * * * * * * * * * *
6917 *
6918 * Description of Svr4_Sighandler_Type fix
6919 */
6920tSCC zSvr4_Sighandler_TypeName[] =
6921 "svr4_sighandler_type";
6922
6923/*
6924 * File name selection pattern
6925 */
6926tSCC zSvr4_Sighandler_TypeList[] =
401be4b6 6927 "sys/signal.h\0";
1d109416
NN
6928/*
6929 * Machine/OS name selection pattern
6930 */
6931#define apzSvr4_Sighandler_TypeMachs (const char**)NULL
6932
6933/*
6934 * content selection pattern - do fix if pattern found
6935 */
6936tSCC zSvr4_Sighandler_TypeSelect0[] =
6937 "void *\\(\\*\\)\\(\\)";
6938
6939#define SVR4_SIGHANDLER_TYPE_TEST_CT 1
6940static tTestDesc aSvr4_Sighandler_TypeTests[] = {
6941 { TT_EGREP, zSvr4_Sighandler_TypeSelect0, (regex_t*)NULL }, };
6942
6943/*
6944 * Fix Command Arguments for Svr4_Sighandler_Type
6945 */
6946static const char* apzSvr4_Sighandler_TypePatch[] = {
6947 "format",
6948 "void (*)(int)",
6949 (char*)NULL };
6950
76d2e2c5
NN
6951/* * * * * * * * * * * * * * * * * * * * * * * * * *
6952 *
6953 * Description of Svr4_Undeclared_Getrnge fix
6954 */
6955tSCC zSvr4_Undeclared_GetrngeName[] =
6956 "svr4_undeclared_getrnge";
6957
6958/*
6959 * File name selection pattern
6960 */
6961tSCC zSvr4_Undeclared_GetrngeList[] =
401be4b6 6962 "regexp.h\0";
76d2e2c5
NN
6963/*
6964 * Machine/OS name selection pattern
6965 */
6966#define apzSvr4_Undeclared_GetrngeMachs (const char**)NULL
6967
6968/*
6969 * content selection pattern - do fix if pattern found
6970 */
6971tSCC zSvr4_Undeclared_GetrngeSelect0[] =
6972 "getrnge";
6973
6974/*
6975 * content bypass pattern - skip fix if pattern found
6976 */
6977tSCC zSvr4_Undeclared_GetrngeBypass0[] =
6978 "static void getrnge";
6979
6980#define SVR4_UNDECLARED_GETRNGE_TEST_CT 2
6981static tTestDesc aSvr4_Undeclared_GetrngeTests[] = {
6982 { TT_NEGREP, zSvr4_Undeclared_GetrngeBypass0, (regex_t*)NULL },
6983 { TT_EGREP, zSvr4_Undeclared_GetrngeSelect0, (regex_t*)NULL }, };
6984
6985/*
6986 * Fix Command Arguments for Svr4_Undeclared_Getrnge
6987 */
6988static const char* apzSvr4_Undeclared_GetrngePatch[] = {
6989 "format",
6990 "%0\n\
6991static int getrnge ();",
6992 "^static int[ \t]+size;",
6993 (char*)NULL };
6994
06bbab1b
BK
6995/* * * * * * * * * * * * * * * * * * * * * * * * * *
6996 *
5abc1f74 6997 * Description of Sysv68_String fix
06bbab1b
BK
6998 */
6999tSCC zSysv68_StringName[] =
3be1fb72
ZW
7000 "sysv68_string";
7001
06bbab1b
BK
7002/*
7003 * File name selection pattern
7004 */
7005tSCC zSysv68_StringList[] =
401be4b6 7006 "testing.h\0string.h\0";
06bbab1b
BK
7007/*
7008 * Machine/OS name selection pattern
7009 */
7010#define apzSysv68_StringMachs (const char**)NULL
793387fa
JM
7011
7012/*
7013 * content bypass pattern - skip fix if pattern found
7014 */
7015tSCC zSysv68_StringBypass0[] =
7016 "_CLASSIC_ANSI_TYPES";
7017
7018#define SYSV68_STRING_TEST_CT 1
7019static tTestDesc aSysv68_StringTests[] = {
7020 { TT_NEGREP, zSysv68_StringBypass0, (regex_t*)NULL }, };
06bbab1b
BK
7021
7022/*
7023 * Fix Command Arguments for Sysv68_String
7024 */
3af556f7 7025static const char* apzSysv68_StringPatch[] = { "sed",
be02fa1a
BK
7026 "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
7027 "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
7028 "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
7029 "-e", "/^extern char$/N",
7030 "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
f4306baa
EZ
7031 "-e", "/^extern int$/N",
7032 "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
be02fa1a 7033 "-e", "/^\tstrncmp(),$/N",
c329beb0
BK
7034 "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
7035extern unsigned int\\\n\
7036\\2/",
06bbab1b
BK
7037 (char*)NULL };
7038
7039/* * * * * * * * * * * * * * * * * * * * * * * * * *
7040 *
5abc1f74 7041 * Description of Sysz_Stdlib_For_Sun fix
06bbab1b
BK
7042 */
7043tSCC zSysz_Stdlib_For_SunName[] =
3be1fb72
ZW
7044 "sysz_stdlib_for_sun";
7045
06bbab1b
BK
7046/*
7047 * File name selection pattern
7048 */
7049tSCC zSysz_Stdlib_For_SunList[] =
401be4b6 7050 "stdlib.h\0";
06bbab1b
BK
7051/*
7052 * Machine/OS name selection pattern
7053 */
ef16b5e5 7054#define apzSysz_Stdlib_For_SunMachs (const char**)NULL
cb8d5168
BK
7055
7056/*
7057 * content selection pattern - do fix if pattern found
7058 */
7059tSCC zSysz_Stdlib_For_SunSelect0[] =
7060 "char[ \t]*\\*[ \t]*(calloc|malloc|realloc|bsearch)[ \t]*\\(";
7061
492d5b4f
JM
7062/*
7063 * content bypass pattern - skip fix if pattern found
7064 */
7065tSCC zSysz_Stdlib_For_SunBypass0[] =
7066 "_CLASSIC_ANSI_TYPES";
7067
7068#define SYSZ_STDLIB_FOR_SUN_TEST_CT 2
3af556f7 7069static tTestDesc aSysz_Stdlib_For_SunTests[] = {
492d5b4f 7070 { TT_NEGREP, zSysz_Stdlib_For_SunBypass0, (regex_t*)NULL },
cb8d5168 7071 { TT_EGREP, zSysz_Stdlib_For_SunSelect0, (regex_t*)NULL }, };
06bbab1b
BK
7072
7073/*
7074 * Fix Command Arguments for Sysz_Stdlib_For_Sun
7075 */
3af556f7 7076static const char* apzSysz_Stdlib_For_SunPatch[] = {
cb8d5168
BK
7077 "format",
7078 "void *\t%1(",
06bbab1b
BK
7079 (char*)NULL };
7080
3d78f2e9
RH
7081/* * * * * * * * * * * * * * * * * * * * * * * * * *
7082 *
7083 * Description of Thread_Keyword fix
7084 */
7085tSCC zThread_KeywordName[] =
7086 "thread_keyword";
7087
7088/*
7089 * File name selection pattern
7090 */
7091tSCC zThread_KeywordList[] =
401be4b6 7092 "pthread.h\0bits/sigthread.h\0";
3d78f2e9
RH
7093/*
7094 * Machine/OS name selection pattern
7095 */
7096#define apzThread_KeywordMachs (const char**)NULL
7097
7098/*
7099 * content selection pattern - do fix if pattern found
7100 */
7101tSCC zThread_KeywordSelect0[] =
5d83269d 7102 "([* ])__thread([,)])";
3d78f2e9
RH
7103
7104#define THREAD_KEYWORD_TEST_CT 1
7105static tTestDesc aThread_KeywordTests[] = {
7106 { TT_EGREP, zThread_KeywordSelect0, (regex_t*)NULL }, };
7107
7108/*
7109 * Fix Command Arguments for Thread_Keyword
7110 */
fd0a3915
BK
7111static const char* apzThread_KeywordPatch[] = {
7112 "format",
5d83269d 7113 "%1__thr%2",
3d78f2e9
RH
7114 (char*)NULL };
7115
06bbab1b
BK
7116/* * * * * * * * * * * * * * * * * * * * * * * * * *
7117 *
5abc1f74 7118 * Description of Tinfo_Cplusplus fix
06bbab1b
BK
7119 */
7120tSCC zTinfo_CplusplusName[] =
3be1fb72
ZW
7121 "tinfo_cplusplus";
7122
06bbab1b
BK
7123/*
7124 * File name selection pattern
7125 */
7126tSCC zTinfo_CplusplusList[] =
401be4b6 7127 "tinfo.h\0";
06bbab1b
BK
7128/*
7129 * Machine/OS name selection pattern
7130 */
7131#define apzTinfo_CplusplusMachs (const char**)NULL
d7eb5a45
ZW
7132
7133/*
7134 * content selection pattern - do fix if pattern found
7135 */
7136tSCC zTinfo_CplusplusSelect0[] =
7137 "[ \t]_cplusplus";
7138
7139#define TINFO_CPLUSPLUS_TEST_CT 1
3af556f7 7140static tTestDesc aTinfo_CplusplusTests[] = {
d7eb5a45 7141 { TT_EGREP, zTinfo_CplusplusSelect0, (regex_t*)NULL }, };
06bbab1b
BK
7142
7143/*
7144 * Fix Command Arguments for Tinfo_Cplusplus
7145 */
3af556f7 7146static const char* apzTinfo_CplusplusPatch[] = {
5d7d28c2
BK
7147 "format",
7148 " __cplusplus",
06bbab1b
BK
7149 (char*)NULL };
7150
165bfb59
BK
7151/* * * * * * * * * * * * * * * * * * * * * * * * * *
7152 *
7153 * Description of Ultrix_Atexit_Param fix
7154 */
7155tSCC zUltrix_Atexit_ParamName[] =
7156 "ultrix_atexit_param";
7157
7158/*
7159 * File name selection pattern
7160 */
7161tSCC zUltrix_Atexit_ParamList[] =
401be4b6 7162 "stdlib.h\0";
165bfb59
BK
7163/*
7164 * Machine/OS name selection pattern
7165 */
7166#define apzUltrix_Atexit_ParamMachs (const char**)NULL
7167
7168/*
7169 * content selection pattern - do fix if pattern found
7170 */
7171tSCC zUltrix_Atexit_ParamSelect0[] =
7172 "atexit\\(.*\\(\\)";
7173
7174#define ULTRIX_ATEXIT_PARAM_TEST_CT 1
7175static tTestDesc aUltrix_Atexit_ParamTests[] = {
7176 { TT_EGREP, zUltrix_Atexit_ParamSelect0, (regex_t*)NULL }, };
7177
7178/*
7179 * Fix Command Arguments for Ultrix_Atexit_Param
7180 */
7181static const char* apzUltrix_Atexit_ParamPatch[] = {
7182 "format",
7183 "atexit( void (*__func)( void )",
7184 (char*)NULL };
7185
7186/* * * * * * * * * * * * * * * * * * * * * * * * * *
7187 *
7188 * Description of Ultrix_Atof_Param fix
7189 */
7190tSCC zUltrix_Atof_ParamName[] =
7191 "ultrix_atof_param";
7192
7193/*
7194 * File name selection pattern
7195 */
7196tSCC zUltrix_Atof_ParamList[] =
401be4b6 7197 "math.h\0";
165bfb59
BK
7198/*
7199 * Machine/OS name selection pattern
7200 */
7201#define apzUltrix_Atof_ParamMachs (const char**)NULL
7202
7203/*
7204 * content selection pattern - do fix if pattern found
7205 */
7206tSCC zUltrix_Atof_ParamSelect0[] =
7207 "atof\\([ \t]*char";
7208
7209#define ULTRIX_ATOF_PARAM_TEST_CT 1
7210static tTestDesc aUltrix_Atof_ParamTests[] = {
7211 { TT_EGREP, zUltrix_Atof_ParamSelect0, (regex_t*)NULL }, };
7212
7213/*
7214 * Fix Command Arguments for Ultrix_Atof_Param
7215 */
7216static const char* apzUltrix_Atof_ParamPatch[] = {
7217 "format",
7218 "atof(const char",
7219 (char*)NULL };
7220
06bbab1b
BK
7221/* * * * * * * * * * * * * * * * * * * * * * * * * *
7222 *
5abc1f74 7223 * Description of Ultrix_Const fix
06bbab1b
BK
7224 */
7225tSCC zUltrix_ConstName[] =
3be1fb72
ZW
7226 "ultrix_const";
7227
06bbab1b
BK
7228/*
7229 * File name selection pattern
7230 */
7231tSCC zUltrix_ConstList[] =
401be4b6 7232 "stdio.h\0";
06bbab1b
BK
7233/*
7234 * Machine/OS name selection pattern
7235 */
7236#define apzUltrix_ConstMachs (const char**)NULL
5d7d28c2
BK
7237
7238/*
7239 * content selection pattern - do fix if pattern found
7240 */
7241tSCC zUltrix_ConstSelect0[] =
7242 "perror\\( char \\*";
7243
7244#define ULTRIX_CONST_TEST_CT 1
3af556f7 7245static tTestDesc aUltrix_ConstTests[] = {
5d7d28c2 7246 { TT_EGREP, zUltrix_ConstSelect0, (regex_t*)NULL }, };
06bbab1b
BK
7247
7248/*
7249 * Fix Command Arguments for Ultrix_Const
7250 */
3af556f7 7251static const char* apzUltrix_ConstPatch[] = {
5d7d28c2
BK
7252 "format",
7253 "%1 const %3 *__",
7254 "([ \t*](perror|fputs|fwrite|scanf|fscanf)\\(.*)[ \t]+(char|void) \\*__",
7255 (char*)NULL };
7256
7257/* * * * * * * * * * * * * * * * * * * * * * * * * *
7258 *
7259 * Description of Ultrix_Const2 fix
7260 */
5d7d28c2
BK
7261tSCC zUltrix_Const2Name[] =
7262 "ultrix_const2";
7263
7264/*
7265 * File name selection pattern
7266 */
7267tSCC zUltrix_Const2List[] =
401be4b6 7268 "stdio.h\0";
5d7d28c2
BK
7269/*
7270 * Machine/OS name selection pattern
7271 */
7272#define apzUltrix_Const2Machs (const char**)NULL
7273
7274/*
7275 * content selection pattern - do fix if pattern found
7276 */
7277tSCC zUltrix_Const2Select0[] =
7278 "\\*fopen\\( char \\*";
7279
7280#define ULTRIX_CONST2_TEST_CT 1
3af556f7 7281static tTestDesc aUltrix_Const2Tests[] = {
5d7d28c2
BK
7282 { TT_EGREP, zUltrix_Const2Select0, (regex_t*)NULL }, };
7283
7284/*
7285 * Fix Command Arguments for Ultrix_Const2
7286 */
3af556f7 7287static const char* apzUltrix_Const2Patch[] = {
5d7d28c2
BK
7288 "format",
7289 "%1( const char *%3, const char *",
7290 "([ \t*](fopen|sscanf|popen|tempnam))\\([ \t]*char[ \t]*\\*([^,]*),[ \t]*char[ \t]*\\*[ \t]*",
06bbab1b
BK
7291 (char*)NULL };
7292
4b60eb3b
JDA
7293/* * * * * * * * * * * * * * * * * * * * * * * * * *
7294 *
7295 * Description of Ultrix_Const3 fix
7296 */
7297tSCC zUltrix_Const3Name[] =
7298 "ultrix_const3";
7299
7300/*
7301 * File name selection pattern
7302 */
7303tSCC zUltrix_Const3List[] =
401be4b6 7304 "stdio.h\0";
4b60eb3b
JDA
7305/*
7306 * Machine/OS name selection pattern
7307 */
7308#define apzUltrix_Const3Machs (const char**)NULL
7309
7310/*
7311 * content selection pattern - do fix if pattern found
7312 */
7313tSCC zUltrix_Const3Select0[] =
7314 "fdopen\\( .*, char \\*";
7315
7316#define ULTRIX_CONST3_TEST_CT 1
7317static tTestDesc aUltrix_Const3Tests[] = {
7318 { TT_EGREP, zUltrix_Const3Select0, (regex_t*)NULL }, };
7319
7320/*
7321 * Fix Command Arguments for Ultrix_Const3
7322 */
7323static const char* apzUltrix_Const3Patch[] = {
7324 "format",
7325 "%1 const %3 *__",
7326 "([ \t*](fdopen)\\(.*)[ \t]+(char|void) \\*__",
7327 (char*)NULL };
7328
165bfb59
BK
7329/* * * * * * * * * * * * * * * * * * * * * * * * * *
7330 *
7331 * Description of Ultrix_Fix_Fixproto fix
7332 */
7333tSCC zUltrix_Fix_FixprotoName[] =
7334 "ultrix_fix_fixproto";
7335
7336/*
7337 * File name selection pattern
7338 */
7339tSCC zUltrix_Fix_FixprotoList[] =
401be4b6 7340 "sys/utsname.h\0";
165bfb59
BK
7341/*
7342 * Machine/OS name selection pattern
7343 */
7344#define apzUltrix_Fix_FixprotoMachs (const char**)NULL
7345
7346/*
7347 * content selection pattern - do fix if pattern found
7348 */
7349tSCC zUltrix_Fix_FixprotoSelect0[] =
7350 "ULTRIX";
7351
7352#define ULTRIX_FIX_FIXPROTO_TEST_CT 1
7353static tTestDesc aUltrix_Fix_FixprotoTests[] = {
7354 { TT_EGREP, zUltrix_Fix_FixprotoSelect0, (regex_t*)NULL }, };
7355
7356/*
7357 * Fix Command Arguments for Ultrix_Fix_Fixproto
7358 */
7359static const char* apzUltrix_Fix_FixprotoPatch[] = {
7360 "format",
7361 "struct utsname;\n\
7362%0",
7363 "^[ \t]*extern[ \t]*int[ \t]*uname\\(\\);",
7364 (char*)NULL };
7365
7366/* * * * * * * * * * * * * * * * * * * * * * * * * *
7367 *
7368 * Description of Ultrix_Ifdef fix
7369 */
7370tSCC zUltrix_IfdefName[] =
7371 "ultrix_ifdef";
7372
7373/*
7374 * File name selection pattern
7375 */
7376tSCC zUltrix_IfdefList[] =
401be4b6 7377 "sys/file.h\0";
165bfb59
BK
7378/*
7379 * Machine/OS name selection pattern
7380 */
7381#define apzUltrix_IfdefMachs (const char**)NULL
7382
7383/*
7384 * content selection pattern - do fix if pattern found
7385 */
7386tSCC zUltrix_IfdefSelect0[] =
7387 "^#ifdef KERNEL[ \t]+&&";
7388
7389#define ULTRIX_IFDEF_TEST_CT 1
7390static tTestDesc aUltrix_IfdefTests[] = {
7391 { TT_EGREP, zUltrix_IfdefSelect0, (regex_t*)NULL }, };
7392
7393/*
7394 * Fix Command Arguments for Ultrix_Ifdef
7395 */
7396static const char* apzUltrix_IfdefPatch[] = {
7397 "format",
7398 "#if defined(KERNEL) &&",
7399 (char*)NULL };
7400
4b60eb3b
JDA
7401/* * * * * * * * * * * * * * * * * * * * * * * * * *
7402 *
7403 * Description of Ultrix_Locale fix
7404 */
7405tSCC zUltrix_LocaleName[] =
7406 "ultrix_locale";
7407
7408/*
7409 * File name selection pattern
7410 */
7411tSCC zUltrix_LocaleList[] =
401be4b6 7412 "locale.h\0";
4b60eb3b
JDA
7413/*
7414 * Machine/OS name selection pattern
7415 */
7416#define apzUltrix_LocaleMachs (const char**)NULL
7417
7418/*
7419 * content selection pattern - do fix if pattern found
7420 */
7421tSCC zUltrix_LocaleSelect0[] =
7422 "@\\(#\\)locale\\.h.*6\\.1.*\\(ULTRIX\\)";
7423
7424#define ULTRIX_LOCALE_TEST_CT 1
7425static tTestDesc aUltrix_LocaleTests[] = {
7426 { TT_EGREP, zUltrix_LocaleSelect0, (regex_t*)NULL }, };
7427
7428/*
7429 * Fix Command Arguments for Ultrix_Locale
7430 */
7431static const char* apzUltrix_LocalePatch[] = {
7432 "wrap",
7433 (char*)NULL };
7434
165bfb59
BK
7435/* * * * * * * * * * * * * * * * * * * * * * * * * *
7436 *
7437 * Description of Ultrix_Math_Ifdef fix
7438 */
7439tSCC zUltrix_Math_IfdefName[] =
7440 "ultrix_math_ifdef";
7441
7442/*
7443 * File name selection pattern
7444 */
7445tSCC zUltrix_Math_IfdefList[] =
401be4b6 7446 "sys/limits.h\0float.h\0math.h\0";
165bfb59
BK
7447/*
7448 * Machine/OS name selection pattern
7449 */
7450#define apzUltrix_Math_IfdefMachs (const char**)NULL
7451
7452/*
7453 * content selection pattern - do fix if pattern found
7454 */
7455tSCC zUltrix_Math_IfdefSelect0[] =
7456 "^(#if.*)\\|\\|[ \t]+CC\\$[a-z]+";
7457
7458#define ULTRIX_MATH_IFDEF_TEST_CT 1
7459static tTestDesc aUltrix_Math_IfdefTests[] = {
7460 { TT_EGREP, zUltrix_Math_IfdefSelect0, (regex_t*)NULL }, };
7461
7462/*
7463 * Fix Command Arguments for Ultrix_Math_Ifdef
7464 */
7465static const char* apzUltrix_Math_IfdefPatch[] = {
7466 "format",
7467 "%1",
7468 (char*)NULL };
7469
7470/* * * * * * * * * * * * * * * * * * * * * * * * * *
7471 *
7472 * Description of Ultrix_Nested_Ioctl fix
7473 */
7474tSCC zUltrix_Nested_IoctlName[] =
7475 "ultrix_nested_ioctl";
7476
7477/*
7478 * File name selection pattern
7479 */
7480tSCC zUltrix_Nested_IoctlList[] =
401be4b6 7481 "sys/ioctl.h\0";
165bfb59
BK
7482/*
7483 * Machine/OS name selection pattern
7484 */
7485#define apzUltrix_Nested_IoctlMachs (const char**)NULL
7486
7487/*
7488 * content selection pattern - do fix if pattern found
7489 */
7490tSCC zUltrix_Nested_IoctlSelect0[] =
7491 "^/\\* #define SIOCSCREEN";
7492
7493#define ULTRIX_NESTED_IOCTL_TEST_CT 1
7494static tTestDesc aUltrix_Nested_IoctlTests[] = {
7495 { TT_EGREP, zUltrix_Nested_IoctlSelect0, (regex_t*)NULL }, };
7496
7497/*
7498 * Fix Command Arguments for Ultrix_Nested_Ioctl
7499 */
7500static const char* apzUltrix_Nested_IoctlPatch[] = { "sed",
7501 "-e", "/^\\/\\* #define SIOCSCREEN/s@/\\* screend@*//* screend@",
7502 (char*)NULL };
7503
7504/* * * * * * * * * * * * * * * * * * * * * * * * * *
7505 *
7506 * Description of Ultrix_Nested_Svc fix
7507 */
7508tSCC zUltrix_Nested_SvcName[] =
7509 "ultrix_nested_svc";
7510
7511/*
7512 * File name selection pattern
7513 */
7514tSCC zUltrix_Nested_SvcList[] =
401be4b6 7515 "rpc/svc.h\0";
165bfb59
BK
7516/*
7517 * Machine/OS name selection pattern
7518 */
7519#define apzUltrix_Nested_SvcMachs (const char**)NULL
7520
7521/*
7522 * content selection pattern - do fix if pattern found
7523 */
7524tSCC zUltrix_Nested_SvcSelect0[] =
7525 "^ \\*[ \t]*int protocol; */\\*";
7526
7527#define ULTRIX_NESTED_SVC_TEST_CT 1
7528static tTestDesc aUltrix_Nested_SvcTests[] = {
7529 { TT_EGREP, zUltrix_Nested_SvcSelect0, (regex_t*)NULL }, };
7530
7531/*
7532 * Fix Command Arguments for Ultrix_Nested_Svc
7533 */
7534static const char* apzUltrix_Nested_SvcPatch[] = { "sed",
7535 "-e", "s@^\\( \\*\tint protocol; \\)/\\*@\\1*/ /*@",
7536 (char*)NULL };
7537
7538/* * * * * * * * * * * * * * * * * * * * * * * * * *
7539 *
7540 * Description of Ultrix_Stat fix
7541 */
7542tSCC zUltrix_StatName[] =
7543 "ultrix_stat";
7544
7545/*
7546 * File name selection pattern
7547 */
7548tSCC zUltrix_StatList[] =
401be4b6 7549 "sys/stat.h\0";
165bfb59
BK
7550/*
7551 * Machine/OS name selection pattern
7552 */
7553#define apzUltrix_StatMachs (const char**)NULL
7554
7555/*
7556 * content selection pattern - do fix if pattern found
7557 */
7558tSCC zUltrix_StatSelect0[] =
7559 "@\\(#\\)stat\\.h.*6\\.1.*\\(ULTRIX\\)";
7560
7561#define ULTRIX_STAT_TEST_CT 1
7562static tTestDesc aUltrix_StatTests[] = {
7563 { TT_EGREP, zUltrix_StatSelect0, (regex_t*)NULL }, };
7564
7565/*
7566 * Fix Command Arguments for Ultrix_Stat
7567 */
7568static const char* apzUltrix_StatPatch[] = { "sed",
7569 "-e", "/^#define[ \t]S_IFPORT[ \t]*S_IFIFO$/a\\\n\
7570\\\n\
7571/* macro to test for symbolic link */\\\n\
7572#define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK)\\\n\n",
7573 "-e", "/^[ \t]*fstat(),$/a\\\n\
7574\tlstat(),\n",
7575 (char*)NULL };
7576
7577/* * * * * * * * * * * * * * * * * * * * * * * * * *
7578 *
7579 * Description of Ultrix_Static fix
7580 */
7581tSCC zUltrix_StaticName[] =
7582 "ultrix_static";
7583
7584/*
7585 * File name selection pattern
7586 */
7587tSCC zUltrix_StaticList[] =
401be4b6 7588 "machine/cpu.h\0";
165bfb59
BK
7589/*
7590 * Machine/OS name selection pattern
7591 */
7592#define apzUltrix_StaticMachs (const char**)NULL
7593
7594/*
7595 * content selection pattern - do fix if pattern found
7596 */
7597tSCC zUltrix_StaticSelect0[] =
7598 "#include \"r[34]_cpu";
7599
7600#define ULTRIX_STATIC_TEST_CT 1
7601static tTestDesc aUltrix_StaticTests[] = {
7602 { TT_EGREP, zUltrix_StaticSelect0, (regex_t*)NULL }, };
7603
7604/*
7605 * Fix Command Arguments for Ultrix_Static
7606 */
7607static const char* apzUltrix_StaticPatch[] = { "sed",
7608 "-e", "s/^static struct tlb_pid_state/struct tlb_pid_state/",
7609 "-e", "s/^#include \"r3_cpu\\.h\"$/#include <machine\\/r3_cpu\\.h>/",
7610 "-e", "s/^#include \"r4_cpu\\.h\"$/#include <machine\\/r4_cpu\\.h>/",
7611 (char*)NULL };
7612
4b60eb3b
JDA
7613/* * * * * * * * * * * * * * * * * * * * * * * * * *
7614 *
7615 * Description of Ultrix_Stdlib fix
7616 */
7617tSCC zUltrix_StdlibName[] =
7618 "ultrix_stdlib";
7619
7620/*
7621 * File name selection pattern
7622 */
7623tSCC zUltrix_StdlibList[] =
401be4b6 7624 "stdlib.h\0";
4b60eb3b
JDA
7625/*
7626 * Machine/OS name selection pattern
7627 */
7628#define apzUltrix_StdlibMachs (const char**)NULL
7629
7630/*
7631 * content selection pattern - do fix if pattern found
7632 */
7633tSCC zUltrix_StdlibSelect0[] =
7634 "@\\(#\\)stdlib\\.h.*6\\.1.*\\(ULTRIX\\)";
7635
7636#define ULTRIX_STDLIB_TEST_CT 1
7637static tTestDesc aUltrix_StdlibTests[] = {
7638 { TT_EGREP, zUltrix_StdlibSelect0, (regex_t*)NULL }, };
7639
7640/*
7641 * Fix Command Arguments for Ultrix_Stdlib
7642 */
7643static const char* apzUltrix_StdlibPatch[] = { "sed",
7644 "-e", "/^char.*getenv( const char .* );.*$/a\\\n\
7645int\t\tsetenv( const char *__name, const char *__val, int __ovrwrt );\\\n\
7646void\t\tunsetenv( const char *__name );\\\n\
7647int\t\tputenv( char *__s );\n",
7648 "-e", "/^char.*getenv();.*$/a\\\n\
7649int\tsetenv();\\\n\
7650void\tunsetenv();\\\n\
7651int\tputenv();\n",
7652 (char*)NULL };
7653
165bfb59
BK
7654/* * * * * * * * * * * * * * * * * * * * * * * * * *
7655 *
7656 * Description of Ultrix_Strings fix
7657 */
7658tSCC zUltrix_StringsName[] =
7659 "ultrix_strings";
7660
7661/*
7662 * File name selection pattern
7663 */
7664tSCC zUltrix_StringsList[] =
401be4b6 7665 "strings.h\0";
165bfb59
BK
7666/*
7667 * Machine/OS name selection pattern
7668 */
7669#define apzUltrix_StringsMachs (const char**)NULL
7670
7671/*
7672 * content selection pattern - do fix if pattern found
7673 */
7674tSCC zUltrix_StringsSelect0[] =
7675 "@\\(#\\)strings\\.h.*6\\.1.*\\(ULTRIX\\)";
7676
7677#define ULTRIX_STRINGS_TEST_CT 1
7678static tTestDesc aUltrix_StringsTests[] = {
7679 { TT_EGREP, zUltrix_StringsSelect0, (regex_t*)NULL }, };
7680
7681/*
7682 * Fix Command Arguments for Ultrix_Strings
7683 */
7684static const char* apzUltrix_StringsPatch[] = {
7685 "wrap",
7686 (char*)NULL };
7687
4b60eb3b
JDA
7688/* * * * * * * * * * * * * * * * * * * * * * * * * *
7689 *
7690 * Description of Ultrix_Strings2 fix
7691 */
7692tSCC zUltrix_Strings2Name[] =
7693 "ultrix_strings2";
7694
7695/*
7696 * File name selection pattern
7697 */
7698tSCC zUltrix_Strings2List[] =
401be4b6 7699 "strings.h\0";
4b60eb3b
JDA
7700/*
7701 * Machine/OS name selection pattern
7702 */
7703#define apzUltrix_Strings2Machs (const char**)NULL
7704
7705/*
7706 * content selection pattern - do fix if pattern found
7707 */
7708tSCC zUltrix_Strings2Select0[] =
7709 "@\\(#\\)strings\\.h.*6\\.1.*\\(ULTRIX\\)";
7710
7711#define ULTRIX_STRINGS2_TEST_CT 1
7712static tTestDesc aUltrix_Strings2Tests[] = {
7713 { TT_EGREP, zUltrix_Strings2Select0, (regex_t*)NULL }, };
7714
7715/*
7716 * Fix Command Arguments for Ultrix_Strings2
7717 */
7718static const char* apzUltrix_Strings2Patch[] = { "sed",
7719 "-e", "/^.*strncmp( const .* );.*/a\\\n\
7720\\\n\
7721extern int\\\n\
7722\tstrcasecmp( const char *__s1, const char *__s2),\\\n\
7723\tstrncasecmp( const char *__s1, const char *__s2, size_t __n );\n",
7724 "-e", "/^.*strncmp();.*/a\\\n\
7725extern int\\\n\
7726\tstrcasecmp(),\\\n\
7727\tstrncasecmp();\n",
7728 (char*)NULL };
7729
7730/* * * * * * * * * * * * * * * * * * * * * * * * * *
7731 *
7732 * Description of Ultrix_Sys_Time fix
7733 */
7734tSCC zUltrix_Sys_TimeName[] =
7735 "ultrix_sys_time";
7736
7737/*
7738 * File name selection pattern
7739 */
7740tSCC zUltrix_Sys_TimeList[] =
401be4b6 7741 "sys/time.h\0";
4b60eb3b
JDA
7742/*
7743 * Machine/OS name selection pattern
7744 */
7745#define apzUltrix_Sys_TimeMachs (const char**)NULL
7746
7747/*
7748 * content selection pattern - do fix if pattern found
7749 */
7750tSCC zUltrix_Sys_TimeSelect0[] =
7751 "@\\(#\\)time\\.h.*6\\.1.*\\(ULTRIX\\)";
7752
7753#define ULTRIX_SYS_TIME_TEST_CT 1
7754static tTestDesc aUltrix_Sys_TimeTests[] = {
7755 { TT_EGREP, zUltrix_Sys_TimeSelect0, (regex_t*)NULL }, };
7756
7757/*
7758 * Fix Command Arguments for Ultrix_Sys_Time
7759 */
7760static const char* apzUltrix_Sys_TimePatch[] = { "sed",
7761 "-e", "/^extern.*time_t.*time( time_t .* );.*$/a\\\n\
7762\\\n\
7763extern int adjtime(struct timeval *, struct timeval *);\\\n\
7764extern int getitimer(int, struct itimerval *);\\\n\
7765extern int setitimer(int, struct itimerval *, struct itimerval *);\\\n\
7766extern int gettimeofday(struct timeval *, struct timezone *);\\\n\
7767extern int settimeofday(struct timeval *, struct timezone *);\\\n\
7768extern void profil(const void *, size_t, size_t, unsigned int);\\\n\
7769extern int stime(const time_t *);\\\n\
7770extern int utimes(const char *, const struct timeval[2]);\\\n\
7771extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);\n",
7772 "-e", "/^extern.*double.*difftime();.*$/a\\\n\
7773extern\tint adjtime();\\\n\
7774extern\tint getitimer();\\\n\
7775extern\tint setitimer();\\\n\
7776extern\tint gettimeofday();\\\n\
7777extern\tint settimeofday();\\\n\
7778extern\tvoid profil();\\\n\
7779extern\tint stime();\\\n\
7780extern\tint utimes();\\\n\
7781extern\tint select();\n",
7782 (char*)NULL };
7783
7784/* * * * * * * * * * * * * * * * * * * * * * * * * *
7785 *
7786 * Description of Ultrix_Unistd fix
7787 */
7788tSCC zUltrix_UnistdName[] =
7789 "ultrix_unistd";
7790
7791/*
7792 * File name selection pattern
7793 */
7794tSCC zUltrix_UnistdList[] =
401be4b6 7795 "unistd.h\0";
4b60eb3b
JDA
7796/*
7797 * Machine/OS name selection pattern
7798 */
7799#define apzUltrix_UnistdMachs (const char**)NULL
7800
7801/*
7802 * content selection pattern - do fix if pattern found
7803 */
7804tSCC zUltrix_UnistdSelect0[] =
7805 "@\\(#\\)unistd\\.h.*6\\.1.*\\(ULTRIX\\)";
7806
7807#define ULTRIX_UNISTD_TEST_CT 1
7808static tTestDesc aUltrix_UnistdTests[] = {
7809 { TT_EGREP, zUltrix_UnistdSelect0, (regex_t*)NULL }, };
7810
7811/*
7812 * Fix Command Arguments for Ultrix_Unistd
7813 */
7814static const char* apzUltrix_UnistdPatch[] = { "sed",
7815 "-e", "/^[ \t]*getgroups(),.*$/a\\\n\
7816\tgetpagesize(),\n",
7817 "-e", "/^[ \t]*fork(),.*$/a\\\n\
7818\tvfork(),\n",
7819 (char*)NULL };
7820
30102605
RH
7821/* * * * * * * * * * * * * * * * * * * * * * * * * *
7822 *
7823 * Description of Unicosmk_Restrict fix
7824 */
7825tSCC zUnicosmk_RestrictName[] =
7826 "unicosmk_restrict";
7827
7828/*
7829 * File name selection pattern
7830 */
7831tSCC zUnicosmk_RestrictList[] =
401be4b6 7832 "stdio.h\0stdlib.h\0wchar.h\0";
30102605
RH
7833/*
7834 * Machine/OS name selection pattern
7835 */
7836tSCC* apzUnicosmk_RestrictMachs[] = {
7837 "*-*-unicosmk*",
7838 (const char*)NULL };
7839
7840/*
7841 * content selection pattern - do fix if pattern found
7842 */
7843tSCC zUnicosmk_RestrictSelect0[] =
7844 "(\\*[ \t]*)restrict([ \t]+)";
7845
7846#define UNICOSMK_RESTRICT_TEST_CT 1
7847static tTestDesc aUnicosmk_RestrictTests[] = {
7848 { TT_EGREP, zUnicosmk_RestrictSelect0, (regex_t*)NULL }, };
7849
7850/*
7851 * Fix Command Arguments for Unicosmk_Restrict
7852 */
7853static const char* apzUnicosmk_RestrictPatch[] = {
7854 "format",
7855 "%1__restrict__%2",
7856 (char*)NULL };
7857
86765ca0
RL
7858/* * * * * * * * * * * * * * * * * * * * * * * * * *
7859 *
b5e20633 7860 * Description of Uw7_Byteorder_Fix fix
86765ca0 7861 */
b5e20633
BK
7862tSCC zUw7_Byteorder_FixName[] =
7863 "uw7_byteorder_fix";
3be1fb72 7864
86765ca0
RL
7865/*
7866 * File name selection pattern
7867 */
b5e20633 7868tSCC zUw7_Byteorder_FixList[] =
401be4b6 7869 "arpa/inet.h\0";
86765ca0
RL
7870/*
7871 * Machine/OS name selection pattern
7872 */
b5e20633 7873tSCC* apzUw7_Byteorder_FixMachs[] = {
86765ca0 7874 "*-*-sysv4*",
7ae2112b
BK
7875 "i?86-*-sysv5*",
7876 "i?86-*-udk*",
7877 "i?86-*-solaris2.[0-4]",
86765ca0
RL
7878 "powerpcle-*-solaris2.[0-4]",
7879 "sparc-*-solaris2.[0-4]",
7880 (const char*)NULL };
7881
7882/*
7883 * content selection pattern - do fix if pattern found
7884 */
b5e20633 7885tSCC zUw7_Byteorder_FixSelect0[] =
86765ca0
RL
7886 "in_port_t";
7887
b5e20633
BK
7888/*
7889 * perform the 'test' shell command - do fix on success
7890 */
7891tSCC zUw7_Byteorder_FixTest0[] =
eb559363 7892 "-f sys/byteorder.h";
b5e20633
BK
7893
7894#define UW7_BYTEORDER_FIX_TEST_CT 2
3af556f7 7895static tTestDesc aUw7_Byteorder_FixTests[] = {
b5e20633
BK
7896 { TT_TEST, zUw7_Byteorder_FixTest0, 0 /* unused */ },
7897 { TT_EGREP, zUw7_Byteorder_FixSelect0, (regex_t*)NULL }, };
86765ca0
RL
7898
7899/*
b5e20633 7900 * Fix Command Arguments for Uw7_Byteorder_Fix
86765ca0 7901 */
3af556f7 7902static const char* apzUw7_Byteorder_FixPatch[] = {
b5e20633
BK
7903 "format",
7904 "",
eb559363 7905 "^extern.*[ \t](htons|ntohs).*\\(in_port_t\\).*;",
86765ca0
RL
7906 (char*)NULL };
7907
06bbab1b
BK
7908/* * * * * * * * * * * * * * * * * * * * * * * * * *
7909 *
5abc1f74 7910 * Description of Va_I960_Macro fix
06bbab1b
BK
7911 */
7912tSCC zVa_I960_MacroName[] =
3be1fb72
ZW
7913 "va_i960_macro";
7914
06bbab1b
BK
7915/*
7916 * File name selection pattern
7917 */
7918tSCC zVa_I960_MacroList[] =
401be4b6 7919 "arch/i960/archI960.h\0";
06bbab1b
BK
7920/*
7921 * Machine/OS name selection pattern
7922 */
7923#define apzVa_I960_MacroMachs (const char**)NULL
7924
7925/*
be02fa1a 7926 * content selection pattern - do fix if pattern found
06bbab1b
BK
7927 */
7928tSCC zVa_I960_MacroSelect0[] =
7929 "__(vsiz|vali|vpad|alignof__)";
7930
7931#define VA_I960_MACRO_TEST_CT 1
3af556f7 7932static tTestDesc aVa_I960_MacroTests[] = {
5abc1f74 7933 { TT_EGREP, zVa_I960_MacroSelect0, (regex_t*)NULL }, };
06bbab1b
BK
7934
7935/*
7936 * Fix Command Arguments for Va_I960_Macro
7937 */
3af556f7 7938static const char* apzVa_I960_MacroPatch[] = {
5d7d28c2
BK
7939 "format",
7940 "__vx%1",
06bbab1b
BK
7941 (char*)NULL };
7942
7943/* * * * * * * * * * * * * * * * * * * * * * * * * *
7944 *
5abc1f74 7945 * Description of Void_Null fix
06bbab1b
BK
7946 */
7947tSCC zVoid_NullName[] =
3be1fb72
ZW
7948 "void_null";
7949
06bbab1b
BK
7950/*
7951 * File name selection pattern
7952 */
7953tSCC zVoid_NullList[] =
401be4b6 7954 "curses.h\0dbm.h\0locale.h\0stdio.h\0stdlib.h\0string.h\0time.h\0unistd.h\0sys/dir.h\0sys/param.h\0sys/types.h\0";
06bbab1b
BK
7955/*
7956 * Machine/OS name selection pattern
7957 */
7958#define apzVoid_NullMachs (const char**)NULL
7959
7960/*
be02fa1a 7961 * content selection pattern - do fix if pattern found
06bbab1b
BK
7962 */
7963tSCC zVoid_NullSelect0[] =
5d7d28c2 7964 "^#[ \t]*define[ \t]+NULL[ \t]+\\(\\(void[ \t]*\\*\\)0\\)";
06bbab1b 7965
31eec874
MS
7966/*
7967 * content bypass pattern - skip fix if pattern found
7968 */
7969tSCC zVoid_NullBypass0[] =
7970 "__cplusplus";
7971
7972#define VOID_NULL_TEST_CT 2
3af556f7 7973static tTestDesc aVoid_NullTests[] = {
31eec874 7974 { TT_NEGREP, zVoid_NullBypass0, (regex_t*)NULL },
5abc1f74 7975 { TT_EGREP, zVoid_NullSelect0, (regex_t*)NULL }, };
06bbab1b
BK
7976
7977/*
7978 * Fix Command Arguments for Void_Null
7979 */
3af556f7 7980static const char* apzVoid_NullPatch[] = {
5d7d28c2
BK
7981 "format",
7982 "#define NULL 0",
06bbab1b
BK
7983 (char*)NULL };
7984
7985/* * * * * * * * * * * * * * * * * * * * * * * * * *
7986 *
5abc1f74 7987 * Description of Vxworks_Gcc_Problem fix
06bbab1b
BK
7988 */
7989tSCC zVxworks_Gcc_ProblemName[] =
3be1fb72
ZW
7990 "vxworks_gcc_problem";
7991
06bbab1b
BK
7992/*
7993 * File name selection pattern
7994 */
7995tSCC zVxworks_Gcc_ProblemList[] =
401be4b6 7996 "types/vxTypesBase.h\0";
06bbab1b
BK
7997/*
7998 * Machine/OS name selection pattern
7999 */
8000#define apzVxworks_Gcc_ProblemMachs (const char**)NULL
8001
8002/*
be02fa1a 8003 * content selection pattern - do fix if pattern found
06bbab1b
BK
8004 */
8005tSCC zVxworks_Gcc_ProblemSelect0[] =
8006 "__GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__";
8007
8008#define VXWORKS_GCC_PROBLEM_TEST_CT 1
3af556f7 8009static tTestDesc aVxworks_Gcc_ProblemTests[] = {
5abc1f74 8010 { TT_EGREP, zVxworks_Gcc_ProblemSelect0, (regex_t*)NULL }, };
06bbab1b
BK
8011
8012/*
8013 * Fix Command Arguments for Vxworks_Gcc_Problem
8014 */
3af556f7 8015static const char* apzVxworks_Gcc_ProblemPatch[] = { "sed",
be02fa1a 8016 "-e", "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
c329beb0
BK
8017 "-e", "/[ \t]size_t/i\\\n\
8018#ifndef _GCC_SIZE_T\\\n\
8019#define _GCC_SIZE_T\n",
8020 "-e", "/[ \t]size_t/a\\\n\
8021#endif\n",
8022 "-e", "/[ \t]ptrdiff_t/i\\\n\
8023#ifndef _GCC_PTRDIFF_T\\\n\
8024#define _GCC_PTRDIFF_T\n",
8025 "-e", "/[ \t]ptrdiff_t/a\\\n\
8026#endif\n",
8027 "-e", "/[ \t]wchar_t/i\\\n\
8028#ifndef _GCC_WCHAR_T\\\n\
8029#define _GCC_WCHAR_T\n",
8030 "-e", "/[ \t]wchar_t/a\\\n\
8031#endif\n",
06bbab1b
BK
8032 (char*)NULL };
8033
8034/* * * * * * * * * * * * * * * * * * * * * * * * * *
8035 *
5abc1f74 8036 * Description of Vxworks_Needs_Vxtypes fix
06bbab1b
BK
8037 */
8038tSCC zVxworks_Needs_VxtypesName[] =
3be1fb72
ZW
8039 "vxworks_needs_vxtypes";
8040
06bbab1b
BK
8041/*
8042 * File name selection pattern
8043 */
8044tSCC zVxworks_Needs_VxtypesList[] =
401be4b6 8045 "time.h\0";
06bbab1b
BK
8046/*
8047 * Machine/OS name selection pattern
8048 */
8049#define apzVxworks_Needs_VxtypesMachs (const char**)NULL
8050
8051/*
be02fa1a 8052 * content selection pattern - do fix if pattern found
06bbab1b
BK
8053 */
8054tSCC zVxworks_Needs_VxtypesSelect0[] =
5d7d28c2 8055 "uint_t([ \t]+_clocks_per_sec)";
06bbab1b
BK
8056
8057#define VXWORKS_NEEDS_VXTYPES_TEST_CT 1
3af556f7 8058static tTestDesc aVxworks_Needs_VxtypesTests[] = {
5abc1f74 8059 { TT_EGREP, zVxworks_Needs_VxtypesSelect0, (regex_t*)NULL }, };
06bbab1b
BK
8060
8061/*
8062 * Fix Command Arguments for Vxworks_Needs_Vxtypes
8063 */
3af556f7 8064static const char* apzVxworks_Needs_VxtypesPatch[] = {
5d7d28c2
BK
8065 "format",
8066 "unsigned int%1",
06bbab1b
BK
8067 (char*)NULL };
8068
8069/* * * * * * * * * * * * * * * * * * * * * * * * * *
8070 *
5abc1f74 8071 * Description of Vxworks_Needs_Vxworks fix
06bbab1b
BK
8072 */
8073tSCC zVxworks_Needs_VxworksName[] =
3be1fb72
ZW
8074 "vxworks_needs_vxworks";
8075
06bbab1b
BK
8076/*
8077 * File name selection pattern
8078 */
8079tSCC zVxworks_Needs_VxworksList[] =
401be4b6 8080 "sys/stat.h\0";
06bbab1b
BK
8081/*
8082 * Machine/OS name selection pattern
8083 */
8084#define apzVxworks_Needs_VxworksMachs (const char**)NULL
8085
8086/*
be02fa1a 8087 * content selection pattern - do fix if pattern found
06bbab1b
BK
8088 */
8089tSCC zVxworks_Needs_VxworksSelect0[] =
5d7d28c2 8090 "#[ \t]define[ \t]+__INCstath";
06bbab1b
BK
8091
8092/*
be02fa1a 8093 * perform the 'test' shell command - do fix on success
06bbab1b
BK
8094 */
8095tSCC zVxworks_Needs_VxworksTest0[] =
48bd9529 8096 " -r types/vxTypesOld.h";
06bbab1b 8097tSCC zVxworks_Needs_VxworksTest1[] =
48bd9529 8098 " -n \"`egrep '#include' $file`\"";
06bbab1b 8099tSCC zVxworks_Needs_VxworksTest2[] =
48bd9529 8100 " -n \"`egrep ULONG $file`\"";
06bbab1b
BK
8101
8102#define VXWORKS_NEEDS_VXWORKS_TEST_CT 4
3af556f7 8103static tTestDesc aVxworks_Needs_VxworksTests[] = {
5abc1f74
BK
8104 { TT_TEST, zVxworks_Needs_VxworksTest0, 0 /* unused */ },
8105 { TT_TEST, zVxworks_Needs_VxworksTest1, 0 /* unused */ },
8106 { TT_TEST, zVxworks_Needs_VxworksTest2, 0 /* unused */ },
8107 { TT_EGREP, zVxworks_Needs_VxworksSelect0, (regex_t*)NULL }, };
06bbab1b
BK
8108
8109/*
8110 * Fix Command Arguments for Vxworks_Needs_Vxworks
8111 */
3af556f7 8112static const char* apzVxworks_Needs_VxworksPatch[] = { "sed",
c329beb0
BK
8113 "-e", "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n\
8114#include <types/vxTypesOld.h>\n",
06bbab1b
BK
8115 (char*)NULL };
8116
8117/* * * * * * * * * * * * * * * * * * * * * * * * * *
8118 *
5abc1f74 8119 * Description of Vxworks_Time fix
06bbab1b
BK
8120 */
8121tSCC zVxworks_TimeName[] =
3be1fb72
ZW
8122 "vxworks_time";
8123
06bbab1b
BK
8124/*
8125 * File name selection pattern
8126 */
8127tSCC zVxworks_TimeList[] =
401be4b6 8128 "time.h\0";
06bbab1b
BK
8129/*
8130 * Machine/OS name selection pattern
8131 */
8132#define apzVxworks_TimeMachs (const char**)NULL
8133
8134/*
be02fa1a 8135 * content selection pattern - do fix if pattern found
06bbab1b
BK
8136 */
8137tSCC zVxworks_TimeSelect0[] =
5d7d28c2 8138 "#[ \t]*define[ \t]+VOIDFUNCPTR[ \t].*";
06bbab1b
BK
8139
8140/*
be02fa1a 8141 * perform the 'test' shell command - do fix on success
06bbab1b
BK
8142 */
8143tSCC zVxworks_TimeTest0[] =
48bd9529 8144 " -r vxWorks.h";
06bbab1b
BK
8145
8146#define VXWORKS_TIME_TEST_CT 2
3af556f7 8147static tTestDesc aVxworks_TimeTests[] = {
5abc1f74
BK
8148 { TT_TEST, zVxworks_TimeTest0, 0 /* unused */ },
8149 { TT_EGREP, zVxworks_TimeSelect0, (regex_t*)NULL }, };
06bbab1b
BK
8150
8151/*
8152 * Fix Command Arguments for Vxworks_Time
8153 */
3af556f7 8154static const char* apzVxworks_TimePatch[] = {
5d7d28c2
BK
8155 "format",
8156 "#ifndef __gcc_VOIDFUNCPTR_defined\n\
8157#ifdef __cplusplus\n\
8158typedef void (*__gcc_VOIDFUNCPTR) (...);\n\
8159#else\n\
8160typedef void (*__gcc_VOIDFUNCPTR) ();\n\
8161#endif\n\
8162#define __gcc_VOIDFUNCPTR_defined\n\
8163#endif\n\
8164#define VOIDFUNCPTR __gcc_VOIDFUNCPTR",
06bbab1b
BK
8165 (char*)NULL };
8166
cace4f93
MM
8167/* * * * * * * * * * * * * * * * * * * * * * * * * *
8168 *
8169 * Description of Windiss_Math1 fix
8170 */
8171tSCC zWindiss_Math1Name[] =
8172 "windiss_math1";
8173
8174/*
8175 * File name selection pattern
8176 */
8177tSCC zWindiss_Math1List[] =
401be4b6 8178 "math.h\0";
cace4f93
MM
8179/*
8180 * Machine/OS name selection pattern
8181 */
8182tSCC* apzWindiss_Math1Machs[] = {
8183 "*-*-windiss",
8184 (const char*)NULL };
8185#define WINDISS_MATH1_TEST_CT 0
8186#define aWindiss_Math1Tests (tTestDesc*)NULL
8187
8188/*
8189 * Fix Command Arguments for Windiss_Math1
8190 */
8191static const char* apzWindiss_Math1Patch[] = { "sed",
8192 "-e", "s|inline long double cosl.*|#ifndef __GNUC__|",
8193 (char*)NULL };
8194
8195/* * * * * * * * * * * * * * * * * * * * * * * * * *
8196 *
8197 * Description of Windiss_Math2 fix
8198 */
8199tSCC zWindiss_Math2Name[] =
8200 "windiss_math2";
8201
8202/*
8203 * File name selection pattern
8204 */
8205tSCC zWindiss_Math2List[] =
401be4b6 8206 "math.h\0";
cace4f93
MM
8207/*
8208 * Machine/OS name selection pattern
8209 */
8210tSCC* apzWindiss_Math2Machs[] = {
8211 "*-*-windiss",
8212 (const char*)NULL };
8213#define WINDISS_MATH2_TEST_CT 0
8214#define aWindiss_Math2Tests (tTestDesc*)NULL
8215
8216/*
8217 * Fix Command Arguments for Windiss_Math2
8218 */
8219static const char* apzWindiss_Math2Patch[] = { "sed",
8220 "-e", "s|/\\* long double declarations \\*/|#endif /* __GNUC__ */|",
8221 (char*)NULL };
8222
8223/* * * * * * * * * * * * * * * * * * * * * * * * * *
8224 *
8225 * Description of Windiss_Valist fix
8226 */
8227tSCC zWindiss_ValistName[] =
8228 "windiss_valist";
8229
8230/*
8231 * File name selection pattern
8232 */
8233#define zWindiss_ValistList (char*)NULL
8234/*
8235 * Machine/OS name selection pattern
8236 */
8237tSCC* apzWindiss_ValistMachs[] = {
8238 "*-*-windiss",
8239 (const char*)NULL };
c297b764
MM
8240
8241/*
8242 * content selection pattern - do fix if pattern found
8243 */
8244tSCC zWindiss_ValistSelect0[] =
8245 "(#include.*)diab/va_list.h";
8246
8247#define WINDISS_VALIST_TEST_CT 1
8248static tTestDesc aWindiss_ValistTests[] = {
8249 { TT_EGREP, zWindiss_ValistSelect0, (regex_t*)NULL }, };
cace4f93
MM
8250
8251/*
8252 * Fix Command Arguments for Windiss_Valist
8253 */
8254static const char* apzWindiss_ValistPatch[] = { "sed",
8255 "-e", "s|diab/va_list.h|stdarg.h|",
8256 (char*)NULL };
8257
06bbab1b
BK
8258/* * * * * * * * * * * * * * * * * * * * * * * * * *
8259 *
5abc1f74 8260 * Description of X11_Class fix
06bbab1b
BK
8261 */
8262tSCC zX11_ClassName[] =
3be1fb72
ZW
8263 "x11_class";
8264
06bbab1b
BK
8265/*
8266 * File name selection pattern
8267 */
8268tSCC zX11_ClassList[] =
401be4b6 8269 "X11/ShellP.h\0";
06bbab1b
BK
8270/*
8271 * Machine/OS name selection pattern
8272 */
8273#define apzX11_ClassMachs (const char**)NULL
8274
c1fd153e
BK
8275/*
8276 * content selection pattern - do fix if pattern found
8277 */
8278tSCC zX11_ClassSelect0[] =
8279 "^([ \t]*char \\*)class;(.*)";
8280
06bbab1b 8281/*
be02fa1a 8282 * content bypass pattern - skip fix if pattern found
06bbab1b
BK
8283 */
8284tSCC zX11_ClassBypass0[] =
8285 "__cplusplus";
8286
c1fd153e 8287#define X11_CLASS_TEST_CT 2
3af556f7 8288static tTestDesc aX11_ClassTests[] = {
c1fd153e
BK
8289 { TT_NEGREP, zX11_ClassBypass0, (regex_t*)NULL },
8290 { TT_EGREP, zX11_ClassSelect0, (regex_t*)NULL }, };
06bbab1b
BK
8291
8292/*
8293 * Fix Command Arguments for X11_Class
8294 */
3af556f7 8295static const char* apzX11_ClassPatch[] = {
c1fd153e
BK
8296 "format",
8297 "#ifdef __cplusplus\n\
8298%1c_class;%2\n\
8299#else\n\
8300%1class;%2\n\
8301#endif",
06bbab1b
BK
8302 (char*)NULL };
8303
8304/* * * * * * * * * * * * * * * * * * * * * * * * * *
8305 *
5abc1f74 8306 * Description of X11_Class_Usage fix
06bbab1b
BK
8307 */
8308tSCC zX11_Class_UsageName[] =
3be1fb72
ZW
8309 "x11_class_usage";
8310
06bbab1b
BK
8311/*
8312 * File name selection pattern
8313 */
8314tSCC zX11_Class_UsageList[] =
401be4b6 8315 "Xm/BaseClassI.h\0";
06bbab1b
BK
8316/*
8317 * Machine/OS name selection pattern
8318 */
8319#define apzX11_Class_UsageMachs (const char**)NULL
8320
5d7d28c2
BK
8321/*
8322 * content selection pattern - do fix if pattern found
8323 */
8324tSCC zX11_Class_UsageSelect0[] =
8325 " class\\)";
8326
06bbab1b 8327/*
be02fa1a 8328 * content bypass pattern - skip fix if pattern found
06bbab1b
BK
8329 */
8330tSCC zX11_Class_UsageBypass0[] =
8331 "__cplusplus";
8332
5d7d28c2 8333#define X11_CLASS_USAGE_TEST_CT 2
3af556f7 8334static tTestDesc aX11_Class_UsageTests[] = {
5d7d28c2
BK
8335 { TT_NEGREP, zX11_Class_UsageBypass0, (regex_t*)NULL },
8336 { TT_EGREP, zX11_Class_UsageSelect0, (regex_t*)NULL }, };
06bbab1b
BK
8337
8338/*
8339 * Fix Command Arguments for X11_Class_Usage
8340 */
3af556f7 8341static const char* apzX11_Class_UsagePatch[] = {
5d7d28c2
BK
8342 "format",
8343 " c_class)",
06bbab1b
BK
8344 (char*)NULL };
8345
8346/* * * * * * * * * * * * * * * * * * * * * * * * * *
8347 *
5abc1f74 8348 * Description of X11_New fix
06bbab1b
BK
8349 */
8350tSCC zX11_NewName[] =
3be1fb72
ZW
8351 "x11_new";
8352
06bbab1b
BK
8353/*
8354 * File name selection pattern
8355 */
8356tSCC zX11_NewList[] =
401be4b6 8357 "Xm/Traversal.h\0";
06bbab1b
BK
8358/*
8359 * Machine/OS name selection pattern
8360 */
8361#define apzX11_NewMachs (const char**)NULL
8362
8363/*
be02fa1a 8364 * content bypass pattern - skip fix if pattern found
06bbab1b
BK
8365 */
8366tSCC zX11_NewBypass0[] =
8367 "__cplusplus";
8368
8369#define X11_NEW_TEST_CT 1
3af556f7 8370static tTestDesc aX11_NewTests[] = {
5abc1f74 8371 { TT_NEGREP, zX11_NewBypass0, (regex_t*)NULL }, };
06bbab1b
BK
8372
8373/*
8374 * Fix Command Arguments for X11_New
8375 */
3af556f7 8376static const char* apzX11_NewPatch[] = { "sed",
c329beb0
BK
8377 "-e", "/Widget\told, new;/i\\\n\
8378#ifdef __cplusplus\\\n\
8379\tWidget\told, c_new;\\\n\
8380#else\n",
8381 "-e", "/Widget\told, new;/a\\\n\
8382#endif\n",
be02fa1a 8383 "-e", "s/Widget new,/Widget c_new,/g",
06bbab1b
BK
8384 (char*)NULL };
8385
8386/* * * * * * * * * * * * * * * * * * * * * * * * * *
8387 *
5abc1f74 8388 * Description of X11_Sprintf fix
06bbab1b
BK
8389 */
8390tSCC zX11_SprintfName[] =
3be1fb72
ZW
8391 "x11_sprintf";
8392
06bbab1b
BK
8393/*
8394 * File name selection pattern
8395 */
8396tSCC zX11_SprintfList[] =
401be4b6 8397 "X11/Xmu.h\0X11/Xmu/Xmu.h\0";
06bbab1b
BK
8398/*
8399 * Machine/OS name selection pattern
8400 */
8401#define apzX11_SprintfMachs (const char**)NULL
b51207a4
ZW
8402
8403/*
8404 * content selection pattern - do fix if pattern found
8405 */
8406tSCC zX11_SprintfSelect0[] =
5d7d28c2 8407 "^extern char \\*\tsprintf\\(\\);$";
b51207a4
ZW
8408
8409#define X11_SPRINTF_TEST_CT 1
3af556f7 8410static tTestDesc aX11_SprintfTests[] = {
b51207a4 8411 { TT_EGREP, zX11_SprintfSelect0, (regex_t*)NULL }, };
06bbab1b
BK
8412
8413/*
8414 * Fix Command Arguments for X11_Sprintf
8415 */
3af556f7 8416static const char* apzX11_SprintfPatch[] = {
5d7d28c2
BK
8417 "format",
8418 "#ifndef __STDC__\n\
8419%0\n\
8420#endif /* !defined __STDC__ */",
06bbab1b
BK
8421 (char*)NULL };
8422
3be1fb72 8423
06bbab1b
BK
8424/* * * * * * * * * * * * * * * * * * * * * * * * * *
8425 *
8426 * List of all fixes
8427 */
5c4f0f47 8428#define REGEX_COUNT 251
b0588013 8429#define MACH_LIST_SIZE_LIMIT 261
502e2a2d 8430#define FIX_COUNT 207
5abc1f74 8431
7b78a14a
BK
8432/*
8433 * Enumerate the fixes
8434 */
8435typedef enum {
246e0bd8
GK
8436 AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_FIXIDX,
8437 AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_FIXIDX,
7b78a14a
BK
8438 AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
8439 AAB_FD_ZERO_GNU_TYPES_H_FIXIDX,
8440 AAB_FD_ZERO_SELECTBITS_H_FIXIDX,
eadc0202 8441 AAB_SOLARIS_SYS_VARARGS_H_FIXIDX,
0fca111b 8442 AAB_SUN_MEMCPY_FIXIDX,
165bfb59
BK
8443 AAB_ULTRIX_ANSI_COMPAT_FIXIDX,
8444 AAB_ULTRIX_LIMITS_FIXIDX,
8445 AAB_ULTRIX_MEMORY_FIXIDX,
8446 AAB_ULTRIX_STRING_FIXIDX,
7b78a14a
BK
8447 AIX_PTHREAD_FIXIDX,
8448 AIX_SYSMACHINE_FIXIDX,
8449 AIX_SYSWAIT_FIXIDX,
d3535e80 8450 AIX_SYSWAIT_2_FIXIDX,
7b78a14a
BK
8451 AIX_VOLATILE_FIXIDX,
8452 ALPHA___ASSERT_FIXIDX,
f8dc212b 8453 ALPHA___EXTERN_PREFIX_FIXIDX,
fb2c2608
RO
8454 ALPHA___EXTERN_PREFIX_STANDARDS_FIXIDX,
8455 ALPHA___EXTERN_PREFIX_SYS_STAT_FIXIDX,
aaa4d130 8456 ALPHA_ASSERT_FIXIDX,
f6c930a3 8457 ALPHA_BAD_LVAL_FIXIDX,
7b78a14a
BK
8458 ALPHA_GETOPT_FIXIDX,
8459 ALPHA_PARENS_FIXIDX,
2a4e8ebc 8460 ALPHA_PTHREAD_FIXIDX,
821281db 8461 ALPHA_PTHREAD_GCC_FIXIDX,
1fda9d7b 8462 ALPHA_PTHREAD_INIT_FIXIDX,
7b78a14a 8463 ALPHA_SBRK_FIXIDX,
f502cbff 8464 ALPHA_WCHAR_FIXIDX,
7b78a14a
BK
8465 AVOID_BOOL_DEFINE_FIXIDX,
8466 AVOID_BOOL_TYPE_FIXIDX,
8467 AVOID_WCHAR_T_TYPE_FIXIDX,
7b78a14a
BK
8468 BAD_STRUCT_TERM_FIXIDX,
8469 BADQUOTE_FIXIDX,
8470 BROKEN_ASSERT_STDIO_FIXIDX,
8471 BROKEN_ASSERT_STDLIB_FIXIDX,
8472 BROKEN_CABS_FIXIDX,
bf73f6d2 8473 BROKEN_NAN_FIXIDX,
8882ac3a 8474 BSD_STDIO_ATTRS_CONFLICT_FIXIDX,
7b78a14a
BK
8475 CTRL_QUOTES_DEF_FIXIDX,
8476 CTRL_QUOTES_USE_FIXIDX,
8477 CXX_UNREADY_FIXIDX,
005c1a13 8478 DARWIN_GCC4_BREAKAGE_FIXIDX,
3afbff37 8479 DARWIN_PRIVATE_EXTERN_FIXIDX,
7b78a14a
BK
8480 DEC_INTERN_ASM_FIXIDX,
8481 DJGPP_WCHAR_H_FIXIDX,
8482 ECD_CURSOR_FIXIDX,
793146e3 8483 EXCEPTION_STRUCTURE_FIXIDX,
7b78a14a 8484 FREEBSD_GCC3_BREAKAGE_FIXIDX,
28785dde 8485 FREEBSD_GCC4_BREAKAGE_FIXIDX,
502e2a2d
GK
8486 GLIBC_C99_INLINE_1_FIXIDX,
8487 GLIBC_C99_INLINE_2_FIXIDX,
8488 GLIBC_C99_INLINE_3_FIXIDX,
8489 GLIBC_C99_INLINE_4_FIXIDX,
f6f7aabc 8490 GLIBC_MUTEX_INIT_FIXIDX,
7b78a14a
BK
8491 GNU_TYPES_FIXIDX,
8492 HP_INLINE_FIXIDX,
8493 HP_SYSFILE_FIXIDX,
5ffd49b8 8494 HPUX10_CPP_POW_INLINE_FIXIDX,
eb559363 8495 HPUX11_CPP_POW_INLINE_FIXIDX,
afc41460
BK
8496 HPUX10_CTYPE_DECLARATIONS1_FIXIDX,
8497 HPUX10_CTYPE_DECLARATIONS2_FIXIDX,
4b60eb3b 8498 HPUX10_STDIO_DECLARATIONS_FIXIDX,
0fca111b 8499 HPUX11_ABS_FIXIDX,
27eaa708 8500 HPUX11_FABSF_FIXIDX,
34b3b0f6 8501 HPUX11_SIZE_T_FIXIDX,
11f9a0ed 8502 HPUX11_SNPRINTF_FIXIDX,
7b78a14a 8503 HPUX11_UINT32_C_FIXIDX,
b8d0bbf7 8504 HPUX11_VSNPRINTF_FIXIDX,
7b78a14a 8505 HPUX8_BOGUS_INLINES_FIXIDX,
afc41460 8506 HPUX_CTYPE_MACROS_FIXIDX,
7fbdc950 8507 HPUX_HTONL_FIXIDX,
afc41460 8508 HPUX_LONG_DOUBLE_FIXIDX,
7b78a14a 8509 HPUX_SYSTIME_FIXIDX,
e084430d 8510 HPUX_SPU_INFO_FIXIDX,
be645fd9
SE
8511 HPUX11_EXTERN_SENDFILE_FIXIDX,
8512 HPUX11_EXTERN_SENDPATH_FIXIDX,
e10e3ac8 8513 HPUX_EXTERN_ERRNO_FIXIDX,
6c65aa40 8514 HPUX_PTHREAD_INITIALIZERS_FIXIDX,
77923c29
JM
8515 HUGE_VAL_HEX_FIXIDX,
8516 HUGE_VALF_HEX_FIXIDX,
8517 HUGE_VALL_HEX_FIXIDX,
7b78a14a
BK
8518 INT_ABORT_FREE_AND_EXIT_FIXIDX,
8519 IO_QUOTES_DEF_FIXIDX,
8520 IO_QUOTES_USE_FIXIDX,
8521 IP_MISSING_SEMI_FIXIDX,
7a9cdb10 8522 IRIX___RESTRICT_FIXIDX,
e0704143
RS
8523 IRIX___GENERIC1_FIXIDX,
8524 IRIX___GENERIC2_FIXIDX,
7b78a14a
BK
8525 IRIX_ASM_APOSTROPHE_FIXIDX,
8526 IRIX_LIMITS_CONST_FIXIDX,
f23147fe 8527 IRIX_SOCKLEN_T_FIXIDX,
7b78a14a 8528 IRIX_STDIO_VA_LIST_FIXIDX,
f23147fe 8529 IRIX_WCSFTIME_FIXIDX,
7b78a14a
BK
8530 ISC_FMOD_FIXIDX,
8531 ISC_OMITS_WITH_STDC_FIXIDX,
8532 KANDR_CONCAT_FIXIDX,
a7475ab1 8533 LIBC1_G_VA_LIST_FIXIDX,
27eaa708 8534 LIBC1_IFDEFD_MEMX_FIXIDX,
fa71a5c3 8535 LINUX_IA64_UCONTEXT_FIXIDX,
d635c707
AN
8536 LYNXOS_NO_WARNING_IN_SYS_TIME_H_FIXIDX,
8537 LYNXOS_MISSING_PUTENV_FIXIDX,
7b78a14a
BK
8538 MACHINE_ANSI_H_VA_LIST_FIXIDX,
8539 MACHINE_NAME_FIXIDX,
8540 MATH_EXCEPTION_FIXIDX,
8541 MATH_HUGE_VAL_FROM_DBL_MAX_FIXIDX,
7b78a14a
BK
8542 NESTED_AUTH_DES_FIXIDX,
8543 NESTED_MOTOROLA_FIXIDX,
8544 NESTED_SYS_LIMITS_FIXIDX,
3edc4b23 8545 NETBSD_EXTRA_SEMICOLON_FIXIDX,
7b78a14a
BK
8546 NEXT_MATH_PREFIX_FIXIDX,
8547 NEXT_TEMPLATE_FIXIDX,
8548 NEXT_VOLITILE_FIXIDX,
8549 NEXT_WAIT_UNION_FIXIDX,
8550 NODEENT_SYNTAX_FIXIDX,
dc70e81d 8551 OBSTACK_LVALUE_CAST_FIXIDX,
7b78a14a
BK
8552 OSF_NAMESPACE_A_FIXIDX,
8553 OSF_NAMESPACE_C_FIXIDX,
8554 PTHREAD_PAGE_SIZE_FIXIDX,
14bfd7c7 8555 PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_FIXIDX,
7b78a14a 8556 READ_RET_TYPE_FIXIDX,
6ed6a1b9
JM
8557 RPC_XDR_LVALUE_CAST_A_FIXIDX,
8558 RPC_XDR_LVALUE_CAST_B_FIXIDX,
7b78a14a
BK
8559 RS6000_DOUBLE_FIXIDX,
8560 RS6000_FCHMOD_FIXIDX,
8561 RS6000_PARAM_FIXIDX,
de0656cf
KJ
8562 SCO_MATH_FIXIDX,
8563 SCO_REGSET_FIXIDX,
7b78a14a
BK
8564 SCO_STATIC_FUNC_FIXIDX,
8565 SCO_UTIME_FIXIDX,
925a4487
EB
8566 SOLARIS_MATH_1_FIXIDX,
8567 SOLARIS_MATH_2_FIXIDX,
8568 SOLARIS_MATH_3_FIXIDX,
8569 SOLARIS_MATH_4_FIXIDX,
8570 SOLARIS_MATH_5_FIXIDX,
8571 SOLARIS_MATH_6_FIXIDX,
8572 SOLARIS_MATH_7_FIXIDX,
8573 SOLARIS_MATH_8_FIXIDX,
8574 SOLARIS_MATH_9_FIXIDX,
7a9cdb10
DD
8575 SOLARIS_MUTEX_INIT_1_FIXIDX,
8576 SOLARIS_MUTEX_INIT_2_FIXIDX,
2b655a0a
KG
8577 SOLARIS_RWLOCK_INIT_1_FIXIDX,
8578 SOLARIS_ONCE_INIT_1_FIXIDX,
0a1f02df 8579 SOLARIS_ONCE_INIT_2_FIXIDX,
6bf1ffe1 8580 SOLARIS_SOCKET_FIXIDX,
fba39eaf 8581 SOLARIS_STDIO_TAG_FIXIDX,
6bf1ffe1 8582 SOLARIS_UNISTD_FIXIDX,
d8af0868 8583 SOLARIS_WIDEC_FIXIDX,
7b78a14a
BK
8584 STATSSWTCH_FIXIDX,
8585 STDIO_STDARG_H_FIXIDX,
8586 STDIO_VA_LIST_FIXIDX,
40d05429 8587 STDIO_VA_LIST_CLIENTS_FIXIDX,
7b78a14a
BK
8588 STRICT_ANSI_NOT_FIXIDX,
8589 STRICT_ANSI_NOT_CTD_FIXIDX,
8590 STRICT_ANSI_ONLY_FIXIDX,
8591 STRUCT_FILE_FIXIDX,
8592 STRUCT_SOCKADDR_FIXIDX,
8593 SUN_AUTH_PROTO_FIXIDX,
8594 SUN_BOGUS_IFDEF_FIXIDX,
8595 SUN_CATMACRO_FIXIDX,
8596 SUN_MALLOC_FIXIDX,
8597 SUN_RUSERS_SEMI_FIXIDX,
8598 SUN_SIGNAL_FIXIDX,
7b78a14a 8599 SUNOS_STRLEN_FIXIDX,
de0656cf 8600 SVR4_DISABLE_OPT_FIXIDX,
7b78a14a 8601 SVR4_GETCWD_FIXIDX,
825d7d64 8602 SVR4_KRNL_FIXIDX,
7b78a14a 8603 SVR4_PROFIL_FIXIDX,
1d109416 8604 SVR4_SIGHANDLER_TYPE_FIXIDX,
76d2e2c5 8605 SVR4_UNDECLARED_GETRNGE_FIXIDX,
7b78a14a
BK
8606 SYSV68_STRING_FIXIDX,
8607 SYSZ_STDLIB_FOR_SUN_FIXIDX,
3d78f2e9 8608 THREAD_KEYWORD_FIXIDX,
7b78a14a 8609 TINFO_CPLUSPLUS_FIXIDX,
165bfb59
BK
8610 ULTRIX_ATEXIT_PARAM_FIXIDX,
8611 ULTRIX_ATOF_PARAM_FIXIDX,
7b78a14a
BK
8612 ULTRIX_CONST_FIXIDX,
8613 ULTRIX_CONST2_FIXIDX,
4b60eb3b 8614 ULTRIX_CONST3_FIXIDX,
165bfb59
BK
8615 ULTRIX_FIX_FIXPROTO_FIXIDX,
8616 ULTRIX_IFDEF_FIXIDX,
4b60eb3b 8617 ULTRIX_LOCALE_FIXIDX,
165bfb59
BK
8618 ULTRIX_MATH_IFDEF_FIXIDX,
8619 ULTRIX_NESTED_IOCTL_FIXIDX,
8620 ULTRIX_NESTED_SVC_FIXIDX,
8621 ULTRIX_STAT_FIXIDX,
8622 ULTRIX_STATIC_FIXIDX,
4b60eb3b 8623 ULTRIX_STDLIB_FIXIDX,
165bfb59 8624 ULTRIX_STRINGS_FIXIDX,
4b60eb3b
JDA
8625 ULTRIX_STRINGS2_FIXIDX,
8626 ULTRIX_SYS_TIME_FIXIDX,
8627 ULTRIX_UNISTD_FIXIDX,
30102605 8628 UNICOSMK_RESTRICT_FIXIDX,
7b78a14a
BK
8629 UW7_BYTEORDER_FIX_FIXIDX,
8630 VA_I960_MACRO_FIXIDX,
8631 VOID_NULL_FIXIDX,
8632 VXWORKS_GCC_PROBLEM_FIXIDX,
8633 VXWORKS_NEEDS_VXTYPES_FIXIDX,
8634 VXWORKS_NEEDS_VXWORKS_FIXIDX,
8635 VXWORKS_TIME_FIXIDX,
cace4f93
MM
8636 WINDISS_MATH1_FIXIDX,
8637 WINDISS_MATH2_FIXIDX,
8638 WINDISS_VALIST_FIXIDX,
7b78a14a
BK
8639 X11_CLASS_FIXIDX,
8640 X11_CLASS_USAGE_FIXIDX,
8641 X11_NEW_FIXIDX,
8642 X11_SPRINTF_FIXIDX
8643} t_fixinc_idx;
8644
be02fa1a 8645tFixDesc fixDescList[ FIX_COUNT ] = {
246e0bd8
GK
8646 { zAab_Darwin7_9_Long_Double_FuncsName, zAab_Darwin7_9_Long_Double_FuncsList,
8647 apzAab_Darwin7_9_Long_Double_FuncsMachs,
8648 AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8649 aAab_Darwin7_9_Long_Double_FuncsTests, apzAab_Darwin7_9_Long_Double_FuncsPatch, 0 },
8650
8651 { zAab_Darwin7_9_Long_Double_Funcs_2Name, zAab_Darwin7_9_Long_Double_Funcs_2List,
8652 apzAab_Darwin7_9_Long_Double_Funcs_2Machs,
8653 AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8654 aAab_Darwin7_9_Long_Double_Funcs_2Tests, apzAab_Darwin7_9_Long_Double_Funcs_2Patch, 0 },
8655
d7eb5a45 8656 { zAab_Fd_Zero_Asm_Posix_Types_HName, zAab_Fd_Zero_Asm_Posix_Types_HList,
f5b105ca 8657 apzAab_Fd_Zero_Asm_Posix_Types_HMachs,
d7eb5a45 8658 AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
37082e6d 8659 aAab_Fd_Zero_Asm_Posix_Types_HTests, apzAab_Fd_Zero_Asm_Posix_Types_HPatch, 0 },
8aeb3b0e 8660
d7eb5a45 8661 { zAab_Fd_Zero_Gnu_Types_HName, zAab_Fd_Zero_Gnu_Types_HList,
f5b105ca 8662 apzAab_Fd_Zero_Gnu_Types_HMachs,
d7eb5a45 8663 AAB_FD_ZERO_GNU_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
37082e6d 8664 aAab_Fd_Zero_Gnu_Types_HTests, apzAab_Fd_Zero_Gnu_Types_HPatch, 0 },
8aeb3b0e 8665
d7eb5a45 8666 { zAab_Fd_Zero_Selectbits_HName, zAab_Fd_Zero_Selectbits_HList,
f5b105ca 8667 apzAab_Fd_Zero_Selectbits_HMachs,
d7eb5a45 8668 AAB_FD_ZERO_SELECTBITS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
37082e6d 8669 aAab_Fd_Zero_Selectbits_HTests, apzAab_Fd_Zero_Selectbits_HPatch, 0 },
8aeb3b0e 8670
eadc0202
RH
8671 { zAab_Solaris_Sys_Varargs_HName, zAab_Solaris_Sys_Varargs_HList,
8672 apzAab_Solaris_Sys_Varargs_HMachs,
8673 AAB_SOLARIS_SYS_VARARGS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8674 aAab_Solaris_Sys_Varargs_HTests, apzAab_Solaris_Sys_Varargs_HPatch, 0 },
8675
0fca111b
SE
8676 { zAab_Sun_MemcpyName, zAab_Sun_MemcpyList,
8677 apzAab_Sun_MemcpyMachs,
8678 AAB_SUN_MEMCPY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8679 aAab_Sun_MemcpyTests, apzAab_Sun_MemcpyPatch, 0 },
8680
165bfb59
BK
8681 { zAab_Ultrix_Ansi_CompatName, zAab_Ultrix_Ansi_CompatList,
8682 apzAab_Ultrix_Ansi_CompatMachs,
8683 AAB_ULTRIX_ANSI_COMPAT_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8684 aAab_Ultrix_Ansi_CompatTests, apzAab_Ultrix_Ansi_CompatPatch, 0 },
8685
8686 { zAab_Ultrix_LimitsName, zAab_Ultrix_LimitsList,
8687 apzAab_Ultrix_LimitsMachs,
8688 AAB_ULTRIX_LIMITS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8689 aAab_Ultrix_LimitsTests, apzAab_Ultrix_LimitsPatch, 0 },
8690
8691 { zAab_Ultrix_MemoryName, zAab_Ultrix_MemoryList,
8692 apzAab_Ultrix_MemoryMachs,
8693 AAB_ULTRIX_MEMORY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8694 aAab_Ultrix_MemoryTests, apzAab_Ultrix_MemoryPatch, 0 },
8695
8696 { zAab_Ultrix_StringName, zAab_Ultrix_StringList,
8697 apzAab_Ultrix_StringMachs,
8698 AAB_ULTRIX_STRING_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
8699 aAab_Ultrix_StringTests, apzAab_Ultrix_StringPatch, 0 },
8700
2c82e043
GK
8701 { zAix_PthreadName, zAix_PthreadList,
8702 apzAix_PthreadMachs,
8703 AIX_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8704 aAix_PthreadTests, apzAix_PthreadPatch, 0 },
2c82e043
GK
8705
8706 { zAix_SysmachineName, zAix_SysmachineList,
8707 apzAix_SysmachineMachs,
8708 AIX_SYSMACHINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8709 aAix_SysmachineTests, apzAix_SysmachinePatch, 0 },
2c82e043 8710
06bbab1b 8711 { zAix_SyswaitName, zAix_SyswaitList,
f5b105ca 8712 apzAix_SyswaitMachs,
88acf854 8713 AIX_SYSWAIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8714 aAix_SyswaitTests, apzAix_SyswaitPatch, 0 },
06bbab1b 8715
d3535e80
RS
8716 { zAix_Syswait_2Name, zAix_Syswait_2List,
8717 apzAix_Syswait_2Machs,
8718 AIX_SYSWAIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8719 aAix_Syswait_2Tests, apzAix_Syswait_2Patch, 0 },
8720
06bbab1b 8721 { zAix_VolatileName, zAix_VolatileList,
f5b105ca 8722 apzAix_VolatileMachs,
99d05d99 8723 AIX_VOLATILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8724 aAix_VolatileTests, apzAix_VolatilePatch, 0 },
06bbab1b 8725
a88072eb
RO
8726 { zAlpha___AssertName, zAlpha___AssertList,
8727 apzAlpha___AssertMachs,
8728 ALPHA___ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8729 aAlpha___AssertTests, apzAlpha___AssertPatch, 0 },
8730
f8dc212b
RO
8731 { zAlpha___Extern_PrefixName, zAlpha___Extern_PrefixList,
8732 apzAlpha___Extern_PrefixMachs,
8733 ALPHA___EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8734 aAlpha___Extern_PrefixTests, apzAlpha___Extern_PrefixPatch, 0 },
8735
fb2c2608
RO
8736 { zAlpha___Extern_Prefix_StandardsName, zAlpha___Extern_Prefix_StandardsList,
8737 apzAlpha___Extern_Prefix_StandardsMachs,
8738 ALPHA___EXTERN_PREFIX_STANDARDS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8739 aAlpha___Extern_Prefix_StandardsTests, apzAlpha___Extern_Prefix_StandardsPatch, 0 },
8740
8741 { zAlpha___Extern_Prefix_Sys_StatName, zAlpha___Extern_Prefix_Sys_StatList,
8742 apzAlpha___Extern_Prefix_Sys_StatMachs,
8743 ALPHA___EXTERN_PREFIX_SYS_STAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8744 aAlpha___Extern_Prefix_Sys_StatTests, apzAlpha___Extern_Prefix_Sys_StatPatch, 0 },
8745
aaa4d130
RO
8746 { zAlpha_AssertName, zAlpha_AssertList,
8747 apzAlpha_AssertMachs,
8748 ALPHA_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8749 aAlpha_AssertTests, apzAlpha_AssertPatch, 0 },
8750
f6c930a3
RO
8751 { zAlpha_Bad_LvalName, zAlpha_Bad_LvalList,
8752 apzAlpha_Bad_LvalMachs,
8753 ALPHA_BAD_LVAL_TEST_CT, FD_MACH_ONLY,
8754 aAlpha_Bad_LvalTests, apzAlpha_Bad_LvalPatch, 0 },
8755
06bbab1b 8756 { zAlpha_GetoptName, zAlpha_GetoptList,
f5b105ca 8757 apzAlpha_GetoptMachs,
99d05d99 8758 ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8759 aAlpha_GetoptTests, apzAlpha_GetoptPatch, 0 },
06bbab1b
BK
8760
8761 { zAlpha_ParensName, zAlpha_ParensList,
f5b105ca 8762 apzAlpha_ParensMachs,
99d05d99 8763 ALPHA_PARENS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8764 aAlpha_ParensTests, apzAlpha_ParensPatch, 0 },
06bbab1b 8765
2a4e8ebc
RO
8766 { zAlpha_PthreadName, zAlpha_PthreadList,
8767 apzAlpha_PthreadMachs,
8768 ALPHA_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8769 aAlpha_PthreadTests, apzAlpha_PthreadPatch, 0 },
8770
821281db
RO
8771 { zAlpha_Pthread_GccName, zAlpha_Pthread_GccList,
8772 apzAlpha_Pthread_GccMachs,
8773 ALPHA_PTHREAD_GCC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8774 aAlpha_Pthread_GccTests, apzAlpha_Pthread_GccPatch, 0 },
8775
1fda9d7b
RS
8776 { zAlpha_Pthread_InitName, zAlpha_Pthread_InitList,
8777 apzAlpha_Pthread_InitMachs,
8778 ALPHA_PTHREAD_INIT_TEST_CT, FD_MACH_ONLY,
8779 aAlpha_Pthread_InitTests, apzAlpha_Pthread_InitPatch, 0 },
8780
06bbab1b 8781 { zAlpha_SbrkName, zAlpha_SbrkList,
f5b105ca 8782 apzAlpha_SbrkMachs,
99d05d99 8783 ALPHA_SBRK_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8784 aAlpha_SbrkTests, apzAlpha_SbrkPatch, 0 },
06bbab1b 8785
f502cbff
RO
8786 { zAlpha_WcharName, zAlpha_WcharList,
8787 apzAlpha_WcharMachs,
8788 ALPHA_WCHAR_TEST_CT, FD_MACH_ONLY,
8789 aAlpha_WcharTests, apzAlpha_WcharPatch, 0 },
8790
cd64831f
BK
8791 { zAvoid_Bool_DefineName, zAvoid_Bool_DefineList,
8792 apzAvoid_Bool_DefineMachs,
8793 AVOID_BOOL_DEFINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8794 aAvoid_Bool_DefineTests, apzAvoid_Bool_DefinePatch, 0 },
cd64831f
BK
8795
8796 { zAvoid_Bool_TypeName, zAvoid_Bool_TypeList,
8797 apzAvoid_Bool_TypeMachs,
8798 AVOID_BOOL_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8799 aAvoid_Bool_TypeTests, apzAvoid_Bool_TypePatch, 0 },
06bbab1b 8800
8b4c8a86
MM
8801 { zAvoid_Wchar_T_TypeName, zAvoid_Wchar_T_TypeList,
8802 apzAvoid_Wchar_T_TypeMachs,
8803 AVOID_WCHAR_T_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8804 aAvoid_Wchar_T_TypeTests, apzAvoid_Wchar_T_TypePatch, 0 },
8b4c8a86 8805
06bbab1b 8806 { zBad_Struct_TermName, zBad_Struct_TermList,
f5b105ca 8807 apzBad_Struct_TermMachs,
cd64831f 8808 BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8809 aBad_Struct_TermTests, apzBad_Struct_TermPatch, 0 },
06bbab1b
BK
8810
8811 { zBadquoteName, zBadquoteList,
f5b105ca 8812 apzBadquoteMachs,
cd64831f 8813 BADQUOTE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8814 aBadquoteTests, apzBadquotePatch, 0 },
06bbab1b 8815
06bbab1b 8816 { zBroken_Assert_StdioName, zBroken_Assert_StdioList,
f5b105ca 8817 apzBroken_Assert_StdioMachs,
ba8fcfc3 8818 BROKEN_ASSERT_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8819 aBroken_Assert_StdioTests, apzBroken_Assert_StdioPatch, 0 },
06bbab1b
BK
8820
8821 { zBroken_Assert_StdlibName, zBroken_Assert_StdlibList,
f5b105ca 8822 apzBroken_Assert_StdlibMachs,
ba8fcfc3 8823 BROKEN_ASSERT_STDLIB_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8824 aBroken_Assert_StdlibTests, apzBroken_Assert_StdlibPatch, 0 },
06bbab1b 8825
72b9c7fb 8826 { zBroken_CabsName, zBroken_CabsList,
f5b105ca 8827 apzBroken_CabsMachs,
a942e89f 8828 BROKEN_CABS_TEST_CT, FD_MACH_ONLY,
37082e6d 8829 aBroken_CabsTests, apzBroken_CabsPatch, 0 },
72b9c7fb 8830
bf73f6d2
AP
8831 { zBroken_NanName, zBroken_NanList,
8832 apzBroken_NanMachs,
8833 BROKEN_NAN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8834 aBroken_NanTests, apzBroken_NanPatch, 0 },
8835
8882ac3a
BK
8836 { zBsd_Stdio_Attrs_ConflictName, zBsd_Stdio_Attrs_ConflictList,
8837 apzBsd_Stdio_Attrs_ConflictMachs,
8838 BSD_STDIO_ATTRS_CONFLICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8839 aBsd_Stdio_Attrs_ConflictTests, apzBsd_Stdio_Attrs_ConflictPatch, 0 },
8840
79589c4d
BK
8841 { zCtrl_Quotes_DefName, zCtrl_Quotes_DefList,
8842 apzCtrl_Quotes_DefMachs,
8843 CTRL_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8844 aCtrl_Quotes_DefTests, apzCtrl_Quotes_DefPatch, 0 },
79589c4d
BK
8845
8846 { zCtrl_Quotes_UseName, zCtrl_Quotes_UseList,
8847 apzCtrl_Quotes_UseMachs,
8848 CTRL_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8849 aCtrl_Quotes_UseTests, apzCtrl_Quotes_UsePatch, 0 },
79589c4d
BK
8850
8851 { zCxx_UnreadyName, zCxx_UnreadyList,
8852 apzCxx_UnreadyMachs,
8853 CXX_UNREADY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8854 aCxx_UnreadyTests, apzCxx_UnreadyPatch, 0 },
79589c4d 8855
005c1a13
GK
8856 { zDarwin_Gcc4_BreakageName, zDarwin_Gcc4_BreakageList,
8857 apzDarwin_Gcc4_BreakageMachs,
8858 DARWIN_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8859 aDarwin_Gcc4_BreakageTests, apzDarwin_Gcc4_BreakagePatch, 0 },
8860
3afbff37
GK
8861 { zDarwin_Private_ExternName, zDarwin_Private_ExternList,
8862 apzDarwin_Private_ExternMachs,
8863 DARWIN_PRIVATE_EXTERN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8864 aDarwin_Private_ExternTests, apzDarwin_Private_ExternPatch, 0 },
8865
48bd9529 8866 { zDec_Intern_AsmName, zDec_Intern_AsmList,
f5b105ca 8867 apzDec_Intern_AsmMachs,
48bd9529 8868 DEC_INTERN_ASM_TEST_CT, FD_MACH_ONLY,
37082e6d 8869 aDec_Intern_AsmTests, apzDec_Intern_AsmPatch, 0 },
48bd9529 8870
6822468a
LB
8871 { zDjgpp_Wchar_HName, zDjgpp_Wchar_HList,
8872 apzDjgpp_Wchar_HMachs,
8873 DJGPP_WCHAR_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8874 aDjgpp_Wchar_HTests, apzDjgpp_Wchar_HPatch, 0 },
8875
06bbab1b 8876 { zEcd_CursorName, zEcd_CursorList,
f5b105ca 8877 apzEcd_CursorMachs,
cd64831f 8878 ECD_CURSOR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8879 aEcd_CursorTests, apzEcd_CursorPatch, 0 },
06bbab1b 8880
793146e3
BK
8881 { zException_StructureName, zException_StructureList,
8882 apzException_StructureMachs,
8883 EXCEPTION_STRUCTURE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8884 aException_StructureTests, apzException_StructurePatch, 0 },
8885
89647e8a
LR
8886 { zFreebsd_Gcc3_BreakageName, zFreebsd_Gcc3_BreakageList,
8887 apzFreebsd_Gcc3_BreakageMachs,
8888 FREEBSD_GCC3_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8889 aFreebsd_Gcc3_BreakageTests, apzFreebsd_Gcc3_BreakagePatch, 0 },
8890
28785dde
LR
8891 { zFreebsd_Gcc4_BreakageName, zFreebsd_Gcc4_BreakageList,
8892 apzFreebsd_Gcc4_BreakageMachs,
8893 FREEBSD_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8894 aFreebsd_Gcc4_BreakageTests, apzFreebsd_Gcc4_BreakagePatch, 0 },
8895
502e2a2d
GK
8896 { zGlibc_C99_Inline_1Name, zGlibc_C99_Inline_1List,
8897 apzGlibc_C99_Inline_1Machs,
8898 GLIBC_C99_INLINE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8899 aGlibc_C99_Inline_1Tests, apzGlibc_C99_Inline_1Patch, 0 },
8900
8901 { zGlibc_C99_Inline_2Name, zGlibc_C99_Inline_2List,
8902 apzGlibc_C99_Inline_2Machs,
8903 GLIBC_C99_INLINE_2_TEST_CT, FD_MACH_ONLY,
8904 aGlibc_C99_Inline_2Tests, apzGlibc_C99_Inline_2Patch, 0 },
8905
8906 { zGlibc_C99_Inline_3Name, zGlibc_C99_Inline_3List,
8907 apzGlibc_C99_Inline_3Machs,
8908 GLIBC_C99_INLINE_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8909 aGlibc_C99_Inline_3Tests, apzGlibc_C99_Inline_3Patch, 0 },
8910
8911 { zGlibc_C99_Inline_4Name, zGlibc_C99_Inline_4List,
8912 apzGlibc_C99_Inline_4Machs,
8913 GLIBC_C99_INLINE_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8914 aGlibc_C99_Inline_4Tests, apzGlibc_C99_Inline_4Patch, 0 },
8915
f6f7aabc
UB
8916 { zGlibc_Mutex_InitName, zGlibc_Mutex_InitList,
8917 apzGlibc_Mutex_InitMachs,
8918 GLIBC_MUTEX_INIT_TEST_CT, FD_MACH_ONLY,
8919 aGlibc_Mutex_InitTests, apzGlibc_Mutex_InitPatch, 0 },
8920
7b78a14a
BK
8921 { zGnu_TypesName, zGnu_TypesList,
8922 apzGnu_TypesMachs,
9fcc7481 8923 GNU_TYPES_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
7b78a14a
BK
8924 aGnu_TypesTests, apzGnu_TypesPatch, 0 },
8925
06bbab1b 8926 { zHp_InlineName, zHp_InlineList,
f5b105ca 8927 apzHp_InlineMachs,
cd64831f 8928 HP_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8929 aHp_InlineTests, apzHp_InlinePatch, 0 },
06bbab1b
BK
8930
8931 { zHp_SysfileName, zHp_SysfileList,
f5b105ca 8932 apzHp_SysfileMachs,
cd64831f 8933 HP_SYSFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8934 aHp_SysfileTests, apzHp_SysfilePatch, 0 },
06bbab1b 8935
5ffd49b8
JDA
8936 { zHpux10_Cpp_Pow_InlineName, zHpux10_Cpp_Pow_InlineList,
8937 apzHpux10_Cpp_Pow_InlineMachs,
8938 HPUX10_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8939 aHpux10_Cpp_Pow_InlineTests, apzHpux10_Cpp_Pow_InlinePatch, 0 },
8940
eb559363
BK
8941 { zHpux11_Cpp_Pow_InlineName, zHpux11_Cpp_Pow_InlineList,
8942 apzHpux11_Cpp_Pow_InlineMachs,
8943 HPUX11_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8944 aHpux11_Cpp_Pow_InlineTests, apzHpux11_Cpp_Pow_InlinePatch, 0 },
8945
afc41460
BK
8946 { zHpux10_Ctype_Declarations1Name, zHpux10_Ctype_Declarations1List,
8947 apzHpux10_Ctype_Declarations1Machs,
8948 HPUX10_CTYPE_DECLARATIONS1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8949 aHpux10_Ctype_Declarations1Tests, apzHpux10_Ctype_Declarations1Patch, 0 },
8950
8951 { zHpux10_Ctype_Declarations2Name, zHpux10_Ctype_Declarations2List,
8952 apzHpux10_Ctype_Declarations2Machs,
8953 HPUX10_CTYPE_DECLARATIONS2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8954 aHpux10_Ctype_Declarations2Tests, apzHpux10_Ctype_Declarations2Patch, 0 },
8955
4b60eb3b
JDA
8956 { zHpux10_Stdio_DeclarationsName, zHpux10_Stdio_DeclarationsList,
8957 apzHpux10_Stdio_DeclarationsMachs,
8958 HPUX10_STDIO_DECLARATIONS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8959 aHpux10_Stdio_DeclarationsTests, apzHpux10_Stdio_DeclarationsPatch, 0 },
8960
0fca111b
SE
8961 { zHpux11_AbsName, zHpux11_AbsList,
8962 apzHpux11_AbsMachs,
d758c1db 8963 HPUX11_ABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
0fca111b
SE
8964 aHpux11_AbsTests, apzHpux11_AbsPatch, 0 },
8965
27eaa708
BK
8966 { zHpux11_FabsfName, zHpux11_FabsfList,
8967 apzHpux11_FabsfMachs,
8968 HPUX11_FABSF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8969 aHpux11_FabsfTests, apzHpux11_FabsfPatch, 0 },
8970
34b3b0f6
JM
8971 { zHpux11_Size_TName, zHpux11_Size_TList,
8972 apzHpux11_Size_TMachs,
8973 HPUX11_SIZE_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8974 aHpux11_Size_TTests, apzHpux11_Size_TPatch, 0 },
8975
11f9a0ed
BK
8976 { zHpux11_SnprintfName, zHpux11_SnprintfList,
8977 apzHpux11_SnprintfMachs,
8978 HPUX11_SNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8979 aHpux11_SnprintfTests, apzHpux11_SnprintfPatch, 0 },
8980
abf7cec7 8981 { zHpux11_Uint32_CName, zHpux11_Uint32_CList,
f5b105ca 8982 apzHpux11_Uint32_CMachs,
79589c4d 8983 HPUX11_UINT32_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 8984 aHpux11_Uint32_CTests, apzHpux11_Uint32_CPatch, 0 },
abf7cec7 8985
b8d0bbf7
BK
8986 { zHpux11_VsnprintfName, zHpux11_VsnprintfList,
8987 apzHpux11_VsnprintfMachs,
8988 HPUX11_VSNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8989 aHpux11_VsnprintfTests, apzHpux11_VsnprintfPatch, 0 },
8990
cd64831f
BK
8991 { zHpux8_Bogus_InlinesName, zHpux8_Bogus_InlinesList,
8992 apzHpux8_Bogus_InlinesMachs,
8993 HPUX8_BOGUS_INLINES_TEST_CT, FD_MACH_ONLY,
37082e6d 8994 aHpux8_Bogus_InlinesTests, apzHpux8_Bogus_InlinesPatch, 0 },
cd64831f 8995
afc41460
BK
8996 { zHpux_Ctype_MacrosName, zHpux_Ctype_MacrosList,
8997 apzHpux_Ctype_MacrosMachs,
8998 HPUX_CTYPE_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
8999 aHpux_Ctype_MacrosTests, apzHpux_Ctype_MacrosPatch, 0 },
9000
7fbdc950
JM
9001 { zHpux_HtonlName, zHpux_HtonlList,
9002 apzHpux_HtonlMachs,
9003 HPUX_HTONL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9004 aHpux_HtonlTests, apzHpux_HtonlPatch, 0 },
9005
afc41460
BK
9006 { zHpux_Long_DoubleName, zHpux_Long_DoubleList,
9007 apzHpux_Long_DoubleMachs,
9008 HPUX_LONG_DOUBLE_TEST_CT, FD_MACH_ONLY,
9009 aHpux_Long_DoubleTests, apzHpux_Long_DoublePatch, 0 },
9010
7b78a14a
BK
9011 { zHpux_SystimeName, zHpux_SystimeList,
9012 apzHpux_SystimeMachs,
9013 HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9014 aHpux_SystimeTests, apzHpux_SystimePatch, 0 },
9015
e084430d
SE
9016 { zHpux_Spu_InfoName, zHpux_Spu_InfoList,
9017 apzHpux_Spu_InfoMachs,
9018 HPUX_SPU_INFO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9019 aHpux_Spu_InfoTests, apzHpux_Spu_InfoPatch, 0 },
9020
be645fd9
SE
9021 { zHpux11_Extern_SendfileName, zHpux11_Extern_SendfileList,
9022 apzHpux11_Extern_SendfileMachs,
9023 HPUX11_EXTERN_SENDFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9024 aHpux11_Extern_SendfileTests, apzHpux11_Extern_SendfilePatch, 0 },
9025
9026 { zHpux11_Extern_SendpathName, zHpux11_Extern_SendpathList,
9027 apzHpux11_Extern_SendpathMachs,
9028 HPUX11_EXTERN_SENDPATH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9029 aHpux11_Extern_SendpathTests, apzHpux11_Extern_SendpathPatch, 0 },
9030
e10e3ac8
SE
9031 { zHpux_Extern_ErrnoName, zHpux_Extern_ErrnoList,
9032 apzHpux_Extern_ErrnoMachs,
9033 HPUX_EXTERN_ERRNO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9034 aHpux_Extern_ErrnoTests, apzHpux_Extern_ErrnoPatch, 0 },
9035
6c65aa40
JDA
9036 { zHpux_Pthread_InitializersName, zHpux_Pthread_InitializersList,
9037 apzHpux_Pthread_InitializersMachs,
9038 HPUX_PTHREAD_INITIALIZERS_TEST_CT, FD_MACH_ONLY,
9039 aHpux_Pthread_InitializersTests, apzHpux_Pthread_InitializersPatch, 0 },
9040
77923c29
JM
9041 { zHuge_Val_HexName, zHuge_Val_HexList,
9042 apzHuge_Val_HexMachs,
9043 HUGE_VAL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9044 aHuge_Val_HexTests, apzHuge_Val_HexPatch, 0 },
9045
9046 { zHuge_Valf_HexName, zHuge_Valf_HexList,
9047 apzHuge_Valf_HexMachs,
9048 HUGE_VALF_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9049 aHuge_Valf_HexTests, apzHuge_Valf_HexPatch, 0 },
9050
9051 { zHuge_Vall_HexName, zHuge_Vall_HexList,
9052 apzHuge_Vall_HexMachs,
9053 HUGE_VALL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9054 aHuge_Vall_HexTests, apzHuge_Vall_HexPatch, 0 },
9055
cb8d5168
BK
9056 { zInt_Abort_Free_And_ExitName, zInt_Abort_Free_And_ExitList,
9057 apzInt_Abort_Free_And_ExitMachs,
9058 INT_ABORT_FREE_AND_EXIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9059 aInt_Abort_Free_And_ExitTests, apzInt_Abort_Free_And_ExitPatch, 0 },
cb8d5168 9060
88acf854
BK
9061 { zIo_Quotes_DefName, zIo_Quotes_DefList,
9062 apzIo_Quotes_DefMachs,
9063 IO_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9064 aIo_Quotes_DefTests, apzIo_Quotes_DefPatch, 0 },
88acf854 9065
99d05d99
BK
9066 { zIo_Quotes_UseName, zIo_Quotes_UseList,
9067 apzIo_Quotes_UseMachs,
9068 IO_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9069 aIo_Quotes_UseTests, apzIo_Quotes_UsePatch, 0 },
88acf854 9070
06bbab1b 9071 { zIp_Missing_SemiName, zIp_Missing_SemiList,
f5b105ca 9072 apzIp_Missing_SemiMachs,
06bbab1b 9073 IP_MISSING_SEMI_TEST_CT, FD_MACH_ONLY,
37082e6d 9074 aIp_Missing_SemiTests, apzIp_Missing_SemiPatch, 0 },
06bbab1b 9075
7a9cdb10
DD
9076 { zIrix___RestrictName, zIrix___RestrictList,
9077 apzIrix___RestrictMachs,
9078 IRIX___RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9079 aIrix___RestrictTests, apzIrix___RestrictPatch, 0 },
9080
e0704143
RS
9081 { zIrix___Generic1Name, zIrix___Generic1List,
9082 apzIrix___Generic1Machs,
9083 IRIX___GENERIC1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9084 aIrix___Generic1Tests, apzIrix___Generic1Patch, 0 },
9085
9086 { zIrix___Generic2Name, zIrix___Generic2List,
9087 apzIrix___Generic2Machs,
9088 IRIX___GENERIC2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9089 aIrix___Generic2Tests, apzIrix___Generic2Patch, 0 },
9090
79589c4d
BK
9091 { zIrix_Asm_ApostropheName, zIrix_Asm_ApostropheList,
9092 apzIrix_Asm_ApostropheMachs,
9093 IRIX_ASM_APOSTROPHE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9094 aIrix_Asm_ApostropheTests, apzIrix_Asm_ApostrophePatch, 0 },
79589c4d 9095
8d8d5752
JO
9096 { zIrix_Limits_ConstName, zIrix_Limits_ConstList,
9097 apzIrix_Limits_ConstMachs,
9098 IRIX_LIMITS_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9099 aIrix_Limits_ConstTests, apzIrix_Limits_ConstPatch, 0 },
9100
f23147fe
RO
9101 { zIrix_Socklen_TName, zIrix_Socklen_TList,
9102 apzIrix_Socklen_TMachs,
9103 IRIX_SOCKLEN_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9104 aIrix_Socklen_TTests, apzIrix_Socklen_TPatch, 0 },
9105
7b78a14a
BK
9106 { zIrix_Stdio_Va_ListName, zIrix_Stdio_Va_ListList,
9107 apzIrix_Stdio_Va_ListMachs,
9108 IRIX_STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9109 aIrix_Stdio_Va_ListTests, apzIrix_Stdio_Va_ListPatch, 0 },
9110
f23147fe
RO
9111 { zIrix_WcsftimeName, zIrix_WcsftimeList,
9112 apzIrix_WcsftimeMachs,
9113 IRIX_WCSFTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9114 aIrix_WcsftimeTests, apzIrix_WcsftimePatch, 0 },
9115
06bbab1b 9116 { zIsc_FmodName, zIsc_FmodList,
f5b105ca 9117 apzIsc_FmodMachs,
79589c4d 9118 ISC_FMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9119 aIsc_FmodTests, apzIsc_FmodPatch, 0 },
06bbab1b 9120
7b78a14a
BK
9121 { zIsc_Omits_With_StdcName, zIsc_Omits_With_StdcList,
9122 apzIsc_Omits_With_StdcMachs,
9123 ISC_OMITS_WITH_STDC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9124 aIsc_Omits_With_StdcTests, apzIsc_Omits_With_StdcPatch, 0 },
9125
06bbab1b 9126 { zKandr_ConcatName, zKandr_ConcatList,
f5b105ca 9127 apzKandr_ConcatMachs,
79589c4d 9128 KANDR_CONCAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9129 aKandr_ConcatTests, apzKandr_ConcatPatch, 0 },
06bbab1b 9130
a7475ab1
HPN
9131 { zLibc1_G_Va_ListName, zLibc1_G_Va_ListList,
9132 apzLibc1_G_Va_ListMachs,
9133 LIBC1_G_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9134 aLibc1_G_Va_ListTests, apzLibc1_G_Va_ListPatch, 0 },
9135
27eaa708
BK
9136 { zLibc1_Ifdefd_MemxName, zLibc1_Ifdefd_MemxList,
9137 apzLibc1_Ifdefd_MemxMachs,
9138 LIBC1_IFDEFD_MEMX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9139 aLibc1_Ifdefd_MemxTests, apzLibc1_Ifdefd_MemxPatch, 0 },
9140
fa71a5c3
RS
9141 { zLinux_Ia64_UcontextName, zLinux_Ia64_UcontextList,
9142 apzLinux_Ia64_UcontextMachs,
9143 LINUX_IA64_UCONTEXT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9144 aLinux_Ia64_UcontextTests, apzLinux_Ia64_UcontextPatch, 0 },
9145
d635c707
AN
9146 { zLynxos_No_Warning_In_Sys_Time_HName, zLynxos_No_Warning_In_Sys_Time_HList,
9147 apzLynxos_No_Warning_In_Sys_Time_HMachs,
9148 LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9149 aLynxos_No_Warning_In_Sys_Time_HTests, apzLynxos_No_Warning_In_Sys_Time_HPatch, 0 },
06bbab1b 9150
d635c707
AN
9151 { zLynxos_Missing_PutenvName, zLynxos_Missing_PutenvList,
9152 apzLynxos_Missing_PutenvMachs,
9153 LYNXOS_MISSING_PUTENV_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9154 aLynxos_Missing_PutenvTests, apzLynxos_Missing_PutenvPatch, 0 },
06bbab1b 9155
3be1fb72 9156 { zMachine_Ansi_H_Va_ListName, zMachine_Ansi_H_Va_ListList,
f5b105ca 9157 apzMachine_Ansi_H_Va_ListMachs,
a8228686 9158 MACHINE_ANSI_H_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9159 aMachine_Ansi_H_Va_ListTests, apzMachine_Ansi_H_Va_ListPatch, 0 },
3be1fb72 9160
06bbab1b 9161 { zMachine_NameName, zMachine_NameList,
f5b105ca 9162 apzMachine_NameMachs,
52c207e2 9163 MACHINE_NAME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9164 aMachine_NameTests, apzMachine_NamePatch, 0 },
06bbab1b
BK
9165
9166 { zMath_ExceptionName, zMath_ExceptionList,
f5b105ca 9167 apzMath_ExceptionMachs,
ba8fcfc3 9168 MATH_EXCEPTION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9169 aMath_ExceptionTests, apzMath_ExceptionPatch, 0 },
06bbab1b 9170
d7eb5a45 9171 { zMath_Huge_Val_From_Dbl_MaxName, zMath_Huge_Val_From_Dbl_MaxList,
f5b105ca 9172 apzMath_Huge_Val_From_Dbl_MaxMachs,
d7eb5a45 9173 MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
37082e6d 9174 aMath_Huge_Val_From_Dbl_MaxTests, apzMath_Huge_Val_From_Dbl_MaxPatch, 0 },
d7eb5a45 9175
7b78a14a
BK
9176 { zNested_Auth_DesName, zNested_Auth_DesList,
9177 apzNested_Auth_DesMachs,
9178 NESTED_AUTH_DES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9179 aNested_Auth_DesTests, apzNested_Auth_DesPatch, 0 },
9180
79589c4d
BK
9181 { zNested_MotorolaName, zNested_MotorolaList,
9182 apzNested_MotorolaMachs,
9183 NESTED_MOTOROLA_TEST_CT, FD_MACH_ONLY,
37082e6d 9184 aNested_MotorolaTests, apzNested_MotorolaPatch, 0 },
79589c4d
BK
9185
9186 { zNested_Sys_LimitsName, zNested_Sys_LimitsList,
9187 apzNested_Sys_LimitsMachs,
9188 NESTED_SYS_LIMITS_TEST_CT, FD_MACH_ONLY,
37082e6d 9189 aNested_Sys_LimitsTests, apzNested_Sys_LimitsPatch, 0 },
79589c4d 9190
3edc4b23
KW
9191 { zNetbsd_Extra_SemicolonName, zNetbsd_Extra_SemicolonList,
9192 apzNetbsd_Extra_SemicolonMachs,
9193 NETBSD_EXTRA_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9194 aNetbsd_Extra_SemicolonTests, apzNetbsd_Extra_SemicolonPatch, 0 },
9195
06bbab1b 9196 { zNext_Math_PrefixName, zNext_Math_PrefixList,
f5b105ca 9197 apzNext_Math_PrefixMachs,
a8228686 9198 NEXT_MATH_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9199 aNext_Math_PrefixTests, apzNext_Math_PrefixPatch, 0 },
06bbab1b
BK
9200
9201 { zNext_TemplateName, zNext_TemplateList,
f5b105ca 9202 apzNext_TemplateMachs,
a8228686 9203 NEXT_TEMPLATE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9204 aNext_TemplateTests, apzNext_TemplatePatch, 0 },
06bbab1b
BK
9205
9206 { zNext_VolitileName, zNext_VolitileList,
f5b105ca 9207 apzNext_VolitileMachs,
a8228686 9208 NEXT_VOLITILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9209 aNext_VolitileTests, apzNext_VolitilePatch, 0 },
06bbab1b
BK
9210
9211 { zNext_Wait_UnionName, zNext_Wait_UnionList,
f5b105ca 9212 apzNext_Wait_UnionMachs,
cb8d5168 9213 NEXT_WAIT_UNION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9214 aNext_Wait_UnionTests, apzNext_Wait_UnionPatch, 0 },
06bbab1b
BK
9215
9216 { zNodeent_SyntaxName, zNodeent_SyntaxList,
f5b105ca 9217 apzNodeent_SyntaxMachs,
cb8d5168 9218 NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9219 aNodeent_SyntaxTests, apzNodeent_SyntaxPatch, 0 },
06bbab1b 9220
dc70e81d
JM
9221 { zObstack_Lvalue_CastName, zObstack_Lvalue_CastList,
9222 apzObstack_Lvalue_CastMachs,
9223 OBSTACK_LVALUE_CAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9224 aObstack_Lvalue_CastTests, apzObstack_Lvalue_CastPatch, 0 },
9225
06bbab1b 9226 { zOsf_Namespace_AName, zOsf_Namespace_AList,
f5b105ca 9227 apzOsf_Namespace_AMachs,
cb8d5168 9228 OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9229 aOsf_Namespace_ATests, apzOsf_Namespace_APatch, 0 },
06bbab1b 9230
cb8d5168
BK
9231 { zOsf_Namespace_CName, zOsf_Namespace_CList,
9232 apzOsf_Namespace_CMachs,
9233 OSF_NAMESPACE_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9234 aOsf_Namespace_CTests, apzOsf_Namespace_CPatch, 0 },
06bbab1b
BK
9235
9236 { zPthread_Page_SizeName, zPthread_Page_SizeList,
f5b105ca 9237 apzPthread_Page_SizeMachs,
cb8d5168 9238 PTHREAD_PAGE_SIZE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9239 aPthread_Page_SizeTests, apzPthread_Page_SizePatch, 0 },
06bbab1b 9240
14bfd7c7
RG
9241 { zPthread_Incomplete_Struct_ArgumentName, zPthread_Incomplete_Struct_ArgumentList,
9242 apzPthread_Incomplete_Struct_ArgumentMachs,
9243 PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9244 aPthread_Incomplete_Struct_ArgumentTests, apzPthread_Incomplete_Struct_ArgumentPatch, 0 },
9245
d71ef9d4 9246 { zRead_Ret_TypeName, zRead_Ret_TypeList,
f5b105ca 9247 apzRead_Ret_TypeMachs,
cb8d5168 9248 READ_RET_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9249 aRead_Ret_TypeTests, apzRead_Ret_TypePatch, 0 },
d71ef9d4 9250
6ed6a1b9
JM
9251 { zRpc_Xdr_Lvalue_Cast_AName, zRpc_Xdr_Lvalue_Cast_AList,
9252 apzRpc_Xdr_Lvalue_Cast_AMachs,
9253 RPC_XDR_LVALUE_CAST_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9254 aRpc_Xdr_Lvalue_Cast_ATests, apzRpc_Xdr_Lvalue_Cast_APatch, 0 },
9255
9256 { zRpc_Xdr_Lvalue_Cast_BName, zRpc_Xdr_Lvalue_Cast_BList,
9257 apzRpc_Xdr_Lvalue_Cast_BMachs,
9258 RPC_XDR_LVALUE_CAST_B_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9259 aRpc_Xdr_Lvalue_Cast_BTests, apzRpc_Xdr_Lvalue_Cast_BPatch, 0 },
9260
06bbab1b 9261 { zRs6000_DoubleName, zRs6000_DoubleList,
f5b105ca 9262 apzRs6000_DoubleMachs,
cb8d5168 9263 RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9264 aRs6000_DoubleTests, apzRs6000_DoublePatch, 0 },
06bbab1b
BK
9265
9266 { zRs6000_FchmodName, zRs6000_FchmodList,
f5b105ca 9267 apzRs6000_FchmodMachs,
cb8d5168 9268 RS6000_FCHMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9269 aRs6000_FchmodTests, apzRs6000_FchmodPatch, 0 },
06bbab1b
BK
9270
9271 { zRs6000_ParamName, zRs6000_ParamList,
f5b105ca 9272 apzRs6000_ParamMachs,
cb8d5168 9273 RS6000_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9274 aRs6000_ParamTests, apzRs6000_ParamPatch, 0 },
06bbab1b 9275
de0656cf
KJ
9276 { zSco_MathName, zSco_MathList,
9277 apzSco_MathMachs,
9278 SCO_MATH_TEST_CT, FD_MACH_ONLY,
9279 aSco_MathTests, apzSco_MathPatch, 0 },
9280
9281 { zSco_RegsetName, zSco_RegsetList,
9282 apzSco_RegsetMachs,
9283 SCO_REGSET_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9284 aSco_RegsetTests, apzSco_RegsetPatch, 0 },
9285
4c188026 9286 { zSco_Static_FuncName, zSco_Static_FuncList,
f5b105ca 9287 apzSco_Static_FuncMachs,
4c188026 9288 SCO_STATIC_FUNC_TEST_CT, FD_MACH_ONLY,
37082e6d 9289 aSco_Static_FuncTests, apzSco_Static_FuncPatch, 0 },
4c188026
BK
9290
9291 { zSco_UtimeName, zSco_UtimeList,
f5b105ca 9292 apzSco_UtimeMachs,
cb8d5168 9293 SCO_UTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9294 aSco_UtimeTests, apzSco_UtimePatch, 0 },
4c188026 9295
925a4487
EB
9296 { zSolaris_Math_1Name, zSolaris_Math_1List,
9297 apzSolaris_Math_1Machs,
9298 SOLARIS_MATH_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9299 aSolaris_Math_1Tests, apzSolaris_Math_1Patch, 0 },
9300
9301 { zSolaris_Math_2Name, zSolaris_Math_2List,
9302 apzSolaris_Math_2Machs,
9303 SOLARIS_MATH_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9304 aSolaris_Math_2Tests, apzSolaris_Math_2Patch, 0 },
9305
9306 { zSolaris_Math_3Name, zSolaris_Math_3List,
9307 apzSolaris_Math_3Machs,
9308 SOLARIS_MATH_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9309 aSolaris_Math_3Tests, apzSolaris_Math_3Patch, 0 },
9310
9311 { zSolaris_Math_4Name, zSolaris_Math_4List,
9312 apzSolaris_Math_4Machs,
9313 SOLARIS_MATH_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9314 aSolaris_Math_4Tests, apzSolaris_Math_4Patch, 0 },
9315
9316 { zSolaris_Math_5Name, zSolaris_Math_5List,
9317 apzSolaris_Math_5Machs,
9318 SOLARIS_MATH_5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9319 aSolaris_Math_5Tests, apzSolaris_Math_5Patch, 0 },
9320
9321 { zSolaris_Math_6Name, zSolaris_Math_6List,
9322 apzSolaris_Math_6Machs,
9323 SOLARIS_MATH_6_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9324 aSolaris_Math_6Tests, apzSolaris_Math_6Patch, 0 },
9325
9326 { zSolaris_Math_7Name, zSolaris_Math_7List,
9327 apzSolaris_Math_7Machs,
9328 SOLARIS_MATH_7_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9329 aSolaris_Math_7Tests, apzSolaris_Math_7Patch, 0 },
9330
9331 { zSolaris_Math_8Name, zSolaris_Math_8List,
9332 apzSolaris_Math_8Machs,
9333 SOLARIS_MATH_8_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9334 aSolaris_Math_8Tests, apzSolaris_Math_8Patch, 0 },
9335
9336 { zSolaris_Math_9Name, zSolaris_Math_9List,
9337 apzSolaris_Math_9Machs,
9338 SOLARIS_MATH_9_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9339 aSolaris_Math_9Tests, apzSolaris_Math_9Patch, 0 },
9340
7a9cdb10
DD
9341 { zSolaris_Mutex_Init_1Name, zSolaris_Mutex_Init_1List,
9342 apzSolaris_Mutex_Init_1Machs,
9343 SOLARIS_MUTEX_INIT_1_TEST_CT, FD_MACH_ONLY,
9344 aSolaris_Mutex_Init_1Tests, apzSolaris_Mutex_Init_1Patch, 0 },
9345
9346 { zSolaris_Mutex_Init_2Name, zSolaris_Mutex_Init_2List,
9347 apzSolaris_Mutex_Init_2Machs,
9348 SOLARIS_MUTEX_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9349 aSolaris_Mutex_Init_2Tests, apzSolaris_Mutex_Init_2Patch, 0 },
1f98d85e 9350
2b655a0a
KG
9351 { zSolaris_Rwlock_Init_1Name, zSolaris_Rwlock_Init_1List,
9352 apzSolaris_Rwlock_Init_1Machs,
9353 SOLARIS_RWLOCK_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9354 aSolaris_Rwlock_Init_1Tests, apzSolaris_Rwlock_Init_1Patch, 0 },
9355
9356 { zSolaris_Once_Init_1Name, zSolaris_Once_Init_1List,
9357 apzSolaris_Once_Init_1Machs,
9358 SOLARIS_ONCE_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9359 aSolaris_Once_Init_1Tests, apzSolaris_Once_Init_1Patch, 0 },
9360
0a1f02df
KG
9361 { zSolaris_Once_Init_2Name, zSolaris_Once_Init_2List,
9362 apzSolaris_Once_Init_2Machs,
9363 SOLARIS_ONCE_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9364 aSolaris_Once_Init_2Tests, apzSolaris_Once_Init_2Patch, 0 },
9365
6bf1ffe1
EB
9366 { zSolaris_SocketName, zSolaris_SocketList,
9367 apzSolaris_SocketMachs,
9368 SOLARIS_SOCKET_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9369 aSolaris_SocketTests, apzSolaris_SocketPatch, 0 },
9370
fba39eaf
RH
9371 { zSolaris_Stdio_TagName, zSolaris_Stdio_TagList,
9372 apzSolaris_Stdio_TagMachs,
9373 SOLARIS_STDIO_TAG_TEST_CT, FD_MACH_ONLY,
9374 aSolaris_Stdio_TagTests, apzSolaris_Stdio_TagPatch, 0 },
9375
6bf1ffe1
EB
9376 { zSolaris_UnistdName, zSolaris_UnistdList,
9377 apzSolaris_UnistdMachs,
9378 SOLARIS_UNISTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9379 aSolaris_UnistdTests, apzSolaris_UnistdPatch, 0 },
9380
d8af0868
RO
9381 { zSolaris_WidecName, zSolaris_WidecList,
9382 apzSolaris_WidecMachs,
9383 SOLARIS_WIDEC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9384 aSolaris_WidecTests, apzSolaris_WidecPatch, 0 },
9385
06bbab1b 9386 { zStatsswtchName, zStatsswtchList,
f5b105ca 9387 apzStatsswtchMachs,
cb8d5168 9388 STATSSWTCH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9389 aStatsswtchTests, apzStatsswtchPatch, 0 },
06bbab1b 9390
3be1fb72 9391 { zStdio_Stdarg_HName, zStdio_Stdarg_HList,
f5b105ca 9392 apzStdio_Stdarg_HMachs,
9fcc7481 9393 STDIO_STDARG_H_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
37082e6d 9394 aStdio_Stdarg_HTests, apzStdio_Stdarg_HPatch, 0 },
3be1fb72 9395
06bbab1b 9396 { zStdio_Va_ListName, zStdio_Va_ListList,
f5b105ca 9397 apzStdio_Va_ListMachs,
9fcc7481 9398 STDIO_VA_LIST_TEST_CT, FD_MACH_IFNOT,
37082e6d 9399 aStdio_Va_ListTests, apzStdio_Va_ListPatch, 0 },
06bbab1b 9400
40d05429
MS
9401 { zStdio_Va_List_ClientsName, zStdio_Va_List_ClientsList,
9402 apzStdio_Va_List_ClientsMachs,
9403 STDIO_VA_LIST_CLIENTS_TEST_CT, FD_MACH_ONLY,
9404 aStdio_Va_List_ClientsTests, apzStdio_Va_List_ClientsPatch, 0 },
9405
7b78a14a
BK
9406 { zStrict_Ansi_NotName, zStrict_Ansi_NotList,
9407 apzStrict_Ansi_NotMachs,
9408 STRICT_ANSI_NOT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9409 aStrict_Ansi_NotTests, apzStrict_Ansi_NotPatch, 0 },
9410
9411 { zStrict_Ansi_Not_CtdName, zStrict_Ansi_Not_CtdList,
9412 apzStrict_Ansi_Not_CtdMachs,
9413 STRICT_ANSI_NOT_CTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9414 aStrict_Ansi_Not_CtdTests, apzStrict_Ansi_Not_CtdPatch, 0 },
9415
9416 { zStrict_Ansi_OnlyName, zStrict_Ansi_OnlyList,
9417 apzStrict_Ansi_OnlyMachs,
9418 STRICT_ANSI_ONLY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9419 aStrict_Ansi_OnlyTests, apzStrict_Ansi_OnlyPatch, 0 },
9420
79589c4d
BK
9421 { zStruct_FileName, zStruct_FileList,
9422 apzStruct_FileMachs,
9423 STRUCT_FILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9424 aStruct_FileTests, apzStruct_FilePatch, 0 },
79589c4d
BK
9425
9426 { zStruct_SockaddrName, zStruct_SockaddrList,
9427 apzStruct_SockaddrMachs,
9428 STRUCT_SOCKADDR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9429 aStruct_SockaddrTests, apzStruct_SockaddrPatch, 0 },
79589c4d 9430
4c188026 9431 { zSun_Auth_ProtoName, zSun_Auth_ProtoList,
f5b105ca 9432 apzSun_Auth_ProtoMachs,
cb8d5168 9433 SUN_AUTH_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9434 aSun_Auth_ProtoTests, apzSun_Auth_ProtoPatch, 0 },
4c188026 9435
06bbab1b 9436 { zSun_Bogus_IfdefName, zSun_Bogus_IfdefList,
f5b105ca 9437 apzSun_Bogus_IfdefMachs,
cb8d5168 9438 SUN_BOGUS_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9439 aSun_Bogus_IfdefTests, apzSun_Bogus_IfdefPatch, 0 },
06bbab1b 9440
06bbab1b 9441 { zSun_CatmacroName, zSun_CatmacroList,
f5b105ca 9442 apzSun_CatmacroMachs,
cb8d5168 9443 SUN_CATMACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9444 aSun_CatmacroTests, apzSun_CatmacroPatch, 0 },
06bbab1b
BK
9445
9446 { zSun_MallocName, zSun_MallocList,
f5b105ca 9447 apzSun_MallocMachs,
06bbab1b 9448 SUN_MALLOC_TEST_CT, FD_MACH_ONLY,
37082e6d 9449 aSun_MallocTests, apzSun_MallocPatch, 0 },
06bbab1b 9450
06bbab1b 9451 { zSun_Rusers_SemiName, zSun_Rusers_SemiList,
f5b105ca 9452 apzSun_Rusers_SemiMachs,
06bbab1b 9453 SUN_RUSERS_SEMI_TEST_CT, FD_MACH_ONLY,
37082e6d 9454 aSun_Rusers_SemiTests, apzSun_Rusers_SemiPatch, 0 },
06bbab1b
BK
9455
9456 { zSun_SignalName, zSun_SignalList,
f5b105ca 9457 apzSun_SignalMachs,
cb8d5168 9458 SUN_SIGNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9459 aSun_SignalTests, apzSun_SignalPatch, 0 },
06bbab1b 9460
06bbab1b 9461 { zSunos_StrlenName, zSunos_StrlenList,
f5b105ca 9462 apzSunos_StrlenMachs,
cb8d5168 9463 SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9464 aSunos_StrlenTests, apzSunos_StrlenPatch, 0 },
06bbab1b 9465
de0656cf
KJ
9466 { zSvr4_Disable_OptName, zSvr4_Disable_OptList,
9467 apzSvr4_Disable_OptMachs,
9468 SVR4_DISABLE_OPT_TEST_CT, FD_MACH_ONLY,
9469 aSvr4_Disable_OptTests, apzSvr4_Disable_OptPatch, 0 },
9470
4c188026 9471 { zSvr4_GetcwdName, zSvr4_GetcwdList,
f5b105ca 9472 apzSvr4_GetcwdMachs,
cb8d5168 9473 SVR4_GETCWD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9474 aSvr4_GetcwdTests, apzSvr4_GetcwdPatch, 0 },
4c188026 9475
825d7d64
NN
9476 { zSvr4_KrnlName, zSvr4_KrnlList,
9477 apzSvr4_KrnlMachs,
9478 SVR4_KRNL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9479 aSvr4_KrnlTests, apzSvr4_KrnlPatch, 0 },
9480
4c188026 9481 { zSvr4_ProfilName, zSvr4_ProfilList,
f5b105ca 9482 apzSvr4_ProfilMachs,
cb8d5168 9483 SVR4_PROFIL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9484 aSvr4_ProfilTests, apzSvr4_ProfilPatch, 0 },
4c188026 9485
1d109416
NN
9486 { zSvr4_Sighandler_TypeName, zSvr4_Sighandler_TypeList,
9487 apzSvr4_Sighandler_TypeMachs,
9488 SVR4_SIGHANDLER_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9489 aSvr4_Sighandler_TypeTests, apzSvr4_Sighandler_TypePatch, 0 },
9490
76d2e2c5
NN
9491 { zSvr4_Undeclared_GetrngeName, zSvr4_Undeclared_GetrngeList,
9492 apzSvr4_Undeclared_GetrngeMachs,
9493 SVR4_UNDECLARED_GETRNGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9494 aSvr4_Undeclared_GetrngeTests, apzSvr4_Undeclared_GetrngePatch, 0 },
9495
06bbab1b 9496 { zSysv68_StringName, zSysv68_StringList,
f5b105ca 9497 apzSysv68_StringMachs,
06bbab1b 9498 SYSV68_STRING_TEST_CT, FD_MACH_ONLY,
37082e6d 9499 aSysv68_StringTests, apzSysv68_StringPatch, 0 },
06bbab1b
BK
9500
9501 { zSysz_Stdlib_For_SunName, zSysz_Stdlib_For_SunList,
f5b105ca 9502 apzSysz_Stdlib_For_SunMachs,
cb8d5168 9503 SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9504 aSysz_Stdlib_For_SunTests, apzSysz_Stdlib_For_SunPatch, 0 },
06bbab1b 9505
3d78f2e9
RH
9506 { zThread_KeywordName, zThread_KeywordList,
9507 apzThread_KeywordMachs,
fd0a3915 9508 THREAD_KEYWORD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
3d78f2e9
RH
9509 aThread_KeywordTests, apzThread_KeywordPatch, 0 },
9510
06bbab1b 9511 { zTinfo_CplusplusName, zTinfo_CplusplusList,
f5b105ca 9512 apzTinfo_CplusplusMachs,
5d7d28c2 9513 TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9514 aTinfo_CplusplusTests, apzTinfo_CplusplusPatch, 0 },
06bbab1b 9515
165bfb59
BK
9516 { zUltrix_Atexit_ParamName, zUltrix_Atexit_ParamList,
9517 apzUltrix_Atexit_ParamMachs,
9518 ULTRIX_ATEXIT_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9519 aUltrix_Atexit_ParamTests, apzUltrix_Atexit_ParamPatch, 0 },
9520
9521 { zUltrix_Atof_ParamName, zUltrix_Atof_ParamList,
9522 apzUltrix_Atof_ParamMachs,
9523 ULTRIX_ATOF_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9524 aUltrix_Atof_ParamTests, apzUltrix_Atof_ParamPatch, 0 },
9525
06bbab1b 9526 { zUltrix_ConstName, zUltrix_ConstList,
f5b105ca 9527 apzUltrix_ConstMachs,
5d7d28c2 9528 ULTRIX_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9529 aUltrix_ConstTests, apzUltrix_ConstPatch, 0 },
06bbab1b 9530
5d7d28c2
BK
9531 { zUltrix_Const2Name, zUltrix_Const2List,
9532 apzUltrix_Const2Machs,
9533 ULTRIX_CONST2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9534 aUltrix_Const2Tests, apzUltrix_Const2Patch, 0 },
5d7d28c2 9535
4b60eb3b
JDA
9536 { zUltrix_Const3Name, zUltrix_Const3List,
9537 apzUltrix_Const3Machs,
9538 ULTRIX_CONST3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9539 aUltrix_Const3Tests, apzUltrix_Const3Patch, 0 },
9540
165bfb59
BK
9541 { zUltrix_Fix_FixprotoName, zUltrix_Fix_FixprotoList,
9542 apzUltrix_Fix_FixprotoMachs,
9543 ULTRIX_FIX_FIXPROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9544 aUltrix_Fix_FixprotoTests, apzUltrix_Fix_FixprotoPatch, 0 },
9545
9546 { zUltrix_IfdefName, zUltrix_IfdefList,
9547 apzUltrix_IfdefMachs,
9548 ULTRIX_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9549 aUltrix_IfdefTests, apzUltrix_IfdefPatch, 0 },
9550
4b60eb3b
JDA
9551 { zUltrix_LocaleName, zUltrix_LocaleList,
9552 apzUltrix_LocaleMachs,
9553 ULTRIX_LOCALE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9554 aUltrix_LocaleTests, apzUltrix_LocalePatch, 0 },
9555
165bfb59
BK
9556 { zUltrix_Math_IfdefName, zUltrix_Math_IfdefList,
9557 apzUltrix_Math_IfdefMachs,
9558 ULTRIX_MATH_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9559 aUltrix_Math_IfdefTests, apzUltrix_Math_IfdefPatch, 0 },
9560
9561 { zUltrix_Nested_IoctlName, zUltrix_Nested_IoctlList,
9562 apzUltrix_Nested_IoctlMachs,
9563 ULTRIX_NESTED_IOCTL_TEST_CT, FD_MACH_ONLY,
9564 aUltrix_Nested_IoctlTests, apzUltrix_Nested_IoctlPatch, 0 },
9565
9566 { zUltrix_Nested_SvcName, zUltrix_Nested_SvcList,
9567 apzUltrix_Nested_SvcMachs,
9568 ULTRIX_NESTED_SVC_TEST_CT, FD_MACH_ONLY,
9569 aUltrix_Nested_SvcTests, apzUltrix_Nested_SvcPatch, 0 },
9570
9571 { zUltrix_StatName, zUltrix_StatList,
9572 apzUltrix_StatMachs,
9573 ULTRIX_STAT_TEST_CT, FD_MACH_ONLY,
9574 aUltrix_StatTests, apzUltrix_StatPatch, 0 },
9575
9576 { zUltrix_StaticName, zUltrix_StaticList,
9577 apzUltrix_StaticMachs,
9578 ULTRIX_STATIC_TEST_CT, FD_MACH_ONLY,
9579 aUltrix_StaticTests, apzUltrix_StaticPatch, 0 },
9580
4b60eb3b
JDA
9581 { zUltrix_StdlibName, zUltrix_StdlibList,
9582 apzUltrix_StdlibMachs,
9583 ULTRIX_STDLIB_TEST_CT, FD_MACH_ONLY,
9584 aUltrix_StdlibTests, apzUltrix_StdlibPatch, 0 },
9585
165bfb59
BK
9586 { zUltrix_StringsName, zUltrix_StringsList,
9587 apzUltrix_StringsMachs,
9588 ULTRIX_STRINGS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9589 aUltrix_StringsTests, apzUltrix_StringsPatch, 0 },
9590
4b60eb3b
JDA
9591 { zUltrix_Strings2Name, zUltrix_Strings2List,
9592 apzUltrix_Strings2Machs,
9593 ULTRIX_STRINGS2_TEST_CT, FD_MACH_ONLY,
9594 aUltrix_Strings2Tests, apzUltrix_Strings2Patch, 0 },
9595
9596 { zUltrix_Sys_TimeName, zUltrix_Sys_TimeList,
9597 apzUltrix_Sys_TimeMachs,
9598 ULTRIX_SYS_TIME_TEST_CT, FD_MACH_ONLY,
9599 aUltrix_Sys_TimeTests, apzUltrix_Sys_TimePatch, 0 },
9600
9601 { zUltrix_UnistdName, zUltrix_UnistdList,
9602 apzUltrix_UnistdMachs,
9603 ULTRIX_UNISTD_TEST_CT, FD_MACH_ONLY,
9604 aUltrix_UnistdTests, apzUltrix_UnistdPatch, 0 },
9605
30102605
RH
9606 { zUnicosmk_RestrictName, zUnicosmk_RestrictList,
9607 apzUnicosmk_RestrictMachs,
9608 UNICOSMK_RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
9609 aUnicosmk_RestrictTests, apzUnicosmk_RestrictPatch, 0 },
9610
b5e20633
BK
9611 { zUw7_Byteorder_FixName, zUw7_Byteorder_FixList,
9612 apzUw7_Byteorder_FixMachs,
9613 UW7_BYTEORDER_FIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9614 aUw7_Byteorder_FixTests, apzUw7_Byteorder_FixPatch, 0 },
86765ca0 9615
06bbab1b 9616 { zVa_I960_MacroName, zVa_I960_MacroList,
f5b105ca 9617 apzVa_I960_MacroMachs,
5d7d28c2 9618 VA_I960_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9619 aVa_I960_MacroTests, apzVa_I960_MacroPatch, 0 },
06bbab1b
BK
9620
9621 { zVoid_NullName, zVoid_NullList,
f5b105ca 9622 apzVoid_NullMachs,
5d7d28c2 9623 VOID_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9624 aVoid_NullTests, apzVoid_NullPatch, 0 },
06bbab1b
BK
9625
9626 { zVxworks_Gcc_ProblemName, zVxworks_Gcc_ProblemList,
f5b105ca 9627 apzVxworks_Gcc_ProblemMachs,
06bbab1b 9628 VXWORKS_GCC_PROBLEM_TEST_CT, FD_MACH_ONLY,
37082e6d 9629 aVxworks_Gcc_ProblemTests, apzVxworks_Gcc_ProblemPatch, 0 },
06bbab1b
BK
9630
9631 { zVxworks_Needs_VxtypesName, zVxworks_Needs_VxtypesList,
f5b105ca 9632 apzVxworks_Needs_VxtypesMachs,
5d7d28c2 9633 VXWORKS_NEEDS_VXTYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9634 aVxworks_Needs_VxtypesTests, apzVxworks_Needs_VxtypesPatch, 0 },
06bbab1b
BK
9635
9636 { zVxworks_Needs_VxworksName, zVxworks_Needs_VxworksList,
f5b105ca 9637 apzVxworks_Needs_VxworksMachs,
06bbab1b 9638 VXWORKS_NEEDS_VXWORKS_TEST_CT, FD_MACH_ONLY,
37082e6d 9639 aVxworks_Needs_VxworksTests, apzVxworks_Needs_VxworksPatch, 0 },
06bbab1b
BK
9640
9641 { zVxworks_TimeName, zVxworks_TimeList,
f5b105ca 9642 apzVxworks_TimeMachs,
5d7d28c2 9643 VXWORKS_TIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9644 aVxworks_TimeTests, apzVxworks_TimePatch, 0 },
06bbab1b 9645
cace4f93
MM
9646 { zWindiss_Math1Name, zWindiss_Math1List,
9647 apzWindiss_Math1Machs,
9648 WINDISS_MATH1_TEST_CT, FD_MACH_ONLY,
9649 aWindiss_Math1Tests, apzWindiss_Math1Patch, 0 },
9650
9651 { zWindiss_Math2Name, zWindiss_Math2List,
9652 apzWindiss_Math2Machs,
9653 WINDISS_MATH2_TEST_CT, FD_MACH_ONLY,
9654 aWindiss_Math2Tests, apzWindiss_Math2Patch, 0 },
9655
9656 { zWindiss_ValistName, zWindiss_ValistList,
9657 apzWindiss_ValistMachs,
9658 WINDISS_VALIST_TEST_CT, FD_MACH_ONLY,
9659 aWindiss_ValistTests, apzWindiss_ValistPatch, 0 },
9660
06bbab1b 9661 { zX11_ClassName, zX11_ClassList,
f5b105ca 9662 apzX11_ClassMachs,
c1fd153e 9663 X11_CLASS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9664 aX11_ClassTests, apzX11_ClassPatch, 0 },
06bbab1b
BK
9665
9666 { zX11_Class_UsageName, zX11_Class_UsageList,
f5b105ca 9667 apzX11_Class_UsageMachs,
5d7d28c2 9668 X11_CLASS_USAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9669 aX11_Class_UsageTests, apzX11_Class_UsagePatch, 0 },
06bbab1b
BK
9670
9671 { zX11_NewName, zX11_NewList,
f5b105ca 9672 apzX11_NewMachs,
06bbab1b 9673 X11_NEW_TEST_CT, FD_MACH_ONLY,
37082e6d 9674 aX11_NewTests, apzX11_NewPatch, 0 },
06bbab1b
BK
9675
9676 { zX11_SprintfName, zX11_SprintfList,
f5b105ca 9677 apzX11_SprintfMachs,
5d7d28c2 9678 X11_SPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
37082e6d 9679 aX11_SprintfTests, apzX11_SprintfPatch, 0 }
06bbab1b 9680};