OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [fixincludes/] [fixincl.x] - Blame information for rev 473

Go to most recent revision | Details | Compare with Previous | View Log

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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.