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