Re: Build failure on Solaris 10 with Sun cc

Paul Eggert <[email protected]>
Newsgroups gmane.comp.version-control.rcs.bugs
Organization UCLA Computer Science Department
Message-ID <[email protected]>
On 09/29/10 02:41, Thien-Thi Nguyen wrote:
> Hmmm, i can't even formulate a hypothesis on why ‘struct divvy *divvy’
> is not considered a pointer to a struct/union by the Sun cc.

I don't think that's the problem.  The problem is that the code
uses an expression A->B, where A is of type 'void *'.  The C
standard doesn't allow that.

> Could you please ‘M-x c-macro-expand’ that function and post the results?

That command didn't work for me, but I am attaching the output of:

source='b-divvy.c' object='b-divvy.o' libtool=no \
DEPDIR=.deps depmode=none /bin/bash ../build-aux/depcomp \
cc -xc99=all -xc99=all -DHAVE_CONFIG_H -I. -I../lib  -I'../lib'   -E b-divvy.c |
sed 's/^#/\/\/'

The first problem is in the alloc function.  The expression

( ( divvy -> space ) ) -> temp

is not valid, because divvy->space is of type void *.
b-divvy-preprocessed.c (text/x-csrc, 76.1 KB)
// 1 "b-divvy.c"
 
// 20

// 1 "base.h"
 
// 22

// 1 "../lib/config.h"
 
 

 
// 6
 

 
// 10

 
// 13

 
// 16

 
// 19

 
// 22

 
// 25

 
// 28

 
// 31

 
// 34

 
// 37

 
// 40

 
// 43

 
// 46

 
// 50
 

 
 

 
// 57

 
// 60

 
// 63

 
// 66

 
// 69

 
// 72

 
// 75

 
// 78

 
 

 
// 84

 
 

 
// 92

 
// 96

 
// 100

 
// 103

 
// 106

 
// 109

 
// 112

 
// 115

 
// 118

 
// 121

 
// 124

 
// 127

 
// 131

 
// 135

 
 

 
// 142

 
// 146

 
// 149

 
// 152

 
// 155

 
// 158

 
// 161

 
// 164

 
// 167

 
// 170

 
// 173

 
// 176

 
// 179

 
// 182

 
// 185

 
// 190

 
// 193

 
// 196

 
// 200

 
// 203

 
// 206

 
// 209

 
// 212

 
 

 
// 218

 
// 222

 
// 225

 
// 228

 
// 231

 
// 234

 
// 237

 
// 240

 
 

 
 

 
 

 
// 252

 
// 255

 
// 258

 
// 261

 
 

 
// 267

 
// 270

 
// 273

 
// 276
 

 
// 280

 
 

 
 

 
// 289

 
 

 
// 295

 
 

 
 

 
 

 
// 307

 
 

 
// 313

 
// 316

 
// 319

 
 

 
// 325

 
// 328

 
// 331

 
// 334

 
// 337

 
 

 
// 343

 
 

 
 

 
// 352

 
// 355

 
// 358

 
 

 
 

 
// 367

 
// 370

 
// 373

 
// 376

 
// 379

 
// 382

 
 

 
 

 
// 391

 
// 394

 
 

 
// 400

 
// 403

 
// 406

 
// 409

 
// 412

 
 

 
// 418

 
 

 
 

 
 

 
 

 
 

 
// 436

 
 

 
// 442

 
 

 
 

 
 

 
// 454

 
 

 
// 460

 
 

 
// 466

 
// 469

 
// 472

 
// 475

 
 

 
 

 
// 484

 
 

 
// 490

 
 

 
// 496

 
 

 
// 502

 
// 505

 
 

 
// 511

 
// 514

 
// 517

 
// 520

 
// 523

 
// 526

 
// 529

 
// 532

 
// 535

 
// 538

 
// 541

 
 

 
// 547

 
 

 
 

 
 

 
 

 
// 562

 
// 565

 
 

 
 

 
// 574

 
 

 
// 580

 
// 583

 
// 586

 
// 589

 
// 592

 
 

 
// 598

 
 

 
// 604

 
// 607

 
// 610

 
// 613

 
// 616

 
// 619

 
// 622

 
 

 
 

 
// 631

 
// 634

 
 

 
// 640

 
// 643

 
// 646

 
// 649

 
// 652

 
// 655

 
// 658

 
// 661

 
// 664

 
 

 
// 670

 
// 673

 
// 676

 
// 679

 
// 682

 
// 687

 
// 690

 
// 693

 
// 696

 
// 699

 
// 703

 
// 706

 
// 709

 
// 712

 
// 715

 
 

 
// 721

 
 

 
 

 
// 730

 
// 733

 
// 736

 
// 739

 
// 742

 
// 745

 
// 748

 
// 751

 
// 754

 
// 757

 
 

 
// 763

 
 

 
// 769

 
// 772

 
// 775

 
// 778

 
// 781

 
 

 
// 787

 
// 790

 
// 793

 
// 796

 
// 799

 
// 802

 
// 805

// 811

 
 

 
// 817

 
// 820

 
// 823

 
// 826

 
// 829

 
// 832

 
// 835

 
// 838

 
// 842

 
 

 
// 848
 

 
// 852
 

 
 

 
 

 
// 863

 
// 866

 
// 870
 
// 872

 
// 876

 
// 883
 

 
 

 
// 890

 
// 894

 
// 898

 
// 902

 
// 905

 
 

 
// 911
 

 
 

 
 

 
// 923
 
// 927
 
// 931
 
// 935
 
// 939


 
 

 
// 946

 
// 950
 
// 952

 
 

 
// 965

 
 

 
 

 
 

 
 

 
// 980
 

 
// 986
 
// 995

 
 

 
 

 
 

 
// 1013
 
// 1016


 
 

 
 
// 25 "base.h"

// 1 "/usr/include/stdbool.h"
 
// 5

// 8

//ident	"@(#)stdbool.h	1.1	03/12/04 SMI"

// 14

 
// 25

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 8

//ident	"@(#)feature_tests.h	1.25	07/02/02 SMI"

// 1 "/usr/include/sys/ccompile.h"
 
// 5

// 8

//ident	"@(#)ccompile.h	1.2	04/11/08 SMI"

 
// 15

// 19

 
// 29

// 84

// 86

// 88

 
// 92

// 100


// 105

// 1 "/usr/include/sys/isa_defs.h"
 
// 5

// 8

//ident	"@(#)isa_defs.h	1.29	08/06/06 SMI"

 
// 192

// 196

 
// 396

 
// 403

 
// 413

 
// 434

 
// 443

 
// 449

 
// 458

// 460

 
// 468

 
// 498

 
// 505

// 509

// 513

// 13 "/usr/include/sys/feature_tests.h"

// 17

 
// 31

 
// 62

// 66

 
// 111

// 118

 
// 122

// 126

 
// 166

 
// 194

 
// 245

 
// 279

 
// 303

 
// 323

 
// 339

 
// 352

 
// 358

 
// 364

 
// 370

// 374

// 27 "/usr/include/stdbool.h"

// 29

// 33

// 37

// 39

// 45

// 49

// 1 "../lib/stdint.h"
 
 
// 19

 
// 24

// 26

// 30

 
// 36

 
// 44

// 52
   
// 1 "../lib/stdint.h"
 
 
// 19

 
// 24

// 26

// 30

 
// 36

 
// 44

// 52
   
// 1 "/usr/include/stdint.h"
 
// 5

// 8

//ident	"@(#)stdint.h	1.1	03/12/04 SMI"

 
// 16

// 1 "/usr/include/sys/stdint.h"
 
// 5

// 8

//ident	"@(#)stdint.h	1.1	03/12/04 SMI"

 
// 16

// 1 "/usr/include/sys/int_types.h"
 
// 5

// 8

//ident	"@(#)int_types.h	1.10	04/09/28 SMI"

 
// 33

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 35 "/usr/include/sys/int_types.h"

// 39

 
// 54
typedef char			int8_t;
// 60
typedef short			int16_t;
typedef int			int32_t;
// 68
typedef	long long		int64_t;
// 71

typedef unsigned char		uint8_t;
typedef unsigned short		uint16_t;
typedef unsigned int		uint32_t;
// 79
typedef unsigned long long	uint64_t;
// 82

 
// 88
typedef int64_t			intmax_t;
typedef uint64_t		uintmax_t;
// 94

 
// 104
typedef	int			intptr_t;
typedef	unsigned int		uintptr_t;
// 107

 
// 113
typedef char			int_fast8_t;
// 119
typedef int			int_fast16_t;
typedef int			int_fast32_t;
// 125
typedef long long		int_fast64_t;
// 128

typedef unsigned char		uint_fast8_t;
typedef unsigned int		uint_fast16_t;
typedef unsigned int		uint_fast32_t;
// 136
typedef unsigned long long	uint_fast64_t;
// 139

 
// 145
typedef char			int_least8_t;
// 151
typedef short			int_least16_t;
typedef int			int_least32_t;
// 157
typedef long long		int_least64_t;
// 160

typedef unsigned char		uint_least8_t;
typedef unsigned short		uint_least16_t;
typedef unsigned int		uint_least32_t;
// 168
typedef unsigned long long	uint_least64_t;
// 171

// 175

// 1 "/usr/include/sys/int_limits.h"
 
// 5

// 8

//ident	"@(#)int_limits.h	1.9	04/09/28 SMI"

 
// 34

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 36 "/usr/include/sys/int_limits.h"

// 40

 
// 72

// 81

// 87

// 93

// 102

// 109

// 118

// 125

 
// 139

 
// 146

 
// 159

 
// 164

 
// 173

 
// 178

 
// 185

// 196

// 202

// 211

// 220

 
// 227

 
// 234

 
// 239

 
// 248

 
// 253

// 255

// 259

// 1 "/usr/include/sys/int_const.h"
 
// 5

// 8

//ident	"@(#)int_const.h	1.5	04/09/28 SMI"

 
// 32

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 34 "/usr/include/sys/int_const.h"

// 38

 
// 55
 
// 61

// 72
 
// 76

 
// 79
 
// 81
 
// 88
 
// 92

// 100
 
// 102
 
// 109

// 113

// 20 "/usr/include/sys/stdint.h"

// 18 "/usr/include/stdint.h"

// 59 "../lib/stdint.h"

// 62

 
// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 15

//ident	"@(#)types.h	1.86	07/09/20 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/sys/isa_defs.h"
 
// 5

// 20 "/usr/include/sys/types.h"

 
// 1 "/usr/include/sys/machtypes.h"
 
// 5

 
 

 
 
 

// 15

//ident	"@(#)machtypes.h	1.13	99/05/04 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 19 "/usr/include/sys/machtypes.h"

// 23

 
// 29

// 32

typedef	struct	_label_t { long val[2]; } label_t;

// 36

typedef	unsigned char	lock_t;		 

// 42

// 25 "/usr/include/sys/types.h"

 
// 1 "/usr/include/sys/int_types.h"
 
// 5

// 38 "/usr/include/sys/types.h"

// 42

// 46

 
// 53
typedef	long long		longlong_t;
typedef	unsigned long long	u_longlong_t;
// 66

 
// 76
typedef long		t_scalar_t;	 
typedef unsigned long	t_uscalar_t;
// 79

 
// 83
typedef	unsigned char	uchar_t;
typedef	unsigned short	ushort_t;
typedef	unsigned int	uint_t;
typedef	unsigned long	ulong_t;

typedef	char		*caddr_t;	 
typedef	long		daddr_t;	 
typedef	short		cnt_t;		 

// 97
typedef	int	ptrdiff_t;		 
// 100

 
// 104
typedef	ulong_t		pfn_t;		 
typedef	ulong_t		pgcnt_t;	 
typedef	long		spgcnt_t;	 

typedef	uchar_t		use_t;		 
typedef	short		sysid_t;
typedef	short		index_t;
typedef void		*timeout_id_t;	 
typedef void		*bufcall_id_t;	 

 
// 124

// 128
typedef longlong_t	off_t;		 
// 130

// 135
typedef longlong_t	off64_t;	 
// 138

// 140

// 147
typedef u_longlong_t	ino_t;		 
typedef longlong_t	blkcnt_t;	 
typedef u_longlong_t	fsblkcnt_t;	 
typedef u_longlong_t	fsfilcnt_t;	 
// 152

// 160
typedef u_longlong_t	ino64_t;	 
typedef longlong_t	blkcnt64_t;	 
typedef u_longlong_t	fsblkcnt64_t;	 
typedef u_longlong_t	fsfilcnt64_t;	 
// 166

// 170
typedef	long		blksize_t;	 
// 172

