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