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