// 176
typedef enum { B_FALSE, B_TRUE } boolean_t;
// 178

 
// 192
typedef int64_t		pad64_t;
typedef	uint64_t	upad64_t;
// 205

typedef union {
	long double	_q;
	int32_t		_l[4];
} pad128_t;

typedef union {
	long double	_q;
	uint32_t	_l[4];
} upad128_t;

typedef	longlong_t	offset_t;
typedef	u_longlong_t	u_offset_t;
typedef u_longlong_t	len_t;
typedef	u_longlong_t	diskaddr_t;
// 223

 
// 238

// 240
typedef union {
	offset_t	_f;	 
	struct {
		int32_t	_u;	 
		int32_t	_l;	 
	} _p;
} lloff_t;
// 248

// 258

// 260
typedef union {
	longlong_t	_f;	 
	struct {
		int32_t	_u;	 
		int32_t	_l;	 
	} _p;
} lldaddr_t;
// 268

typedef uint_t k_fltset_t;	 

 
// 283
typedef	long		id_t;		 
// 285

typedef id_t		lgrp_id_t;	 

 
// 292
typedef uint_t		useconds_t;	 

// 296
typedef long	suseconds_t;	 
// 298

 
// 306
typedef ulong_t	major_t;	 
typedef ulong_t	minor_t;	 
// 309

 
// 313
typedef short	pri_t;

 
// 319
typedef ushort_t	cpu_flag_t;

 
// 332
typedef	ushort_t o_mode_t;		 
typedef short	o_dev_t;		 
typedef	ushort_t o_uid_t;		 
typedef	o_uid_t	o_gid_t;		 
typedef	short	o_nlink_t;		 
typedef short	o_pid_t;		 
typedef ushort_t o_ino_t;		 


 
// 344
typedef	int	key_t;			 
// 348
typedef	ulong_t	mode_t;			 
// 350

// 356
typedef	long	uid_t;			 
// 359

typedef	uid_t	gid_t;			 

typedef id_t    taskid_t;
typedef id_t    projid_t;
typedef	id_t	poolid_t;
typedef id_t	zoneid_t;
typedef id_t	ctid_t;

 
// 373
typedef	uint_t	pthread_t;	 
typedef	uint_t	pthread_key_t;	 

 
// 381

typedef	struct _pthread_mutex {		 
	struct {
		uint16_t	__pthread_mutex_flag1;
		uint8_t		__pthread_mutex_flag2;
		uint8_t		__pthread_mutex_ceiling;
		uint16_t 	__pthread_mutex_type;
		uint16_t 	__pthread_mutex_magic;
	} __pthread_mutex_flags;
	union {
		struct {
			uint8_t	__pthread_mutex_pad[8];
		} __pthread_mutex_lock64;
		struct {
			uint32_t __pthread_ownerpid;
			uint32_t __pthread_lockword;
		} __pthread_mutex_lock32;
		upad64_t __pthread_mutex_owner64;
	} __pthread_mutex_lock;
	upad64_t __pthread_mutex_data;
} pthread_mutex_t;

typedef	struct _pthread_cond {		 
	struct {
		uint8_t		__pthread_cond_flag[4];
		uint16_t 	__pthread_cond_type;
		uint16_t 	__pthread_cond_magic;
	} __pthread_cond_flags;
	upad64_t __pthread_cond_data;
} pthread_cond_t;

 
// 415
typedef	struct _pthread_rwlock {	 
	int32_t		__pthread_rwlock_readers;
	uint16_t	__pthread_rwlock_type;
	uint16_t	__pthread_rwlock_magic;
	pthread_mutex_t	__pthread_rwlock_mutex;
	pthread_cond_t	__pthread_rwlock_readercv;
	pthread_cond_t	__pthread_rwlock_writercv;
} pthread_rwlock_t;

 
// 427
typedef struct {
	uint32_t	__pthread_barrier_count;
	uint32_t	__pthread_barrier_current;
	upad64_t	__pthread_barrier_cycle;
	upad64_t	__pthread_barrier_reserved;
	pthread_mutex_t	__pthread_barrier_lock;
	pthread_cond_t	__pthread_barrier_cond;
} pthread_barrier_t;

typedef	pthread_mutex_t	pthread_spinlock_t;

 
// 441
typedef struct _pthread_attr {
	void	*__pthread_attrp;
} pthread_attr_t;

 
// 448
typedef struct _pthread_mutexattr {
	void	*__pthread_mutexattrp;
} pthread_mutexattr_t;

 
// 455
typedef struct _pthread_condattr {
	void	*__pthread_condattrp;
} pthread_condattr_t;

 
// 462
typedef	struct _once {
	upad64_t	__pthread_once_pad[4];
} pthread_once_t;

 
// 470
typedef struct _pthread_rwlockattr {
	void	*__pthread_rwlockattrp;
} pthread_rwlockattr_t;

 
// 478
typedef struct {
	void	*__pthread_barrierattrp;
} pthread_barrierattr_t;

typedef ulong_t	dev_t;			 

// 488
typedef	ulong_t	nlink_t;		 
typedef	long	pid_t;			 
// 491

// 497
typedef	uint_t	size_t;		 
// 500

// 506
typedef int	ssize_t;	 
// 509

// 512
typedef	long		time_t;	 
// 514

// 517
typedef	long		clock_t;  
// 519

// 522
typedef	int	clockid_t;	 
// 524

// 527
typedef	int	timer_t;	 
// 529

// 531

 
typedef	unsigned char	unchar;
typedef	unsigned short	ushort;
typedef	unsigned int	uint;
typedef	unsigned long	ulong;
 

// 562

// 564

 
// 572

// 579

 
// 586

 
typedef unsigned char	u_char;
typedef unsigned short	u_short;
typedef unsigned int	u_int;
typedef unsigned long	u_long;
typedef struct _quad { int val[2]; } quad_t;	 
typedef quad_t		quad;			 
 

 
// 1 "/usr/include/sys/select.h"
 
// 5

 

 
 
 

// 14

//ident	"@(#)select.h	1.19	04/01/28 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 18 "/usr/include/sys/select.h"

// 1 "/usr/include/sys/time_impl.h"
 
// 5

 
// 15

// 18

//ident	"@(#)time_impl.h	1.11	05/05/19 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 22 "/usr/include/sys/time_impl.h"

// 26

// 28

// 33

 
// 37

typedef struct  timespec {		 
	time_t		tv_sec;		 
	long		tv_nsec;	 
} timespec_t;

// 61

typedef struct timespec timestruc_t;	 

 
// 68

// 72

 
// 76
typedef struct itimerspec {		 
	struct timespec	it_interval;	 
	struct timespec	it_value;	 
} itimerspec_t;

// 98

// 100

// 109

// 113

// 116

// 120

// 1 "/usr/include/sys/time.h"
 
 

 
 
 

 
// 13

 
// 18

// 21

//ident	"@(#)time.h	2.77	09/06/02 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 25 "/usr/include/sys/time.h"

 
// 30

// 34

// 38

// 43

// 48

struct timeval {
	time_t		tv_sec;		 
	suseconds_t	tv_usec;	 
};

// 75

// 78

// 81
struct timezone {
	int	tz_minuteswest;	 
	int	tz_dsttime;	 
};

// 88

// 92

 
// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 101 "/usr/include/sys/time.h"

// 105

// 107

// 119

 
// 130

// 132

// 134

// 136
 
// 143
				 
				 
// 146
				 
				 

// 150
struct	itimerval {
	struct	timeval it_interval;	 
	struct	timeval it_value;	 
};

// 179


// 182
 
// 189

// 191

// 193

 
// 197
typedef	longlong_t	hrtime_t;

// 318

// 321
int adjtime(struct timeval *, struct timeval *);
// 326

// 330
int futimesat(int, const char *, const struct timeval *);
// 335

// 338

// 340

int getitimer(int, struct itimerval *);
int utimes(const char *, const struct timeval *);
// 347
int setitimer(int, struct itimerval * __restrict__ ,
	struct itimerval * __restrict__ );
// 350

// 358

 
// 374

// 379
int settimeofday(struct timeval *, void *);
// 381
hrtime_t	gethrtime(void);
hrtime_t	gethrvtime(void);
// 388

// 390

// 393

// 398
int gettimeofday(struct timeval * __restrict__ , void * __restrict__ );
// 403

// 405

 
// 1 "../lib/time.h"
 
 
// 19

// 23

 
// 36

// 38

// 1 "../lib/time.h"
 
 
// 19

// 23

 
// 32

// 1 "/usr/include/time.h"
 
 

 
 
 

 
// 12

// 15

//ident	"@(#)time.h	1.45	08/01/09 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/iso/time_iso.h"
 
 

 
 
 

 
// 12

 
// 24

// 27

//ident	"@(#)time_iso.h	1.4	04/09/07 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 31 "/usr/include/iso/time_iso.h"

// 35

// 39

// 47

// 56

// 61

// 66

// 68

struct	tm {	 
	int	tm_sec;
	int	tm_min;
	int	tm_hour;
	int	tm_mday;
	int	tm_mon;
	int	tm_year;
	int	tm_wday;
	int	tm_yday;
	int	tm_isdst;
};


// 83

extern char *asctime(const struct tm *);
extern clock_t clock(void);
extern char *ctime(const time_t *);
extern double difftime(time_t, time_t);
extern struct tm *gmtime(const time_t *);
extern struct tm *localtime(const time_t *);
extern time_t mktime(struct tm *);
extern time_t time(time_t *);
extern size_t strftime(char * __restrict__ , size_t, const char * __restrict__ ,
	const struct tm * __restrict__ );

// 108

// 112

// 116

// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 1 "/usr/include/sys/time_impl.h"
 
// 5

 
// 15

// 25 "/usr/include/time.h"

 
// 45

// 49

// 54

// 59

// 61

// 65
extern struct tm *gmtime_r(const time_t * __restrict__ ,
			struct tm * __restrict__ );
extern struct tm *localtime_r(const time_t * __restrict__ ,
			struct tm * __restrict__ );
// 70

// 73

// 82

extern char *strptime(const char * __restrict__ , const char * __restrict__ ,
		struct tm * __restrict__ );

// 87

// 90
 
// 103
union sigval {
	int	sival_int;	 
	void	*sival_ptr;	 
};
// 108

// 111
struct sigevent {
	int		sigev_notify;	 
	int		sigev_signo;	 
	union sigval	sigev_value;	 
	void		(*sigev_notify_function)(union sigval);
	pthread_attr_t	*sigev_notify_attributes;
	int		__sigev_pad2;
};
// 120

extern int clock_getres(clockid_t, struct timespec *);
extern int clock_gettime(clockid_t, struct timespec *);
extern int clock_settime(clockid_t, const struct timespec *);
extern int timer_create(clockid_t, struct sigevent * __restrict__ ,
		timer_t * __restrict__ );
extern int timer_delete(timer_t);
extern int timer_getoverrun(timer_t);
extern int timer_gettime(timer_t, struct itimerspec *);
extern int timer_settime(timer_t, int, const struct itimerspec * __restrict__ ,
		struct itimerspec * __restrict__ );

extern int nanosleep(const struct timespec *, struct timespec *);
extern int clock_nanosleep(clockid_t, int,
	const struct timespec *, struct timespec *);

// 137

// 140

extern void tzset(void);
extern char *tzname[2];

 
// 147
extern long _sysconf(int);	 
// 149
				 
// 152

// 155
extern long timezone;
extern int daylight;
// 158

// 160

// 163
extern int cftime(char *, char *, const time_t *);
extern int ascftime(char *, const char *, const struct tm *);
extern long altzone;
// 167

// 170
extern struct tm *getdate(const char *);
// 176
extern int getdate_err;
// 179

// 219

 
// 223

 
// 255

// 259

// 261

// 263

//pragma	redefine_extname ctime_r __posix_ctime_r
//pragma	redefine_extname asctime_r __posix_asctime_r
// 267
extern char *asctime_r(const struct tm * __restrict__ , char * __restrict__ );
extern char *ctime_r(const time_t *, char *);
// 296

// 303

// 351

// 353

// 357

// 34 "../lib/time.h"

// 40 "../lib/time.h"

 
// 1 "/usr/include/stddef.h"
 
 

 
 
 

 
// 12

// 15

//ident	"@(#)stddef.h	1.18	04/09/28 SMI"

// 1 "/usr/include/sys/isa_defs.h"
 
// 5

// 1 "/usr/include/iso/stddef_iso.h"
 
 

 
 
 

 
// 12

 
// 24

// 27

//ident	"@(#)stddef_iso.h	1.2	03/03/06 SMI"

