OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [fixincludes/] [fixincl.x] - Blame information for rev 834

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

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

powered by: WebSVN 2.1.0

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