This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Fixinc Question: Patching Irix's limits.h


I want to prevent the gcc test case
gcc/testsuite/gcc.c-torture/execute/920730-1t.c from failing on
mips-sgi-irix6.5.  The case fails because Irix6.5's limits.h has a
"const" that "-traditional" does not understand.

The easiest solution is to use gcc/fixinc/inclhack.def to substitute
"extern __const" for "extern const" in limits.h (actually
objdir/gcc/include/syslimits.h).  Neither Mark Mitchell nor I have
been successful using autogen on mips-sgi-irix6.5 or i686-pc-linux-gnu
(Linux 2.2.16-3).  What are we doing wrong?

1. We modify gcc/fixinc/inclhack.def by adding 

    /*
     *  Non-traditional "const" declaration in Irix's limits.h.
     */
    fix = {
	hackname	= irix_limits_const;
	files	= limits.h;
	select	= "^extern const ";
	sed		= "s/extern const /extern __const /";
    };

before the ending "/*EOF*/" comment.

2. Testing the code yields a complaint that autogen is not installed.
The problem is that gcc/fixinc/genfixes uses "autogen4", not
"autogen".  Why is this?

3. Adding a symbolic link from "autogen4" to "autogen" still does not
solve the problem because gcc/fixinc/fixincl.x does not incorporate
the change to inclhack.def.

What is going wrong?


Attached are Irix6.5's
1) /usr/include/limits.h
2) the resulting syslimits.h
3) the patch to inclhack.def
4) the resulting gcc/fixinc/fixincl.x
5) a transcript showing testing

Thank you for your help,
Jeffrey D. Oldham
oldham@codesourcery.com
/*
 *
 * Copyright 1992,1993, 1994,1995 Silicon Graphics, Inc.
 * All Rights Reserved.
 *
 * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
 * the contents of this file may not be disclosed to third parties, copied or
 * duplicated in any form, in whole or in part, without the prior written
 * permission of Silicon Graphics, Inc.
 *
 * RESTRICTED RIGHTS LEGEND:
 * Use, duplication or disclosure by the Government is subject to restrictions
 * as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
 * and Computer Software clause at DFARS 252.227-7013, and/or in similar or
 * successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
 * rights reserved under the Copyright Laws of the United States.
 */
/*	Copyright (c) 1988 AT&T	*/
/*	  All Rights Reserved  	*/

/*	THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T	*/
/*	The copyright notice above does not evidence any   	*/
/*	actual or intended publication of such source code.	*/
#ifndef __LIMITS_H__
#define __LIMITS_H__

#ident "$Revision: 7.41 $"
#include <standards.h>
#include <sgidefs.h>

#ifdef __cplusplus
extern "C" {
#endif
/*
 * Note - this header is an ANSI/POSIX/POSIX2/POSIX1b/POSIX1c header. Carefull!
 */

/*
 * ANSI limits
 */
#define CHAR_BIT        8       	/* max # of bits in a "char" */
#define CHAR_MAX        UCHAR_MAX	/* max value of a "char" */
#define CHAR_MIN        0		/* min value of a "char" */
#define INT_MAX         2147483647      /* max value of an "int" */
#define INT_MIN         (-2147483647-1) /* min value of an "int" */
#define SCHAR_MIN	(-128)		/* min value of a "signed char" */
#define SCHAR_MAX	127		/* max value of a "signed char" */
#define UCHAR_MAX	255U		/* max value of an "unsigned char" */

#define MB_LEN_MAX	5


#define SHRT_MIN        (-32768)        /* min value of a "short int" */
#define SHRT_MAX        32767           /* max value of a "short int" */
#define USHRT_MAX       65535U		/* max value of an "unsigned short int" */
#define UINT_MAX        4294967295U	/* max value of an "unsigned int" */
#if (_MIPS_SZLONG == 32)
#define LONG_MIN        (-2147483647-1)		/* min value of a "long int" */
#define LONG_MAX        2147483647      /* max value of a "long int" */
#define ULONG_MAX       4294967295U 	/* max value of an "unsigned long int" */
#endif
#if (_MIPS_SZLONG == 64)
#define LONG_MIN        (-9223372036854775807L-1L) /* min value of a "long int" */
#define LONG_MAX        9223372036854775807L /* max value of a "long int" */
#define ULONG_MAX       18446744073709551615LU /* max value of an "unsigned long int" */
#endif

#if (_SGIAPI || _ABIAPI) && _NO_ANSIMODE
#define LONGLONG_MIN        (-9223372036854775807LL-1LL) /* min "long long int" */
#define LONGLONG_MAX        9223372036854775807LL /* max "long long int" */
#define ULONGLONG_MAX       18446744073709551615LLU /* max "unsigned long long int" */
#endif


#if _POSIX90 && _NO_ANSIMODE
/* POSIX90 conformant definitions - An implementation may define
 * other symbols which reflect the actual implementation. Alternate
 * definitions may not be as restrictive as the POSIX definitions.
 */

#define _POSIX_ARG_MAX		4096
#define _POSIX_CHILD_MAX	   6
#define _POSIX_LINK_MAX		   8
#define _POSIX_MAX_CANON	 255
#define _POSIX_MAX_INPUT	 255
#define _POSIX_NAME_MAX		  14
#define _POSIX_NGROUPS_MAX	   0
#define _POSIX_OPEN_MAX		  16
#define _POSIX_PATH_MAX		 255
#define _POSIX_PIPE_BUF		 512
#define _POSIX_SSIZE_MAX       32767
#define _POSIX_STREAM_MAX          8
#define _POSIX_TZNAME_MAX          3
#endif /* _POSIX90 */

#if _POSIX2 && _NO_ANSIMODE
/*
 * POSIX 1003.2 (shell/commands) additions
 */
#define _POSIX2_BC_BASE_MAX     99
#define _POSIX2_BC_DIM_MAX      2048
#define _POSIX2_BC_SCALE_MAX    99
#define _POSIX2_BC_STRING_MAX   1000
#define _POSIX2_COLL_WEIGHTS_MAX        2
#define _POSIX2_EXPR_NEST_MAX   32
#define _POSIX2_LINE_MAX        2048
#define _POSIX2_RE_DUP_MAX      255

#endif /* _POSIX2 */

#if (_POSIX93 || _XOPEN5) && _NO_ANSIMODE
/*
 * POSIX 1003.1b (real-time) additions
 */
#define _POSIX_RTSIG_MAX	8	/* max RT sigs for application use */
#define _POSIX_SIGQUEUE_MAX	32	/* max # of queued signals pending */
#define _POSIX_MQ_OPEN_MAX	8	/* num of msg queues per process */
#define _POSIX_MQ_PRIO_MAX	32	/* num of message priorities */
#define _POSIX_SEM_NSEMS_MAX	256	/* num of semaphores per process */
#define _POSIX_SEM_VALUE_MAX	32767	/* max value for a  semaphore */
#define _POSIX_DELAYTIMER_MAX	32	/* num of timer expiration overruns */
#define _POSIX_TIMER_MAX	32	/* num of timers per process */
#define _POSIX_CLOCKRES_MIN	20000000/* min CLOCK_REALTIME res in ns */
#endif /* _POSIX93 || _XOPEN5 && _NO_ANSIMODE */

#if (_POSIX93 || _ABIAPI || _XOPEN5) && _NO_ANSIMODE
#define _POSIX_AIO_MAX		1	/* num of oustanding async I/O ops */
#define _POSIX_AIO_LISTIO_MAX	2	/* num of I/O operations per lio */
#define _ABI_AIO_XFER_MAX	(128 *1024)
#endif /* _POSIX93 || _ABIAPI || _XOPEN5 */

#if (_XOPEN4UX || _XOPEN5) && _NO_ANSIMODE
#define _XOPEN_IOV_MAX	16
#endif /* _XOPEN4UX || _XOPEN5 */

#if _POSIX1C && _NO_ANSIMODE
#define _POSIX_LOGIN_NAME_MAX	9	/* length in bytes incl. null of name */
#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4
#define _POSIX_THREAD_KEYS_MAX	128	/* # data keys per process */
#define _POSIX_THREAD_THREADS_MAX 64	/* # threads per process */
#define _POSIX_TTY_NAME_MAX	9
#endif /* _POSIX1C */

/*
 * Real limits. Some are only available via sysconf/pathconf
 */
#if _POSIX90 && _NO_ANSIMODE
/*
 * ARG_MAX
 * CHILD_MAX
 * LINK_MAX
 * NAME_MAX
 * OPEN_MAX
 * PATH_MAX
 * STREAM_MAX
 * 	- are available only thru sysconf/pathconf
 */
#define NGROUPS_MAX	16		/* max number of groups for a user */
#define TZNAME_MAX      8               /* max # bytes for time zone name */

#ifndef	PIPE_BUF	
#define	PIPE_BUF	10240		/* max # bytes atomic in pipe write */
#endif

#ifndef MAX_CANON
#define MAX_CANON	256
#endif

#ifndef MAX_INPUT
#define	MAX_INPUT	512
#endif

#define SSIZE_MAX	LONG_MAX /* yes, its an int but this does the
				  * right thing for 64 bits */

#endif /* _POSIX90 */

#if _POSIX2 && _NO_ANSIMODE
#define BC_BASE_MAX		99
#define BC_DIM_MAX		2048
#define BC_SCALE_MAX		99
#define BC_STRING_MAX		1000
#define COLL_WEIGHTS_MAX	2
#define EXPR_NEST_MAX		32
#define LINE_MAX		2048
#define RE_DUP_MAX		255
#endif /* _POSIX2 */

#if _XOPEN4  && _NO_ANSIMODE
/* 
 * X/Open 4 additions
 *
 * ATEXIT_MAX
 * IOV_MAX
 * PAGESIZE
 * PAGE_SIZE
 *	- are available via sysconf/pathconf
 */
#define	PASS_MAX	32		/* max # of characters in a password */

#define CHARCLASS_NAME_MAX	14
#define	NL_ARGMAX	9		/* max value of "digit" in calls to the
					 * NLS printf() and scanf() */
#define	NL_LANGMAX	14		/* max # of bytes in a LANG name */
#define	NL_NMAX		1		/* max # of bytes in N-to-1 mapping characters */
/* also defined in nl_types.h */
#ifndef NL_SETMAX
#define NL_SETMAX	255
#define NL_MSGMAX	32767
#define NL_TEXTMAX	2048
#endif
#ifndef	NZERO		
#define	NZERO		20		/* default process priority */
#endif
#ifndef TMP_MAX
#define TMP_MAX		17576	/* 26 * 26 * 26 */
#endif

#define	WORD_BIT	32		/* # of bits in a "word" or "int" */
#if (_MIPS_SZLONG == 32)
#define	LONG_BIT	32		/* # of bits in a "long" */
#endif
#if (_MIPS_SZLONG == 64)
#define	LONG_BIT	64		/* # of bits in a "long" */
#endif

#define	DBL_DIG		15		/* digits of precision of a "double" */
#define	DBL_MAX		1.7976931348623157E+308  /* max decimal value of a "double"*/
#define	DBL_MIN		2.2250738585072014E-308  /* min decimal value of a "double"*/
#define	FLT_DIG		6		/* digits of precision of a "float" */
#ifdef __STDC__
#define	FLT_MAX		3.40282347E+38F /* max decimal value of a "float" */
#define	FLT_MIN		1.17549435E-38F /* min decimal value of a "float" */
#else
#define	FLT_MAX		3.40282347E+38  /* max decimal value of a "float" */
#define	FLT_MIN		1.17549435E-38  /* min decimal value of a "float" */
#endif /* __STDC__ */

#endif /* _XOPEN4 */

#if _SGIAPI && _NO_ANSIMODE
/*
 * Note that for POSIX/XPG3: ARG_MAX, CHILD_MAX, NAME_MAX, OPEN_MAX, PATH_MAX,
 * come LINK_MAX only from sysconf/pathconf, but for default environment we
 * put in backward compatibility defines
 */
#ifndef ARG_MAX
#define ARG_MAX		5120
#endif
#define	CHILD_MAX	25		/* max # of processes per user id */
#define	NAME_MAX	255		/* max # of characters in a file name */
#ifndef OPEN_MAX
#define	OPEN_MAX	20		/* max files a process can have open */
#endif
#ifndef PATH_MAX
#define	PATH_MAX	1024		/* max # of characters in a path name */
#endif
#define	LINK_MAX	30000		/* max # of links to a single file */

/*
 * Note that PID_MAX is for compatibility with SVID2 and is not a reliable
 * guide of a maximum pid value once the value is 'frozen' into a binary.
 * This definition will be deleted in a future release of Irix
 */
#define	PID_MAX		0x7fffffff	/* max value for a process ID */

#ifndef	PIPE_MAX
#define	PIPE_MAX	10240		/* max # bytes written to pipe in a wrt */
#endif

#define	STD_BLK		1024		/* # bytes in a physical I/O block */
#define	UID_MAX		0x7fffffff 	/* max value for a user or group ID */
#define	USI_MAX		UINT_MAX	/* max decimal value of an "unsigned" */

#if !defined(SYS_NMLN)
#define SYS_NMLN	257	/* SVR4.0 size of utsname elements */
				/* also defined in sys/utsname.h */
#endif /* !SYS_NMLN */

#ifndef CLK_TCK
#define CLK_TCK	sysconf(3)	/* clock ticks per second */
				/* 3 is _SC_CLK_TCK */
#endif

#define LOGNAME_MAX	8	/* max # of characters in a login name */

#endif	/* _SGIAPI */

#if _SGIAPI && _NO_ANSIMODE
#if (defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS))
#ifndef HUGE_VAL	
#ifndef __TYPEDEF_H_VAL
#define __TYPEDEF_H_VAL
typedef union _h_val {
#if (_MIPS_SZLONG == 32)
        unsigned long i[2];
#endif
#if (_MIPS_SZLONG == 64)
        __uint32_t i[2];
#endif
        double d;
} _h_val;
#endif /* __TYPEDEF_H_VAL */
extern const _h_val __huge_val;
#define HUGE_VAL __huge_val.d
#endif /* !HUGE_VAL */
#endif /* _LANGUAGE_C || _LANGUAGE_C_PLUS_PLUS */
#endif /* _SGIAPI */

#ifdef __cplusplus
}
#endif
#endif /* !__LIMITS_H__ */
/*  DO NOT EDIT THIS FILE.

    It has been auto-edited by fixincludes from:

	"/usr/include/limits.h"

    This had to be done to correct non-standard usages in the
    original, manufacturer supplied header file.  */

/*
 *
 * Copyright 1992,1993, 1994,1995 Silicon Graphics, Inc.
 * All Rights Reserved.
 *
 * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
 * the contents of this file may not be disclosed to third parties, copied or
 * duplicated in any form, in whole or in part, without the prior written
 * permission of Silicon Graphics, Inc.
 *
 * RESTRICTED RIGHTS LEGEND:
 * Use, duplication or disclosure by the Government is subject to restrictions
 * as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
 * and Computer Software clause at DFARS 252.227-7013, and/or in similar or
 * successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
 * rights reserved under the Copyright Laws of the United States.
 */
/*	Copyright (c) 1988 AT&T	*/
/*	  All Rights Reserved  	*/

/*	THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T	*/
/*	The copyright notice above does not evidence any   	*/
/*	actual or intended publication of such source code.	*/
#ifndef __LIMITS_H__
#define __LIMITS_H__

#ident "$Revision: 7.41 $"
#include <standards.h>
#include <sgidefs.h>

