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