// 1 "/usr/include/sys/isa_defs.h"
 
// 5

// 31 "/usr/include/iso/stddef_iso.h"

// 35

// 39

// 47

// 56

// 65

// 69

// 75

// 79

// 20 "/usr/include/stddef.h"

 
// 29

// 33

 
// 42
typedef long    wchar_t;
// 47

// 51

// 43 "../lib/time.h"

 
// 47

 
// 106

 
// 114

 
// 126

 
// 136

 
// 156

 
// 174

 
// 199

 
// 217

 
// 242

 
// 270

 
// 298

// 300

 
 
// 312

 
// 315

// 329

 
// 350

 
// 360

 
// 397

 
// 422

 
// 436

 
// 457
 extern int _gl_cxxalias_dummy ;
// 460
 extern int _gl_cxxalias_dummy ;
// 477
 extern int _gl_cxxalias_dummy ;
// 480
 extern int _gl_cxxalias_dummy ;
// 482

 
// 498

 
// 516

 
// 540

// 420 "/usr/include/sys/time.h"

 
// 1 "/usr/include/sys/select.h"
 
// 5

 

 
 
 

// 432 "/usr/include/sys/time.h"

// 434

// 438

// 25 "/usr/include/sys/select.h"

// 29


// 32
 
// 44
typedef struct {		 
	unsigned int	__sigbits[4];
} sigset_t;

// 58

// 60

 
// 86

// 88
typedef	long	fd_mask;
// 90
typedef	long	fds_mask;

 
// 102

// 107

// 114

// 116
typedef	struct fd_set {
// 120
	long	fds_bits[ ( ( ( 1024 ) + ( ( ( sizeof ( fds_mask ) * 8 ) ) - 1 ) ) / ( ( sizeof ( fds_mask ) * 8 ) ) )];
} fd_set;

// 125

// 128

// 131

// 137

// 140
extern int select(int, fd_set * __restrict__ , fd_set * __restrict__ ,
	fd_set * __restrict__ , struct timeval * __restrict__ );

// 144
extern int pselect(int, fd_set * __restrict__ , fd_set * __restrict__ ,
	fd_set * __restrict__ , const struct timespec * __restrict__ ,
	const sigset_t * __restrict__ );
// 148

// 156

// 160

// 601 "/usr/include/sys/types.h"

// 603

 
// 613
 
// 615

// 619

// 72 "../lib/stdint.h"

 
// 1 "/usr/include/limits.h"
 
// 5

 
 

 
 
 

// 15

//ident	"@(#)limits.h	1.59	04/08/24 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/sys/isa_defs.h"
 
// 5

// 1 "/usr/include/iso/limits_iso.h"
 
// 5

 
 

 
 
 

 
// 24

// 27

//ident	"@(#)limits_iso.h	1.2	03/12/04 SMI"

// 33

 
// 41

// 43

// 53

// 69
					 
// 75
					 
// 77
					 
// 79
					 
// 81

// 85

// 21 "/usr/include/limits.h"

 
// 1 "/usr/include/sys/int_limits.h"
 
// 5

// 34 "/usr/include/limits.h"

// 38

// 41

// 43

 
// 56

// 60

// 64

// 66

// 70

// 72

// 74

// 78

 
// 122
 
// 128
 
// 133

 
// 137

// 146
 
// 148

// 161

// 163

// 167

 
// 173

// 179

// 181

// 183
				 
// 190

// 197

 
// 202
							 
// 205
							 
// 207

 
// 211
							 
// 213
							 
// 215

// 217

// 221

// 223

// 226

// 229

 
// 246

// 251

// 253

// 258

// 262

// 274

// 277

// 279

 
// 1 "/usr/include/sys/unistd.h"
 
// 9

 
// 14

 
// 20

// 23

//ident	"@(#)unistd.h	1.43	06/03/10 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 27 "/usr/include/sys/unistd.h"

// 31

 

// 35

 
// 39
 
// 44
 
// 49

 
// 67

 
// 86

 

 
// 98
 
// 103
 
// 108
 
// 136
 
// 157

 
// 161

 
// 167

 
// 172

// 175

 
// 191

// 196

 
// 217

 
// 226

 
// 267

 

 
// 280
 
// 284
 
// 294
 
// 302

 
// 308

 
// 315

// 323

// 331

 
// 344

// 348

// 352

// 363

 
// 368

// 372

// 286 "/usr/include/limits.h"

// 295

extern long _sysconf(int);	 

// 299
 
// 304

// 308

// 75 "../lib/stdint.h"

// 77
   
// 1 "/usr/include/inttypes.h"
 
// 5

// 8

//ident	"@(#)inttypes.h	1.4	04/04/29 SMI"

 
// 19

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/sys/inttypes.h"
 
// 5

// 8

//ident	"@(#)inttypes.h	1.3	03/12/04 SMI"

 
// 20

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/sys/int_types.h"
 
// 5

// 1 "/usr/include/sys/int_limits.h"
 
// 5

// 1 "/usr/include/sys/int_const.h"
 
// 5

// 1 "/usr/include/sys/int_fmtio.h"
 
// 5

// 8

//ident	"@(#)int_fmtio.h	1.6	04/09/28 SMI"

 
// 29

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 31 "/usr/include/sys/int_fmtio.h"

// 35

 
// 57

 
// 68

// 75

// 98

// 121

 
// 125

// 146

// 167

// 188

// 209

 
// 213

// 229

 
// 250

// 268

 
// 287

// 303

// 319

// 335

 
// 354

// 361

// 365

// 28 "/usr/include/sys/inttypes.h"

// 22 "/usr/include/inttypes.h"

// 1 "/usr/include/sys/stdint.h"
 
// 5

// 27 "/usr/include/inttypes.h"

// 31

 

 
// 57

// 60
typedef struct {
	intmax_t quot;
	intmax_t rem;
} imaxdiv_t;
// 65

// 83

// 86

// 88
extern intmax_t  imaxabs(intmax_t);
extern imaxdiv_t imaxdiv(intmax_t, intmax_t);
extern intmax_t  strtoimax(const char * __restrict__ , char ** __restrict__ ,
	int);
extern uintmax_t strtoumax(const char * __restrict__ , char ** __restrict__ ,
	int);
extern intmax_t  wcstoimax(const wchar_t * __restrict__ ,
	wchar_t ** __restrict__ , int);
extern uintmax_t wcstoumax(const wchar_t * __restrict__ ,
	wchar_t ** __restrict__ , int);
// 106

// 108

// 112

// 86 "../lib/stdint.h"

// 93

// 95

 
// 99

// 102

// 110

 

 
// 115

// 118
typedef signed char gl_int8_t;
typedef unsigned char gl_uint8_t;
// 122

// 125
typedef short int gl_int16_t;
typedef unsigned short int gl_uint16_t;
// 129

// 132
typedef int gl_int32_t;
typedef unsigned int gl_uint32_t;
// 136

 
// 151
typedef long long int gl_int64_t;
// 155

// 168
typedef unsigned long long int gl_uint64_t;
// 172

 
// 177


 

 
// 184

// 205

 

 
// 210

 
// 215

// 224
typedef long int gl_int_fast8_t;
typedef unsigned long int gl_uint_fast8_t;
typedef long int gl_int_fast16_t;
typedef unsigned long int gl_uint_fast16_t;
typedef long int gl_int_fast32_t;
typedef unsigned long int gl_uint_fast32_t;
// 242

 

// 247
typedef long int gl_intptr_t;
typedef unsigned long int gl_uintptr_t;
// 251

 

 
// 256

// 259
typedef long long int gl_intmax_t;
// 267

// 270
typedef unsigned long long int gl_uintmax_t;
// 278

 
// 282
typedef int _verify_intmax_size[2 * (sizeof ( gl_intmax_t ) == sizeof ( gl_uintmax_t )) - 1];

 

// 287

 

 
// 292

// 299

// 306

// 313

// 317
 
// 322

// 327

 

 
// 333

// 340

// 347

// 354

// 361

// 366

 

 
// 372

// 379

// 386

// 393

// 400

// 405

 

// 414

 

// 426

// 433

 

 
// 453

 
// 463


 
// 476

 
 
// 493

 
// 501

// 503

 

// 507

 
 

 
// 513

// 518

// 523

// 528

// 545

 

// 556

// 565

// 567

// 59 "../lib/stdint.h"

// 1 "../lib/stdio.h"
 
 
// 19

// 23

// 30
 

// 33

 
// 1 "../lib/stdio.h"
 
 
// 19

// 23

// 30
 

// 33

 
// 1 "/usr/include/stdio.h"
 
 

 
 
 

 
// 12

 
// 16

// 19

//ident	"@(#)stdio.h	1.84	04/09/28 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 23 "/usr/include/stdio.h"

// 27

 
// 34

 
//pragma	redefine_extname	fopen		fopen64
//pragma	redefine_extname	freopen		freopen64
//pragma	redefine_extname	tmpfile		tmpfile64
//pragma	redefine_extname	fgetpos		fgetpos64
//pragma	redefine_extname	fsetpos		fsetpos64
//pragma	redefine_extname	fseeko		fseeko64
//pragma	redefine_extname	ftello		ftello64
// 47

 
// 60

// 62

// 66

// 1 "/usr/include/iso/stdio_iso.h"
 
// 5

 
 

 
 
 

 
// 24

 
// 28

// 31

//ident	"@(#)stdio_iso.h	1.8	05/08/16 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/sys/va_list.h"
 
 

 
 
 

 
// 12

// 15

//ident	"@(#)va_list.h	1.15	04/11/19 SMI"

 
// 37

 
// 50

// 1 "/usr/include/sys/isa_defs.h"
 
// 5

// 52 "/usr/include/sys/va_list.h"

// 56

// 62

// 64

// 67

// 74

// 108

typedef  void *__va_list;

// 112

// 116

// 1 "/usr/include/stdio_tag.h"
 
// 5

// 8

//ident	"@(#)stdio_tag.h	1.4	04/09/28 SMI"

// 14

// 21
typedef struct  __FILE __FILE;
// 23

// 27

// 1 "/usr/include/stdio_impl.h"
 
// 5

// 8

//ident	"@(#)stdio_impl.h	1.15	07/03/05 SMI"

// 1 "/usr/include/sys/isa_defs.h"
 
// 5

// 12 "/usr/include/stdio_impl.h"

// 16

// 28

struct  __FILE	 
{
// 35
	int		_cnt;	 
	unsigned char	*_ptr;	 
// 38
	unsigned char	*_base;	 
	unsigned char	_flag;	 
	unsigned char	_file;  
				 
	unsigned	__orientation:2;  
	unsigned	__ionolock:1;	 
	unsigned	__seekable:1;	 
	unsigned	__extendedfd:1;	 
	unsigned	__xf_nocheck:1;	 
	unsigned	__filler:10;
};

// 51

// 55

// 38 "/usr/include/iso/stdio_iso.h"

 
// 46

// 50

// 52
 
// 58
typedef	long long	__longlong_t;
// 67

// 71

// 74
typedef	__FILE FILE;
// 76

// 85

// 89
typedef	__longlong_t	fpos_t;
// 91

// 95

// 103

// 105

 
// 117

// 119

// 125

// 130

// 134

// 137

// 142

// 144

// 146
extern __FILE	__iob[ 20 ];
// 156

// 160

// 186

// 188

extern int	remove(const char *);
extern int	rename(const char *, const char *);
extern FILE	*tmpfile(void);
extern char	*tmpnam(char *);
extern int	fclose(FILE *);
extern int	fflush(FILE *);
extern FILE	*fopen(const char * __restrict__ , const char * __restrict__ );
extern FILE	*freopen(const char * __restrict__ ,
			const char * __restrict__ , FILE * __restrict__ );
extern void	setbuf(FILE * __restrict__ , char * __restrict__ );
extern int	setvbuf(FILE * __restrict__ , char * __restrict__ , int,
			size_t);
 
extern int	fprintf(FILE * __restrict__ , const char * __restrict__ , ...);
 
extern int	fscanf(FILE * __restrict__ , const char * __restrict__ , ...);
 
extern int	printf(const char * __restrict__ , ...);
 
extern int	scanf(const char * __restrict__ , ...);
 
extern int	sprintf(char * __restrict__ , const char * __restrict__ , ...);
 
extern int	sscanf(const char * __restrict__ ,
			const char * __restrict__ , ...);
extern int	vfprintf(FILE * __restrict__ , const char * __restrict__ ,
			__va_list);
extern int	vprintf(const char * __restrict__ , __va_list);
extern int	vsprintf(char * __restrict__ , const char * __restrict__ ,
			__va_list);