#ifdef __cplusplus
extern "C" {
#endif
/*
 * Note - this header is an ANSI/POSIX/POSIX2/POSIX1b/POSIX1c header. Carefull!
 */

/*
 * ANSI limits
 */
#define CHAR_BIT        8       	/* max # of bits in a "char" */
#define CHAR_MAX        UCHAR_MAX	/* max value of a "char" */
#define CHAR_MIN        0		/* min value of a "char" */
#define INT_MAX         2147483647      /* max value of an "int" */
#define INT_MIN         (-2147483647-1) /* min value of an "int" */
#define SCHAR_MIN	(-128)		/* min value of a "signed char" */
#define SCHAR_MAX	127		/* max value of a "signed char" */
#define UCHAR_MAX	255U		/* max value of an "unsigned char" */

#define MB_LEN_MAX	5


#define SHRT_MIN        (-32768)        /* min value of a "short int" */
#define SHRT_MAX        32767           /* max value of a "short int" */
#define USHRT_MAX       65535U		/* max value of an "unsigned short int" */
#define UINT_MAX        4294967295U	/* max value of an "unsigned int" */
#if (_MIPS_SZLONG == 32)
#define LONG_MIN        (-2147483647-1)		/* min value of a "long int" */
#define LONG_MAX        2147483647      /* max value of a "long int" */
#define ULONG_MAX       4294967295U 	/* max value of an "unsigned long int" */
#endif
#if (_MIPS_SZLONG == 64)
#define LONG_MIN        (-9223372036854775807L-1L) /* min value of a "long int" */
#define LONG_MAX        9223372036854775807L /* max value of a "long int" */
#define ULONG_MAX       18446744073709551615LU /* max value of an "unsigned long int" */
#endif

#if (_SGIAPI || _ABIAPI) && _NO_ANSIMODE
#define LONGLONG_MIN        (-9223372036854775807LL-1LL) /* min "long long int" */
#define LONGLONG_MAX        9223372036854775807LL /* max "long long int" */
#define ULONGLONG_MAX       18446744073709551615LLU /* max "unsigned long long int" */
#endif


#if _POSIX90 && _NO_ANSIMODE
/* POSIX90 conformant definitions - An implementation may define
 * other symbols which reflect the actual implementation. Alternate
 * definitions may not be as restrictive as the POSIX definitions.
 */

#define _POSIX_ARG_MAX		4096
#define _POSIX_CHILD_MAX	   6
#define _POSIX_LINK_MAX		   8
#define _POSIX_MAX_CANON	 255
#define _POSIX_MAX_INPUT	 255
#define _POSIX_NAME_MAX		  14
#define _POSIX_NGROUPS_MAX	   0
#define _POSIX_OPEN_MAX		  16
#define _POSIX_PATH_MAX		 255
#define _POSIX_PIPE_BUF		 512
#define _POSIX_SSIZE_MAX       32767
#define _POSIX_STREAM_MAX          8
#define _POSIX_TZNAME_MAX          3
#endif /* _POSIX90 */

#if _POSIX2 && _NO_ANSIMODE
/*
 * POSIX 1003.2 (shell/commands) additions
 */
#define _POSIX2_BC_BASE_MAX     99
#define _POSIX2_BC_DIM_MAX      2048
#define _POSIX2_BC_SCALE_MAX    99
#define _POSIX2_BC_STRING_MAX   1000
#define _POSIX2_COLL_WEIGHTS_MAX        2
#define _POSIX2_EXPR_NEST_MAX   32
#define _POSIX2_LINE_MAX        2048
#define _POSIX2_RE_DUP_MAX      255

#endif /* _POSIX2 */

#if (_POSIX93 || _XOPEN5) && _NO_ANSIMODE
/*
 * POSIX 1003.1b (real-time) additions
 */
#define _POSIX_RTSIG_MAX	8	/* max RT sigs for application use */
#define _POSIX_SIGQUEUE_MAX	32	/* max # of queued signals pending */
#define _POSIX_MQ_OPEN_MAX	8	/* num of msg queues per process */
#define _POSIX_MQ_PRIO_MAX	32	/* num of message priorities */
#define _POSIX_SEM_NSEMS_MAX	256	/* num of semaphores per process */
#define _POSIX_SEM_VALUE_MAX	32767	/* max value for a  semaphore */
#define _POSIX_DELAYTIMER_MAX	32	/* num of timer expiration overruns */
#define _POSIX_TIMER_MAX	32	/* num of timers per process */
#define _POSIX_CLOCKRES_MIN	20000000/* min CLOCK_REALTIME res in ns */
#endif /* _POSIX93 || _XOPEN5 && _NO_ANSIMODE */

#if (_POSIX93 || _ABIAPI || _XOPEN5) && _NO_ANSIMODE
#define _POSIX_AIO_MAX		1	/* num of oustanding async I/O ops */
#define _POSIX_AIO_LISTIO_MAX	2	/* num of I/O operations per lio */
#define _ABI_AIO_XFER_MAX	(128 *1024)
#endif /* _POSIX93 || _ABIAPI || _XOPEN5 */

#if (_XOPEN4UX || _XOPEN5) && _NO_ANSIMODE
#define _XOPEN_IOV_MAX	16
#endif /* _XOPEN4UX || _XOPEN5 */

#if _POSIX1C && _NO_ANSIMODE
#define _POSIX_LOGIN_NAME_MAX	9	/* length in bytes incl. null of name */
#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4
#define _POSIX_THREAD_KEYS_MAX	128	/* # data keys per process */
#define _POSIX_THREAD_THREADS_MAX 64	/* # threads per process */
#define _POSIX_TTY_NAME_MAX	9
#endif /* _POSIX1C */

/*
 * Real limits. Some are only available via sysconf/pathconf
 */
#if _POSIX90 && _NO_ANSIMODE
/*
 * ARG_MAX
 * CHILD_MAX
 * LINK_MAX
 * NAME_MAX
 * OPEN_MAX
 * PATH_MAX
 * STREAM_MAX
 * 	- are available only thru sysconf/pathconf
 */
#define NGROUPS_MAX	16		/* max number of groups for a user */
#define TZNAME_MAX      8               /* max # bytes for time zone name */

#ifndef	PIPE_BUF	
#define	PIPE_BUF	10240		/* max # bytes atomic in pipe write */
#endif

#ifndef MAX_CANON
#define MAX_CANON	256
#endif

#ifndef MAX_INPUT
#define	MAX_INPUT	512
#endif

#define SSIZE_MAX	LONG_MAX /* yes, its an int but this does the
				  * right thing for 64 bits */

#endif /* _POSIX90 */

#if _POSIX2 && _NO_ANSIMODE
#define BC_BASE_MAX		99
#define BC_DIM_MAX		2048
#define BC_SCALE_MAX		99
#define BC_STRING_MAX		1000
#define COLL_WEIGHTS_MAX	2
#define EXPR_NEST_MAX		32
#define LINE_MAX		2048
#define RE_DUP_MAX		255
#endif /* _POSIX2 */

#if _XOPEN4  && _NO_ANSIMODE
/* 
 * X/Open 4 additions
 *
 * ATEXIT_MAX
 * IOV_MAX
 * PAGESIZE
 * PAGE_SIZE
 *	- are available via sysconf/pathconf
 */
#define	PASS_MAX	32		/* max # of characters in a password */

#define CHARCLASS_NAME_MAX	14
#define	NL_ARGMAX	9		/* max value of "digit" in calls to the
					 * NLS printf() and scanf() */
#define	NL_LANGMAX	14		/* max # of bytes in a LANG name */
#define	NL_NMAX		1		/* max # of bytes in N-to-1 mapping characters */
/* also defined in nl_types.h */
#ifndef NL_SETMAX
#define NL_SETMAX	255
#define NL_MSGMAX	32767
#define NL_TEXTMAX	2048
#endif
#ifndef	NZERO		
#define	NZERO		20		/* default process priority */
#endif
#ifndef TMP_MAX
#define TMP_MAX		17576	/* 26 * 26 * 26 */
#endif

#define	WORD_BIT	32		/* # of bits in a "word" or "int" */
#if (_MIPS_SZLONG == 32)
#define	LONG_BIT	32		/* # of bits in a "long" */
#endif
#if (_MIPS_SZLONG == 64)
#define	LONG_BIT	64		/* # of bits in a "long" */
#endif

#ifndef DBL_DIG
#define	DBL_DIG		15		/* digits of precision of a "double" */
#endif
#ifndef DBL_MAX
#define	DBL_MAX		1.7976931348623157E+308  /* max decimal value of a "double"*/
#endif
#ifndef DBL_MIN
#define	DBL_MIN		2.2250738585072014E-308  /* min decimal value of a "double"*/
#endif
#ifndef FLT_DIG
#define	FLT_DIG		6		/* digits of precision of a "float" */
#endif
#ifdef __STDC__
#ifndef FLT_MAX
#define	FLT_MAX		3.40282347E+38F /* max decimal value of a "float" */
#endif
#ifndef FLT_MIN
#define	FLT_MIN		1.17549435E-38F /* min decimal value of a "float" */
#endif
#else
#ifndef FLT_MAX
#define	FLT_MAX		3.40282347E+38  /* max decimal value of a "float" */
#endif
#ifndef FLT_MIN
#define	FLT_MIN		1.17549435E-38  /* min decimal value of a "float" */
#endif
#endif /* __STDC__ */

#endif /* _XOPEN4 */

#if _SGIAPI && _NO_ANSIMODE
/*
 * Note that for POSIX/XPG3: ARG_MAX, CHILD_MAX, NAME_MAX, OPEN_MAX, PATH_MAX,
 * come LINK_MAX only from sysconf/pathconf, but for default environment we
 * put in backward compatibility defines
 */
#ifndef ARG_MAX
#define ARG_MAX		5120
#endif
#define	CHILD_MAX	25		/* max # of processes per user id */
#define	NAME_MAX	255		/* max # of characters in a file name */
#ifndef OPEN_MAX
#define	OPEN_MAX	20		/* max files a process can have open */
#endif
#ifndef PATH_MAX
#define	PATH_MAX	1024		/* max # of characters in a path name */
#endif
#define	LINK_MAX	30000		/* max # of links to a single file */

/*
 * Note that PID_MAX is for compatibility with SVID2 and is not a reliable
 * guide of a maximum pid value once the value is 'frozen' into a binary.
 * This definition will be deleted in a future release of Irix
 */
#define	PID_MAX		0x7fffffff	/* max value for a process ID */

#ifndef	PIPE_MAX
#define	PIPE_MAX	10240		/* max # bytes written to pipe in a wrt */
#endif

#define	STD_BLK		1024		/* # bytes in a physical I/O block */
#define	UID_MAX		0x7fffffff 	/* max value for a user or group ID */
#define	USI_MAX		UINT_MAX	/* max decimal value of an "unsigned" */

#if !defined(SYS_NMLN)
#define SYS_NMLN	257	/* SVR4.0 size of utsname elements */
				/* also defined in sys/utsname.h */
#endif /* !SYS_NMLN */

#ifndef CLK_TCK
#define CLK_TCK	sysconf(3)	/* clock ticks per second */
				/* 3 is _SC_CLK_TCK */
#endif

#define LOGNAME_MAX	8	/* max # of characters in a login name */

#endif	/* _SGIAPI */

#if _SGIAPI && _NO_ANSIMODE
#if (defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS))
#ifndef HUGE_VAL	
#ifndef __TYPEDEF_H_VAL
#define __TYPEDEF_H_VAL
typedef union _h_val {
#if (_MIPS_SZLONG == 32)
        unsigned long i[2];
#endif
#if (_MIPS_SZLONG == 64)
        __uint32_t i[2];
#endif
        double d;
} _h_val;
#endif /* __TYPEDEF_H_VAL */
extern const _h_val __huge_val;
#define HUGE_VAL __huge_val.d
#endif /* !HUGE_VAL */
#endif /* _LANGUAGE_C || _LANGUAGE_C_PLUS_PLUS */
#endif /* _SGIAPI */

#ifdef __cplusplus
}
#endif
#endif /* !__LIMITS_H__ */
Index: inclhack.def
===================================================================
RCS file: /cvs/gcc/egcs/gcc/fixinc/inclhack.def,v
retrieving revision 1.99
diff -c -p -r1.99 inclhack.def
*** inclhack.def	2000/12/14 06:11:11	1.99
--- inclhack.def	2001/01/13 19:05:25
*************** fix = {
*** 3121,3124 ****
--- 3121,3134 ----
      test_text = "extern char *\tsprintf();";
  };
  
+ /*
+  *  Non-traditional "const" declaration in Irix's limits.h.
+  */
+ fix = {
+     hackname	= irix_limits_const;
+     files	= limits.h;
+     select	= "^extern const ";
+     sed		= "s/extern const /extern __const /";
+ };
+ 
  /*EOF*/
/*
 *  DO NOT EDIT THIS FILE - it has been generated
 *
 * Install modified versions of certain ANSI-incompatible system header
 * files which are fixed to work correctly with ANSI C and placed in a
 * directory that GNU C will search.
 *
 * This file contains 130 fixup descriptions.
 *
 * See README-fixinc for more information.
 *
 *  inclhack copyright (c) 1998, 1999, 2000
 *  The Free Software Foundation, Inc.
 *
 *  inclhack is free software.
 *  
 *  You may redistribute it and/or modify it under the terms of the
 *  GNU General Public License, as published by the Free Software
 *  Foundation; either version 2, or (at your option) any later version.
 *  
 *  inclhack is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 *  See the GNU General Public License for more details.
 *  
 *  You should have received a copy of the GNU General Public License
 *  along with inclhack.  See the file "COPYING".  If not,
 *  write to:  The Free Software Foundation, Inc.,
 *             59 Temple Place - Suite 330,
 *             Boston,  MA  02111-1307, USA.
 */

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aaa_Ki_Iface fix
 */
#define AAA_KI_IFACE_FIXIDX              0
tSCC zAaa_Ki_IfaceName[] =
     "AAA_ki_iface";

/*
 *  File name selection pattern
 */
tSCC zAaa_Ki_IfaceList[] =
  "|sys/ki_iface.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAaa_Ki_IfaceMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAaa_Ki_IfaceSelect0[] =
       "These definitions are for HP Internal developers";

