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