extern int	fgetc(FILE *);
extern char	*fgets(char * __restrict__ , int, FILE * __restrict__ );
extern int	fputc(int, FILE *);
extern int	fputs(const char * __restrict__ , FILE * __restrict__ );
// 225
extern int	getc(FILE *);
extern int	putc(int, FILE *);
// 230
extern int	getchar(void);
extern int	putchar(int);
// 233
extern char	*gets(char *);
extern int	puts(const char *);
extern int	ungetc(int, FILE *);
extern size_t	fread(void * __restrict__ , size_t, size_t,
	FILE * __restrict__ );
extern size_t	fwrite(const void * __restrict__ , size_t, size_t,
	FILE * __restrict__ );
// 241
extern int	fgetpos(FILE * __restrict__ , fpos_t * __restrict__ );
extern int	fsetpos(FILE *, const fpos_t *);
// 244
extern int	fseek(FILE *, long, int);
extern long	ftell(FILE *);
extern void	rewind(FILE *);
// 249
extern void	clearerr(FILE *);
extern int	feof(FILE *);
extern int	ferror(FILE *);
// 253
extern void	perror(const char *);

// 256
extern int	__filbuf(FILE *);
extern int	__flsbuf(int, FILE *);
// 259

// 310

// 314

// 316

// 318

// 338

// 340

// 342

// 352

// 366

// 368

// 370

// 374

// 68 "/usr/include/stdio.h"

 
// 76

 
// 131

 
// 1 "/usr/include/iso/stdio_c99.h"
 
// 5

 
// 16

// 19

//ident	"@(#)stdio_c99.h	1.2	04/03/29 SMI"

// 25

 
// 33

// 36

// 52

// 54
extern int vfscanf(FILE * __restrict__ , const char * __restrict__ , __va_list);
extern int vscanf(const char * __restrict__ , __va_list);
extern int vsscanf(const char * __restrict__ , const char * __restrict__ ,
		__va_list);
// 68
extern int snprintf(char * __restrict__ , size_t, const char * __restrict__ ,
	...);
extern int vsnprintf(char * __restrict__ , size_t, const char * __restrict__ ,
	__va_list);
// 76

// 78

// 82

// 137 "/usr/include/stdio.h"

// 141

// 159

// 164
typedef __longlong_t	fpos64_t;
// 167

 
// 177

// 180

// 182

 
// 187

// 189

// 193

// 196

// 198
extern unsigned char	 _sibuf[], _sobuf[];
// 200

 
// 228

// 230
extern unsigned char	*_bufendtab[];
extern FILE		*_lastbuf;
// 233

 
// 248

// 250

// 254
extern char	*tmpnam_r(char *);
// 256

// 259
extern void setbuffer(FILE *, char *, size_t);
extern int setlinebuf(FILE *);
// 262

 
// 268

extern FILE	*fdopen(int, const char *);
extern char	*ctermid(char *);
extern int	fileno(FILE *);

// 274

 
// 280
extern void	flockfile(FILE *);
extern int	ftrylockfile(FILE *);
extern void	funlockfile(FILE *);
extern int	getc_unlocked(FILE *);
extern int	getchar_unlocked(void);
extern int	putc_unlocked(int, FILE *);
extern int	putchar_unlocked(int);

// 289

 
// 295
extern FILE	*popen(const char *, const char *);
extern char	*tempnam(const char *, const char *);
extern int	pclose(FILE *);
// 299
extern int	getsubopt(char **, char *const *, char **);
// 301

 
// 304
extern char	*cuserid(char *);
extern int	getopt(int, char *const *, const char *);
extern char	*optarg;
extern int	optind, opterr, optopt;
extern int	getw(FILE *);
extern int	putw(int, FILE *);
// 311

// 313

 
// 318
extern int	fseeko(FILE *, off_t, int);
extern off_t	ftello(FILE *);
// 321

 
// 328
extern FILE	*fopen64(const char *, const char *);
extern FILE	*freopen64(const char *, const char *, FILE *);
extern FILE	*tmpfile64(void);
extern int	fgetpos64(FILE *, fpos64_t *);
extern int	fsetpos64(FILE *, const fpos64_t *);
extern int	fseeko64(FILE *, off64_t, int);
extern off64_t	ftello64(FILE *);
// 336

// 409

// 411

// 436

// 438

// 442

// 36 "../lib/stdio.h"

// 39

 
// 1 "/usr/include/stdarg.h"
 
 

 
 
 

 
// 12

// 15

//ident	"@(#)stdarg.h	1.47	04/09/28 SMI"

 
// 29

// 31

// 1 "/usr/include/iso/stdarg_iso.h"
 
 

 
 
 

 
// 12

 
// 24

// 27

//ident	"@(#)stdarg_iso.h	1.4	04/11/19 SMI"

 
// 40

// 1 "/usr/include/sys/va_impl.h"
 
 

 
 
 

 
// 12

// 15

//ident	"@(#)va_impl.h	1.1	04/11/19 SMI"

 
// 33

 
// 49

 
// 58

 
// 73

 
// 86

// 1 "/usr/include/sys/va_list.h"
 
 

 
 
 

 
// 12

// 88 "/usr/include/sys/va_impl.h"

// 92

// 124

// 131

// 153

// 157

// 42 "/usr/include/iso/stdarg_iso.h"

// 46

// 53
typedef __va_list va_list;
// 55

// 59

// 63

// 1 "/usr/include/iso/stdarg_c99.h"
 
 

 
 
 

 
// 12

// 15

//ident	"@(#)stdarg_c99.h	1.2	04/09/28 SMI"

 
// 33

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 35 "/usr/include/iso/stdarg_c99.h"

// 39

 
// 48

// 50

// 52

// 56

// 34 "/usr/include/stdarg.h"

 
// 42

// 48

// 42 "../lib/stdio.h"

// 1 "/usr/include/stddef.h"
 
 

 
 
 

 
// 12

// 44 "../lib/stdio.h"

 
// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 47 "../lib/stdio.h"

// 49
 
// 59


 
// 317

 
 
// 329

 
// 346

 
// 367

 
// 377

 
// 381


// 408

// 427

// 451

 
// 456
 extern int _gl_warn_on_use ;

// 477

// 490
 extern int _gl_cxxalias_dummy ;
// 492
 extern int _gl_cxxalias_dummy ;
// 503

// 531

// 541
 extern int _gl_cxxalias_dummy ;
// 543
 extern int _gl_cxxalias_dummy ;
// 545

// 556
 extern int _gl_cxxalias_dummy ;
// 558
 extern int _gl_cxxalias_dummy ;
// 560

// 583


 
// 615

// 634

// 683

// 692


 

// 713

// 758

// 767


// 781
 extern int _gl_cxxalias_dummy ;
// 784
 extern int _gl_cxxalias_dummy ;
// 786

// 825

// 862

// 864
struct obstack;
 
// 882
 extern int obstack_printf ( struct obstack * obs , const char * format , ... )  ;
// 887
 extern int _gl_cxxalias_dummy ;
// 890
 extern int _gl_cxxalias_dummy ;
// 903
 extern int obstack_vprintf ( struct obstack * obs , const char * format , va_list args )  ;
// 908
 extern int _gl_cxxalias_dummy ;
// 911
 extern int _gl_cxxalias_dummy ;
// 913

// 934

// 955

// 980
 extern int _gl_cxxalias_dummy ;
// 982
 extern int _gl_cxxalias_dummy ;
// 993

// 1003
 extern int _gl_cxxalias_dummy ;
// 1005
 extern int _gl_cxxalias_dummy ;
// 1007

// 1017
 extern int _gl_cxxalias_dummy ;
// 1019
 extern int _gl_cxxalias_dummy ;
// 1021

// 1031
 extern int _gl_cxxalias_dummy ;
// 1033
 extern int _gl_cxxalias_dummy ;
// 1035

// 1054

// 1077

// 1106

// 1136

 
// 1145

// 1166

// 1185

// 1234

// 1263

// 1276
 
// 1279
 extern int _gl_cxxalias_dummy ;
// 1282
 extern int _gl_cxxalias_dummy ;
// 1293

// 1306
 
// 1309
 extern int _gl_cxxalias_dummy ;
// 1311
 extern int _gl_cxxalias_dummy ;
// 1322

// 1352

// 1379


// 36 "../lib/stdio.h"

// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 1 "../lib/sys/stat.h"
 
 
// 18

 

 
// 24

// 28

// 35
 

// 38

 
// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 41 "../lib/sys/stat.h"

 
// 1 "../lib/time.h"
 
 
// 19

// 23

 
// 32

// 1 "../lib/time.h"
 
 
// 19

// 23

 
// 32

// 1 "/usr/include/time.h"
 
 

 
 
 

 
// 12

// 34 "../lib/time.h"

// 34 "../lib/time.h"

// 44 "../lib/sys/stat.h"

 
// 1 "../lib/sys/stat.h"
 
 
// 18

 

 
// 24

// 28

// 35
 

// 38

 
// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 41 "../lib/sys/stat.h"

 
// 1 "../lib/time.h"
 
 
// 19

// 23

 
// 32

// 1 "../lib/time.h"
 
 
// 19

// 23

 
// 32

// 1 "/usr/include/time.h"
 
 

 
 
 

 
// 12

// 34 "../lib/time.h"

// 34 "../lib/time.h"

// 44 "../lib/sys/stat.h"

 
// 1 "/usr/include/sys/stat.h"
 
// 5

 
 
 

 
 
 
 

// 17

//ident	"@(#)stat.h	1.11	04/09/28 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 22 "/usr/include/sys/stat.h"

// 26

 
// 1 "/usr/include/sys/time_impl.h"
 
// 5

 
// 15

// 45 "/usr/include/sys/stat.h"

// 47

 
// 51

// 140

 
//pragma	redefine_extname	fstat	fstat64
//pragma	redefine_extname	stat	stat64
//pragma	redefine_extname	fstatat	fstatat64
// 152

//pragma	redefine_extname	lstat	lstat64
// 168

 
// 196

 
// 200

// 227

struct	stat {
	dev_t		st_dev;
	long		st_pad1[3];	 
	ino_t		st_ino;
	mode_t		st_mode;
	nlink_t		st_nlink;
	uid_t		st_uid;
	gid_t		st_gid;
	dev_t		st_rdev;
	long		st_pad2[2];
	off_t		st_size;
// 243
	timestruc_t	st_atim;
	timestruc_t	st_mtim;
	timestruc_t	st_ctim;
// 251
	blksize_t	st_blksize;
	blkcnt_t	st_blocks;
	char		st_fstype[ 16 ];
	long		st_pad4[8];	 
};

// 258

 
// 288

struct	stat64 {
	dev_t		st_dev;
	long		st_pad1[3];	 
	ino64_t		st_ino;
	mode_t		st_mode;
	nlink_t		st_nlink;
	uid_t		st_uid;
	gid_t		st_gid;
	dev_t		st_rdev;
	long		st_pad2[2];
	off64_t		st_size;
// 301
	timestruc_t	st_atim;
	timestruc_t	st_mtim;
	timestruc_t	st_ctim;
// 309
	blksize_t	st_blksize;
	blkcnt64_t	st_blocks;
	char		st_fstype[ 16 ];
	long		st_pad4[8];	 
};

// 317

// 327

// 329

// 386

 

 

// 412

 

// 427


// 438

 
// 443

// 458

// 460

// 462

// 465
extern int fchmod(int, mode_t);
// 467

extern int chmod(const char *, mode_t);
extern int mkdir(const char *, mode_t);
extern int mkfifo(const char *, mode_t);
extern mode_t umask(mode_t);

 
// 476
extern int fstat64(int, struct stat64 *);
extern int stat64(const char * __restrict__ , struct stat64 * __restrict__ );
extern int lstat64(const char * __restrict__ , struct stat64 * __restrict__ );
// 481
extern int fstatat64(int, const char *, struct stat64 *, int);
// 484

// 510

// 1 "/usr/include/sys/stat_impl.h"
 
// 5

// 8

//ident	"@(#)stat_impl.h	1.4	03/12/04 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 13 "/usr/include/sys/stat_impl.h"

// 17

 
// 21

// 23

// 25

extern int fstat(int, struct stat *);
extern int stat(const char * __restrict__ , struct stat * __restrict__ );
// 30
extern int fstatat(int, const char *, struct stat *, int);
// 32

// 34
extern int lstat(const char * __restrict__ , struct stat * __restrict__ );
extern int mknod(const char *, mode_t, dev_t);
// 37

// 52

// 54

// 58

// 512 "/usr/include/sys/stat.h"

// 514

// 518