#define    AAA_KI_IFACE_TEST_CT  1
static tTestDesc aAaa_Ki_IfaceTests[] = {
  { TT_EGREP,    zAaa_Ki_IfaceSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aaa_Ki_Iface
 */
static const char* apzAaa_Ki_IfacePatch[] = {
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aaa_Ki fix
 */
#define AAA_KI_FIXIDX                    1
tSCC zAaa_KiName[] =
     "AAA_ki";

/*
 *  File name selection pattern
 */
tSCC zAaa_KiList[] =
  "|sys/ki.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAaa_KiMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAaa_KiSelect0[] =
       "11.00 HP-UX LP64";

#define    AAA_KI_TEST_CT  1
static tTestDesc aAaa_KiTests[] = {
  { TT_EGREP,    zAaa_KiSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aaa_Ki
 */
static const char* apzAaa_KiPatch[] = {
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aaa_Ki_Calls fix
 */
#define AAA_KI_CALLS_FIXIDX              2
tSCC zAaa_Ki_CallsName[] =
     "AAA_ki_calls";

/*
 *  File name selection pattern
 */
tSCC zAaa_Ki_CallsList[] =
  "|sys/ki_calls.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAaa_Ki_CallsMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAaa_Ki_CallsSelect0[] =
       "kthread_create_caller_t";

#define    AAA_KI_CALLS_TEST_CT  1
static tTestDesc aAaa_Ki_CallsTests[] = {
  { TT_EGREP,    zAaa_Ki_CallsSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aaa_Ki_Calls
 */
static const char* apzAaa_Ki_CallsPatch[] = {
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aaa_Ki_Defs fix
 */
#define AAA_KI_DEFS_FIXIDX               3
tSCC zAaa_Ki_DefsName[] =
     "AAA_ki_defs";

/*
 *  File name selection pattern
 */
tSCC zAaa_Ki_DefsList[] =
  "|sys/ki_defs.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAaa_Ki_DefsMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAaa_Ki_DefsSelect0[] =
       "Kernel Instrumentation Definitions";

#define    AAA_KI_DEFS_TEST_CT  1
static tTestDesc aAaa_Ki_DefsTests[] = {
  { TT_EGREP,    zAaa_Ki_DefsSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aaa_Ki_Defs
 */
static const char* apzAaa_Ki_DefsPatch[] = {
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aaa_Bad_Fixes fix
 */
#define AAA_BAD_FIXES_FIXIDX             4
tSCC zAaa_Bad_FixesName[] =
     "AAA_bad_fixes";

/*
 *  File name selection pattern
 */
tSCC zAaa_Bad_FixesList[] =
  "|sundev/ipi_error.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAaa_Bad_FixesMachs (const char**)NULL
#define AAA_BAD_FIXES_TEST_CT  0
#define aAaa_Bad_FixesTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Aaa_Bad_Fixes
 */
static const char* apzAaa_Bad_FixesPatch[] = {
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aaa_Time fix
 */
#define AAA_TIME_FIXIDX                  5
tSCC zAaa_TimeName[] =
     "AAA_time";

/*
 *  File name selection pattern
 */
tSCC zAaa_TimeList[] =
  "|sys/time.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAaa_TimeMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAaa_TimeSelect0[] =
       "11.0 and later representation of ki time";

#define    AAA_TIME_TEST_CT  1
static tTestDesc aAaa_TimeTests[] = {
  { TT_EGREP,    zAaa_TimeSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aaa_Time
 */
static const char* apzAaa_TimePatch[] = {
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aab_Dgux_Int_Varargs fix
 */
#define AAB_DGUX_INT_VARARGS_FIXIDX      6
tSCC zAab_Dgux_Int_VarargsName[] =
     "AAB_dgux_int_varargs";

/*
 *  File name selection pattern
 */
tSCC zAab_Dgux_Int_VarargsList[] =
  "|_int_varargs.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAab_Dgux_Int_VarargsMachs (const char**)NULL
#define AAB_DGUX_INT_VARARGS_TEST_CT  0
#define aAab_Dgux_Int_VarargsTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Aab_Dgux_Int_Varargs
 */
static const char* apzAab_Dgux_Int_VarargsPatch[] = {
"#ifndef __INT_VARARGS_H\n\
#define __INT_VARARGS_H\n\
\n\
/************************************************************************/\n\
/* _INT_VARARGS.H - Define the common stuff for varargs/stdarg/stdio.   */\n\
/************************************************************************/\n\
\n\
/*\n\
** This file is a DG internal header.  Never include this\n\
** file directly.\n\
*/\n\
\n\
#ifndef ___int_features_h\n\
#include &lt;sys/_int_features.h&gt;\n\
#endif\n\
\n\
#if !(defined(_VA_LIST) || defined(_VA_LIST_))\n\
#define _VA_LIST\n\
#define _VA_LIST_\n\
\n\
#ifdef __LINT__\n\
\n\
#ifdef __STDC__\n\
typedef void * va_list;\n\
#else\n\
typedef char * va_list;\n\
#endif\n\
\n\
#else\n\
#if _M88K_ANY\n\
\n\
#if defined(__DCC__)\n\
\n\
typedef struct {\n\
      int     next_arg;\n\
      int     *mem_ptr;\n\
      int     *reg_ptr;\n\
} va_list;\n\
\n\
#else  /* ! defined(__DCC__) */\n\
\n\
typedef struct {\n\
      int  __va_arg;       /* argument number */\n\
      int *__va_stk;       /* start of args passed on stack */\n\
      int *__va_reg;       /* start of args passed in regs */\n\
} va_list;\n\
\n\
#endif  /* ! defined(__DCC__) */\n\
\n\
#elif _IX86_ANY\n\
\n\
#if defined(__GNUC__) || defined(__STDC__)\n\
typedef void * va_list;\n\
#else\n\
typedef char * va_list;\n\
#endif\n\
\n\
#endif  /*  _IX86_ANY */\n\
\n\
#endif /* __LINT__ */\n\
#endif /*  !(defined(_VA_LIST) || defined(_VA_LIST_)) */\n\
#endif /*  #ifndef __INT_VARARGS_H  */\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aab_Fd_Zero_Asm_Posix_Types_H fix
 */
#define AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX 7
tSCC zAab_Fd_Zero_Asm_Posix_Types_HName[] =
     "AAB_fd_zero_asm_posix_types_h";

/*
 *  File name selection pattern
 */
tSCC zAab_Fd_Zero_Asm_Posix_Types_HList[] =
  "|asm/posix_types.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzAab_Fd_Zero_Asm_Posix_Types_HMachs[] = {
        "i[34567]86-*-linux*",
        (const char*)NULL };

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass0[] =
       "} while";

#define    AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT  1
static tTestDesc aAab_Fd_Zero_Asm_Posix_Types_HTests[] = {
  { TT_NEGREP,   zAab_Fd_Zero_Asm_Posix_Types_HBypass0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aab_Fd_Zero_Asm_Posix_Types_H
 */
static const char* apzAab_Fd_Zero_Asm_Posix_Types_HPatch[] = {
"/* This file fixes a bug in the __FD_ZERO macro\n\
   for older versions of the Linux kernel. */\n\
#ifndef _POSIX_TYPES_H_WRAPPER\n\
#include <features.h>\n\
 #include_next <asm/posix_types.h>\n\
\n\
#if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
#undef __FD_ZERO\n\
#define __FD_ZERO(fdsetp) \\\n\
  do { \\\n\
    int __d0, __d1; \\\n\
\t\t__asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
\t\t\t: \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
\t\t\t: \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
\t\t\t  \"1\" ((__kernel_fd_set *) (fdsetp)) :\"memory\"); \\\n\
  } while (0)\n\
#endif\n\
\n\
#define _POSIX_TYPES_H_WRAPPER\n\
#endif /* _POSIX_TYPES_H_WRAPPER */\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aab_Fd_Zero_Gnu_Types_H fix
 */
#define AAB_FD_ZERO_GNU_TYPES_H_FIXIDX   8
tSCC zAab_Fd_Zero_Gnu_Types_HName[] =
     "AAB_fd_zero_gnu_types_h";

/*
 *  File name selection pattern
 */
tSCC zAab_Fd_Zero_Gnu_Types_HList[] =
  "|gnu/types.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzAab_Fd_Zero_Gnu_Types_HMachs[] = {
        "i[34567]86-*-linux*",
        (const char*)NULL };
#define AAB_FD_ZERO_GNU_TYPES_H_TEST_CT  0
#define aAab_Fd_Zero_Gnu_Types_HTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Aab_Fd_Zero_Gnu_Types_H
 */
static const char* apzAab_Fd_Zero_Gnu_Types_HPatch[] = {
"/* This file fixes a bug in the __FD_ZERO macro present in glibc 1.x. */\n\
#ifndef _TYPES_H_WRAPPER\n\
#include <features.h>\n\
 #include_next <gnu/types.h>\n\
\n\
#if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
#undef __FD_ZERO\n\
# define __FD_ZERO(fdsetp) \\\n\
  do { \\\n\
    int __d0, __d1; \\\n\
\t__asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
        \t: \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
        \t: \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
\t\t  \"1\" ((__fd_set *) (fdsetp)) :\"memory\"); \\\n\
  } while (0)\n\
#endif\n\
\n\
#define _TYPES_H_WRAPPER\n\
#endif /* _TYPES_H_WRAPPER */\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aab_Fd_Zero_Selectbits_H fix
 */
#define AAB_FD_ZERO_SELECTBITS_H_FIXIDX  9
tSCC zAab_Fd_Zero_Selectbits_HName[] =
     "AAB_fd_zero_selectbits_h";

/*
 *  File name selection pattern
 */
tSCC zAab_Fd_Zero_Selectbits_HList[] =
  "|selectbits.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzAab_Fd_Zero_Selectbits_HMachs[] = {
        "i[34567]86-*-linux*",
        (const char*)NULL };
#define AAB_FD_ZERO_SELECTBITS_H_TEST_CT  0
#define aAab_Fd_Zero_Selectbits_HTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Aab_Fd_Zero_Selectbits_H
 */
static const char* apzAab_Fd_Zero_Selectbits_HPatch[] = {
"/* This file fixes a bug in the __FD_ZERO macro present in glibc 2.0.x. */\n\
#ifndef _SELECTBITS_H_WRAPPER\n\
#include <features.h>\n\
 #include_next <selectbits.h>\n\
\n\
#if defined(__FD_ZERO) && defined(__GLIBC__) \\\n\
\t&& defined(__GLIBC_MINOR__) && __GLIBC__ == 2 \\\n\
\t&& __GLIBC_MINOR__ == 0\n\
#undef __FD_ZERO\n\
#define __FD_ZERO(fdsetp) \\\n\
  do { \\\n\
    int __d0, __d1; \\\n\
  __asm__ __volatile__ (\"cld; rep; stosl\" \\\n\
                        : \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
                        : \"a\" (0), \"0\" (sizeof (__fd_set) \\\n\
                                        / sizeof (__fd_mask)), \\\n\
                          \"1\" ((__fd_mask *) (fdsetp)) \\\n\
                        : \"memory\"); \\\n\
  } while (0)\n\
#endif\n\
\n\
#define _SELECTBITS_H_WRAPPER\n\
#endif /* _SELECTBITS_H_WRAPPER */\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aab_Sun_Memcpy fix
 */
#define AAB_SUN_MEMCPY_FIXIDX            10
tSCC zAab_Sun_MemcpyName[] =
     "AAB_sun_memcpy";

/*
 *  File name selection pattern
 */
tSCC zAab_Sun_MemcpyList[] =
  "|memory.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAab_Sun_MemcpyMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAab_Sun_MemcpySelect0[] =
       "/\\*\t@\\(#\\)(head/memory.h\t50.1\t |memory\\.h 1\\.[2-4] 8./../.. SMI; from S5R2 1\\.2\t)\\*/";

#define    AAB_SUN_MEMCPY_TEST_CT  1
static tTestDesc aAab_Sun_MemcpyTests[] = {
  { TT_EGREP,    zAab_Sun_MemcpySelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aab_Sun_Memcpy
 */
static const char* apzAab_Sun_MemcpyPatch[] = {
"/* This file was generated by fixincludes */\n\
#ifndef __memory_h__\n\
#define __memory_h__\n\
\n\
#ifdef __STDC__\n\
extern void *memccpy();\n\
extern void *memchr();\n\
extern void *memcpy();\n\
extern void *memset();\n\
#else\n\
extern char *memccpy();\n\
extern char *memchr();\n\
extern char *memcpy();\n\
extern char *memset();\n\
#endif /* __STDC__ */\n\
\n\
extern int memcmp();\n\
\n\
#endif /* __memory_h__ */\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aab_Svr4_Replace_Byteorder fix
 */
#define AAB_SVR4_REPLACE_BYTEORDER_FIXIDX 11
tSCC zAab_Svr4_Replace_ByteorderName[] =
     "AAB_svr4_replace_byteorder";

/*
 *  File name selection pattern
 */
tSCC zAab_Svr4_Replace_ByteorderList[] =
  "|sys/byteorder.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzAab_Svr4_Replace_ByteorderMachs[] = {
        "*-*-sysv4*",
        "i[34567]86-*-sysv5*",
        "i[34567]86-*-udk*",
        "i[34567]86-*-solaris2.[0-4]",
        "powerpcle-*-solaris2.[0-4]",
        "sparc-*-solaris2.[0-4]",
        (const char*)NULL };
#define AAB_SVR4_REPLACE_BYTEORDER_TEST_CT  0
#define aAab_Svr4_Replace_ByteorderTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Aab_Svr4_Replace_Byteorder
 */
static const char* apzAab_Svr4_Replace_ByteorderPatch[] = {
"#ifndef _SYS_BYTEORDER_H\n\
#define _SYS_BYTEORDER_H\n\
\n\
/* Functions to convert `short' and `long' quantities from host byte order\n\
   to (internet) network byte order (i.e. big-endian).\n\
\n\
   Written by Ron Guilmette (rfg@ncd.com).\n\
\n\
   This isn't actually used by GCC.  It is installed by fixinc.svr4.\n\
\n\
   For big-endian machines these functions are essentially no-ops.\n\
\n\
   For little-endian machines, we define the functions using specialized\n\
   asm sequences in cases where doing so yields better code (e.g. i386).  */\n\
\n\
#if !defined (__GNUC__) && !defined (__GNUG__)\n\
#error You lose!  This file is only useful with GNU compilers.\n\
#endif\n\
\n\
#ifndef __BYTE_ORDER__\n\
/* Byte order defines.  These are as defined on UnixWare 1.1, but with\n\
   double underscores added at the front and back.  */\n\
#define __LITTLE_ENDIAN__   1234\n\
#define __BIG_ENDIAN__      4321\n\
#define __PDP_ENDIAN__      3412\n\
#endif\n\
\n\
#ifdef __STDC__\n\
static __inline__ unsigned long htonl (unsigned long);\n\
static __inline__ unsigned short htons (unsigned int);\n\
static __inline__ unsigned long ntohl (unsigned long);\n\
static __inline__ unsigned short ntohs (unsigned int);\n\
#endif /* defined (__STDC__) */\n\
\n\
#if defined (__i386__)\n\
\n\
#ifndef __BYTE_ORDER__\n\
#define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
#endif\n\
\n\
/* Convert a host long to a network long.  */\n\
\n\
/* We must use a new-style function definition, so that this will also\n\
   be valid for C++.  */\n\
static __inline__ unsigned long\n\
htonl (unsigned long __arg)\n\
{\n\
  register unsigned long __result;\n\
\n\
  __asm__ (\"xchg%B0 %b0,%h0\n\
\tror%L0 $16,%0\n\
\txchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
  return __result;\n\
}\n\
\n\
/* Convert a host short to a network short.  */\n\
\n\
static __inline__ unsigned short\n\
htons (unsigned int __arg)\n\
{\n\
  register unsigned short __result;\n\
\n\
  __asm__ (\"xchg%B0 %b0,%h0\" : \"=q\" (__result) : \"0\" (__arg));\n\
  return __result;\n\
}\n\
\n\
#elif ((defined (__i860__) && !defined (__i860_big_endian__))\t\\\n\
       || defined (__ns32k__) || defined (__vax__)\t\t\\\n\
       || defined (__spur__) || defined (__arm__))\n\
\n\
#ifndef __BYTE_ORDER__\n\
#define __BYTE_ORDER__ __LITTLE_ENDIAN__\n\
#endif\n\
\n\
/* For other little-endian machines, using C code is just as efficient as\n\
   using assembly code.  */\n\
\n\
/* Convert a host long to a network long.  */\n\
\n\
static __inline__ unsigned long\n\
htonl (unsigned long __arg)\n\
{\n\
  register unsigned long __result;\n\
\n\
  __result = (__arg >> 24) & 0x000000ff;\n\
  __result |= (__arg >> 8) & 0x0000ff00;\n\
  __result |= (__arg << 8) & 0x00ff0000;\n\
  __result |= (__arg << 24) & 0xff000000;\n\
  return __result;\n\
}\n\
\n\
/* Convert a host short to a network short.  */\n\
\n\
static __inline__ unsigned short\n\
htons (unsigned int __arg)\n\
{\n\
  register unsigned short __result;\n\
\n\
  __result = (__arg << 8) & 0xff00;\n\
  __result |= (__arg >> 8) & 0x00ff;\n\
  return __result;\n\
}\n\
\n\
#else /* must be a big-endian machine */\n\
\n\
#ifndef __BYTE_ORDER__\n\
#define __BYTE_ORDER__ __BIG_ENDIAN__\n\
#endif\n\
\n\
/* Convert a host long to a network long.  */\n\
\n\
static __inline__ unsigned long\n\
htonl (unsigned long __arg)\n\
{\n\
  return __arg;\n\
}\n\
\n\
/* Convert a host short to a network short.  */\n\
\n\
static __inline__ unsigned short\n\
htons (unsigned int __arg)\n\
{\n\
  return __arg;\n\
}\n\
\n\
#endif /* big-endian */\n\
\n\
/* Convert a network long to a host long.  */\n\
\n\
static __inline__ unsigned long\n\
ntohl (unsigned long __arg)\n\
{\n\
  return htonl (__arg);\n\
}\n\
\n\
/* Convert a network short to a host short.  */\n\
\n\
static __inline__ unsigned short\n\
ntohs (unsigned int __arg)\n\
{\n\
  return htons (__arg);\n\
}\n\
#endif\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aab_Ultrix_Ansi_Compat fix
 */
#define AAB_ULTRIX_ANSI_COMPAT_FIXIDX    12
tSCC zAab_Ultrix_Ansi_CompatName[] =
     "AAB_ultrix_ansi_compat";

/*
 *  File name selection pattern
 */
tSCC zAab_Ultrix_Ansi_CompatList[] =
  "|ansi_compat.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAab_Ultrix_Ansi_CompatMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAab_Ultrix_Ansi_CompatSelect0[] =
       "ULTRIX";

#define    AAB_ULTRIX_ANSI_COMPAT_TEST_CT  1
static tTestDesc aAab_Ultrix_Ansi_CompatTests[] = {
  { TT_EGREP,    zAab_Ultrix_Ansi_CompatSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aab_Ultrix_Ansi_Compat
 */
static const char* apzAab_Ultrix_Ansi_CompatPatch[] = {
"/* This file intentionally left blank.  */\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aab_Ultrix_Limits fix
 */
#define AAB_ULTRIX_LIMITS_FIXIDX         13
tSCC zAab_Ultrix_LimitsName[] =
     "AAB_ultrix_limits";

/*
 *  File name selection pattern
 */
tSCC zAab_Ultrix_LimitsList[] =
  "|limits.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzAab_Ultrix_LimitsMachs[] = {
        "*-*-ultrix4.3",
        (const char*)NULL };
#define AAB_ULTRIX_LIMITS_TEST_CT  0
#define aAab_Ultrix_LimitsTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Aab_Ultrix_Limits
 */
static const char* apzAab_Ultrix_LimitsPatch[] = {
"/*\t@(#)limits.h\t\t\t\t*/\n\
/* This file was generated by fixincludes\t*/\n\
#ifndef _LIMITS_INCLUDED\n\
#define _LIMITS_INCLUDED\n\
#include <sys/limits.h>\n\
#endif /* _LIMITS_INCLUDED */\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aab_Ultrix_Memory fix
 */
#define AAB_ULTRIX_MEMORY_FIXIDX         14
tSCC zAab_Ultrix_MemoryName[] =
     "AAB_ultrix_memory";

/*
 *  File name selection pattern
 */
tSCC zAab_Ultrix_MemoryList[] =
  "|memory.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzAab_Ultrix_MemoryMachs[] = {
        "*-*-ultrix4.3",
        (const char*)NULL };
#define AAB_ULTRIX_MEMORY_TEST_CT  0
#define aAab_Ultrix_MemoryTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Aab_Ultrix_Memory
 */
static const char* apzAab_Ultrix_MemoryPatch[] = {
"/*\t@(#)memory.h\t\t\t\t*/\n\
/* This file was generated by fixincludes\t*/\n\
#ifndef _MEMORY_INCLUDED\n\
#define _MEMORY_INCLUDED\n\
#include <strings.h>\n\
#endif /* _MEMORY_INCLUDED */\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aab_Ultrix_String fix
 */
#define AAB_ULTRIX_STRING_FIXIDX         15
tSCC zAab_Ultrix_StringName[] =
     "AAB_ultrix_string";

/*
 *  File name selection pattern
 */
tSCC zAab_Ultrix_StringList[] =
  "|string.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzAab_Ultrix_StringMachs[] = {
        "*-*-ultrix4.3",
        (const char*)NULL };
#define AAB_ULTRIX_STRING_TEST_CT  0
#define aAab_Ultrix_StringTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Aab_Ultrix_String
 */
static const char* apzAab_Ultrix_StringPatch[] = {
"/*\t@(#)string.h\t\t\t\t*/\n\
/* This file was generated by fixincludes\t*/\n\
#ifndef _STRING_INCLUDED\n\
#define _STRING_INCLUDED\n\
#include <strings.h>\n\
#endif /* _STRING_INCLUDED */\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aix_Pthread fix
 */
#define AIX_PTHREAD_FIXIDX               16
tSCC zAix_PthreadName[] =
     "aix_pthread";

/*
 *  File name selection pattern
 */
tSCC zAix_PthreadList[] =
  "|pthread.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAix_PthreadMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAix_PthreadSelect0[] =
       "(#define [A-Za-z_0-9]+)(\\\\\n\
[^A-Za-z_0-9 \t\n\
(])";

#define    AIX_PTHREAD_TEST_CT  1
static tTestDesc aAix_PthreadTests[] = {
  { TT_EGREP,    zAix_PthreadSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aix_Pthread
 */
static const char* apzAix_PthreadPatch[] = {
    "format",
    "%1 %2",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aix_Sysmachine fix
 */
#define AIX_SYSMACHINE_FIXIDX            17
tSCC zAix_SysmachineName[] =
     "aix_sysmachine";

/*
 *  File name selection pattern
 */
tSCC zAix_SysmachineList[] =
  "|sys/machine.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAix_SysmachineMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAix_SysmachineSelect0[] =
       "\\\\ +\n";

#define    AIX_SYSMACHINE_TEST_CT  1
static tTestDesc aAix_SysmachineTests[] = {
  { TT_EGREP,    zAix_SysmachineSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aix_Sysmachine
 */
static const char* apzAix_SysmachinePatch[] = {
    "format",
    "\\\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aix_Syswait fix
 */
#define AIX_SYSWAIT_FIXIDX               18
tSCC zAix_SyswaitName[] =
     "aix_syswait";

/*
 *  File name selection pattern
 */
tSCC zAix_SyswaitList[] =
  "|sys/wait.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAix_SyswaitMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAix_SyswaitSelect0[] =
       "^extern pid_t wait3\\(\\);\n";
tSCC zAix_SyswaitSelect1[] =
       "bos325,";

#define    AIX_SYSWAIT_TEST_CT  2
static tTestDesc aAix_SyswaitTests[] = {
  { TT_EGREP,    zAix_SyswaitSelect0, (regex_t*)NULL },
  { TT_EGREP,    zAix_SyswaitSelect1, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aix_Syswait
 */
static const char* apzAix_SyswaitPatch[] = {
    "format",
    "struct rusage;\n\
%0",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aix_Volatile fix
 */
#define AIX_VOLATILE_FIXIDX              19
tSCC zAix_VolatileName[] =
     "aix_volatile";

/*
 *  File name selection pattern
 */
tSCC zAix_VolatileList[] =
  "|sys/signal.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAix_VolatileMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAix_VolatileSelect0[] =
       "typedef volatile int sig_atomic_t";

#define    AIX_VOLATILE_TEST_CT  1
static tTestDesc aAix_VolatileTests[] = {
  { TT_EGREP,    zAix_VolatileSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aix_Volatile
 */
static const char* apzAix_VolatilePatch[] = {
    "format",
    "typedef int sig_atomic_t",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Alpha_Getopt fix
 */
#define ALPHA_GETOPT_FIXIDX              20
tSCC zAlpha_GetoptName[] =
     "alpha_getopt";

/*
 *  File name selection pattern
 */
tSCC zAlpha_GetoptList[] =
  "|stdio.h|stdlib.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAlpha_GetoptMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAlpha_GetoptSelect0[] =
       "getopt\\(int, char \\*\\[\\], *char \\*\\)";

#define    ALPHA_GETOPT_TEST_CT  1
static tTestDesc aAlpha_GetoptTests[] = {
  { TT_EGREP,    zAlpha_GetoptSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Alpha_Getopt
 */
static const char* apzAlpha_GetoptPatch[] = {
    "format",
    "getopt(int, char *const[], const char *)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Alpha_Parens fix
 */
#define ALPHA_PARENS_FIXIDX              21
tSCC zAlpha_ParensName[] =
     "alpha_parens";

/*
 *  File name selection pattern
 */
tSCC zAlpha_ParensList[] =
  "|sym.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAlpha_ParensMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAlpha_ParensSelect0[] =
       "#ifndef\\(__mips64\\)";

#define    ALPHA_PARENS_TEST_CT  1
static tTestDesc aAlpha_ParensTests[] = {
  { TT_EGREP,    zAlpha_ParensSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Alpha_Parens
 */
static const char* apzAlpha_ParensPatch[] = {
    "format",
    "#ifndef __mips64",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Alpha_Sbrk fix
 */
#define ALPHA_SBRK_FIXIDX                22
tSCC zAlpha_SbrkName[] =
     "alpha_sbrk";

/*
 *  File name selection pattern
 */
tSCC zAlpha_SbrkList[] =
  "|unistd.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAlpha_SbrkMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAlpha_SbrkSelect0[] =
       "char[ \t]*\\*[\t ]*sbrk[ \t]*\\(";

#define    ALPHA_SBRK_TEST_CT  1
static tTestDesc aAlpha_SbrkTests[] = {
  { TT_EGREP,    zAlpha_SbrkSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Alpha_Sbrk
 */
static const char* apzAlpha_SbrkPatch[] = {
    "format",
    "void *sbrk(",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Arm_Norcroft_Hint fix
 */
#define ARM_NORCROFT_HINT_FIXIDX         23
tSCC zArm_Norcroft_HintName[] =
     "arm_norcroft_hint";

/*
 *  File name selection pattern
 */
tSCC zArm_Norcroft_HintList[] =
  "|X11/Intrinsic.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzArm_Norcroft_HintMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zArm_Norcroft_HintSelect0[] =
       "___type p_type";

#define    ARM_NORCROFT_HINT_TEST_CT  1
static tTestDesc aArm_Norcroft_HintTests[] = {
  { TT_EGREP,    zArm_Norcroft_HintSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Arm_Norcroft_Hint
 */
static const char* apzArm_Norcroft_HintPatch[] = {
    "format",
    "p_type",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Arm_Wchar fix
 */
#define ARM_WCHAR_FIXIDX                 24
tSCC zArm_WcharName[] =
     "arm_wchar";

/*
 *  File name selection pattern
 */
tSCC zArm_WcharList[] =
  "|stdlib.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzArm_WcharMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zArm_WcharSelect0[] =
       "#[ \t]*define[ \t]*__wchar_t";

#define    ARM_WCHAR_TEST_CT  1
static tTestDesc aArm_WcharTests[] = {
  { TT_EGREP,    zArm_WcharSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Arm_Wchar
 */
static const char* apzArm_WcharPatch[] = {
    "format",
    "%1_GCC_WCHAR_T",
    "(#[ \t]*(ifndef|define)[ \t]+)__wchar_t",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Aux_Asm fix
 */
#define AUX_ASM_FIXIDX                   25
tSCC zAux_AsmName[] =
     "aux_asm";

/*
 *  File name selection pattern
 */
tSCC zAux_AsmList[] =
  "|sys/param.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAux_AsmMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAux_AsmSelect0[] =
       "#ifndef NOINLINE";

#define    AUX_ASM_TEST_CT  1
static tTestDesc aAux_AsmTests[] = {
  { TT_EGREP,    zAux_AsmSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Aux_Asm
 */
static const char* apzAux_AsmPatch[] = {
    "format",
    "#if !defined(NOINLINE) && !defined(__GNUC__)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Avoid_Bool_Define fix
 */
#define AVOID_BOOL_DEFINE_FIXIDX         26
tSCC zAvoid_Bool_DefineName[] =
     "avoid_bool_define";

/*
 *  File name selection pattern
 */
tSCC zAvoid_Bool_DefineList[] =
  "|curses.h|curses_colr/curses.h|term.h|tinfo.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAvoid_Bool_DefineMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAvoid_Bool_DefineSelect0[] =
       "#[ \t]*define[ \t]+bool[ \t]";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zAvoid_Bool_DefineBypass0[] =
       "we must use the C\\+\\+ compiler's type";

#define    AVOID_BOOL_DEFINE_TEST_CT  2
static tTestDesc aAvoid_Bool_DefineTests[] = {
  { TT_NEGREP,   zAvoid_Bool_DefineBypass0, (regex_t*)NULL },
  { TT_EGREP,    zAvoid_Bool_DefineSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Avoid_Bool_Define
 */
static const char* apzAvoid_Bool_DefinePatch[] = {
    "format",
    "#ifndef __cplusplus\n\
%0\n\
#endif",
    "^[ \t]*#[ \t]*define[ \t]+bool[ \t].*",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Avoid_Bool_Type fix
 */
#define AVOID_BOOL_TYPE_FIXIDX           27
tSCC zAvoid_Bool_TypeName[] =
     "avoid_bool_type";

/*
 *  File name selection pattern
 */
tSCC zAvoid_Bool_TypeList[] =
  "|curses.h|curses_colr/curses.h|term.h|tinfo.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzAvoid_Bool_TypeMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAvoid_Bool_TypeSelect0[] =
       "^[ \t]*typedef[ \t].*[ \t]bool[ \t]*;";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zAvoid_Bool_TypeBypass0[] =
       "we must use the C\\+\\+ compiler's type";

#define    AVOID_BOOL_TYPE_TEST_CT  2
static tTestDesc aAvoid_Bool_TypeTests[] = {
  { TT_NEGREP,   zAvoid_Bool_TypeBypass0, (regex_t*)NULL },
  { TT_EGREP,    zAvoid_Bool_TypeSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Avoid_Bool_Type
 */
static const char* apzAvoid_Bool_TypePatch[] = {
    "format",
    "#ifndef __cplusplus\n\
%0\n\
#endif",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Avoid_Wchar_T_Type fix
 */
#define AVOID_WCHAR_T_TYPE_FIXIDX        28
tSCC zAvoid_Wchar_T_TypeName[] =
     "avoid_wchar_t_type";

/*
 *  File name selection pattern
 */
#define zAvoid_Wchar_T_TypeList (char*)NULL
/*
 *  Machine/OS name selection pattern
 */
#define apzAvoid_Wchar_T_TypeMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zAvoid_Wchar_T_TypeSelect0[] =
       "^[ \t]*typedef[ \t].*[ \t]wchar_t[ \t]*;";

#define    AVOID_WCHAR_T_TYPE_TEST_CT  1
static tTestDesc aAvoid_Wchar_T_TypeTests[] = {
  { TT_EGREP,    zAvoid_Wchar_T_TypeSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Avoid_Wchar_T_Type
 */
static const char* apzAvoid_Wchar_T_TypePatch[] = {
    "format",
    "#ifndef __cplusplus\n\
%0\n\
#endif",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Bad_Lval fix
 */
#define BAD_LVAL_FIXIDX                  29
tSCC zBad_LvalName[] =
     "bad_lval";

/*
 *  File name selection pattern
 */
tSCC zBad_LvalList[] =
  "|libgen.h|dirent.h|ftw.h|grp.h|ndbm.h|pthread.h|pwd.h|signal.h|standards.h|stdlib.h|string.h|stropts.h|time.h|unistd.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzBad_LvalMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zBad_LvalSelect0[] =
       "^[ \t]*#[ \t]*pragma[ \t]+extern_prefix";

#define    BAD_LVAL_TEST_CT  1
static tTestDesc aBad_LvalTests[] = {
  { TT_EGREP,    zBad_LvalSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Bad_Lval
 */
static const char* apzBad_LvalPatch[] = { "sed",
    "-e", "s/^[ \t]*#[ \t]*define[ \t][ \t]*\\([^(]*\\)\\(([^)]*)\\)[ \t]*\\(_.*\\)\\1\\2[ \t]*$/#define \\1 \\3\\1/",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Bad_Struct_Term fix
 */
#define BAD_STRUCT_TERM_FIXIDX           30
tSCC zBad_Struct_TermName[] =
     "bad_struct_term";

/*
 *  File name selection pattern
 */
tSCC zBad_Struct_TermList[] =
  "|curses.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzBad_Struct_TermMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zBad_Struct_TermSelect0[] =
       "^[ \t]*typedef[ \t]+struct[ \t]+term[ \t]*;";

#define    BAD_STRUCT_TERM_TEST_CT  1
static tTestDesc aBad_Struct_TermTests[] = {
  { TT_EGREP,    zBad_Struct_TermSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Bad_Struct_Term
 */
static const char* apzBad_Struct_TermPatch[] = {
    "format",
    "struct term;",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Badquote fix
 */
#define BADQUOTE_FIXIDX                  31
tSCC zBadquoteName[] =
     "badquote";

/*
 *  File name selection pattern
 */
tSCC zBadquoteList[] =
  "|sundev/vuid_event.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzBadquoteMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zBadquoteSelect0[] =
       "doesn't";

#define    BADQUOTE_TEST_CT  1
static tTestDesc aBadquoteTests[] = {
  { TT_EGREP,    zBadquoteSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Badquote
 */
static const char* apzBadquotePatch[] = {
    "format",
    "does not",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Broken_Assert_Stdio fix
 */
#define BROKEN_ASSERT_STDIO_FIXIDX       32
tSCC zBroken_Assert_StdioName[] =
     "broken_assert_stdio";

/*
 *  File name selection pattern
 */
tSCC zBroken_Assert_StdioList[] =
  "|assert.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzBroken_Assert_StdioMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zBroken_Assert_StdioSelect0[] =
       "stderr";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zBroken_Assert_StdioBypass0[] =
       "include.*stdio\\.h";

#define    BROKEN_ASSERT_STDIO_TEST_CT  2
static tTestDesc aBroken_Assert_StdioTests[] = {
  { TT_NEGREP,   zBroken_Assert_StdioBypass0, (regex_t*)NULL },
  { TT_EGREP,    zBroken_Assert_StdioSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Broken_Assert_Stdio
 */
static const char* apzBroken_Assert_StdioPatch[] = {
    "wrap",
    "#include <stdio.h>\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Broken_Assert_Stdlib fix
 */
#define BROKEN_ASSERT_STDLIB_FIXIDX      33
tSCC zBroken_Assert_StdlibName[] =
     "broken_assert_stdlib";

/*
 *  File name selection pattern
 */
tSCC zBroken_Assert_StdlibList[] =
  "|assert.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzBroken_Assert_StdlibMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zBroken_Assert_StdlibSelect0[] =
       "exit *\\(|abort *\\(";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zBroken_Assert_StdlibBypass0[] =
       "include.*stdlib\\.h";

#define    BROKEN_ASSERT_STDLIB_TEST_CT  2
static tTestDesc aBroken_Assert_StdlibTests[] = {
  { TT_NEGREP,   zBroken_Assert_StdlibBypass0, (regex_t*)NULL },
  { TT_EGREP,    zBroken_Assert_StdlibSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Broken_Assert_Stdlib
 */
static const char* apzBroken_Assert_StdlibPatch[] = {
    "wrap",
    "#ifdef __cplusplus\n\
#include <stdlib.h>\n\
#endif\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Broken_Cabs fix
 */
#define BROKEN_CABS_FIXIDX               34
tSCC zBroken_CabsName[] =
     "broken_cabs";

/*
 *  File name selection pattern
 */
tSCC zBroken_CabsList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzBroken_CabsMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zBroken_CabsSelect0[] =
       "^extern[ \\t]+double[ \\t]+cabs";

#define    BROKEN_CABS_TEST_CT  1
static tTestDesc aBroken_CabsTests[] = {
  { TT_EGREP,    zBroken_CabsSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Broken_Cabs
 */
static const char* apzBroken_CabsPatch[] = {
    "format",
    "",
    "^extern[ \t]+double[ \t]+cabs\\((struct dbl_hypot|)\\);",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Ctrl_Quotes_Def fix
 */
#define CTRL_QUOTES_DEF_FIXIDX           35
tSCC zCtrl_Quotes_DefName[] =
     "ctrl_quotes_def";

/*
 *  File name selection pattern
 */
#define zCtrl_Quotes_DefList (char*)NULL
/*
 *  Machine/OS name selection pattern
 */
#define apzCtrl_Quotes_DefMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zCtrl_Quotes_DefSelect0[] =
       "define[ \t]+[A-Z0-9_]+CTRL\\([a-zA-Z][,)]";

#define    CTRL_QUOTES_DEF_TEST_CT  1
static tTestDesc aCtrl_Quotes_DefTests[] = {
  { TT_EGREP,    zCtrl_Quotes_DefSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Ctrl_Quotes_Def
 */
static const char* apzCtrl_Quotes_DefPatch[] = {
    "char_macro_def",
    "CTRL",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Ctrl_Quotes_Use fix
 */
#define CTRL_QUOTES_USE_FIXIDX           36
tSCC zCtrl_Quotes_UseName[] =
     "ctrl_quotes_use";

/*
 *  File name selection pattern
 */
#define zCtrl_Quotes_UseList (char*)NULL
/*
 *  Machine/OS name selection pattern
 */
#define apzCtrl_Quotes_UseMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zCtrl_Quotes_UseSelect0[] =
       "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+CTRL[ \t]*\\( *[^,']";

#define    CTRL_QUOTES_USE_TEST_CT  1
static tTestDesc aCtrl_Quotes_UseTests[] = {
  { TT_EGREP,    zCtrl_Quotes_UseSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Ctrl_Quotes_Use
 */
static const char* apzCtrl_Quotes_UsePatch[] = {
    "char_macro_use",
    "CTRL",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Cxx_Unready fix
 */
#define CXX_UNREADY_FIXIDX               37
tSCC zCxx_UnreadyName[] =
     "cxx_unready";

/*
 *  File name selection pattern
 */
tSCC zCxx_UnreadyList[] =
  "|sys/mman.h|rpc/types.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzCxx_UnreadyMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zCxx_UnreadySelect0[] =
       "[^#]+malloc.*;";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zCxx_UnreadyBypass0[] =
       "\"C\"|__BEGIN_DECLS";

#define    CXX_UNREADY_TEST_CT  2
static tTestDesc aCxx_UnreadyTests[] = {
  { TT_NEGREP,   zCxx_UnreadyBypass0, (regex_t*)NULL },
  { TT_EGREP,    zCxx_UnreadySelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Cxx_Unready
 */
static const char* apzCxx_UnreadyPatch[] = {
    "wrap",
    "#ifdef __cplusplus\n\
extern \"C\" {\n\
#endif\n",
    "#ifdef __cplusplus\n\
}\n\
#endif\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Dec_Intern_Asm fix
 */
#define DEC_INTERN_ASM_FIXIDX            38
tSCC zDec_Intern_AsmName[] =
     "dec_intern_asm";

/*
 *  File name selection pattern
 */
tSCC zDec_Intern_AsmList[] =
  "|c_asm.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzDec_Intern_AsmMachs (const char**)NULL
#define DEC_INTERN_ASM_TEST_CT  0
#define aDec_Intern_AsmTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Dec_Intern_Asm
 */
static const char* apzDec_Intern_AsmPatch[] = { "sed",
    "-e", "/^[ \t]*float[ \t]*fasm/i\\\n\
#ifdef __DECC\n",
    "-e", "/^[ \t]*#[ \t]*pragma[ \t]*intrinsic([ \t]*dasm/a\\\n\
#endif\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Ecd_Cursor fix
 */
#define ECD_CURSOR_FIXIDX                39
tSCC zEcd_CursorName[] =
     "ecd_cursor";

/*
 *  File name selection pattern
 */
tSCC zEcd_CursorList[] =
  "|sunwindow/win_lock.h|sunwindow/win_cursor.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzEcd_CursorMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zEcd_CursorSelect0[] =
       "ecd\\.cursor";

#define    ECD_CURSOR_TEST_CT  1
static tTestDesc aEcd_CursorTests[] = {
  { TT_EGREP,    zEcd_CursorSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Ecd_Cursor
 */
static const char* apzEcd_CursorPatch[] = {
    "format",
    "ecd_cursor",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Fix_Header_Breakage fix
 */
#define FIX_HEADER_BREAKAGE_FIXIDX       40
tSCC zFix_Header_BreakageName[] =
     "fix_header_breakage";

/*
 *  File name selection pattern
 */
tSCC zFix_Header_BreakageList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzFix_Header_BreakageMachs[] = {
        "m88k-motorola-sysv3*",
        (const char*)NULL };

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zFix_Header_BreakageSelect0[] =
       "extern double floor\\(\\), ceil\\(\\), fmod\\(\\), fabs\\(\\);";

#define    FIX_HEADER_BREAKAGE_TEST_CT  1
static tTestDesc aFix_Header_BreakageTests[] = {
  { TT_EGREP,    zFix_Header_BreakageSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Fix_Header_Breakage
 */
static const char* apzFix_Header_BreakagePatch[] = {
    "format",
    "extern double floor(), ceil(), fmod(), fabs _PARAMS((double));",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Hp_Inline fix
 */
#define HP_INLINE_FIXIDX                 41
tSCC zHp_InlineName[] =
     "hp_inline";

/*
 *  File name selection pattern
 */
tSCC zHp_InlineList[] =
  "|sys/spinlock.h|machine/machparam.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzHp_InlineMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zHp_InlineSelect0[] =
       "[ \t]*#[ \t]*include[ \t]+\"\\.\\./machine/";

#define    HP_INLINE_TEST_CT  1
static tTestDesc aHp_InlineTests[] = {
  { TT_EGREP,    zHp_InlineSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Hp_Inline
 */
static const char* apzHp_InlinePatch[] = {
    "format",
    "%1<machine/%2.h>",
    "([ \t]*#[ \t]*include[ \t]+)\"\\.\\./machine/([a-z]+)\\.h\"",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Hp_Sysfile fix
 */
#define HP_SYSFILE_FIXIDX                42
tSCC zHp_SysfileName[] =
     "hp_sysfile";

/*
 *  File name selection pattern
 */
tSCC zHp_SysfileList[] =
  "|sys/file.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzHp_SysfileMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zHp_SysfileSelect0[] =
       "HPUX_SOURCE";

#define    HP_SYSFILE_TEST_CT  1
static tTestDesc aHp_SysfileTests[] = {
  { TT_EGREP,    zHp_SysfileSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Hp_Sysfile
 */
static const char* apzHp_SysfilePatch[] = {
    "format",
    "(struct file *, ...)",
    "\\(\\.\\.\\.\\)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Hpux11_Fabsf fix
 */
#define HPUX11_FABSF_FIXIDX              43
tSCC zHpux11_FabsfName[] =
     "hpux11_fabsf";

/*
 *  File name selection pattern
 */
tSCC zHpux11_FabsfList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzHpux11_FabsfMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zHpux11_FabsfSelect0[] =
       "^[ \t]*#[ \t]*define[ \t]+fabsf\\(.*";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zHpux11_FabsfBypass0[] =
       "__cplusplus";

#define    HPUX11_FABSF_TEST_CT  2
static tTestDesc aHpux11_FabsfTests[] = {
  { TT_NEGREP,   zHpux11_FabsfBypass0, (regex_t*)NULL },
  { TT_EGREP,    zHpux11_FabsfSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Hpux11_Fabsf
 */
static const char* apzHpux11_FabsfPatch[] = {
    "format",
    "#ifndef __cplusplus\n\
%0\n\
#endif",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Hpux11_Uint32_C fix
 */
#define HPUX11_UINT32_C_FIXIDX           44
tSCC zHpux11_Uint32_CName[] =
     "hpux11_uint32_c";

/*
 *  File name selection pattern
 */
tSCC zHpux11_Uint32_CList[] =
  "|inttypes.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzHpux11_Uint32_CMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zHpux11_Uint32_CSelect0[] =
       "^#define UINT32_C\\(__c\\)[ \t]*__CONCAT__\\(__CONCAT_U__\\(__c\\),l\\)";

#define    HPUX11_UINT32_C_TEST_CT  1
static tTestDesc aHpux11_Uint32_CTests[] = {
  { TT_EGREP,    zHpux11_Uint32_CSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Hpux11_Uint32_C
 */
static const char* apzHpux11_Uint32_CPatch[] = {
    "format",
    "#define UINT32_C(__c) __CONCAT__(__c,ul)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Hpux8_Bogus_Inlines fix
 */
#define HPUX8_BOGUS_INLINES_FIXIDX       45
tSCC zHpux8_Bogus_InlinesName[] =
     "hpux8_bogus_inlines";

/*
 *  File name selection pattern
 */
tSCC zHpux8_Bogus_InlinesList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzHpux8_Bogus_InlinesMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zHpux8_Bogus_InlinesSelect0[] =
       "inline";

#define    HPUX8_BOGUS_INLINES_TEST_CT  1
static tTestDesc aHpux8_Bogus_InlinesTests[] = {
  { TT_EGREP,    zHpux8_Bogus_InlinesSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Hpux8_Bogus_Inlines
 */
static const char* apzHpux8_Bogus_InlinesPatch[] = { "sed",
    "-e", "s@inline int abs(int [a-z][a-z]*) {.*}@extern \"C\" int abs(int);@",
    "-e", "s@inline double abs(double [a-z][a-z]*) {.*}@@",
    "-e", "s@inline int sqr(int [a-z][a-z]*) {.*}@@",
    "-e", "s@inline double sqr(double [a-z][a-z]*) {.*}@@",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Int_Abort_Free_And_Exit fix
 */
#define INT_ABORT_FREE_AND_EXIT_FIXIDX   46
tSCC zInt_Abort_Free_And_ExitName[] =
     "int_abort_free_and_exit";

/*
 *  File name selection pattern
 */
tSCC zInt_Abort_Free_And_ExitList[] =
  "|stdlib.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzInt_Abort_Free_And_ExitMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zInt_Abort_Free_And_ExitSelect0[] =
       "int[ \t]+(abort|free|exit)[ \t]*\\(";

#define    INT_ABORT_FREE_AND_EXIT_TEST_CT  1
static tTestDesc aInt_Abort_Free_And_ExitTests[] = {
  { TT_EGREP,    zInt_Abort_Free_And_ExitSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Int_Abort_Free_And_Exit
 */
static const char* apzInt_Abort_Free_And_ExitPatch[] = {
    "format",
    "void\t%1(",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Isc_Omits_With_Stdc fix
 */
#define ISC_OMITS_WITH_STDC_FIXIDX       47
tSCC zIsc_Omits_With_StdcName[] =
     "isc_omits_with_stdc";

/*
 *  File name selection pattern
 */
tSCC zIsc_Omits_With_StdcList[] =
  "|stdio.h|math.h|ctype.h|sys/limits.h|sys/fcntl.h|sys/dirent.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzIsc_Omits_With_StdcMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zIsc_Omits_With_StdcSelect0[] =
       "!defined\\(__STDC__\\) && !defined\\(_POSIX_SOURCE\\)";

#define    ISC_OMITS_WITH_STDC_TEST_CT  1
static tTestDesc aIsc_Omits_With_StdcTests[] = {
  { TT_EGREP,    zIsc_Omits_With_StdcSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Isc_Omits_With_Stdc
 */
static const char* apzIsc_Omits_With_StdcPatch[] = {
    "format",
    "!defined(_POSIX_SOURCE)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Io_Quotes_Def fix
 */
#define IO_QUOTES_DEF_FIXIDX             48
tSCC zIo_Quotes_DefName[] =
     "io_quotes_def";

/*
 *  File name selection pattern
 */
#define zIo_Quotes_DefList (char*)NULL
/*
 *  Machine/OS name selection pattern
 */
#define apzIo_Quotes_DefMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zIo_Quotes_DefSelect0[] =
       "define[ \t]+[A-Z0-9_]+IO[A-Z]*\\([a-zA-Z][,)]";

#define    IO_QUOTES_DEF_TEST_CT  1
static tTestDesc aIo_Quotes_DefTests[] = {
  { TT_EGREP,    zIo_Quotes_DefSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Io_Quotes_Def
 */
static const char* apzIo_Quotes_DefPatch[] = {
    "char_macro_def",
    "IO",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Io_Quotes_Use fix
 */
#define IO_QUOTES_USE_FIXIDX             49
tSCC zIo_Quotes_UseName[] =
     "io_quotes_use";

/*
 *  File name selection pattern
 */
#define zIo_Quotes_UseList (char*)NULL
/*
 *  Machine/OS name selection pattern
 */
#define apzIo_Quotes_UseMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zIo_Quotes_UseSelect0[] =
       "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+IO[A-Z]*[ \t]*\\( *[^,']";

#define    IO_QUOTES_USE_TEST_CT  1
static tTestDesc aIo_Quotes_UseTests[] = {
  { TT_EGREP,    zIo_Quotes_UseSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Io_Quotes_Use
 */
static const char* apzIo_Quotes_UsePatch[] = {
    "char_macro_use",
    "IO",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Hpux_Maxint fix
 */
#define HPUX_MAXINT_FIXIDX               50
tSCC zHpux_MaxintName[] =
     "hpux_maxint";

/*
 *  File name selection pattern
 */
tSCC zHpux_MaxintList[] =
  "|sys/param.h|values.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzHpux_MaxintMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zHpux_MaxintSelect0[] =
       "^#[ \t]*define[ \t]+MAXINT[ \t]";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zHpux_MaxintBypass0[] =
       "^#[ \t]*ifndef[ \t]+MAXINT";

/*
 *  perform the 'test' shell command - do fix on success
 */
tSCC zHpux_MaxintTest0[] =
       "-n \"`egrep '#[ \t]*define[ \t]+MAXINT[ \t]' sys/param.h`\"";

#define    HPUX_MAXINT_TEST_CT  3
static tTestDesc aHpux_MaxintTests[] = {
  { TT_TEST,     zHpux_MaxintTest0,   0 /* unused */ },
  { TT_NEGREP,   zHpux_MaxintBypass0, (regex_t*)NULL },
  { TT_EGREP,    zHpux_MaxintSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Hpux_Maxint
 */
static const char* apzHpux_MaxintPatch[] = {
    "format",
    "#ifndef MAXINT\n\
%0\n\
#endif",
    "^#[ \t]*define[ \t]+MAXINT[ \t].*",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Hpux_Systime fix
 */
#define HPUX_SYSTIME_FIXIDX              51
tSCC zHpux_SystimeName[] =
     "hpux_systime";

/*
 *  File name selection pattern
 */
tSCC zHpux_SystimeList[] =
  "|sys/time.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzHpux_SystimeMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zHpux_SystimeSelect0[] =
       "^extern struct sigevent;";

#define    HPUX_SYSTIME_TEST_CT  1
static tTestDesc aHpux_SystimeTests[] = {
  { TT_EGREP,    zHpux_SystimeSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Hpux_Systime
 */
static const char* apzHpux_SystimePatch[] = {
    "format",
    "struct sigevent;",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Ip_Missing_Semi fix
 */
#define IP_MISSING_SEMI_FIXIDX           52
tSCC zIp_Missing_SemiName[] =
     "ip_missing_semi";

/*
 *  File name selection pattern
 */
tSCC zIp_Missing_SemiList[] =
  "|netinet/ip.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzIp_Missing_SemiMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zIp_Missing_SemiSelect0[] =
       "}$";

#define    IP_MISSING_SEMI_TEST_CT  1
static tTestDesc aIp_Missing_SemiTests[] = {
  { TT_EGREP,    zIp_Missing_SemiSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Ip_Missing_Semi
 */
static const char* apzIp_Missing_SemiPatch[] = { "sed",
    "-e", "/^struct/,/^};/s/}$/};/",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Irix_Asm_Apostrophe fix
 */
#define IRIX_ASM_APOSTROPHE_FIXIDX       53
tSCC zIrix_Asm_ApostropheName[] =
     "irix_asm_apostrophe";

/*
 *  File name selection pattern
 */
tSCC zIrix_Asm_ApostropheList[] =
  "|sys/asm.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzIrix_Asm_ApostropheMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zIrix_Asm_ApostropheSelect0[] =
       "^[ \t]*#.*[Ww]e're";

#define    IRIX_ASM_APOSTROPHE_TEST_CT  1
static tTestDesc aIrix_Asm_ApostropheTests[] = {
  { TT_EGREP,    zIrix_Asm_ApostropheSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Irix_Asm_Apostrophe
 */
static const char* apzIrix_Asm_ApostrophePatch[] = {
    "format",
    "%1 are",
    "^([ \t]*#.*[Ww]e)'re",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Isc_Fmod fix
 */
#define ISC_FMOD_FIXIDX                  54
tSCC zIsc_FmodName[] =
     "isc_fmod";

/*
 *  File name selection pattern
 */
tSCC zIsc_FmodList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzIsc_FmodMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zIsc_FmodSelect0[] =
       "fmod\\(double\\)";

#define    ISC_FMOD_TEST_CT  1
static tTestDesc aIsc_FmodTests[] = {
  { TT_EGREP,    zIsc_FmodSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Isc_Fmod
 */
static const char* apzIsc_FmodPatch[] = {
    "format",
    "fmod(double, double)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Kandr_Concat fix
 */
#define KANDR_CONCAT_FIXIDX              55
tSCC zKandr_ConcatName[] =
     "kandr_concat";

/*
 *  File name selection pattern
 */
tSCC zKandr_ConcatList[] =
  "|sparc/asm_linkage.h|sun3/asm_linkage.h|sun3x/asm_linkage.h|sun4/asm_linkage.h|sun4c/asm_linkage.h|sun4m/asm_linkage.h|sun4c/debug/asm_linkage.h|sun4m/debug/asm_linkage.h|arm/as_support.h|arm/mc_type.h|arm/xcb.h|dev/chardefmac.h|dev/ps_irq.h|dev/screen.h|dev/scsi.h|sys/tty.h|Xm.acorn/XmP.h|bsd43/bsd43_.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzKandr_ConcatMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zKandr_ConcatSelect0[] =
       "/\\*\\*/";

#define    KANDR_CONCAT_TEST_CT  1
static tTestDesc aKandr_ConcatTests[] = {
  { TT_EGREP,    zKandr_ConcatSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Kandr_Concat
 */
static const char* apzKandr_ConcatPatch[] = {
    "format",
    "##",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Libc1_Ifdefd_Memx fix
 */
#define LIBC1_IFDEFD_MEMX_FIXIDX         56
tSCC zLibc1_Ifdefd_MemxName[] =
     "libc1_ifdefd_memx";

/*
 *  File name selection pattern
 */
tSCC zLibc1_Ifdefd_MemxList[] =
  "|testing.h|string.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzLibc1_Ifdefd_MemxMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zLibc1_Ifdefd_MemxSelect0[] =
       "' is a built-in function for gcc 2\\.x\\. \\*/";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zLibc1_Ifdefd_MemxBypass0[] =
       "__cplusplus";

#define    LIBC1_IFDEFD_MEMX_TEST_CT  2
static tTestDesc aLibc1_Ifdefd_MemxTests[] = {
  { TT_NEGREP,   zLibc1_Ifdefd_MemxBypass0, (regex_t*)NULL },
  { TT_EGREP,    zLibc1_Ifdefd_MemxSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Libc1_Ifdefd_Memx
 */
static const char* apzLibc1_Ifdefd_MemxPatch[] = {
    "format",
    "%1",
    "/\\* `mem...' is a built-in function for gcc 2\\.x\\. \\*/\n\
#if defined\\(__STDC__\\) && __GNUC__ < 2\n\
(/\\* .* \\*/\n\
extern [a-z_]+ mem.*(\n\
[^#].*)*;)\n\
#endif",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Limits_Ifndefs fix
 */
#define LIMITS_IFNDEFS_FIXIDX            57
tSCC zLimits_IfndefsName[] =
     "limits_ifndefs";

/*
 *  File name selection pattern
 */
tSCC zLimits_IfndefsList[] =
  "|sys/limits.h|limits.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzLimits_IfndefsMachs (const char**)NULL

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zLimits_IfndefsBypass0[] =
       "ifndef[ \t]+FLT_MIN";

#define    LIMITS_IFNDEFS_TEST_CT  1
static tTestDesc aLimits_IfndefsTests[] = {
  { TT_NEGREP,   zLimits_IfndefsBypass0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Limits_Ifndefs
 */
static const char* apzLimits_IfndefsPatch[] = {
    "format",
    "#ifndef %1\n\
%0\n\
#endif",
    "^[ \t]*#[ \t]*define[ \t]+((FLT|DBL)_(MIN|MAX|DIG))[ \t].*",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Lynx_Void_Int fix
 */
#define LYNX_VOID_INT_FIXIDX             58
tSCC zLynx_Void_IntName[] =
     "lynx_void_int";

/*
 *  File name selection pattern
 */
tSCC zLynx_Void_IntList[] =
  "|curses.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzLynx_Void_IntMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zLynx_Void_IntSelect0[] =
       "#[ \t]*define[ \t]+void[ \t]+int[ \t]*";

#define    LYNX_VOID_INT_TEST_CT  1
static tTestDesc aLynx_Void_IntTests[] = {
  { TT_EGREP,    zLynx_Void_IntSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Lynx_Void_Int
 */
static const char* apzLynx_Void_IntPatch[] = {
    "format",
    "",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Lynxos_Fcntl_Proto fix
 */
#define LYNXOS_FCNTL_PROTO_FIXIDX        59
tSCC zLynxos_Fcntl_ProtoName[] =
     "lynxos_fcntl_proto";

/*
 *  File name selection pattern
 */
tSCC zLynxos_Fcntl_ProtoList[] =
  "|fcntl.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzLynxos_Fcntl_ProtoMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zLynxos_Fcntl_ProtoSelect0[] =
       "fcntl[ \t]*\\(int, int, int\\)";

#define    LYNXOS_FCNTL_PROTO_TEST_CT  1
static tTestDesc aLynxos_Fcntl_ProtoTests[] = {
  { TT_EGREP,    zLynxos_Fcntl_ProtoSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Lynxos_Fcntl_Proto
 */
static const char* apzLynxos_Fcntl_ProtoPatch[] = {
    "format",
    "%1...)",
    "(fcntl[ \t]*\\(int, int, )int\\)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of M88k_Bad_Hypot_Opt fix
 */
#define M88K_BAD_HYPOT_OPT_FIXIDX        60
tSCC zM88k_Bad_Hypot_OptName[] =
     "m88k_bad_hypot_opt";

/*
 *  File name selection pattern
 */
tSCC zM88k_Bad_Hypot_OptList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzM88k_Bad_Hypot_OptMachs[] = {
        "m88k-motorola-sysv3*",
        (const char*)NULL };

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zM88k_Bad_Hypot_OptSelect0[] =
       "^extern double hypot\\(\\);\n";

#define    M88K_BAD_HYPOT_OPT_TEST_CT  1
static tTestDesc aM88k_Bad_Hypot_OptTests[] = {
  { TT_EGREP,    zM88k_Bad_Hypot_OptSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for M88k_Bad_Hypot_Opt
 */
static const char* apzM88k_Bad_Hypot_OptPatch[] = {
    "format",
    "%0/* Workaround a stupid Motorola optimization if one\n\
   of x or y is 0.0 and the other is negative!  */\n\
#ifdef __STDC__\n\
static __inline__ double fake_hypot (double x, double y)\n\
#else\n\
static __inline__ double fake_hypot (x, y)\n\
\tdouble x, y;\n\
#endif\n\
{\n\
\treturn fabs (hypot (x, y));\n\
}\n\
#define hypot\tfake_hypot\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of M88k_Bad_S_If fix
 */
#define M88K_BAD_S_IF_FIXIDX             61
tSCC zM88k_Bad_S_IfName[] =
     "m88k_bad_s_if";

/*
 *  File name selection pattern
 */
tSCC zM88k_Bad_S_IfList[] =
  "|sys/stat.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzM88k_Bad_S_IfMachs[] = {
        "m88k-*-sysv3*",
        (const char*)NULL };

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zM88k_Bad_S_IfSelect0[] =
       "#define[ \t]+S_IS[A-Z]+\\(m\\)[ \t]+\\(m[ \t]*&";

#define    M88K_BAD_S_IF_TEST_CT  1
static tTestDesc aM88k_Bad_S_IfTests[] = {
  { TT_EGREP,    zM88k_Bad_S_IfSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for M88k_Bad_S_If
 */
static const char* apzM88k_Bad_S_IfPatch[] = {
    "format",
    "#define %1(m) (((m) & S_IFMT) == %2)",
    "#define[ \t]+(S_IS[A-Z]+)\\(m\\)[ \t]+\\(m[ \t]*&[ \t]*(S_IF[A-Z][A-Z][A-Z]+|0[0-9]+)[ \t]*\\)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of M88k_Multi_Incl fix
 */
#define M88K_MULTI_INCL_FIXIDX           62
tSCC zM88k_Multi_InclName[] =
     "m88k_multi_incl";

/*
 *  File name selection pattern
 */
tSCC zM88k_Multi_InclList[] =
  "|time.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzM88k_Multi_InclMachs[] = {
        "m88k-tektronix-sysv3*",
        (const char*)NULL };

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zM88k_Multi_InclBypass0[] =
       "#ifndef";

#define    M88K_MULTI_INCL_TEST_CT  1
static tTestDesc aM88k_Multi_InclTests[] = {
  { TT_NEGREP,   zM88k_Multi_InclBypass0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for M88k_Multi_Incl
 */
static const char* apzM88k_Multi_InclPatch[] = {
    "wrap",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Machine_Ansi_H_Va_List fix
 */
#define MACHINE_ANSI_H_VA_LIST_FIXIDX    63
tSCC zMachine_Ansi_H_Va_ListName[] =
     "machine_ansi_h_va_list";

/*
 *  File name selection pattern
 */
#define zMachine_Ansi_H_Va_ListList (char*)NULL
/*
 *  Machine/OS name selection pattern
 */
#define apzMachine_Ansi_H_Va_ListMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zMachine_Ansi_H_Va_ListSelect0[] =
       "define[ \t]+_BSD_VA_LIST_[ \t]";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zMachine_Ansi_H_Va_ListBypass0[] =
       "__builtin_va_list";

#define    MACHINE_ANSI_H_VA_LIST_TEST_CT  2
static tTestDesc aMachine_Ansi_H_Va_ListTests[] = {
  { TT_NEGREP,   zMachine_Ansi_H_Va_ListBypass0, (regex_t*)NULL },
  { TT_EGREP,    zMachine_Ansi_H_Va_ListSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Machine_Ansi_H_Va_List
 */
static const char* apzMachine_Ansi_H_Va_ListPatch[] = {
    "format",
    "%1__builtin_va_list",
    "(define[ \t]+_BSD_VA_LIST_[ \t]+).*",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Machine_Name fix
 */
#define MACHINE_NAME_FIXIDX              64
tSCC zMachine_NameName[] =
     "machine_name";

/*
 *  File name selection pattern
 */
#define zMachine_NameList (char*)NULL
/*
 *  Machine/OS name selection pattern
 */
#define apzMachine_NameMachs (const char**)NULL

/*
 *  perform the C function call test
 */
tSCC zMachine_NameFTst0[] = "machine_name";

#define    MACHINE_NAME_TEST_CT  1
static tTestDesc aMachine_NameTests[] = {
  { TT_FUNCTION, zMachine_NameFTst0,   0 /* unused */ }, };

/*
 *  Fix Command Arguments for Machine_Name
 */
static const char* apzMachine_NamePatch[] = {
    "machine_name",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Math_Exception fix
 */
#define MATH_EXCEPTION_FIXIDX            65
tSCC zMath_ExceptionName[] =
     "math_exception";

/*
 *  File name selection pattern
 */
tSCC zMath_ExceptionList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzMath_ExceptionMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zMath_ExceptionSelect0[] =
       "struct exception";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zMath_ExceptionBypass0[] =
       "We have a problem when using C\\+\\+";

#define    MATH_EXCEPTION_TEST_CT  2
static tTestDesc aMath_ExceptionTests[] = {
  { TT_NEGREP,   zMath_ExceptionBypass0, (regex_t*)NULL },
  { TT_EGREP,    zMath_ExceptionSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Math_Exception
 */
static const char* apzMath_ExceptionPatch[] = {
    "wrap",
    "#ifdef __cplusplus\n\
#define exception __math_exception\n\
#endif\n",
    "#ifdef __cplusplus\n\
#undef exception\n\
#endif\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Math_Huge_Val_From_Dbl_Max fix
 */
#define MATH_HUGE_VAL_FROM_DBL_MAX_FIXIDX 66
tSCC zMath_Huge_Val_From_Dbl_MaxName[] =
     "math_huge_val_from_dbl_max";

/*
 *  File name selection pattern
 */
tSCC zMath_Huge_Val_From_Dbl_MaxList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzMath_Huge_Val_From_Dbl_MaxMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zMath_Huge_Val_From_Dbl_MaxSelect0[] =
       "define[ \t]+HUGE_VAL[ \t]+DBL_MAX";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zMath_Huge_Val_From_Dbl_MaxBypass0[] =
       "define[ \t]+DBL_MAX";

#define    MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT  2
static tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = {
  { TT_NEGREP,   zMath_Huge_Val_From_Dbl_MaxBypass0, (regex_t*)NULL },
  { TT_EGREP,    zMath_Huge_Val_From_Dbl_MaxSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Math_Huge_Val_From_Dbl_Max
 */
static const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c",
    "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h | sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\
\n\
\tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\
\tthen sed -e '/define[ \t]*HUGE_VAL[ \t]*DBL_MAX/s@DBL_MAX@'\"$dbl_max_def@\"\n\
\telse cat\n\
\tfi",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Math_Huge_Val_Ifndef fix
 */
#define MATH_HUGE_VAL_IFNDEF_FIXIDX      67
tSCC zMath_Huge_Val_IfndefName[] =
     "math_huge_val_ifndef";

/*
 *  File name selection pattern
 */
tSCC zMath_Huge_Val_IfndefList[] =
  "|math.h|math/math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzMath_Huge_Val_IfndefMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zMath_Huge_Val_IfndefSelect0[] =
       "define[ \t]+HUGE_VAL";

#define    MATH_HUGE_VAL_IFNDEF_TEST_CT  1
static tTestDesc aMath_Huge_Val_IfndefTests[] = {
  { TT_EGREP,    zMath_Huge_Val_IfndefSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Math_Huge_Val_Ifndef
 */
static const char* apzMath_Huge_Val_IfndefPatch[] = {
    "format",
    "#ifndef HUGE_VAL\n\
%0\n\
#endif",
    "^[ \t]*#[ \t]*define[ \t]+HUGE_VAL[ \t].*",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Nested_Motorola fix
 */
#define NESTED_MOTOROLA_FIXIDX           68
tSCC zNested_MotorolaName[] =
     "nested_motorola";

/*
 *  File name selection pattern
 */
tSCC zNested_MotorolaList[] =
  "|sys/limits.h|limits.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzNested_MotorolaMachs[] = {
        "m68k-motorola-sysv*",
        (const char*)NULL };

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zNested_MotorolaSelect0[] =
       "max # bytes atomic in write|error value returned by Math lib";

#define    NESTED_MOTOROLA_TEST_CT  1
static tTestDesc aNested_MotorolaTests[] = {
  { TT_EGREP,    zNested_MotorolaSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Nested_Motorola
 */
static const char* apzNested_MotorolaPatch[] = { "sed",
    "-e", "s@^\\(#undef[ \t][ \t]*PIPE_BUF[ \t]*/\\* max # bytes atomic in write to a\\)$@\\1 */@",
    "-e", "s@\\(/\\*#define\tHUGE_VAL\t3.[0-9e+]* \\)\\(/\\*error value returned by Math lib\\*/\\)$@\\1*/ \\2@",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Nested_Sys_Limits fix
 */
#define NESTED_SYS_LIMITS_FIXIDX         69
tSCC zNested_Sys_LimitsName[] =
     "nested_sys_limits";

/*
 *  File name selection pattern
 */
tSCC zNested_Sys_LimitsList[] =
  "|sys/limits.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzNested_Sys_LimitsMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zNested_Sys_LimitsSelect0[] =
       "CHILD_MAX";

#define    NESTED_SYS_LIMITS_TEST_CT  1
static tTestDesc aNested_Sys_LimitsTests[] = {
  { TT_EGREP,    zNested_Sys_LimitsSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Nested_Sys_Limits
 */
static const char* apzNested_Sys_LimitsPatch[] = { "sed",
    "-e", "/CHILD_MAX/s,/\\* Max, Max,",
    "-e", "/OPEN_MAX/s,/\\* Max, Max,",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Nested_Auth_Des fix
 */
#define NESTED_AUTH_DES_FIXIDX           70
tSCC zNested_Auth_DesName[] =
     "nested_auth_des";

/*
 *  File name selection pattern
 */
tSCC zNested_Auth_DesList[] =
  "|rpc/rpc.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzNested_Auth_DesMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zNested_Auth_DesSelect0[] =
       "(/\\*.*rpc/auth_des\\.h>.*)/\\*";

#define    NESTED_AUTH_DES_TEST_CT  1
static tTestDesc aNested_Auth_DesTests[] = {
  { TT_EGREP,    zNested_Auth_DesSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Nested_Auth_Des
 */
static const char* apzNested_Auth_DesPatch[] = {
    "format",
    "%1*/ /*",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of News_Os_Recursion fix
 */
#define NEWS_OS_RECURSION_FIXIDX         71
tSCC zNews_Os_RecursionName[] =
     "news_os_recursion";

/*
 *  File name selection pattern
 */
tSCC zNews_Os_RecursionList[] =
  "|stdlib.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzNews_Os_RecursionMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zNews_Os_RecursionSelect0[] =
       "[ \t]*#include <stdlib\\.h>.*";

#define    NEWS_OS_RECURSION_TEST_CT  1
static tTestDesc aNews_Os_RecursionTests[] = {
  { TT_EGREP,    zNews_Os_RecursionSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for News_Os_Recursion
 */
static const char* apzNews_Os_RecursionPatch[] = {
    "format",
    "#ifdef BOGUS_RECURSION\n\
%0\n\
#endif",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Next_Math_Prefix fix
 */
#define NEXT_MATH_PREFIX_FIXIDX          72
tSCC zNext_Math_PrefixName[] =
     "next_math_prefix";

/*
 *  File name selection pattern
 */
tSCC zNext_Math_PrefixList[] =
  "|ansi/math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzNext_Math_PrefixMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zNext_Math_PrefixSelect0[] =
       "^extern[ \t]+double[ \t]+__const__[ \t]";

#define    NEXT_MATH_PREFIX_TEST_CT  1
static tTestDesc aNext_Math_PrefixTests[] = {
  { TT_EGREP,    zNext_Math_PrefixSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Next_Math_Prefix
 */
static const char* apzNext_Math_PrefixPatch[] = {
    "format",
    "extern double %1(",
    "^extern[ \t]+double[ \t]+__const__[ \t]+([a-z]+)\\(",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Next_Template fix
 */
#define NEXT_TEMPLATE_FIXIDX             73
tSCC zNext_TemplateName[] =
     "next_template";

/*
 *  File name selection pattern
 */
tSCC zNext_TemplateList[] =
  "|bsd/libc.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzNext_TemplateMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zNext_TemplateSelect0[] =
       "[ \t]template\\)";

#define    NEXT_TEMPLATE_TEST_CT  1
static tTestDesc aNext_TemplateTests[] = {
  { TT_EGREP,    zNext_TemplateSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Next_Template
 */
static const char* apzNext_TemplatePatch[] = {
    "format",
    "(%1)",
    "\\(([^)]*)[ \t]template\\)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Next_Volitile fix
 */
#define NEXT_VOLITILE_FIXIDX             74
tSCC zNext_VolitileName[] =
     "next_volitile";

/*
 *  File name selection pattern
 */
tSCC zNext_VolitileList[] =
  "|ansi/stdlib.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzNext_VolitileMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zNext_VolitileSelect0[] =
       "^extern[ \t]+volatile[ \t]+void[ \t]";

#define    NEXT_VOLITILE_TEST_CT  1
static tTestDesc aNext_VolitileTests[] = {
  { TT_EGREP,    zNext_VolitileSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Next_Volitile
 */
static const char* apzNext_VolitilePatch[] = {
    "format",
    "extern void %1(",
    "^extern[ \t]+volatile[ \t]+void[ \t]+(exit|abort)\\(",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Next_Wait_Union fix
 */
#define NEXT_WAIT_UNION_FIXIDX           75
tSCC zNext_Wait_UnionName[] =
     "next_wait_union";

/*
 *  File name selection pattern
 */
tSCC zNext_Wait_UnionList[] =
  "|sys/wait.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzNext_Wait_UnionMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zNext_Wait_UnionSelect0[] =
       "wait\\(union wait";

#define    NEXT_WAIT_UNION_TEST_CT  1
static tTestDesc aNext_Wait_UnionTests[] = {
  { TT_EGREP,    zNext_Wait_UnionSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Next_Wait_Union
 */
static const char* apzNext_Wait_UnionPatch[] = {
    "format",
    "wait(void",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Nodeent_Syntax fix
 */
#define NODEENT_SYNTAX_FIXIDX            76
tSCC zNodeent_SyntaxName[] =
     "nodeent_syntax";

/*
 *  File name selection pattern
 */
tSCC zNodeent_SyntaxList[] =
  "|netdnet/dnetdb.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzNodeent_SyntaxMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zNodeent_SyntaxSelect0[] =
       "char[ \t]*\\*na_addr[ \t]*$";

#define    NODEENT_SYNTAX_TEST_CT  1
static tTestDesc aNodeent_SyntaxTests[] = {
  { TT_EGREP,    zNodeent_SyntaxSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Nodeent_Syntax
 */
static const char* apzNodeent_SyntaxPatch[] = {
    "format",
    "%0;",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Osf_Namespace_A fix
 */
#define OSF_NAMESPACE_A_FIXIDX           77
tSCC zOsf_Namespace_AName[] =
     "osf_namespace_a";

/*
 *  File name selection pattern
 */
tSCC zOsf_Namespace_AList[] =
  "|reg_types.h|sys/lc_core.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzOsf_Namespace_AMachs (const char**)NULL

/*
 *  perform the 'test' shell command - do fix on success
 */
tSCC zOsf_Namespace_ATest0[] =
       " -r reg_types.h";
tSCC zOsf_Namespace_ATest1[] =
       " -r sys/lc_core.h";
tSCC zOsf_Namespace_ATest2[] =
       " -n \"`grep '} regex_t;' reg_types.h`\"";
tSCC zOsf_Namespace_ATest3[] =
       " -z \"`grep __regex_t regex.h`\"";

#define    OSF_NAMESPACE_A_TEST_CT  4
static tTestDesc aOsf_Namespace_ATests[] = {
  { TT_TEST,     zOsf_Namespace_ATest0,   0 /* unused */ },
  { TT_TEST,     zOsf_Namespace_ATest1,   0 /* unused */ },
  { TT_TEST,     zOsf_Namespace_ATest2,   0 /* unused */ },
  { TT_TEST,     zOsf_Namespace_ATest3,   0 /* unused */ }, };

/*
 *  Fix Command Arguments for Osf_Namespace_A
 */
static const char* apzOsf_Namespace_APatch[] = {
    "format",
    "__%0",
    "reg(ex|off|match)_t",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Osf_Namespace_C fix
 */
#define OSF_NAMESPACE_C_FIXIDX           78
tSCC zOsf_Namespace_CName[] =
     "osf_namespace_c";

/*
 *  File name selection pattern
 */
tSCC zOsf_Namespace_CList[] =
  "|regex.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzOsf_Namespace_CMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zOsf_Namespace_CSelect0[] =
       "#include <reg_types.h>.*";

/*
 *  perform the 'test' shell command - do fix on success
 */
tSCC zOsf_Namespace_CTest0[] =
       " -r reg_types.h";
tSCC zOsf_Namespace_CTest1[] =
       " -r sys/lc_core.h";
tSCC zOsf_Namespace_CTest2[] =
       " -n \"`grep '} regex_t;' reg_types.h`\"";
tSCC zOsf_Namespace_CTest3[] =
       " -z \"`grep __regex_t regex.h`\"";

#define    OSF_NAMESPACE_C_TEST_CT  5
static tTestDesc aOsf_Namespace_CTests[] = {
  { TT_TEST,     zOsf_Namespace_CTest0,   0 /* unused */ },
  { TT_TEST,     zOsf_Namespace_CTest1,   0 /* unused */ },
  { TT_TEST,     zOsf_Namespace_CTest2,   0 /* unused */ },
  { TT_TEST,     zOsf_Namespace_CTest3,   0 /* unused */ },
  { TT_EGREP,    zOsf_Namespace_CSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Osf_Namespace_C
 */
static const char* apzOsf_Namespace_CPatch[] = {
    "format",
    "%0\n\
typedef __regex_t\tregex_t;\n\
typedef __regoff_t\tregoff_t;\n\
typedef __regmatch_t\tregmatch_t;",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Pthread_Page_Size fix
 */
#define PTHREAD_PAGE_SIZE_FIXIDX         79
tSCC zPthread_Page_SizeName[] =
     "pthread_page_size";

/*
 *  File name selection pattern
 */
tSCC zPthread_Page_SizeList[] =
  "|pthread.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzPthread_Page_SizeMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zPthread_Page_SizeSelect0[] =
       "^int __page_size";

#define    PTHREAD_PAGE_SIZE_TEST_CT  1
static tTestDesc aPthread_Page_SizeTests[] = {
  { TT_EGREP,    zPthread_Page_SizeSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Pthread_Page_Size
 */
static const char* apzPthread_Page_SizePatch[] = {
    "format",
    "extern %0",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Read_Ret_Type fix
 */
#define READ_RET_TYPE_FIXIDX             80
tSCC zRead_Ret_TypeName[] =
     "read_ret_type";

/*
 *  File name selection pattern
 */
tSCC zRead_Ret_TypeList[] =
  "|stdio.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzRead_Ret_TypeMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zRead_Ret_TypeSelect0[] =
       "extern int\t.*, fread\\(\\), fwrite\\(\\)";

#define    READ_RET_TYPE_TEST_CT  1
static tTestDesc aRead_Ret_TypeTests[] = {
  { TT_EGREP,    zRead_Ret_TypeSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Read_Ret_Type
 */
static const char* apzRead_Ret_TypePatch[] = {
    "format",
    "extern unsigned int fread(), fwrite();\n\
%1%2",
    "(extern int\t.*), fread\\(\\), fwrite\\(\\)(.*)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Rs6000_Double fix
 */
#define RS6000_DOUBLE_FIXIDX             81
tSCC zRs6000_DoubleName[] =
     "rs6000_double";

/*
 *  File name selection pattern
 */
tSCC zRs6000_DoubleList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzRs6000_DoubleMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zRs6000_DoubleSelect0[] =
       "[^a-zA-Z_]class\\(";

#define    RS6000_DOUBLE_TEST_CT  1
static tTestDesc aRs6000_DoubleTests[] = {
  { TT_EGREP,    zRs6000_DoubleSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Rs6000_Double
 */
static const char* apzRs6000_DoublePatch[] = {
    "format",
    "#ifndef __cplusplus\n\
%0\n\
#endif",
    "^.*[^a-zA-Z_]class\\(.*",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Rs6000_Fchmod fix
 */
#define RS6000_FCHMOD_FIXIDX             82
tSCC zRs6000_FchmodName[] =
     "rs6000_fchmod";

/*
 *  File name selection pattern
 */
tSCC zRs6000_FchmodList[] =
  "|sys/stat.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzRs6000_FchmodMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zRs6000_FchmodSelect0[] =
       "fchmod\\(char \\*";

#define    RS6000_FCHMOD_TEST_CT  1
static tTestDesc aRs6000_FchmodTests[] = {
  { TT_EGREP,    zRs6000_FchmodSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Rs6000_Fchmod
 */
static const char* apzRs6000_FchmodPatch[] = {
    "format",
    "fchmod(int",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Rs6000_Param fix
 */
#define RS6000_PARAM_FIXIDX              83
tSCC zRs6000_ParamName[] =
     "rs6000_param";

/*
 *  File name selection pattern
 */
tSCC zRs6000_ParamList[] =
  "|stdio.h|unistd.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzRs6000_ParamMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zRs6000_ParamSelect0[] =
       "rename\\(const char \\*old, const char \\*new\\)";

#define    RS6000_PARAM_TEST_CT  1
static tTestDesc aRs6000_ParamTests[] = {
  { TT_EGREP,    zRs6000_ParamSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Rs6000_Param
 */
static const char* apzRs6000_ParamPatch[] = {
    "format",
    "rename(const char *_old, const char *_new)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sco_Static_Func fix
 */
#define SCO_STATIC_FUNC_FIXIDX           84
tSCC zSco_Static_FuncName[] =
     "sco_static_func";

/*
 *  File name selection pattern
 */
tSCC zSco_Static_FuncList[] =
  "|sys/stat.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzSco_Static_FuncMachs[] = {
        "i?86-*-sco3.2*",
        (const char*)NULL };

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSco_Static_FuncSelect0[] =
       "^static int";

#define    SCO_STATIC_FUNC_TEST_CT  1
static tTestDesc aSco_Static_FuncTests[] = {
  { TT_EGREP,    zSco_Static_FuncSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sco_Static_Func
 */
static const char* apzSco_Static_FuncPatch[] = { "sed",
    "-e", "/^static int/i\\\n\
#if __cplusplus\\\n\
extern \"C\" {\\\n\
#endif /* __cplusplus */",
    "-e", "/^}$/a\\\n\
#if __cplusplus\\\n\
 }\\\n\
#endif /* __cplusplus */",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sco_Strict_Ansi fix
 */
#define SCO_STRICT_ANSI_FIXIDX           85
tSCC zSco_Strict_AnsiName[] =
     "sco_strict_ansi";

/*
 *  File name selection pattern
 */
#define zSco_Strict_AnsiList (char*)NULL
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzSco_Strict_AnsiMachs[] = {
        "i?86-*-sco3.2*",
        (const char*)NULL };

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSco_Strict_AnsiSelect0[] =
       "^[ \t]*#[ \t]*if.*!__STDC__";

#define    SCO_STRICT_ANSI_TEST_CT  1
static tTestDesc aSco_Strict_AnsiTests[] = {
  { TT_EGREP,    zSco_Strict_AnsiSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sco_Strict_Ansi
 */
static const char* apzSco_Strict_AnsiPatch[] = {
    "format",
    "%1defined(__STRICT_ANSI__)%2",
    "^([ \t]*#[ \t]*if[ \t].*!)__STDC__(.*)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sco_Utime fix
 */
#define SCO_UTIME_FIXIDX                 86
tSCC zSco_UtimeName[] =
     "sco_utime";

/*
 *  File name selection pattern
 */
tSCC zSco_UtimeList[] =
  "|sys/times.h|";
/*
 *  Machine/OS name selection pattern
 */
tSCC* apzSco_UtimeMachs[] = {
        "i?86-*-sco3.2v4*",
        (const char*)NULL };

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSco_UtimeSelect0[] =
       "\\(const char \\*, struct utimbuf \\*\\);";

#define    SCO_UTIME_TEST_CT  1
static tTestDesc aSco_UtimeTests[] = {
  { TT_EGREP,    zSco_UtimeSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sco_Utime
 */
static const char* apzSco_UtimePatch[] = {
    "format",
    "(const char *, const struct utimbuf *);",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Statsswtch fix
 */
#define STATSSWTCH_FIXIDX                87
tSCC zStatsswtchName[] =
     "statsswtch";

/*
 *  File name selection pattern
 */
tSCC zStatsswtchList[] =
  "|rpcsvc/rstat.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzStatsswtchMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zStatsswtchSelect0[] =
       "boottime$";

#define    STATSSWTCH_TEST_CT  1
static tTestDesc aStatsswtchTests[] = {
  { TT_EGREP,    zStatsswtchSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Statsswtch
 */
static const char* apzStatsswtchPatch[] = {
    "format",
    "boottime;",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Stdio_Stdarg_H fix
 */
#define STDIO_STDARG_H_FIXIDX            88
tSCC zStdio_Stdarg_HName[] =
     "stdio_stdarg_h";

/*
 *  File name selection pattern
 */
tSCC zStdio_Stdarg_HList[] =
  "|stdio.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzStdio_Stdarg_HMachs (const char**)NULL

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zStdio_Stdarg_HBypass0[] =
       "include.*(stdarg.h|machine/ansi.h)";

#define    STDIO_STDARG_H_TEST_CT  1
static tTestDesc aStdio_Stdarg_HTests[] = {
  { TT_NEGREP,   zStdio_Stdarg_HBypass0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Stdio_Stdarg_H
 */
static const char* apzStdio_Stdarg_HPatch[] = {
    "wrap",
    "#define __need___va_list\n\
#include <stdarg.h>\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Stdio_Va_List fix
 */
#define STDIO_VA_LIST_FIXIDX             89
tSCC zStdio_Va_ListName[] =
     "stdio_va_list";

/*
 *  File name selection pattern
 */
tSCC zStdio_Va_ListList[] =
  "|stdio.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzStdio_Va_ListMachs (const char**)NULL

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zStdio_Va_ListBypass0[] =
       "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list";

#define    STDIO_VA_LIST_TEST_CT  1
static tTestDesc aStdio_Va_ListTests[] = {
  { TT_NEGREP,   zStdio_Va_ListBypass0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Stdio_Va_List
 */
static const char* apzStdio_Va_ListPatch[] = { "sed",
    "-e", "s@ va_list @ __gnuc_va_list @\n\
s@ va_list)@ __gnuc_va_list)@\n\
s@ _VA_LIST_));@ __gnuc_va_list));@\n\
s@ va_list@ __not_va_list__@\n\
s@\\*va_list@*__not_va_list__@\n\
s@ __va_list)@ __gnuc_va_list)@\n\
s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
s@VA_LIST@DUMMY_VA_LIST@\n\
s@_Va_LIST@_VA_LIST@",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Struct_File fix
 */
#define STRUCT_FILE_FIXIDX               90
tSCC zStruct_FileName[] =
     "struct_file";

/*
 *  File name selection pattern
 */
tSCC zStruct_FileList[] =
  "|rpc/xdr.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzStruct_FileMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zStruct_FileSelect0[] =
       "^.*xdrstdio_create.*struct __file_s";

#define    STRUCT_FILE_TEST_CT  1
static tTestDesc aStruct_FileTests[] = {
  { TT_EGREP,    zStruct_FileSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Struct_File
 */
static const char* apzStruct_FilePatch[] = {
    "format",
    "struct __file_s;\n\
%0",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Struct_Sockaddr fix
 */
#define STRUCT_SOCKADDR_FIXIDX           91
tSCC zStruct_SockaddrName[] =
     "struct_sockaddr";

/*
 *  File name selection pattern
 */
tSCC zStruct_SockaddrList[] =
  "|rpc/auth.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzStruct_SockaddrMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zStruct_SockaddrSelect0[] =
       "^.*authdes_create.*struct sockaddr";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zStruct_SockaddrBypass0[] =
       "<sys/socket.h>";

#define    STRUCT_SOCKADDR_TEST_CT  2
static tTestDesc aStruct_SockaddrTests[] = {
  { TT_NEGREP,   zStruct_SockaddrBypass0, (regex_t*)NULL },
  { TT_EGREP,    zStruct_SockaddrSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Struct_Sockaddr
 */
static const char* apzStruct_SockaddrPatch[] = {
    "format",
    "struct sockaddr;\n\
%0",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sun_Auth_Proto fix
 */
#define SUN_AUTH_PROTO_FIXIDX            92
tSCC zSun_Auth_ProtoName[] =
     "sun_auth_proto";

/*
 *  File name selection pattern
 */
tSCC zSun_Auth_ProtoList[] =
  "|rpc/auth.h|rpc/clnt.h|rpc/svc.h|rpc/xdr.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSun_Auth_ProtoMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSun_Auth_ProtoSelect0[] =
       "\\(\\*[a-z][a-z_]*\\)\\(\\)";

#define    SUN_AUTH_PROTO_TEST_CT  1
static tTestDesc aSun_Auth_ProtoTests[] = {
  { TT_EGREP,    zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sun_Auth_Proto
 */
static const char* apzSun_Auth_ProtoPatch[] = {
    "format",
    "#ifdef __cplusplus\n\
%1(...);%2\n\
#else\n\
%1();%2\n\
#endif",
    "(.*\\(\\*[a-z][a-z_]*\\))\\(\\);(.*)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sun_Bogus_Ifdef fix
 */
#define SUN_BOGUS_IFDEF_FIXIDX           93
tSCC zSun_Bogus_IfdefName[] =
     "sun_bogus_ifdef";

/*
 *  File name selection pattern
 */
tSCC zSun_Bogus_IfdefList[] =
  "|hsfs/hsfs_spec.h|hsfs/iso_spec.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSun_Bogus_IfdefMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSun_Bogus_IfdefSelect0[] =
       "#ifdef(.*\\|\\|.*)";

#define    SUN_BOGUS_IFDEF_TEST_CT  1
static tTestDesc aSun_Bogus_IfdefTests[] = {
  { TT_EGREP,    zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sun_Bogus_Ifdef
 */
static const char* apzSun_Bogus_IfdefPatch[] = {
    "format",
    "#if%1",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sun_Catmacro fix
 */
#define SUN_CATMACRO_FIXIDX              94
tSCC zSun_CatmacroName[] =
     "sun_catmacro";

/*
 *  File name selection pattern
 */
tSCC zSun_CatmacroList[] =
  "|pixrect/memvar.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSun_CatmacroMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSun_CatmacroSelect0[] =
       "^#define[ \t]+CAT\\(a,b\\).*";

#define    SUN_CATMACRO_TEST_CT  1
static tTestDesc aSun_CatmacroTests[] = {
  { TT_EGREP,    zSun_CatmacroSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sun_Catmacro
 */
static const char* apzSun_CatmacroPatch[] = {
    "format",
    "#ifdef __STDC__\n\
#  define CAT(a,b) a##b\n\
#else\n\
%0\n\
#endif",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sun_Malloc fix
 */
#define SUN_MALLOC_FIXIDX                95
tSCC zSun_MallocName[] =
     "sun_malloc";

/*
 *  File name selection pattern
 */
tSCC zSun_MallocList[] =
  "|malloc.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSun_MallocMachs (const char**)NULL
#define SUN_MALLOC_TEST_CT  0
#define aSun_MallocTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Sun_Malloc
 */
static const char* apzSun_MallocPatch[] = { "sed",
    "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
    "-e", "s/int[ \t][ \t]*free/void\tfree/g",
    "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
    "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
    "-e", "s/char\\([ \t]*\\*[ \t]*calloc\\)/void\\1/g",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sun_Rusers_Semi fix
 */
#define SUN_RUSERS_SEMI_FIXIDX           96
tSCC zSun_Rusers_SemiName[] =
     "sun_rusers_semi";

/*
 *  File name selection pattern
 */
tSCC zSun_Rusers_SemiList[] =
  "|rpcsvc/rusers.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSun_Rusers_SemiMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSun_Rusers_SemiSelect0[] =
       "_cnt$";

#define    SUN_RUSERS_SEMI_TEST_CT  1
static tTestDesc aSun_Rusers_SemiTests[] = {
  { TT_EGREP,    zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sun_Rusers_Semi
 */
static const char* apzSun_Rusers_SemiPatch[] = { "sed",
    "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sun_Signal fix
 */
#define SUN_SIGNAL_FIXIDX                97
tSCC zSun_SignalName[] =
     "sun_signal";

/*
 *  File name selection pattern
 */
tSCC zSun_SignalList[] =
  "|sys/signal.h|signal.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSun_SignalMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSun_SignalSelect0[] =
       "^void\t\\(\\*signal\\(\\)\\)\\(\\);.*";

#define    SUN_SIGNAL_TEST_CT  1
static tTestDesc aSun_SignalTests[] = {
  { TT_EGREP,    zSun_SignalSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sun_Signal
 */
static const char* apzSun_SignalPatch[] = {
    "format",
    "#ifdef __cplusplus\n\
void\t(*signal(...))(...);\n\
#else\n\
%0\n\
#endif",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sunos_Matherr_Decl fix
 */
#define SUNOS_MATHERR_DECL_FIXIDX        98
tSCC zSunos_Matherr_DeclName[] =
     "sunos_matherr_decl";

/*
 *  File name selection pattern
 */
tSCC zSunos_Matherr_DeclList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSunos_Matherr_DeclMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSunos_Matherr_DeclSelect0[] =
       "matherr";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zSunos_Matherr_DeclBypass0[] =
       "matherr.*(struct exception|__MATH_EXCEPTION)";

#define    SUNOS_MATHERR_DECL_TEST_CT  2
static tTestDesc aSunos_Matherr_DeclTests[] = {
  { TT_NEGREP,   zSunos_Matherr_DeclBypass0, (regex_t*)NULL },
  { TT_EGREP,    zSunos_Matherr_DeclSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sunos_Matherr_Decl
 */
static const char* apzSunos_Matherr_DeclPatch[] = {
    "wrap",
    "struct exception;\n",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sunos_Strlen fix
 */
#define SUNOS_STRLEN_FIXIDX              99
tSCC zSunos_StrlenName[] =
     "sunos_strlen";

/*
 *  File name selection pattern
 */
tSCC zSunos_StrlenList[] =
  "|strings.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSunos_StrlenMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSunos_StrlenSelect0[] =
       "int[ \t]*strlen\\(\\);(.*)";

#define    SUNOS_STRLEN_TEST_CT  1
static tTestDesc aSunos_StrlenTests[] = {
  { TT_EGREP,    zSunos_StrlenSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sunos_Strlen
 */
static const char* apzSunos_StrlenPatch[] = {
    "format",
    "__SIZE_TYPE__ strlen();%1",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Svr4__P fix
 */
#define SVR4__P_FIXIDX                   100
tSCC zSvr4__PName[] =
     "svr4__p";

/*
 *  File name selection pattern
 */
tSCC zSvr4__PList[] =
  "|math.h|floatingpoint.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSvr4__PMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSvr4__PSelect0[] =
       "^#define[ \t]+__P.*";

#define    SVR4__P_TEST_CT  1
static tTestDesc aSvr4__PTests[] = {
  { TT_EGREP,    zSvr4__PSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Svr4__P
 */
static const char* apzSvr4__PPatch[] = {
    "format",
    "#ifndef __P\n\
%0\n\
#endif",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Svr4_Getcwd fix
 */
#define SVR4_GETCWD_FIXIDX               101
tSCC zSvr4_GetcwdName[] =
     "svr4_getcwd";

/*
 *  File name selection pattern
 */
tSCC zSvr4_GetcwdList[] =
  "|stdlib.h|unistd.h|prototypes.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSvr4_GetcwdMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSvr4_GetcwdSelect0[] =
       "getcwd\\(char \\*, int\\)";

#define    SVR4_GETCWD_TEST_CT  1
static tTestDesc aSvr4_GetcwdTests[] = {
  { TT_EGREP,    zSvr4_GetcwdSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Svr4_Getcwd
 */
static const char* apzSvr4_GetcwdPatch[] = {
    "format",
    "getcwd(char *, size_t)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Svr4_Profil fix
 */
#define SVR4_PROFIL_FIXIDX               102
tSCC zSvr4_ProfilName[] =
     "svr4_profil";

/*
 *  File name selection pattern
 */
tSCC zSvr4_ProfilList[] =
  "|stdlib.h|unistd.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSvr4_ProfilMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSvr4_ProfilSelect0[] =
       "profil\\(unsigned short \\*, unsigned int, unsigned int, unsigned int\\)";

#define    SVR4_PROFIL_TEST_CT  1
static tTestDesc aSvr4_ProfilTests[] = {
  { TT_EGREP,    zSvr4_ProfilSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Svr4_Profil
 */
static const char* apzSvr4_ProfilPatch[] = {
    "format",
    "profil(unsigned short *, size_t, int, unsigned int)",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Gnu_Types fix
 */
#define GNU_TYPES_FIXIDX                 103
tSCC zGnu_TypesName[] =
     "gnu_types";

/*
 *  File name selection pattern
 */
tSCC zGnu_TypesList[] =
  "|sys/types.h|stdlib.h|sys/stdtypes.h|stddef.h|memory.h|unistd.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzGnu_TypesMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zGnu_TypesSelect0[] =
       "^[ \t]*typedef[ \t]+.*[ \t](ptrdiff|size|wchar)_t;";

/*
 *  content bypass pattern - skip fix if pattern found
 */
tSCC zGnu_TypesBypass0[] =
       "_GCC_(PTRDIFF|SIZE|WCHAR)_T";

#define    GNU_TYPES_TEST_CT  2
static tTestDesc aGnu_TypesTests[] = {
  { TT_NEGREP,   zGnu_TypesBypass0, (regex_t*)NULL },
  { TT_EGREP,    zGnu_TypesSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Gnu_Types
 */
static const char* apzGnu_TypesPatch[] = {
    "gnu_type",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sysv68_String fix
 */
#define SYSV68_STRING_FIXIDX             104
tSCC zSysv68_StringName[] =
     "sysv68_string";

/*
 *  File name selection pattern
 */
tSCC zSysv68_StringList[] =
  "|testing.h|string.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSysv68_StringMachs (const char**)NULL
#define SYSV68_STRING_TEST_CT  0
#define aSysv68_StringTests   (tTestDesc*)NULL

/*
 *  Fix Command Arguments for Sysv68_String
 */
static const char* apzSysv68_StringPatch[] = { "sed",
    "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
    "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
    "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
    "-e", "/^extern char$/N",
    "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
    "-e", "/^extern int$/N",
    "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
    "-e", "/^\tstrncmp(),$/N",
    "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
extern unsigned int\\\n\
\\2/",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Sysz_Stdlib_For_Sun fix
 */
#define SYSZ_STDLIB_FOR_SUN_FIXIDX       105
tSCC zSysz_Stdlib_For_SunName[] =
     "sysz_stdlib_for_sun";

/*
 *  File name selection pattern
 */
tSCC zSysz_Stdlib_For_SunList[] =
  "|stdlib.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzSysz_Stdlib_For_SunMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zSysz_Stdlib_For_SunSelect0[] =
       "char[ \t]*\\*[ \t]*(calloc|malloc|realloc|bsearch)[ \t]*\\(";

#define    SYSZ_STDLIB_FOR_SUN_TEST_CT  1
static tTestDesc aSysz_Stdlib_For_SunTests[] = {
  { TT_EGREP,    zSysz_Stdlib_For_SunSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Sysz_Stdlib_For_Sun
 */
static const char* apzSysz_Stdlib_For_SunPatch[] = {
    "format",
    "void *\t%1(",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Tinfo_Cplusplus fix
 */
#define TINFO_CPLUSPLUS_FIXIDX           106
tSCC zTinfo_CplusplusName[] =
     "tinfo_cplusplus";

/*
 *  File name selection pattern
 */
tSCC zTinfo_CplusplusList[] =
  "|tinfo.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzTinfo_CplusplusMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zTinfo_CplusplusSelect0[] =
       "[ \t]_cplusplus";

#define    TINFO_CPLUSPLUS_TEST_CT  1
static tTestDesc aTinfo_CplusplusTests[] = {
  { TT_EGREP,    zTinfo_CplusplusSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Tinfo_Cplusplus
 */
static const char* apzTinfo_CplusplusPatch[] = {
    "format",
    " __cplusplus",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Ultrix_Atof_Param fix
 */
#define ULTRIX_ATOF_PARAM_FIXIDX         107
tSCC zUltrix_Atof_ParamName[] =
     "ultrix_atof_param";

/*
 *  File name selection pattern
 */
tSCC zUltrix_Atof_ParamList[] =
  "|math.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzUltrix_Atof_ParamMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zUltrix_Atof_ParamSelect0[] =
       "atof\\([ \t]*char";

#define    ULTRIX_ATOF_PARAM_TEST_CT  1
static tTestDesc aUltrix_Atof_ParamTests[] = {
  { TT_EGREP,    zUltrix_Atof_ParamSelect0, (regex_t*)NULL }, };

/*
 *  Fix Command Arguments for Ultrix_Atof_Param
 */
static const char* apzUltrix_Atof_ParamPatch[] = {
    "format",
    "atof(const char",
    (char*)NULL };

/* * * * * * * * * * * * * * * * * * * * * * * * * *
 *
 *  Description of Ultrix_Const fix
 */
#define ULTRIX_CONST_FIXIDX              108
tSCC zUltrix_ConstName[] =
     "ultrix_const";

/*
 *  File name selection pattern
 */
tSCC zUltrix_ConstList[] =
  "|stdio.h|";
/*
 *  Machine/OS name selection pattern
 */
#define apzUltrix_ConstMachs (const char**)NULL

/*
 *  content selection pattern - do fix if pattern found
 */
tSCC zUltrix_ConstSelect0[] =
       "perror\\( char \\*";

#define    ULTRIX_CONST_TEST_CT  1
static tTestDesc aUltrix_ConstTests[] = {
  {