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