// 47 "../lib/sys/stat.h"

// 50

 
// 307

 
 
// 319

 
// 336

 
// 357

 
// 367

 
// 374

// 378

// 392

// 400

// 408

// 416

// 420

// 428

// 436

// 446

// 454

// 462

// 466

// 474

// 482


// 487

// 491


// 500

// 508

 
// 513

 
// 518

 
// 523

 
// 528

 
// 537

 
// 542

// 555

// 568

// 581

// 591

 
// 596

// 600

 
// 606


// 624


// 633
 extern int _gl_cxxalias_dummy ;
// 635
 extern int _gl_cxxalias_dummy ;


// 666


// 690


// 727


// 758


// 769
 
// 786
 extern int _gl_cxxalias_dummy ;
// 789
 extern int _gl_cxxalias_dummy ;


// 806


// 832


// 848


// 874


// 892


// 918


// 948


// 47 "../lib/sys/stat.h"

// 31 "base.h"

// 1 "/usr/include/limits.h"
 
// 5

 
 

 
 
 

// 44 "base.h"

 

// 48

// 56

 
enum kwsub
  {
    kwsub_kv,                            
    kwsub_kvl,                           
    kwsub_k,                             
    kwsub_v,                             
    kwsub_o,                             
    kwsub_b                              
  };

 

// 80
 
// 89

 
// 92

 
// 95

 
// 98

 
// 101

 
// 104

 
// 107

 
// 110

 
// 113

 
// 134

 
// 137

// 142

 

// 151

 

 
// 156
 
// 158
 
// 162
 
// 164

 
// 174

 
// 177
 
// 179
 
// 181
 
// 183
 
// 185

 
// 188
 
// 190

 
// 194

struct diffcmd
{
   
  long line1;
   
  long nlines;
   
  long adprev;
   
  long dafter;
};

 
// 213

 
// 219

 
// 225

 
enum tokens
{
   
  DELIM, DIGIT, IDCHAR, NEWLN, LETTER, Letter,
  PERIOD, SBEGIN, SPACE, UNKN,
   
  COLON, ID, NUM, SEMI, STRING
};

 
// 240

 

struct cbuf                              
{
  char const *string;
  size_t size;
};

 
struct delta
{
   
  char const *num;

   
  char const *date;
  char const *author;
  char const *lockedby;

   
  char const *state;

   
  struct atat *log, *text;

   
  char const *name;

   
  struct cbuf pretty_log;

   
  struct wlink *branches;

   
  char const *commitid;

   
// 280
  struct delta *ilk;

   
   _Bool selector;

   
// 290
  off_t neck;
};

 
struct rcslock
{
  char const *login;
  struct delta *delta;
};

 
struct symdef
{
  char const *meaningful;
  char const *underlying;
};

 
// 309
struct u_symdef
{
  struct symdef u;
   _Bool override;
};

 
struct tinysym
{
   gl_uint8_t len;
   gl_uint8_t bytes[];
};
struct pool_found
{
  int i;
  struct tinysym *sym;
};

// 329

 
// 332

 
enum markers
{
  Author, Date, Header, Id,
  Locker, Log, Name, RCSfile, Revision, Source, State
};

 
// 342

 
// 345

 
// 348

struct maybe;

 
typedef struct fro * (open_rcsfile_fn) (struct maybe *);

 
// 362
struct maybe
{
   
  open_rcsfile_fn *open;
   _Bool mustread;

   
  struct cbuf tentative;

   
  struct divvy *space;

   
  struct cbuf bestfit;
  struct stat *status;
  int eno;
};

 
extern const char const prog_co[];
extern const char const prog_merge[];
extern const char const prog_diff[];
extern const char const prog_diff3[];

 
// 388
extern const char const diff_flags[];

 
extern const char const equal_line[];

 
struct program
{
   
  const char const *name;
   
  const char const *help;
   
  void (*exiterr) (void) ;
};

 
enum maker { notmade, real, effective };

struct sff
{
  char const *filename;
   
  enum maker disposition;
   
};

 
// 417
struct behavior
{
   _Bool unbufferedp;
   
// 423

   _Bool quiet;
   
// 434

   _Bool interactive_valid;                
   _Bool interactive;
   
// 442

   _Bool inclusive_of_Locker_in_Id_val;
   

   _Bool strictly_locking;
   
// 454

   _Bool version_set;
  int version;
   
// 462

   _Bool stick_with_euid;
   
// 466

  int ruid, euid;
   _Bool ruid_cached, euid_cached;
   
// 472

   _Bool already_setuid;
   
// 476

  int kws;
   
// 481

  char const *pe;
   
// 489

  struct zone_offset
  {
     _Bool valid;
     
// 496

    long seconds;
     
// 500
  } zone_offset;

  char *username;
   
// 505

  time_t now;
   
// 509

   _Bool fixed_SIGCHLD;
   
// 514

   _Bool Oerrloop;
   
// 518

  char *cwd;
   
// 522

  size_t mem_limit;
   
// 529

  struct sff *sff;
   

   
// 535

  struct isr_scratch *isr;
  struct ephemstuff *ephemstuff;
  struct maketimestuff *maketimestuff;
};

 
struct manifestation
{
   
// 547
  char *filename;

   
  FILE *standard_output;

   
// 554
  struct {
     _Bool valid;
    char *author;
    char *date;
    char *name;
    char *rev;
    char *state;
  } prev;
};

 
// 569
struct repo
{
  char const *head;
   

  char const *branch;
   

  size_t access_count;
  struct link *access;
   

  size_t symbols_count;
  struct link *symbols;
   

  size_t locks_count;
  struct link *locks;
   

   _Bool strict;
   

  struct atat *comment;
   

  int expand;
   

  size_t deltas_count;
  struct wlink *deltas;
   

  struct atat *desc;
   

  off_t neck;
   
// 613

  struct lockdef *lockdefs;
  struct hash *ht;
   
};

struct repository
{
  char const *filename;
   
// 624

  int fd_lock;
   
// 628

  struct stat stat;
   
// 632

  struct repo *r;
   
// 636

  struct delta *tip;
   
// 640

  struct cbuf log_lead;
   
// 644
};

 
struct flow
{
  struct fro *from;
   
// 652

  FILE *rewr;
   
// 656

  FILE *to;
   
// 661

  FILE *res;
   
// 665

  char const *result;
   
// 669

   _Bool erroneousp;
   
// 674
};

 
struct top
{
  struct program const *program;
  struct behavior behavior;
  struct manifestation manifestation;
  struct repository repository;
  struct flow flow;
};

extern struct top *top;

 
// 697

 
extern const char const ks_revno[];
extern  const struct tinysym ( ( tiny_ciklog ) );
extern  const struct tinysym ( ( tiny_access ) );
extern  const struct tinysym ( ( tiny_author ) );
extern  const struct tinysym ( ( tiny_branch ) );
extern  const struct tinysym ( ( tiny_branches ) );
extern  const struct tinysym ( ( tiny_comment ) );
extern  const struct tinysym ( ( tiny_commitid ) );
extern  const struct tinysym ( ( tiny_date ) );
extern  const struct tinysym ( ( tiny_desc ) );
extern  const struct tinysym ( ( tiny_expand ) );
extern  const struct tinysym ( ( tiny_head ) );
extern  const struct tinysym ( ( tiny_locks ) );
extern  const struct tinysym ( ( tiny_log ) );
extern  const struct tinysym ( ( tiny_next ) );
extern  const struct tinysym ( ( tiny_state ) );
extern  const struct tinysym ( ( tiny_strict ) );
// 719
extern  const struct tinysym ( ( tiny_symbols ) );
extern  const struct tinysym ( ( tiny_text ) );
 _Bool looking_at (struct tinysym const *sym, char const *start);
int recognize_kwsub (struct cbuf const *x);
int str2expmode (char const *s);
const char const *kwsub_string (enum kwsub i);
 _Bool recognize_keyword (char const *string, struct pool_found *found);

 
int merge ( _Bool tostdout, char const *edarg,
           char const *const label[3],
           char const *const argv[3]);

 
struct editstuff *make_editstuff (void);
void unmake_editstuff (struct editstuff *es);
int un_link (char const *s);
void openfcopy (FILE *f);
void finishedit (struct editstuff *es, struct delta const * delta,
                 FILE *outfile,  _Bool done);
void snapshotedit (struct editstuff *es, FILE *f);
void copystring (struct editstuff *es, struct atat *atat);
void enterstring (struct editstuff *es, struct atat *atat);
void editstring (struct editstuff *es, struct atat const *script,
                 struct delta const *delta);
struct fro *rcswriteopen (struct maybe *m);
int chnamemod (FILE **fromp, char const *from, char const *to,
               int set_mode, mode_t mode, time_t mtime);
int setmtime (char const *file, time_t mtime);
int findlock ( _Bool delete, struct delta **target);
int addsymbol (char const *num, char const *name,  _Bool rebind);
 _Bool checkaccesslist (void);
int dorewrite ( _Bool lockflag, int changed);
int donerewrite (int changed, time_t newRCStime);
void ORCSclose (void);
void ORCSerror (void);
void unexpected_EOF (void)
  ;
void initdiffcmd (struct diffcmd *dc);
int getdiffcmd (struct fro *finfile,  _Bool delimiter,
                FILE *foutfile, struct diffcmd *dc);

 
int rcsfcmp (struct fro *xfp, struct stat const *xstatp,
             char const *uname, struct delta const *delta);

 
char const *basefilename (char const *p);
char const *rcssuffix (char const *name);
struct fro *rcsreadopen (struct maybe *m);
int pairnames (int argc, char **argv, open_rcsfile_fn *rcsopen,
                _Bool mustread,  _Bool quiet);
char const *getfullRCSname (void);
 _Bool isSLASH (int c);

 
char const *buildrevision (struct wlink const *deltas,
                           struct delta *target,
                           FILE *outfile,  _Bool expandflag);
struct cbuf cleanlogmsg (char const *m, size_t s);
 _Bool ttystdin (void);
int getcstdin (void);
 _Bool yesorno ( _Bool default_answer, char const *question, ...)
  ;
void write_desc_maybe (FILE *to);
void putdesc (struct cbuf *cb,  _Bool textflag, char *textfile);
struct cbuf getsstdin (char const *option, char const *name, char const *note);
void format_assocs (FILE *out, char const *fmt);
void format_locks (FILE *out, char const *fmt);
void putadmin (void);
void puttree (struct delta const *root, FILE *fout);
 _Bool putdtext (struct delta const *delta, char const *srcname,
               FILE *fout,  _Bool diffmt);
void putstring (FILE *out,  _Bool delim, struct cbuf s,  _Bool log);
void putdftext (struct delta const *delta, struct fro *finfile,
                FILE *foutfile,  _Bool diffmt);

 
 _Bool getoldkeys (struct fro *);

 
extern const enum tokens const ctab[];
char const *checkid (char const *id, int delimiter);
char const *checksym (char const *sym, int delimiter);
void checksid (char const *id);
void checkssym (char const *sym);

 
int countnumflds (char const *s);
struct cbuf take (size_t count, char const *ref);
int cmpnum (char const *num1, char const *num2);
int cmpnumfld (char const *num1, char const *num2, int fld);
int cmpdate (char const *d1, char const *d2);
int compartial (char const *num1, char const *num2, int length);
struct delta *genrevs (char const *revno, char const *date,
                       char const *author, char const *state,
                       struct wlink **store);
struct delta *gr_revno (char const *revno, struct wlink **store);
struct delta *delta_from_ref (char const *ref);
 _Bool fully_numeric (struct cbuf *ans, char const *source, struct fro *fp);
char const *namedrev (char const *name, struct delta *delta);
char const *tiprev (void);

 
void time2date (time_t unixtime, char date[ ( 16 + 16 )]);
void str2date (char const *source, char target[ ( 16 + 16 )]);
time_t date2time (char const source[ ( 16 + 16 )]);
void zone_set (char const *s);
char const *date2str (char const date[ ( 16 + 16 )],
                      char datebuf[ ( 16 + 16 ) +  9 ]);

 
void exit_failurefully (void)
  ;
void exit_diff_trouble (void)
  ;
void gnurcs_init (struct program const *program);
void bad_option (char const *option);
void redefined (int c);
struct cbuf minus_p (char const *xrev, char const *rev);
void parse_revpairs (char option, char *arg,
                     void (*put) (char const *b, char const *e,  _Bool sawsep));
void ffree (void);
char *str_save (char const *s);
char *cgetenv (char const *name);
void awrite (char const *buf, size_t chars, FILE *f);
int runv (int infd, char const *outname, char const **args);
int run (int infd, char const *outname, ...);
void setRCSversion (char const *str);
int getRCSINIT (int argc, char **argv, char ***newargv);

 
// 853

 

 
// 858

// 860

// 863

 
// 872

// 874

// 876

// 878

// 880

// 882

// 887

// 891

// 895

// 898

// 901

 
// 1 "/usr/include/stdbool.h"
 
// 5

// 1 "../lib/obstack.h"
 
// 18

 
// 100


 

// 106

 
// 111

// 1 "/usr/include/stddef.h"
 
 

 
 
 

 
// 12

// 118 "../lib/obstack.h"

 
// 122

// 124

 
// 131

// 135

// 1 "../lib/string.h"
 
 
// 19

// 21

// 25

 
// 1 "../lib/string.h"
 
 
// 19

// 21

// 25

 
// 1 "/usr/include/string.h"
 
 

 
 
 

 
// 12

// 15

//ident	"@(#)string.h	1.27	07/01/14 SMI"

// 1 "/usr/include/iso/string_iso.h"
 
 

 
 
 

 
// 12

 
// 24

// 27

//ident	"@(#)string_iso.h	1.5	04/06/18 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 31 "/usr/include/iso/string_iso.h"

// 35

// 39

// 48

// 56

// 58

extern int memcmp(const void *, const void *, size_t);
extern void *memcpy(void * __restrict__ , const void * __restrict__ , size_t);
extern void *memmove(void *, const void *, size_t);
extern void *memset(void *, int, size_t);
extern char *strcat(char * __restrict__ , const char * __restrict__ );
extern int strcmp(const char *, const char *);
extern char *strcpy(char * __restrict__ , const char * __restrict__ );
extern int strcoll(const char *, const char *);
extern size_t strcspn(const char *, const char *);
extern char *strerror(int);
extern size_t strlen(const char *);
extern char *strncat(char * __restrict__ , const char * __restrict__ , size_t);
extern int strncmp(const char *, const char *, size_t);
extern char *strncpy(char * __restrict__ , const char * __restrict__ , size_t);
extern size_t strspn(const char *, const char *);
extern char *strtok(char * __restrict__ , const char * __restrict__ );
extern size_t strxfrm(char * __restrict__ , const char * __restrict__ , size_t);

 
// 129
extern void *memchr(const void *, int, size_t);
extern char *strchr(const char *, int);
extern char *strpbrk(const char *, const char *);
extern char *strrchr(const char *, int);
extern char *strstr(const char *, const char *);
// 135

// 162

// 166

// 170

// 19 "/usr/include/string.h"

 
// 49

// 53

// 55

// 59
extern int strerror_r(int, char *, size_t);
// 61

// 65
extern char *strtok_r(char * __restrict__ , const char * __restrict__ ,
	char ** __restrict__ );
// 68

// 71
extern void *memccpy(void * __restrict__ , const void * __restrict__ ,
		int, size_t);
// 74

// 77
extern int uucopy(const void * __restrict__ , void * __restrict__ , size_t);
extern int uucopystr(const void * __restrict__ , void * __restrict__ , size_t);
extern char *strsignal(int);
extern int ffs(int);
extern int strcasecmp(const char *, const char *);
extern int strncasecmp(const char *, const char *, size_t);
extern size_t strlcpy(char *, const char *, size_t);
extern size_t strlcat(char *, const char *, size_t);
// 86

// 90
extern char *strdup(const char *);
// 92

// 126

// 130

// 28 "../lib/string.h"

// 31

 
// 1 "/usr/include/stddef.h"
 
 

 
 
 

 
// 12

// 34 "../lib/string.h"

 
// 39

// 46
 
// 52

 
 
// 59

 
// 316

 
 
// 328

 
// 345

 
// 366

 
// 376


 
// 394
   
// 397
 extern int _gl_cxxalias_dummy ;
// 407
 extern int _gl_cxxalias_dummy ;
// 415

 
// 451

 
// 472

 
// 500

 
// 530

 
// 548

 
// 583

// 593

 
// 621

 
// 649

 
// 671

 
// 697

 
// 727

// 739

 
// 778

// 788

// 798

 
// 837

// 876

 
// 925

 
// 988


 
// 992

// 1011

// 1018

// 1038

// 1058

// 1067

// 1078

// 1092

// 1105

// 1115

// 1125

// 1145

// 1155

// 1174

// 1195

 
// 1215

// 1239

// 1254


// 28 "../lib/string.h"

// 137 "../lib/obstack.h"

// 141

struct _obstack_chunk            
{
  char  *limit;                  
  struct _obstack_chunk *prev;   
  char  contents[4];             
};

struct obstack           
{
  long  chunk_size;              
  struct _obstack_chunk *chunk;  
  char  *object_base;            
  char  *next_free;              
  char  *chunk_limit;            
  union
  {
     ptrdiff_t tempint;
    void *tempptr;
  } temp;                        
  int   alignment_mask;          
   
// 165
  struct _obstack_chunk *(*chunkfun) (void *, long);
  void (*freefun) (void *, struct _obstack_chunk *);
  void *extra_arg;               
  unsigned use_extra_arg:1;      
  unsigned maybe_empty_object:1; 
// 173
  unsigned alloc_failed:1;       
// 176
};

 

extern void _obstack_newchunk (struct obstack *, int);
extern int _obstack_begin (struct obstack *, int, int,
                            void *(*) (long), void (*) (void *));
extern int _obstack_begin_1 (struct obstack *, int, int,
                             void *(*) (void *, long),
                             void (*) (void *, void *), void *);
extern int _obstack_memory_used (struct obstack *);

 
// 193
extern void  obstack_free ( struct obstack * obstack , void * block );


 
// 200
extern void (*obstack_alloc_failed_handler) (void);

 
extern int obstack_exit_failure;

 
// 208

// 210

 

// 214

 

// 218

 

// 222

 
// 228

// 233

// 238

// 243

// 246

// 249

// 251

// 253

// 255

// 409

// 412

// 415

// 421

 
// 427

// 432

// 439

// 447

// 452

// 457

// 462

// 465

// 468

// 474

// 477

// 480

// 483

// 497

// 505

// 507

// 511

// 1 "../lib/stdlib.h"
 
 
// 18

// 22

// 29
 

// 32

 
// 1 "../lib/stdlib.h"
 
 
// 18

// 22

// 29
 

// 32

 
// 1 "/usr/include/stdlib.h"
 
// 5

 
 

 
 
 

// 15

//ident	"@(#)stdlib.h	1.51	04/06/30 SMI"

// 1 "/usr/include/iso/stdlib_iso.h"
 
// 5

 
 

 
 
 

 
// 24

// 27

//ident	"@(#)stdlib_iso.h	1.9	04/09/28 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 31 "/usr/include/iso/stdlib_iso.h"

// 35

// 37
extern unsigned char	__ctype[];
// 43

// 47

typedef	struct {
	int	quot;
	int	rem;
} div_t;

typedef struct {
	long	quot;
	long	rem;
} ldiv_t;

// 66

// 74

// 78

 
// 104

// 106

extern void abort(void) ;
extern int abs(int);
extern int atexit(void (*)(void));
extern double atof(const char *);
extern int atoi(const char *);
extern long int atol(const char *);
extern void *bsearch(const void *, const void *, size_t, size_t,
	int (*)(const void *, const void *));
// 121
extern void *calloc(size_t, size_t);
extern div_t div(int, int);
extern void exit(int)
	;
extern void free(void *);
extern char *getenv(const char *);
extern long int labs(long);
extern ldiv_t ldiv(long, long);
extern void *malloc(size_t);
extern int mblen(const char *, size_t);
extern size_t mbstowcs(wchar_t * __restrict__ , const char * __restrict__ ,
	size_t);
extern int mbtowc(wchar_t * __restrict__ , const char * __restrict__ , size_t);
extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *));
// 140
extern int rand(void);
extern void *realloc(void *, size_t);
extern void srand(unsigned int);
extern double strtod(const char * __restrict__ , char ** __restrict__ );
extern long int strtol(const char * __restrict__ , char ** __restrict__ , int);
extern unsigned long int strtoul(const char * __restrict__ ,
	char ** __restrict__ , int);
extern int system(const char *);
extern int wctomb(char *, wchar_t);
extern size_t wcstombs(char * __restrict__ , const wchar_t * __restrict__ ,
	size_t);

// 158

// 191

// 195

// 199

// 1 "/usr/include/iso/stdlib_c99.h"
 
// 5

 
// 16

// 19

//ident	"@(#)stdlib_c99.h	1.2	04/03/29 SMI"

// 25

 
// 33

// 35
typedef struct {
	long long	quot;
	long long	rem;
} lldiv_t;
// 40

// 42

// 45

extern void _Exit(int);
extern float strtof(const char * __restrict__ , char ** __restrict__ );
extern long double strtold(const char * __restrict__ , char ** __restrict__ );

// 51
extern long long atoll(const char *);
extern long long llabs(long long);
extern lldiv_t lldiv(long long, long long);
extern long long strtoll(const char * __restrict__ , char ** __restrict__ ,
	int);
extern unsigned long long strtoull(const char * __restrict__ ,
	char ** __restrict__ , int);
// 59

// 61

// 81

// 85

// 20 "/usr/include/stdlib.h"

// 1 "../lib/sys/wait.h"
 
 
// 18


// 21

// 25

 
// 1 "../lib/sys/wait.h"
 
 
// 18


// 21

// 25

 
// 1 "/usr/include/sys/wait.h"
 
 

 
 
 

 
// 12

// 15

//ident	"@(#)wait.h	1.23	04/06/03 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 19 "/usr/include/sys/wait.h"

// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 21 "/usr/include/sys/wait.h"

// 1 "/usr/include/sys/resource.h"
 
// 5

 
 

 
 
 

// 15

//ident	"@(#)resource.h	1.37	07/02/07 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 19 "/usr/include/sys/resource.h"

// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 1 "/usr/include/sys/time.h"
 
 

 
 
 

 
// 13

 
// 18

// 22 "/usr/include/sys/resource.h"

// 26

 
// 40

 
// 52

// 54

// 64

 
// 78

typedef u_longlong_t	rlim_t;

// 84

// 86

// 88

// 105

struct rlimit {
	rlim_t	rlim_cur;		 
	rlim_t	rlim_max;		 
};

 
// 113

typedef u_longlong_t	rlim64_t;

// 119

struct rlimit64 {
	rlim64_t	rlim_cur;	 
	rlim64_t	rlim_max;	 
};

// 126

 
// 138

// 141

// 143


struct	rusage {
	struct timeval ru_utime;	 
	struct timeval ru_stime;	 
	long	ru_maxrss;		 
	long	ru_ixrss;		 
	long	ru_idrss;		 
	long	ru_isrss;		 
	long	ru_minflt;		 
	long	ru_majflt;		 
	long	ru_nswap;		 
	long	ru_inblock;		 
	long	ru_oublock;		 
	long	ru_msgsnd;		 
	long	ru_msgrcv;		 
	long	ru_nsignals;		 
	long	ru_nvcsw;		 
	long	ru_nivcsw;		 
};

// 168

// 191


// 200

// 204


// 207
 
//pragma	redefine_extname	setrlimit	setrlimit64
//pragma	redefine_extname	getrlimit	getrlimit64
// 219

// 234

// 236

extern int setrlimit(int, const struct rlimit *);
extern int getrlimit(int, struct rlimit *);

 
// 243
extern int setrlimit64(int, const struct rlimit64 *);
extern int getrlimit64(int, struct rlimit64 *);
// 246

extern int getpriority(int, id_t);
extern int setpriority(int, id_t, int);
extern int getrusage(int, struct rusage *);

// 268

// 270

// 274

// 1 "/usr/include/sys/siginfo.h"
 
// 5

 
 

 
// 13

 
 
 

// 20

//ident	"@(#)siginfo.h	1.59	04/07/15 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 25 "/usr/include/sys/siginfo.h"

// 29

// 32

 
// 44

// 55

// 64

// 67

 
// 83

 
// 89

// 104

// 106

// 109
 
// 113

// 116

// 127

// 129
 
// 133

// 1 "/usr/include/sys/machsig.h"
 
 

 
 
 

 
// 12

// 15

//ident	"@(#)machsig.h	1.15	99/08/15 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 19 "/usr/include/sys/machsig.h"

// 23

 
// 27

 
// 35

// 37

 
// 41

// 50

// 54

 
// 58

// 64

 
// 68

// 80

 
// 84

// 90

 
// 94

// 103

// 105

// 109

// 135 "/usr/include/sys/siginfo.h"

 
// 139

// 149

 
// 153

// 160

// 164

 
// 168

// 175

// 179

// 181

// 183
 
// 186

// 189

// 191

// 194

// 202

 
// 1 "/usr/include/sys/time_impl.h"
 
// 5

 
// 15

// 217 "/usr/include/sys/siginfo.h"

 
// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 225 "/usr/include/sys/siginfo.h"

// 227
typedef struct siginfo { 		 
// 231
	int	si_signo;			 
	int 	si_code;			 
	int	si_errno;			 
// 237
	union {

		int	__pad[ ( ( 128 / sizeof ( int ) ) - 3 )];		 

		struct {			 
			pid_t	__pid;		 
			union {
				struct {
					uid_t	__uid;
// 248
					union sigval	__value;
// 252
				} __kill;
				struct {
					clock_t __utime;
					int	__status;
					clock_t __stime;
				} __cld;
			} __pdata;
			ctid_t	__ctid;		 
			zoneid_t __zoneid;	 
		} __proc;

		struct {	 
			void 	*__addr;	 
			int	__trapno;	 
			caddr_t	__pc;		 
		} __fault;

		struct {			 
		 
			int	__fd;		 
			long	__band;
		} __file;

		struct {			 
			caddr_t	__faddr;	 
// 278
			timestruc_t __tstamp;	 
// 282
			short	__syscall;	 
			char	__nsysarg;	 
			char	__fault;	 
			long	__sysarg[8];	 
			int	__mstate[10];	 
		} __prof;

		struct {			 
			 gl_int32_t	__entity;	 
		} __rctl;
	} __data;

} siginfo_t;

// 361

 
// 366

// 368

typedef struct k_siginfo {
	int	si_signo;			 
	int 	si_code;			 
	int	si_errno;			 
// 376
	union {
		struct {			 
			pid_t	__pid;		 
			union {
				struct {
					uid_t	__uid;
					union sigval	__value;
				} __kill;
				struct {
					clock_t __utime;
					int	__status;
					clock_t __stime;
				} __cld;
			} __pdata;
			ctid_t	__ctid;		 
			zoneid_t __zoneid;	 
		} __proc;

		struct {	 
			void 	*__addr;	 
			int	__trapno;	 
			caddr_t	__pc;		 
		} __fault;

		struct {			 
		 
			int	__fd;		 
			long	__band;
		} __file;

		struct {			 
			caddr_t	__faddr;	 

// 410
			timestruc_t __tstamp;	 
// 414
			short	__syscall;	 
			char	__nsysarg;	 
			char	__fault;	 
			 
			 
			 
		} __prof;

		struct {			 
			 gl_int32_t	__entity;	 
		} __rctl;

	} __data;

} k_siginfo_t;

typedef struct sigqueue {
	struct sigqueue	*sq_next;
	k_siginfo_t	sq_info;
	void		(*sq_func)(struct sigqueue *);  
	void		*sq_backptr;	 
					 
	int		sq_external;	 
} sigqueue_t;

 
// 441

// 443

// 466

// 468


// 476

// 480

// 1 "/usr/include/sys/procset.h"
 
// 5

 
 

 
 
 

// 15

//ident	"@(#)procset.h	1.25	04/07/16 SMI"

// 21

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/sys/types.h"
 
 

 
 
 

 
// 12

// 1 "/usr/include/sys/signal.h"
 
// 5

 
 

 
 
 

// 15

//ident	"@(#)signal.h	1.66	04/09/28 SMI"

// 1 "/usr/include/sys/feature_tests.h"
 
// 5

// 1 "/usr/include/sys/iso/signal_iso.h"
 
// 5

 
 

 
 
 

 
// 24

// 27

//ident	"@(#)signal_iso.h	1.6	03/05/02 SMI"

// 1 "/usr/include/sys/unistd.h"
 
// 9

 
// 14

 
// 20

// 31 "/usr/include/sys/iso/signal_iso.h"

// 35

// 79

 
// 83
extern long _sysconf(int);	 
// 86

// 106

// 111

// 113

// 117

// 124

// 128

// 20 "/usr/include/sys/signal.h"

// 24

// 27

// 31
 
// 1 "/usr/include/sys/siginfo.h"
 
// 5

 
 

 
// 13

 
 
 

// 36 "/usr/include/sys/signal.h"

 
// 55

typedef	struct {
	unsigned int	__sigbits[2];
} k_sigset_t;

 
// 70

 
// 74
struct sigaction {
	int sa_flags;
	union {
// 80
		void (*_handler)();
// 85
		void (*_sigaction)(int, siginfo_t *, void *);
// 87
	}	_funcptr;
	sigset_t sa_mask;
// 90
	int sa_resv[2];
// 92
};
// 95

// 111

 
// 115

// 119

			 

 
// 127

// 133

// 138

 
// 141

// 143
 
// 150

// 153

// 156

 
// 161
typedef struct sigaltstack {
// 165
	void	*ss_sp;
	size_t	ss_size;
	int	ss_flags;
} stack_t;

// 181

// 183

// 185

// 188

 
typedef struct signotify_id {		 
	pid_t	sn_pid;			 
	int	sn_index;		 
	int	sn_pad;			 
} signotify_id_t;

// 207

 

// 213

// 215

 
// 220
struct sigstack {
	void	*ss_sp;
	int	ss_onstack;
};
// 225

 
// 233

// 311

// 315

// 25 "/usr/include/sys/procset.h"

 
// 35


 
// 42
typedef enum
// 44
	idtype		 
// 46
		{
	P_PID,		 
	P_PPID,		 
	P_PGID,		 
			 
	P_SID,		 
	P_CID,		 
	P_UID,		 
	P_GID,		 
	P_ALL,		 
	P_LWPID,	 
	P_TASKID,	 
	P_PROJID,	 
	P_POOLID,	 
	P_ZONEID,	 
	P_CTID,		 
	P_CPUID,	 
	P_PSETID	 
} idtype_t;


 
// 73
typedef enum idop {
	POP_DIFF,	 
			 
			 
	POP_AND,	 
			 
			 
	POP_OR,		 
			 
			 
	POP_XOR		 
			 
			 
} idop_t;


 
// 94
typedef struct procset {
	idop_t		p_op;	 
				 
				 
				 

	idtype_t	p_lidtype;
				 
				 
	id_t		p_lid;	 

	idtype_t	p_ridtype;
				 
				 
	id_t		p_rid;	 
} procset_t;

 
// 121

// 123

// 137

// 141

// 27 "/usr/include/sys/wait.h"

// 31

 
// 35

// 38


// 48

 
// 52

// 54

// 59

// 63

// 66

// 68

// 77


// 81

extern pid_t wait(int *);
extern pid_t waitpid(pid_t, int *, int);

// 86
extern int waitid(idtype_t, id_t, siginfo_t *, int);
 
// 89
extern pid_t wait3(int *, int, struct rusage *);
// 92

// 94
extern pid_t wait4(pid_t, int *, int, struct rusage *);
// 96

// 115

// 119

// 30 "../lib/sys/wait.h"

// 33

// 35
 

 
// 42

 
// 54

 
// 59

 
// 64

 
// 69

 
// 74

// 78

 

// 84

// 114

// 30 "../lib/sys/wait.h"

// 24 "/usr/include/stdlib.h"

 
// 62

// 66

// 75

// 77

 
// 80

//pragma	redefine_extname	mkstemp		mkstemp64
// 86

// 88

 
// 99

// 103
extern int rand_r(unsigned int *);
// 105

extern void _exithandle(void);

// 111
extern double drand48(void);
extern double erand48(unsigned short *);
extern long jrand48(unsigned short *);
extern void lcong48(unsigned short *);
extern long lrand48(void);
extern long mrand48(void);
extern long nrand48(unsigned short *);
extern unsigned short *seed48(unsigned short *);
extern void srand48(long);
extern int putenv(char *);
extern void setkey(const char *);
// 123

 
// 143

extern void swab(const char *, char *, ssize_t);
// 146

// 150
extern int	mkstemp(char *);
// 152

// 155
extern int	mkstemp64(char *);
// 157

// 161
extern long a64l(const char *);
extern char *ecvt(double, int, int * __restrict__ , int * __restrict__ );
extern char *fcvt(double, int, int * __restrict__ , int * __restrict__ );
extern char *gcvt(double, int, char *);
extern int getsubopt(char **, char *const *, char **);
extern int  grantpt(int);
extern char *initstate(unsigned, char *, size_t);
extern char *l64a(long);
extern char *mktemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char * __restrict__ , char * __restrict__ );
extern char *setstate(const char *);
extern void srandom(unsigned);
extern int  unlockpt(int);
 
// 178
extern int ttyslot(void);
extern void *valloc(size_t);
// 182

// 186
extern int posix_openpt(int);
extern int setenv(const char *, const char *, int);
extern int unsetenv(const char *);
// 190

// 193
extern void closefrom(int);
extern int dup2(int, int);
extern int fdwalk(int (*)(void *, int), void *);
extern char *qecvt(long double, int, int *, int *);
extern char *qfcvt(long double, int, int *, int *);
extern char *qgcvt(long double, int, char *);
extern char *getcwd(char *, size_t);
extern const char *getexecname(void);
extern char *getlogin(void);
extern int getopt(int, char *const *, const char *);
extern char *optarg;
extern int optind, opterr, optopt;
extern char *getpass(const char *);
extern char *getpassphrase(const char *);
extern int getpw(uid_t, char *);
extern int isatty(int);
extern void *memalign(size_t, size_t);
extern char *ttyname(int);

// 213
extern char *lltostr(long long, char *);
extern char *ulltostr(unsigned long long, char *);
// 216

// 218

// 313

// 317

// 35 "../lib/stdlib.h"

// 38

 
// 1 "/usr/include/stddef.h"
 
 

 
 
 

 
// 12

// 41 "../lib/stdlib.h"

 
// 46

 
// 51

 
// 57

// 1 "../lib/stdint.h"
 
 
// 19

 
// 24

// 62 "../lib/stdlib.h"

// 64
struct random_data
{
   gl_int32_t *fptr;                 
   gl_int32_t *rptr;                 
   gl_int32_t *state;                
  int rand_type;                 
  int rand_deg;                  
  int rand_sep;                  
   gl_int32_t *end_ptr;              
};
// 75

// 82

// 88

 
// 345

 
 
// 357

 
// 374

 
// 395

 
// 405


 
// 411
 
// 419


// 422
 
// 427
 extern int _gl_cxxalias_dummy ;
 extern int _gl_cxxalias_dummy ;
// 436


// 453

// 472

// 496

// 515

// 543

// 559

// 578

// 597

// 624

// 654

// 685

// 710

// 726

// 740


// 749

// 764

// 781

// 800

// 817


// 837

// 861

// 877

// 908

// 933

// 958

// 983

// 999

// 1023


// 35 "../lib/stdlib.h"

// 1 "b-complain.h"
 
// 20

extern void unbuffer_standard_error (void);
extern void vcomplain (char const *fmt, va_list args);
extern void complain (char const *fmt, ...)
  ;
extern void diagnose (char const *fmt, ...)
  ;
extern void syserror (int e, char const *who);
extern void generic_warn (char const *who, char const *fmt, ...)
  ;
extern void generic_error (char const *who, char const *fmt, ...)
  ;
extern void generic_fatal (char const *who, char const *fmt, ...)
   ;
extern void fatal_syntax (size_t lno, char const *fmt, ...)
   ;
extern void fatal_sys (char const *who)
  ;

 
// 41

// 43

// 47

// 51

// 54

// 56

 
// 1 "b-divvy.h"
 
// 20

struct divvy
{
  char const *name;
  void *space;
  void *first;
  size_t count;
};

extern struct divvy *shared;
extern struct divvy *single;

extern struct divvy *make_space (const char const name[]);
extern void *alloc (struct divvy *divvy, char const *what, size_t len);
extern void *zlloc (struct divvy *divvy, char const *what, size_t len);
extern char *intern (struct divvy *divvy, char const *s, size_t len);
extern void brush_off (struct divvy *divvy, void *ptr);
extern void forget (struct divvy *divvy);
extern void accf (struct divvy *divvy, char const *fmt, ...);
extern void accumulate_byte (struct divvy *divvy, int c);
extern void accumulate_range (struct divvy *divvy,
                              char const *beg, char const *end);
extern char *finish_string (struct divvy *divvy, size_t *result_len);
extern void *pointer_array (struct divvy *divvy, size_t count);
extern void close_space (struct divvy *divvy);

 

// 50

// 55

// 59

 
// 27 "b-divvy.c"

struct divvy *shared;
struct divvy *single;

static void
oom (void)
{
   generic_fatal ( 0 , "out of memory" );
}

static void *
allocate (size_t size,  _Bool clearp)
{
  void *p = (clearp
             ? calloc (1, size)
             : malloc (size));

  if (!p)
    oom ();
  return p;
}

// 51

static void *
xmalloc (size_t size)
{
  return allocate (size,  0 );
}

// 60

struct divvy *
make_space (const char const name[])
{
  struct divvy *divvy =  allocate ( sizeof ( struct divvy ) , 1 );

  divvy->name = name;
  divvy->space =  allocate ( sizeof ( struct obstack ) , 1 );
  obstack_alloc_failed_handler = oom;
   _obstack_begin ( ( divvy -> space ) , 0 , 0 , ( void * ( * ) ( long ) ) xmalloc , ( void ( * ) ( void * ) ) free );
  divvy->first =  ( ( ( struct obstack * ) divvy -> space ) -> next_free );
// 74
  divvy->count = 0;
  return divvy;
}

// 83

void *
alloc (struct divvy *divvy, char const *what , size_t len)
{
// 90
  divvy->count++;
  return  ( ( ( ( divvy -> space ) ) -> temp . tempint = ( ( len ) ) , ( ( ( ( divvy -> space ) ) -> chunk_limit - ( ( divvy -> space ) ) -> next_free < ( ( divvy -> space ) ) -> temp . tempint ) ? ( _obstack_newchunk ( ( ( divvy -> space ) ) , ( ( divvy -> space ) ) -> temp . tempint ) , 0 ) : 0 ) , ( ( ( divvy -> space ) ) -> next_free += ( ( ( divvy -> space ) ) -> temp . tempint ) ) ) , ( ( ( ( divvy -> space ) ) -> next_free == ( ( divvy -> space ) ) -> object_base ? ( ( ( ( divvy -> space ) ) -> maybe_empty_object = 1 ) , 0 ) : 0 ) , ( ( divvy -> space ) ) -> temp . tempptr = ( ( divvy -> space ) ) -> object_base , ( ( divvy -> space ) ) -> next_free = ( ( sizeof ( ptrdiff_t ) < sizeof ( void * ) ? ( ( ( divvy -> space ) ) -> object_base ) : ( char * ) 0 ) + ( ( ( ( ( divvy -> space ) ) -> next_free ) - ( sizeof ( ptrdiff_t ) < sizeof ( void * ) ? ( ( ( divvy -> space ) ) -> object_base ) : ( char * ) 0 ) + ( ( ( divvy -> space ) ) -> alignment_mask ) ) & ~ ( ( ( divvy -> space ) ) -> alignment_mask ) ) ) , ( ( ( ( divvy -> space ) ) -> next_free - ( char * ) ( ( divvy -> space ) ) -> chunk > ( ( divvy -> space ) ) -> chunk_limit - ( char * ) ( ( divvy -> space ) ) -> chunk ) ? ( ( ( divvy -> space ) ) -> next_free = ( ( divvy -> space ) ) -> chunk_limit ) : 0 ) , ( ( divvy -> space ) ) -> object_base = ( ( divvy -> space ) ) -> next_free , ( ( divvy -> space ) ) -> temp . tempptr ) );
}

void *
zlloc (struct divvy *divvy, char const *what, size_t len)
{
  return memset (alloc (divvy, what, len), 0, len);
}

char *
intern (struct divvy *divvy, char const *s, size_t len)
{
// 109
  divvy->count++;
  return  ( ( ( ( divvy -> space ) ) -> temp . tempint = ( ( len ) ) , ( ( ( ( divvy -> space ) ) -> next_free + ( ( divvy -> space ) ) -> temp . tempint + 1 > ( ( divvy -> space ) ) -> chunk_limit ) ? ( _obstack_newchunk ( ( ( divvy -> space ) ) , ( ( divvy -> space ) ) -> temp . tempint + 1 ) , 0 ) : 0 ) , memcpy ( ( ( divvy -> space ) ) -> next_free , ( s ) , ( ( divvy -> space ) ) -> temp . tempint ) , ( ( divvy -> space ) ) -> next_free += ( ( divvy -> space ) ) -> temp . tempint , * ( ( ( divvy -> space ) ) -> next_free ) ++ = 0 ) , ( ( ( ( divvy -> space ) ) -> next_free == ( ( divvy -> space ) ) -> object_base ? ( ( ( ( divvy -> space ) ) -> maybe_empty_object = 1 ) , 0 ) : 0 ) , ( ( divvy -> space ) ) -> temp . tempptr = ( ( divvy -> space ) ) -> object_base , ( ( divvy -> space ) ) -> next_free = ( ( sizeof ( ptrdiff_t ) < sizeof ( void * ) ? ( ( ( divvy -> space ) ) -> object_base ) : ( char * ) 0 ) + ( ( ( ( ( divvy -> space ) ) -> next_free ) - ( sizeof ( ptrdiff_t ) < sizeof ( void * ) ? ( ( ( divvy -> space ) ) -> object_base ) : ( char * ) 0 ) + ( ( ( divvy -> space ) ) -> alignment_mask ) ) & ~ ( ( ( divvy -> space ) ) -> alignment_mask ) ) ) , ( ( ( ( divvy -> space ) ) -> next_free - ( char * ) ( ( divvy -> space ) ) -> chunk > ( ( divvy -> space ) ) -> chunk_limit - ( char * ) ( ( divvy -> space ) ) -> chunk ) ? ( ( ( divvy -> space ) ) -> next_free = ( ( divvy -> space ) ) -> chunk_limit ) : 0 ) , ( ( divvy -> space ) ) -> object_base = ( ( divvy -> space ) ) -> next_free , ( ( divvy -> space ) ) -> temp . tempptr ) );
}

void
brush_off (struct divvy *divvy, void *ptr)
{
// 119
  divvy->count--;
   ( ( divvy -> space ) -> temp . tempint = ( char * ) ( ptr ) - ( char * ) ( divvy -> space ) -> chunk , ( ( ( ( divvy -> space ) -> temp . tempint > 0 && ( divvy -> space ) -> temp . tempint < ( divvy -> space ) -> chunk_limit - ( char * ) ( divvy -> space ) -> chunk ) ) ? ( int ) ( ( divvy -> space ) -> next_free = ( divvy -> space ) -> object_base = ( divvy -> space ) -> temp . tempint + ( char * ) ( divvy -> space ) -> chunk ) : ( ( ( obstack_free ) ( ( divvy -> space ) , ( divvy -> space ) -> temp . tempint + ( char * ) ( divvy -> space ) -> chunk ) , 0 ) , 0 ) ) );
}

void
forget (struct divvy *divvy)
{
// 131
   ( ( divvy -> space ) -> temp . tempint = ( char * ) ( divvy -> first ) - ( char * ) ( divvy -> space ) -> chunk , ( ( ( ( divvy -> space ) -> temp . tempint > 0 && ( divvy -> space ) -> temp . tempint < ( divvy -> space ) -> chunk_limit - ( char * ) ( divvy -> space ) -> chunk ) ) ? ( int ) ( ( divvy -> space ) -> next_free = ( divvy -> space ) -> object_base = ( divvy -> space ) -> temp . tempint + ( char * ) ( divvy -> space ) -> chunk ) : ( ( ( obstack_free ) ( ( divvy -> space ) , ( divvy -> space ) -> temp . tempint + ( char * ) ( divvy -> space ) -> chunk ) , 0 ) , 0 ) ) );
  divvy->count = 0;
}

void
accf (struct divvy *divvy, char const *fmt, ...)
{
  va_list args;

   ( ( void ) ( ( args ) = ( __va_list ) & __builtin_va_alist ) );
  obstack_vprintf (divvy->space, fmt, args);
   ( ( void ) 0 );
}

void
accumulate_byte (struct divvy *divvy, int c)
{
   ( ( ( ( divvy -> space ) -> next_free + 1 > ( divvy -> space ) -> chunk_limit ) ? ( _obstack_newchunk ( ( divvy -> space ) , 1 ) , 0 ) : 0 ) , ( * ( ( divvy -> space ) -> next_free ) ++ = ( c ) ) );
}

void
accumulate_range (struct divvy *divvy, char const *beg, char const *end)
{
  struct obstack *o = divvy->space;

  while (beg < end)
     ( ( ( ( o ) -> next_free + 1 > ( o ) -> chunk_limit ) ? ( _obstack_newchunk ( ( o ) , 1 ) , 0 ) : 0 ) , ( * ( ( o ) -> next_free ) ++ = ( * beg ++ ) ) );
}

char *
finish_string (struct divvy *divvy, size_t *result_len)
{
  struct obstack *o = divvy->space;
  char *rv;

  *result_len =  ( unsigned ) ( ( o ) -> next_free - ( o ) -> object_base );
   ( ( ( ( o ) -> next_free + 1 > ( o ) -> chunk_limit ) ? ( _obstack_newchunk ( ( o ) , 1 ) , 0 ) : 0 ) , ( * ( ( o ) -> next_free ) ++ = ( '\0' ) ) );
  rv =  ( ( ( o ) -> next_free == ( o ) -> object_base ? ( ( ( o ) -> maybe_empty_object = 1 ) , 0 ) : 0 ) , ( o ) -> temp . tempptr = ( o ) -> object_base , ( o ) -> next_free = ( ( sizeof ( ptrdiff_t ) < sizeof ( void * ) ? ( ( o ) -> object_base ) : ( char * ) 0 ) + ( ( ( ( o ) -> next_free ) - ( sizeof ( ptrdiff_t ) < sizeof ( void * ) ? ( ( o ) -> object_base ) : ( char * ) 0 ) + ( ( o ) -> alignment_mask ) ) & ~ ( ( o ) -> alignment_mask ) ) ) , ( ( ( o ) -> next_free - ( char * ) ( o ) -> chunk > ( o ) -> chunk_limit - ( char * ) ( o ) -> chunk ) ? ( ( o ) -> next_free = ( o ) -> chunk_limit ) : 0 ) , ( o ) -> object_base = ( o ) -> next_free , ( o ) -> temp . tempptr );
// 172
  return rv;
}

void *
pointer_array (struct divvy *divvy, size_t count)
{
  struct obstack *o = divvy->space;

// 184
  while (count--)
     ( ( ( ( o ) -> next_free + sizeof ( char * ) > ( o ) -> chunk_limit ) ? ( _obstack_newchunk ( ( o ) , sizeof ( char * ) ) , 0 ) : 0 ) , ( ( ( const void * * ) ( ( o ) -> next_free += sizeof ( void * ) ) ) [ - 1 ] = ( 0 ) ) );
  return  ( ( ( o ) -> next_free == ( o ) -> object_base ? ( ( ( o ) -> maybe_empty_object = 1 ) , 0 ) : 0 ) , ( o ) -> temp . tempptr = ( o ) -> object_base , ( o ) -> next_free = ( ( sizeof ( ptrdiff_t ) < sizeof ( void * ) ? ( ( o ) -> object_base ) : ( char * ) 0 ) + ( ( ( ( o ) -> next_free ) - ( sizeof ( ptrdiff_t ) < sizeof ( void * ) ? ( ( o ) -> object_base ) : ( char * ) 0 ) + ( ( o ) -> alignment_mask ) ) & ~ ( ( o ) -> alignment_mask ) ) ) , ( ( ( o ) -> next_free - ( char * ) ( o ) -> chunk > ( o ) -> chunk_limit - ( char * ) ( o ) -> chunk ) ? ( ( o ) -> next_free = ( o ) -> chunk_limit ) : 0 ) , ( o ) -> object_base = ( o ) -> next_free , ( o ) -> temp . tempptr );
}

void
close_space (struct divvy *divvy)
{
   ( ( divvy -> space ) -> temp . tempint = ( char * ) ( 0 ) - ( char * ) ( divvy -> space ) -> chunk , ( ( ( ( divvy -> space ) -> temp . tempint > 0 && ( divvy -> space ) -> temp . tempint < ( divvy -> space ) -> chunk_limit - ( char * ) ( divvy -> space ) -> chunk ) ) ? ( int ) ( ( divvy -> space ) -> next_free = ( divvy -> space ) -> object_base = ( divvy -> space ) -> temp . tempint + ( char * ) ( divvy -> space ) -> chunk ) : ( ( ( obstack_free ) ( ( divvy -> space ) , ( divvy -> space ) -> temp . tempint + ( char * ) ( divvy -> space ) -> chunk ) , 0 ) , 0 ) ) );
  divvy->count = 0;
  divvy->first =  0 ;
  free (divvy->space);
  divvy->space =  0 ;
  free (divvy);
}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.