🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.bug
Article #6340

2.7.1internal error in 2.7.1 on alphas-osf3.2a

#6340
From: Bill Tutt
Date: Thu, 30 Nov 1995 00:00
8181 lines
62207 bytes
While compling Python 1.3
this happened:
Reading specs from /usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/specs

gcc version 2.7.1
/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/cpp -lang-c -v -I./../Include -I.. -undef -D__GNUC__=2 -D__GNUC_MINOR__=7 -Dunix -D__osf__ -D__alpha -D__alpha__ -D_LONGLONG -DSYSTYPE_BSD -D_SYSTYPE_BSD -D__unix__ -D__osf__ -D__alpha -D__alpha__ -D_LONGLONG -D__SYSTYPE_BSD__ -D_SYSTYPE_BSD -D__unix -D__SYSTYPE_BSD -Asystem(unix) -Asystem(xpg4) -Acpu(alpha) -Amachine(alpha) -D__OPTIMIZE__ -D__LANGUAGE_C__ -D__LANGUAGE_C -DLANGUAGE_C -DHAVE_CONFIG_H ./selectmodule.c /tmp/ccaafeca.i
GNU CPP version 2.7.1
#include "..." search starts here:
#include <...> search starts here:
 ./../Include
 ..
 /usr/local/include
 /usr/local/alpha-dec-osf3.2/include
 /usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include
 /usr/include
End of search list.
 /usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/cc1 /tmp/ccaafeca.i -quiet -dumpbase selectmodule.c -O -version -o /tmp/ccaafeca.s
GNU C version 2.7.1 compiled by CC.
gcc: Internal compiler error: program cc1 got fatal signal 6

Stop.

gcc -E of the file yields:

# 1 "selectmodule.c"
 























 

# 1 "../Include/allobjects.h" 1


 

 























 

 





# 46 "../Include/allobjects.h"



# 1 "../config.h" 1
 
 

 



 


 

 


 
 

 
 

 


 

 

 
 

 
 

 
 

 
 

 

 

 
 

 


 
 

 


 


 
 

 
 

 

 

 

 

 
 

 
 

 

 

 
 

 


 



 
 

 
 

 
 

 



 
 

 
 

 



 
 

 







 
 

 
 

 
 

 


 


 


 
 

 


 
 

 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 
 

 


 


 


 


 


 


 


 


 


 


 


 


 
 

 


 


 


 


 
 

 
 

 
 

 


 


 


 


 


 


 


 
 

 


 


 
 

 
 

 
 

 
 
# 49 "../Include/allobjects.h" 2







# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 1 3

# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdarg.h" 1 3
 


































# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/va-alpha.h" 1 3
 

 




 




typedef struct {
  char *__base;			 
  int __offset;			 
} __gnuc_va_list;


 

# 99 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/va-alpha.h" 3


# 36 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdarg.h" 2 3

# 98 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdarg.h" 3









# 171 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdarg.h" 3




# 2 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 2 3

 





















 


 

 
 



 


 









                                                                   




# 1 "/usr/include/standards.h" 1 3
 





















 


 

 
 



 


 













 












                                                                   



 






































 
















 
 















# 155 "/usr/include/standards.h" 3

















# 53 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 2 3


 










 





		





typedef unsigned long   size_t;




typedef long    fpos_t;


 








 










 













# 1 "/usr/include/sys/seek.h" 1 3
 





















 


 


 



 






 











# 120 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 2 3


typedef struct {
	int	_cnt;
	unsigned char	*_ptr;
	unsigned char	*_base;
	int	_bufsiz;
	short	_flag;
	short	_file;




	char	*__newbase;
	void	*_lock;			 
	unsigned char	*_bufendp;
} FILE;

extern FILE	_iob[];












 
extern size_t	fread  (void *, size_t, size_t, FILE *)  ;
extern size_t	fwrite  (const void *, size_t, size_t, FILE *)  ;
 


 
extern int	_flsbuf  (int, FILE *)  ;
extern int	_filbuf  (FILE *)  ;
extern int 	ferror  (FILE *)  ;
extern int 	feof  (FILE *)  ;
extern void 	clearerr  (FILE *)  ;
extern int 	putchar  (int)  ;
extern int 	getchar  (void)  ;
extern int 	putc  (int, FILE *)  ;
extern int 	getc  (FILE *)  ;
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 *, const char *)  ;
extern FILE 	*freopen  (const char *, const char *, FILE *)  ;
extern void 	setbuf  (FILE *, char *)  ;
extern int 	setvbuf  (FILE *, char *, int, size_t)  ;
extern int	fprintf  (FILE *, const char *, ...)  ;
extern int	fscanf  (FILE *, const char *, ...)  ;
extern int	printf  (const char *, ...)  ;
extern int	scanf  (const char *, ...)  ;
extern int	sprintf  (char *, const char *, ...)  ;
extern int	sscanf  (const char *, const char *, ...)  ;








# 1 "/usr/include/va_list.h" 1 3
 





















 


 


 



 


 











 

 

















typedef struct {
	char	**_a0;		 
	int	_offset;		 
} va_list;

# 84 "/usr/include/va_list.h" 3

# 191 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 2 3

extern int  vfprintf  (FILE *, const char *, __gnuc_va_list)  ;
extern int  vprintf  (const char *, __gnuc_va_list)  ;
extern int  vsprintf  (char *, const char *, __gnuc_va_list)  ;
# 203 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 3



extern int 	fgetc  (FILE *)  ;
extern char 	*fgets  (char *, int, FILE *)  ;
extern int 	fputc  (int, FILE *)  ;
extern int 	fputs  (const char *, FILE *)  ;
extern char 	*gets  (char *)  ;
extern int 	puts  (const char *)  ;
extern int	ungetc  (int, FILE *)  ;
extern int	fgetpos  (FILE *, fpos_t *)  ;
extern int 	fseek  (FILE *, long, int)  ;
extern int	fsetpos  (FILE *, const fpos_t *)  ;
extern long	ftell  (FILE *)  ;
extern void	rewind  (FILE *)  ;
extern void 	perror  (const char *)  ;










 













 

# 284 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 3


# 337 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 3















 








# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/types.h" 1 3
 





















 


 

 
 

 



 


 














 













 














 








typedef long int ptrdiff_t;









# 115 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/types.h" 3





    typedef unsigned int wchar_t;







typedef unsigned int wctype_t;









typedef int            time_t;




typedef int             clock_t;


# 155 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/types.h" 3









typedef long                    ssize_t;  


 


typedef	unsigned char	uchar_t;
typedef	unsigned short	ushort_t;
typedef	unsigned int	uint_t;
typedef unsigned long	ulong_t;
typedef	volatile unsigned char	vuchar_t;
typedef	volatile unsigned short	vushort_t;
typedef	volatile unsigned int	vuint_t;
typedef volatile unsigned long	vulong_t;




typedef	struct	{ long r[1]; } *physadr_t;
 



typedef	struct	label_t	{
	long	val[10];
} label_t;


# 201 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/types.h" 3
































typedef int		level_t;
typedef	int		daddr_t;	 
typedef	char *		caddr_t;	 
typedef long *		qaddr_t;         
typedef char *          addr_t;
typedef	uint_t		ino_t;		 
typedef short		cnt_t;
typedef int		dev_t;		 
typedef	int		chan_t;		 




typedef long    off_t;			 


typedef unsigned long	rlim_t;		 
typedef	int		paddr_t;
typedef	ushort_t	nlink_t;



typedef int    		key_t;		 




typedef	uint_t		mode_t;		 




typedef uint_t		uid_t;		 




typedef uint_t		gid_t;		 




typedef	void *		mid_t;		 




typedef	int		pid_t;		 


typedef char		slab_t[12];	 

typedef ulong_t		shmatt_t;	 
typedef ulong_t		msgqnum_t;	 
typedef ulong_t		msglen_t;	 



        typedef unsigned int wint_t;          


 


typedef unsigned long	sigset_t;



 




typedef long            timer_t;         


















typedef void (*sig_t)  (int,void (*)(int))  ;

 






typedef pid_t		id_t;		 
					 
					 
					 
					 



 


typedef uint_t	major_t;       
typedef uint_t	minor_t;       
typedef uint_t	devs_t;        
typedef uint_t	unit_t;        

 






 










# 1 "/usr/include/mach/machine/vm_types.h" 1 3
 





















 


 

 
 





















 



 



 






 






typedef	unsigned long	vm_offset_t;
typedef	unsigned long	vm_size_t;



# 368 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/types.h" 2 3


 


typedef	uchar_t		uchar;
typedef	ushort_t	ushort;
typedef	uint_t		uint;
typedef ulong_t		ulong;

typedef	physadr_t	physadr;


 
typedef	uchar_t		u_char;
typedef	ushort_t 	u_short;
typedef	uint_t		u_int;
typedef	ulong_t		u_long;
typedef	vuchar_t	vu_char;
typedef	vushort_t 	vu_short;
typedef	vuint_t		vu_int;
typedef	vulong_t	vu_long;




typedef struct  _quad { int val[2]; } quad;


typedef	long	swblk_t;
typedef u_long	fixpt_t;

# 1 "/usr/include/sys/select.h" 1 3
 





















 


 

 
 

 



 




 








# 115 "/usr/include/sys/select.h" 3




 






 









 

typedef int	fd_mask;






typedef	struct fd_set {
	fd_mask	fds_bits[((( 4096   )+((  (sizeof(fd_mask) * 8 )  )-1))/(  (sizeof(fd_mask) * 8 )  )) ];
} fd_set;







 
extern void  bzero  (char *, int)  ;  
struct timeval;
int select  (int, fd_set *, fd_set *, fd_set *, struct timeval *)  ;
 





# 400 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/types.h" 2 3







# 361 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 2 3





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




extern char *cuserid  (char *)  ;
 













 
# 1 "/usr/include/getopt.h" 1 3
 





















 


 


 


 
 












extern int getopt  (int, char * const [], const char *)  ;




extern char *optarg;
extern int optind;
extern int optopt;
extern int opterr;


# 389 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 2 3

 



 
extern char	*ctermid  (char *)  ;
extern int 	getw  (FILE *)  ;
extern int 	pclose  (FILE *)  ;
extern int 	putw  (int, FILE*)  ;
extern FILE 	*popen  (const char *, const char *)  ;
extern char 	*tempnam  (const char*, const char*)  ;
 






# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/limits.h" 1 3
 





















 


 

 
 



 


 
















 









                                                                   





 










# 1 "/usr/include/machine/machlimits.h" 1 3
 





















 


 

 
 



 


 


 

































					 



					 







 



# 80 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/limits.h" 2 3





 











 















 










 













 



# 1 "/usr/include/sys/syslimits.h" 1 3
 





















 


 

 
 

 



 


 











































# 142 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/limits.h" 2 3








 

















 







					 
 

















































# 1 "/usr/include/machine/machtime.h" 1 3
 





















 


 

 
 





















 



 


 



 









# 227 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/limits.h" 2 3








                       
 




# 1 "/usr/include/sys/rt_limits.h" 1 3
 





















 


 


 

























































# 241 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/sys/limits.h" 2 3




# 408 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 2 3


 









 
















 
extern void 	setbuffer  (FILE *, char*, int)  ;
extern void 	setlinebuf  (FILE *)  ;
 



# 485 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdio.h" 3





# 56 "../Include/allobjects.h" 2

# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/string.h" 1 3
 





















 


 

 
 

 



 




 














 









 














# 94 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/string.h" 3

 
extern void	*memchr(const void *, int , size_t );
extern void	*memcpy(void *, const void *, size_t );
extern void	*memset(void *, int , size_t );
extern size_t 	strcspn(const char *, const char *);
extern size_t	strlen(const char *);
extern size_t	strspn(const char *, const char *);
 



# 129 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/string.h" 3


 
extern void 	*memmove(void *, const void *, size_t );
extern char 	*strcpy(char *, const char *);
extern char 	*strncpy(char *, const char *, size_t );
extern char 	*strcat(char *, const char *);
extern char	*strncat(char *, const char *, size_t );
extern int 	memcmp(const void *, const void *,size_t );
extern int	strcmp(const char *, const char *);
extern int	strcoll(const char *, const char *);
extern int	strncmp(const char *,const char *,size_t );
extern size_t 	strxfrm(char *, const char *, 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 *);
extern char 	*strtok(char *, const char *);
extern char 	*strerror(int);





 















 
extern void	*memccpy(void *, const void *, int , size_t );
 












 
extern void	swab(const void *, void *, ssize_t);
 








# 212 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/string.h" 3


 
extern int  ffs(int);
extern void  bzero(char *, int);
extern int  bcmp(const char *, const char *, int);
extern void bcopy(const char *, char *, int);
extern char *strdup(const char *);
extern int  strcasecmp(const char *, const char *);
extern int  strncasecmp(const char *, const char *, size_t );
extern char *index(const char*, int);
extern char *rindex(const char*, int);
extern char *basename(char *);
extern char *dirname(char *);





 






# 57 "../Include/allobjects.h" 2

# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/errno.h" 1 3
 





















 


 

 
 



 


 
 







                                                                   





 








 

 





# 77 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/errno.h" 3









extern int errno;




 
int _Geterrno  (void)  ;
int _Seterrno  (int)  ;
 






































 


			 

 





 

	 













	 













	 



 




 




 















 



 







 


 



 













 








 
 























 
extern void perror  (const char *)  ;
 

extern char *sys_errlist[];
extern int sys_nerr;




extern int errno;
# 58 "../Include/allobjects.h" 2


# 1 "../Include/myproto.h" 1






 






































# 1 "../Include/rename2.h" 1






 























 







 



































































































































































































































































































































































































# 46 "../Include/myproto.h" 2




# 60 "../Include/allobjects.h" 2






# 1 "../Include/object.h" 1






 



























 

 














































# 92 "../Include/object.h"


















 
typedef struct _object {
	int ob_refcnt; struct _typeobject *ob_type; 
} PyObject;

typedef struct {
	int ob_refcnt; struct _typeobject *ob_type;  int ob_size; 
} varobject;


 















typedef PyObject * (*unaryfunc)  (PyObject *)  ;
typedef PyObject * (*binaryfunc)  (PyObject *, PyObject *)  ;
typedef PyObject * (*ternaryfunc)  (PyObject *, PyObject *, PyObject *)  ;
typedef int (*inquiry)  (PyObject *)  ;
typedef int (*coercion)  (PyObject **, PyObject **)  ;
typedef PyObject *(*intargfunc)  (PyObject *, int)  ;
typedef PyObject *(*intintargfunc)  (PyObject *, int, int)  ;
typedef int(*intobjargproc)  (PyObject *, int, PyObject *)  ;
typedef int(*intintobjargproc)  (PyObject *, int, int, PyObject *)  ;
typedef int(*objobjargproc)  (PyObject *, PyObject *, PyObject *)  ;

typedef struct {
	binaryfunc nb_add;
	binaryfunc nb_subtract;
	binaryfunc nb_multiply;
	binaryfunc nb_divide;
	binaryfunc nb_remainder;
	binaryfunc nb_divmod;
	ternaryfunc nb_power;
	unaryfunc nb_negative;
	unaryfunc nb_positive;
	unaryfunc nb_absolute;
	inquiry nb_nonzero;
	unaryfunc nb_invert;
	binaryfunc nb_lshift;
	binaryfunc nb_rshift;
	binaryfunc nb_and;
	binaryfunc nb_xor;
	binaryfunc nb_or;
	coercion nb_coerce;
	unaryfunc nb_int;
	unaryfunc nb_long;
	unaryfunc nb_float;
	unaryfunc nb_oct;
	unaryfunc nb_hex;
} PyNumberMethods;

typedef struct {
	inquiry sq_length;
	binaryfunc sq_concat;
	intargfunc sq_repeat;
	intargfunc sq_item;
	intintargfunc sq_slice;
	intobjargproc sq_ass_item;
	intintobjargproc sq_ass_slice;
} PySequenceMethods;

typedef struct {
	inquiry mp_length;
	binaryfunc mp_subscript;
	objobjargproc mp_ass_subscript;
} PyMappingMethods;

typedef void (*destructor)  (PyObject *)  ;
typedef int (*printfunc)  (PyObject *, FILE *, int)  ;
typedef PyObject *(*getattrfunc)  (PyObject *, char *)  ;
typedef int (*setattrfunc)  (PyObject *, char *, PyObject *)  ;
typedef int (*cmpfunc)  (PyObject *, PyObject *)  ;
typedef PyObject *(*reprfunc)  (PyObject *)  ;
typedef long (*hashfunc)  (PyObject *)  ;

typedef struct _typeobject {
	int ob_refcnt; struct _typeobject *ob_type;  int ob_size; 
	char *tp_name;  
	int tp_basicsize, tp_itemsize;  
	
	 
	
	destructor tp_dealloc;
	printfunc tp_print;
	getattrfunc tp_getattr;
	setattrfunc tp_setattr;
	cmpfunc tp_compare;
	reprfunc tp_repr;
	
	 
	
	PyNumberMethods *tp_as_number;
	PySequenceMethods *tp_as_sequence;
	PyMappingMethods *tp_as_mapping;

	 

	hashfunc tp_hash;
	ternaryfunc tp_call;
	reprfunc tp_str;

	 
	long tp_xxx1;
	long tp_xxx2;
	long tp_xxx3;
	long tp_xxx4;

	char *tp_doc;  








} PyTypeObject;

extern  PyTypeObject   PyType_Type;  



 
extern int PyObject_Print  (PyObject *, FILE *, int)  ;
extern PyObject * PyObject_Repr  (PyObject *)  ;
extern PyObject * PyObject_Str  (PyObject *)  ;
extern int PyObject_Compare  (PyObject *, PyObject *)  ;
extern PyObject *PyObject_GetAttrString  (PyObject *, char *)  ;
extern int PyObject_SetAttrString  (PyObject *, char *, PyObject *)  ;
extern int PyObject_HasAttrString  (PyObject *, char *)  ;
extern PyObject *PyObject_GetAttr  (PyObject *, PyObject *)  ;
extern int PyObject_SetAttr  (PyObject *, PyObject *, PyObject *)  ;
extern long PyObject_Hash  (PyObject *)  ;
extern int PyObject_IsTrue  (PyObject *)  ;
extern int PyCallable_Check  (PyObject *)  ;

 


 
















































# 325 "../Include/object.h"














 




 






 






extern  PyObject   _Py_NoneStruct;  




 




























 


























































# 66 "../Include/allobjects.h" 2

# 1 "../Include/objimpl.h" 1






 























 


















extern PyObject *_PyObject_New  (PyTypeObject *)  ;
extern varobject *_PyObject_NewVar  (PyTypeObject *, int)  ;








# 67 "../Include/allobjects.h" 2


# 1 "../Include/accessobject.h" 1






 























 

 















extern  PyTypeObject   PyAccess_Type;



PyObject *PyAccess_FromValue  (PyObject *, PyObject *, PyTypeObject *, int)  ;
PyObject *PyAccess_AsValue  (PyObject *, PyObject *)  ;
int PyAccess_SetValue  (PyObject *, PyObject *, PyObject *)  ;

void PyAccess_SetOwner  (PyObject *, PyObject *)  ;
PyObject *PyAccess_Clone  (PyObject *)  ;
int PyAccess_HasValue  (PyObject *)  ;

extern  PyTypeObject   PyAnyNumber_Type, PyAnySequence_Type, PyAnyMapping_Type;





# 69 "../Include/allobjects.h" 2

# 1 "../Include/intobject.h" 1






 























 

 














typedef struct {
	int ob_refcnt; struct _typeobject *ob_type; 
	long ob_ival;
} PyIntObject;

extern  PyTypeObject   PyInt_Type;



extern PyObject *PyInt_FromLong  (long)  ;
extern long PyInt_AsLong  (PyObject *)  ;


 










extern  PyIntObject   _Py_ZeroStruct, _Py_TrueStruct;  




 






# 70 "../Include/allobjects.h" 2

# 1 "../Include/longobject.h" 1






 























 

typedef struct _longobject PyLongObject;  

extern  PyTypeObject   PyLong_Type;



extern PyObject *PyLong_FromLong  (long)  ;
extern PyObject *PyLong_FromDouble  (double)  ;
extern long PyLong_AsLong  (PyObject *)  ;
extern double PyLong_AsDouble  (PyObject *)  ;

PyObject *PyLong_FromString  (char *, char **, int)  ;





# 71 "../Include/allobjects.h" 2

# 1 "../Include/floatobject.h" 1






 























 

 



typedef struct {
	int ob_refcnt; struct _typeobject *ob_type; 
	double ob_fval;
} PyFloatObject;

extern  PyTypeObject   PyFloat_Type;



extern PyObject *PyFloat_FromDouble  (double)  ;
extern double PyFloat_AsDouble  (PyObject *)  ;

 






# 72 "../Include/allobjects.h" 2

# 1 "../Include/rangeobject.h" 1
 























 

 







extern  PyTypeObject   PyRange_Type;



extern PyObject *PyRange_New  (long, long, long, int)  ;
# 73 "../Include/allobjects.h" 2

# 1 "../Include/stringobject.h" 1






 























 

 














 

typedef struct {
	int ob_refcnt; struct _typeobject *ob_type;  int ob_size; 



	char ob_sval[1];
} PyStringObject;

extern  PyTypeObject   PyString_Type;



extern PyObject *PyString_FromStringAndSize  (char *, int)  ;
extern PyObject *PyString_FromString  (char *)  ;
extern int PyString_Size  (PyObject *)  ;
extern char *PyString_AsString  (PyObject *)  ;
extern void PyString_Concat  (PyObject **, PyObject *)  ;
extern void PyString_ConcatAndDel  (PyObject **, PyObject *)  ;
extern int _PyString_Resize  (PyObject **, int)  ;
extern PyObject *PyString_Format  (PyObject *, PyObject *)  ;

 






# 74 "../Include/allobjects.h" 2

# 1 "../Include/tupleobject.h" 1






 























 

 













typedef struct {
	int ob_refcnt; struct _typeobject *ob_type;  int ob_size; 
	PyObject *ob_item[1];
} PyTupleObject;

extern  PyTypeObject   PyTuple_Type;



extern PyObject *PyTuple_New  (int size)  ;
extern int PyTuple_Size  (PyObject *)  ;
extern PyObject *PyTuple_GetItem  (PyObject *, int)  ;
extern int PyTuple_SetItem  (PyObject *, int, PyObject *)  ;
extern PyObject *PyTuple_GetSlice  (PyObject *, int, int)  ;
extern int _PyTuple_Resize  (PyObject **, int, int)  ;

 


 






# 75 "../Include/allobjects.h" 2

# 1 "../Include/listobject.h" 1






 























 

 













typedef struct {
	int ob_refcnt; struct _typeobject *ob_type;  int ob_size; 
	PyObject **ob_item;
} PyListObject;

extern  PyTypeObject   PyList_Type;



extern PyObject *PyList_New  (int size)  ;
extern int PyList_Size  (PyObject *)  ;
extern PyObject *PyList_GetItem  (PyObject *, int)  ;
extern int PyList_SetItem  (PyObject *, int, PyObject *)  ;
extern int PyList_Insert  (PyObject *, int, PyObject *)  ;
extern int PyList_Append  (PyObject *, PyObject *)  ;
extern PyObject *PyList_GetSlice  (PyObject *, int, int)  ;
extern int PyList_SetSlice  (PyObject *, int, int, PyObject *)  ;
extern int PyList_Sort  (PyObject *)  ;
extern int PyList_Reverse  (PyObject *)  ;
extern PyObject *PyList_AsTuple  (PyObject *)  ;

 






# 76 "../Include/allobjects.h" 2

# 1 "../Include/mappingobject.h" 1






 























 
 

extern  PyTypeObject   PyDict_Type;



extern PyObject *PyDict_New  (void)  ;
extern PyObject *PyDict_GetItem  (PyObject *mp, PyObject *key)  ;
extern int PyDict_SetItem  (PyObject *mp, PyObject *key, PyObject *item)  ;
extern int PyDict_DelItem  (PyObject *mp, PyObject *key)  ;
extern void PyDict_Clear  (PyObject *mp)  ;
extern int PyDict_Next
	 (PyObject *mp, int *pos, PyObject **key, PyObject **value)  ;
extern PyObject *PyDict_Keys  (PyObject *mp)  ;
extern PyObject *PyDict_Values  (PyObject *mp)  ;
extern PyObject *PyDict_Items  (PyObject *mp)  ;
extern int PyDict_Size  (PyObject *mp)  ;

extern PyObject *PyDict_GetItemString  (PyObject *dp, char *key)  ;
extern int PyDict_SetItemString  (PyObject *dp, char *key, PyObject *item)  ;
extern int PyDict_DelItemString  (PyObject *dp, char *key)  ;





# 77 "../Include/allobjects.h" 2

# 1 "../Include/methodobject.h" 1






 























 

extern  PyTypeObject   PyCFunction_Type;



typedef PyObject *(*PyCFunction)   (PyObject *, PyObject *)    ;
typedef PyObject *(*PyCFunctionWithKeywords)
	  (PyObject *, PyObject *, PyObject *)    ;

extern PyCFunction PyCFunction_GetFunction  (PyObject *)  ;
extern PyObject *PyCFunction_GetSelf  (PyObject *)  ;
extern int PyCFunction_GetFlags  (PyObject *)  ;

struct PyMethodDef {
	char		*ml_name;
	PyCFunction	ml_meth;
	int		ml_flags;
	char		*ml_doc;
};
typedef struct PyMethodDef PyMethodDef;

extern PyObject *Py_FindMethod
	 (PyMethodDef[], PyObject *, char *)  ;

extern PyObject *PyCFunction_New
	 (PyMethodDef *, PyObject *)  ;

 



typedef struct PyMethodChain {
	PyMethodDef *methods;		 
	struct PyMethodChain *link;	 
} PyMethodChain;

extern PyObject *Py_FindMethodInChain
	 (PyMethodChain *, PyObject *, char *)  ;





# 78 "../Include/allobjects.h" 2

# 1 "../Include/moduleobject.h" 1






 























 

extern  PyTypeObject   PyModule_Type;



extern PyObject *PyModule_New  (char *)  ;
extern PyObject *PyModule_GetDict  (PyObject *)  ;
extern char *PyModule_GetName  (PyObject *)  ;





# 79 "../Include/allobjects.h" 2

# 1 "../Include/funcobject.h" 1






 























 

typedef struct {
	int ob_refcnt; struct _typeobject *ob_type; 
	PyObject *func_code;
	PyObject *func_globals;
	PyObject *func_defaults;
	PyObject *func_doc;
	PyObject *func_name;
} PyFunctionObject;

extern  PyTypeObject   PyFunction_Type;



extern PyObject *PyFunction_New  (PyObject *, PyObject *)  ;
extern PyObject *PyFunction_GetCode  (PyObject *)  ;
extern PyObject *PyFunction_GetGlobals  (PyObject *)  ;
extern PyObject *PyFunction_GetDefaults  (PyObject *)  ;
extern int PyFunction_SetDefaults  (PyObject *, PyObject *)  ;





# 80 "../Include/allobjects.h" 2

# 1 "../Include/classobject.h" 1






 























 







 

typedef struct {
	int ob_refcnt; struct _typeobject *ob_type; 
	PyObject	*cl_bases;	 
	PyObject	*cl_dict;	 
	PyObject	*cl_name;	 
	 
	PyObject	*cl_getattr;
	PyObject	*cl_setattr;
	PyObject	*cl_delattr;
} PyClassObject;

typedef struct {
	int ob_refcnt; struct _typeobject *ob_type; 
	PyClassObject	*in_class;	 
	PyObject	*in_dict;	 
} PyInstanceObject;

extern  PyTypeObject   PyClass_Type, PyInstance_Type, PyMethod_Type;





extern PyObject *PyClass_New  (PyObject *, PyObject *, PyObject *)  ;
extern PyObject *PyInstance_New  (PyObject *, PyObject *, PyObject *)  ;
extern PyObject *PyMethod_New  (PyObject *, PyObject *, PyObject *)  ;

extern PyObject *PyMethod_Function  (PyObject *)  ;
extern PyObject *PyMethod_Self  (PyObject *)  ;
extern PyObject *PyMethod_Class  (PyObject *)  ;

extern int PyClass_IsSubclass  (PyObject *, PyObject *)  ;

extern PyObject *PyInstance_DoBinOp
	 (PyObject *, PyObject *,
		  char *, char *,
		  PyObject * (*)  (PyObject *, PyObject *)   )  ;





# 81 "../Include/allobjects.h" 2

# 1 "../Include/fileobject.h" 1






 























 

extern  PyTypeObject   PyFile_Type;



extern PyObject *PyFile_FromString  (char *, char *)  ;
extern void PyFile_SetBufSize  (PyObject *, int)  ;
extern PyObject *PyFile_FromFile
	 (FILE *, char *, char *, int (*)  (FILE *)    )  ;
extern FILE *PyFile_AsFile  (PyObject *)  ;
extern PyObject *PyFile_Name  (PyObject *)  ;
extern PyObject *PyFile_GetLine  (PyObject *, int)  ;





# 82 "../Include/allobjects.h" 2


# 1 "../Include/errors.h" 1






 























 

void PyErr_SetNone  (PyObject *)  ;
void PyErr_SetObject  (PyObject *, PyObject *)  ;
void PyErr_SetString  (PyObject *, char *)  ;
PyObject *PyErr_Occurred  (void)  ;
void PyErr_Clear  (void)  ;
void PyErr_Fetch  (PyObject **, PyObject **, PyObject **)  ;
void PyErr_Restore  (PyObject *, PyObject *, PyObject *)  ;

 

extern  PyObject *   PyExc_AccessError;
extern  PyObject *   PyExc_AttributeError;
extern  PyObject *   PyExc_ConflictError;
extern  PyObject *   PyExc_EOFError;
extern  PyObject *   PyExc_IOError;
extern  PyObject *   PyExc_ImportError;
extern  PyObject *   PyExc_IndexError;
extern  PyObject *   PyExc_KeyError;
extern  PyObject *   PyExc_KeyboardInterrupt;
extern  PyObject *   PyExc_MemoryError;
extern  PyObject *   PyExc_NameError;
extern  PyObject *   PyExc_OverflowError;
extern  PyObject *   PyExc_RuntimeError;
extern  PyObject *   PyExc_SyntaxError;
extern  PyObject *   PyExc_SystemError;
extern  PyObject *   PyExc_SystemExit;
extern  PyObject *   PyExc_TypeError;
extern  PyObject *   PyExc_ValueError;
extern  PyObject *   PyExc_ZeroDivisionError;

 

extern int PyErr_BadArgument  (void)  ;
extern PyObject *PyErr_NoMemory  (void)  ;
extern PyObject *PyErr_SetFromErrno  (PyObject *)  ;

extern void PyErr_BadInternalCall  (void)  ;

extern int PyErr_CheckSignals  (void)  ;  





# 84 "../Include/allobjects.h" 2

# 1 "../Include/mymalloc.h" 1


 























 






















# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdlib.h" 1 3
 





















 


 

 
 



 


 










                                                                   






 








 









# 82 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdlib.h" 3


# 114 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdlib.h" 3


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

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










 





 
extern int __getmbcurmax  (void)  ;

 


extern int	mblen  (const char *, size_t)  ;
extern size_t	mbstowcs  (wchar_t *, const char *, size_t)  ;
extern int	mbtowc  (wchar_t *, const char *, size_t)  ;
extern size_t	wcstombs  (char *, const wchar_t *, size_t)  ;
extern int	wctomb  (char *, wchar_t)  ;

extern int	rpmatch  (const char *)  ;
extern void 	*valloc  (register size_t )  ;


extern double 	atof  (const char *)  ;
extern int 	atoi  (const char *)  ;
extern long int atol  (const char *)  ;
extern double 	strtod  (const char *, char **)  ;
extern long int strtol  (const char *, char **, int )  ;
extern unsigned long int strtoul  (const char *, char **, int )  ;
extern int 	rand  (void)  ;
extern void	srand  (unsigned int )  ;
extern void 	*calloc  (size_t , size_t )  ;
extern void	free  (void *)  ;
extern void	*malloc  (size_t )  ;
extern void 	*realloc  (void *, size_t )  ;
extern void	abort  (void)  ;
extern int	atexit  (void (*)(void))  ;
extern void	exit  (int )  ;
extern char	*getenv  (const char *)  ;
extern int 	system  (const char *)  ;
extern void 	*bsearch  (const void *, const void *, size_t , size_t , int(*)(const void *, const void *))  ;
extern void 	qsort  (void *, size_t , size_t ,int(*)(const void *, const void *))  ;
extern int 	abs  (int )  ;
extern struct div_t	div  (int , int )  ;
extern long int	labs  (long int )  ;
extern struct ldiv_t 	ldiv  (long int , long int )  ;













 








# 208 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdlib.h" 3


 
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  (const char *)  ;
extern void	setkey  (const char *)  ;

# 233 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdlib.h" 3

 








 





 
extern int	srandom  (unsigned int)  ;
extern char	*initstate  (unsigned int, char *, int)  ;
extern char	*setstate  (char *)  ;
extern int	random  (void)  ;
 

# 277 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdlib.h" 3






 


 
extern int 	clearenv  ()  ;
extern char 	*getpass  (const char *)  ;
 



 




 
extern char 	*mktemp  (char *)  ;
extern int 	mkstemp  (char *)  ;
 


 









 
char	*ecvt  (double, int, int *, int *)  ;
char	*fcvt  (double, int, int *, int *)  ;
char	*gcvt  (double, int, char *)  ;




 



# 50 "../Include/mymalloc.h" 2
























 


















# 85 "../Include/allobjects.h" 2


# 1 "../Include/modsupport.h" 1






 























 



# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdarg.h" 1 3
 


































# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/va-alpha.h" 1 3
 

 




 










 
















 

 











 

enum {
  __no_type_class = -1,
  __void_type_class,
  __integer_type_class,
  __char_type_class,
  __enumeral_type_class,
  __boolean_type_class,
  __pointer_type_class,
  __reference_type_class,
  __offset_type_class,
  __real_type_class,
  __complex_type_class,
  __function_type_class,
  __method_type_class,
  __record_type_class,
  __union_type_class,
  __array_type_class,
  __string_type_class,
  __set_type_class,
  __file_type_class,
  __lang_type_class
};



 


 




 















# 36 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdarg.h" 2 3

# 98 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdarg.h" 3










 
 













# 137 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdarg.h" 3


 



# 167 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/stdarg.h" 3








# 35 "../Include/modsupport.h" 2


extern int PyArg_Parse  (PyObject *, char *, ...)  ;
extern int PyArg_ParseTuple  (PyObject *, char *, ...)  ;
extern PyObject *Py_BuildValue  (char *, ...)  ;

# 50 "../Include/modsupport.h"


extern int PyArg_VaParse  (PyObject *, char *, __gnuc_va_list )  ;
extern PyObject *Py_VaBuildValue  (char *, __gnuc_va_list )  ;


 











extern PyObject *Py_InitModule4  (char *, PyMethodDef *,
					  char *, PyObject *, int)  ;








# 87 "../Include/allobjects.h" 2

# 1 "../Include/ceval.h" 1






 























 

PyObject *PyEval_CallObject  (PyObject *, PyObject *)  ;
PyObject *PyEval_CallObjectWithKeywords
	 (PyObject *, PyObject *, PyObject *)  ;

PyObject *PyEval_GetBuiltins  (void)  ;
PyObject *PyEval_GetGlobals  (void)  ;
PyObject *PyEval_GetLocals  (void)  ;
PyObject *PyEval_GetOwner  (void)  ;
PyObject *PyEval_GetFrame  (void)  ;
int PyEval_GetRestricted  (void)  ;

void Py_FlushLine  (void)  ;

int Py_AddPendingCall  (int (*func)  (void  *)  , void  *arg)  ;
int Py_MakePendingCalls  (void)  ;


 












































extern void PyEval_InitThreads  (void)  ;
extern PyObject *PyEval_SaveThread  (void)  ;
extern void PyEval_RestoreThread  (PyObject *)  ;

# 109 "../Include/ceval.h"













# 88 "../Include/allobjects.h" 2


# 1 "../Include/abstract.h" 1






 























 

 



















































































































 

      











      











      









      











      










      









      









      










      










     int PyObject_Cmp  (PyObject *o1, PyObject *o2, int *result)  ;

        








      











      











      












     int PyCallable_Check  (PyObject *o)  ;

        








     
     PyObject *PyObject_CallObject  (PyObject *callable_object,
					     PyObject *args)  ;

        









     PyObject *PyObject_CallFunction  (PyObject *callable_object,
					       char *format, ...)  ;

        










     PyObject *PyObject_CallMethod  (PyObject *o, char *m,
					     char *format, ...)  ;

        














      










      











     PyObject *PyObject_Type  (PyObject *o)  ;

        





     int PyObject_Length  (PyObject *o)  ;

        







     PyObject *PyObject_GetItem  (PyObject *o, PyObject *key)  ;

        






     int PyObject_SetItem  (PyObject *o, PyObject *key, PyObject *v)  ;

        






 

     int PyNumber_Check  (PyObject *o)  ;

        







     PyObject *PyNumber_Add  (PyObject *o1, PyObject *o2)  ;

        






     PyObject *PyNumber_Subtract  (PyObject *o1, PyObject *o2)  ;

        






     PyObject *PyNumber_Multiply  (PyObject *o1, PyObject *o2)  ;

        







     PyObject *PyNumber_Divide  (PyObject *o1, PyObject *o2)  ;

        






     PyObject *PyNumber_Remainder  (PyObject *o1, PyObject *o2)  ;

        







     PyObject *PyNumber_Divmod  (PyObject *o1, PyObject *o2)  ;

        







     PyObject *PyNumber_Power  (PyObject *o1, PyObject *o2, PyObject *o3)  ;

        






     PyObject *PyNumber_Negative  (PyObject *o)  ;

        





     PyObject *PyNumber_Positive  (PyObject *o)  ;

        





     PyObject *PyNumber_Absolute  (PyObject *o)  ;

        





     PyObject *PyNumber_Invert  (PyObject *o)  ;

        







     PyObject *PyNumber_Lshift  (PyObject *o1, PyObject *o2)  ;

        







     PyObject *PyNumber_Rshift  (PyObject *o1, PyObject *o2)  ;

        






     PyObject *PyNumber_And  (PyObject *o1, PyObject *o2)  ;

        







     PyObject *PyNumber_Xor  (PyObject *o1, PyObject *o2)  ;

        







     PyObject *PyNumber_Or  (PyObject *o1, PyObject *o2)  ;

        






      










     PyObject *PyNumber_Int  (PyObject *o)  ;

        






     PyObject *PyNumber_Long  (PyObject *o)  ;

        






     PyObject *PyNumber_Float  (PyObject *o)  ;

        




	 

 

     int PySequence_Check  (PyObject *o)  ;

        







     PyObject *PySequence_Concat  (PyObject *o1, PyObject *o2)  ;

        






     PyObject *PySequence_Repeat  (PyObject *o, int count)  ;

        






     PyObject *PySequence_GetItem  (PyObject *o, int i)  ;

        





     PyObject *PySequence_GetSlice  (PyObject *o, int i1, int i2)  ;

        






     int PySequence_SetItem  (PyObject *o, int i, PyObject *v)  ;

        






     int PySequence_SetSlice  (PyObject *o, int i1, int i2, PyObject *v)  ;

        





     PyObject *PySequence_Tuple  (PyObject *o)  ;

        




     int PySequence_Count  (PyObject *o, PyObject *value)  ;

        






     int PySequence_In  (PyObject *o, PyObject *value)  ;

        





     int PySequence_Index  (PyObject *o, PyObject *value)  ;

        





 

     int PyMapping_Check  (PyObject *o)  ;

        






     int PyMapping_Length  (PyObject *o)  ;

        





     int PyMapping_DelItemString  (PyObject *o, char *key)  ;

        





     int PyMapping_DelItem  (PyObject *o, PyObject *key)  ;

        





     int PyMapping_HasKeyString  (PyObject *o, char *key)  ;

        







     int PyMapping_HasKey  (PyObject *o, PyObject *key)  ;

        








      









      









      











     PyObject *PyMapping_GetItemString  (PyObject *o, char *key)  ;

        





     int PyMapping_SetItemString  (PyObject *o, char *key,
					   PyObject *value)  ;

        










# 90 "../Include/allobjects.h" 2


extern void Py_FatalError  (char *)  ;




 
 











# 27 "selectmodule.c" 2





# 1 "../Include/myselect.h" 1






 























 

 






# 1 "../Include/mytime.h" 1






 























 


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





















 


 

 
 

 



 


 








 

















# 1 "/usr/include/sys/signal.h" 1 3
 





















 



 

 
 



 



 







                                                                   







# 1 "/usr/include/sys/siginfo.h" 1 3
 





















 


 













 




typedef union sigval {
	int 	sival_int;
	void	*sival_ptr;
} sigval_t;

 





typedef struct siginfo {
	int si_signo;	 
	int si_errno;	 
	int si_code;	 

	union {
		int _sipad[(((128) /sizeof(int)) - 4) ];  

		 
		struct {
			pid_t	_pid;			 
			union {
				 
				struct {
					uid_t	_uid;	 
				} _kill;

				 
				struct {
					int	_status;  
					clock_t _utime;
					clock_t _stime;
				} _sigchld;
			} _pinfo;
			 
			struct {

				 
				sigval_t _sigval;



			} _sigrt;
		} _sigproc;

		 
		struct {
			caddr_t	_addr;	 
		} _sigfault;

		 
		struct {
			long	_band;	 
			 
			int	_fd;	 
		} _sigpoll;

		 
		struct {

			sigval_t _siganonval;



		} _siganon;

	} _sifields;
} siginfo_t;


 





















 



 









 












 












 






 







 






 










 










 





# 395 "/usr/include/sys/siginfo.h" 3




# 54 "/usr/include/sys/signal.h" 2 3



 















 
extern void (*signal  (int, void (*)(int))  )  (int)  ;
extern int raise  (int)  ;
 



 



































 









 










# 145 "/usr/include/sys/signal.h" 3




 









 






 















# 194 "/usr/include/sys/signal.h" 3


 




struct sigaction {
	union {
		  
		void	(*sa_handler)  (int)  ;
		void	(*sa_sigaction)  (int, struct siginfo *, void *)  ;
	} _sa_un;
	sigset_t sa_mask;	 
	int	sa_flags;	 
};







typedef struct sigevent {
	union sigval	sigev_value;	 
	int		sigev_signo;	 
	int		sigev_notify;	 
} sigevent_t;

 






 



 
extern int sigwaitprim  (sigset_t, ...)  ;
 














 


 
 
extern int kill  (pid_t , int )  ; 
extern int sigaction  (int , const struct sigaction *, struct sigaction *)  ; 
extern int sigprocmask  (int , const sigset_t *, sigset_t *)  ;
extern int sigsuspend  (const sigset_t *)  ;  
 
extern int sigemptyset  (sigset_t *)  ;
extern int sigfillset  (sigset_t *)  ;
extern int sigaddset  (sigset_t *, int )  ;
extern int sigdelset  (sigset_t *, int )  ;
extern int sigismember  (const sigset_t *, int )  ;
extern int sigpending  (sigset_t *)  ;
 










# 1 "/usr/include/machine/signal.h" 1 3
 





















 



 

 
 



 



 








                                                                   





typedef int sig_atomic_t;



# 109 "/usr/include/machine/signal.h" 3


 













 






struct  sigcontext {
	 



	long    sc_onstack;		 
	long    sc_mask;		 
	long	sc_pc;			 
	long	sc_ps;			 
	long	sc_regs[32];		 
	long	sc_ownedfp;		 
	long	sc_fpregs[32];		 
	unsigned long sc_fpcr;		 
	unsigned long sc_fp_control;	 
	 


	long sc_reserved1;		 
	int sc_kreserved1;		 
	int sc_kreserved2;		 

	size_t	sc_ssize;		 
	caddr_t	sc_sbase;		 
	unsigned long sc_traparg_a0;	 
	unsigned long sc_traparg_a1;	 
	unsigned long sc_traparg_a2;	 
	unsigned long sc_fp_trap_pc;	 
	unsigned long sc_fp_trigger_sum;  
	unsigned long sc_fp_trigger_inst;  
};
















































# 278 "/usr/include/sys/signal.h" 2 3



 






extern sigset_t cantmasksigset;


 





struct	sigvec {
	void	(*sv_handler)  (int)  ;	 
	int     sv_mask;         
	int     sv_flags;    
};                           



 




 
extern int sigvec  (int, struct sigvec *, struct sigvec *)  ;
extern int killpg  (pid_t, int)  ;
 



 


# 372 "/usr/include/sys/signal.h" 3


 



struct  sigstack {
        char    *ss_sp;                  
        int     ss_onstack;              
};

 


typedef struct  sigaltstack {
        caddr_t	ss_sp;			 
        int     ss_flags;		 
        size_t	ss_size;		 
} stack_t;



 






					 





 



 




 










 


       



 




















 























 
extern int sigblock  (int)  ;
extern int sigpause  (int)  ;
extern int sigreturn  (struct sigcontext *)  ;
extern int sigsetmask  (int)  ;
extern int sigstack  (struct sigstack *, struct sigstack *)  ;
extern int siginterrupt  (int, int)  ;



 
extern void (*sigset  (int, void (*)(int))  )  (int)  ;
extern int sighold  (int)  ;
extern int sigrelse  (int)  ;
extern int sigignore  (int)  ;
extern int sigaltstack  (stack_t *, stack_t *)  ;
# 1 "/usr/include/sys/procset.h" 1 3
 





















 








 



typedef enum idop {
	POP_DIFF,	 



	POP_AND,	 



	POP_OR,		 




	POP_XOR		 









} idop_t;

 



typedef enum idtype {
	P_PID,	 
	P_PPID,	 
	P_PGID,	 
	P_SID,	 
	P_CID,	 
	P_UID,	 
	P_GID,	 
	P_ALL	 
} idtype_t;

 




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;

 




















# 495 "/usr/include/sys/signal.h" 2 3

extern int sigsendset  (const procset_t *, int)  ;
extern int sigsend  (idtype_t, id_t, int)  ;

int (*ssignal  (int, int (*)(int))  )  (int)  ;
int gsignal  (int)  ;






 



# 650 "/usr/include/sys/signal.h" 3





# 65 "/usr/include/sys/time.h" 2 3


# 84 "/usr/include/sys/time.h" 3

# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/time.h" 1 3
 





















 


 

 
 

 



 


 












                                                                   






 













 























typedef int             clockid_t;


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;        

        long    tm_gmtoff;
        char    *tm_zone;




};






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

 






 


 
 














 






# 1 "/usr/include/sys/timers.h" 1 3
 





















 


 

 
 

 



 









# 1 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/time.h" 1 3
 





















 


 

 
 

 



 


 












                                                                   

# 226 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/time.h" 3

# 45 "/usr/include/sys/timers.h" 2 3

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



# 96 "/usr/include/sys/timers.h" 3




 





 



 




struct	itimerspec {
	struct		timespec it_interval;  
	struct		timespec it_value;  
};

 






 









 


















 







# 186 "/usr/include/sys/timers.h" 3

 
int clock_gettime(clockid_t clock_id, struct timespec *tp);
int clock_settime(clockid_t clock_id, const struct timespec *tp);
int clock_getdrift(int clock_id, int *oppb);
int clock_setdrift(int clock_id, const int ppb, int *oppb);



int timer_create(clockid_t clock_id, struct sigevent *evp, 
		 timer_t *timer_created);

int timer_delete(timer_t timerid);
int timer_gettime(timer_t timerid, struct itimerspec *value);  
int timer_settime(timer_t timerid, int flags, const struct itimerspec *value, 
		  struct itimerspec *ovalue); 
int timer_getoverrun(timer_t timerid);
int nanosleep(struct timespec *rqtp, struct timespec *rmtp);

# 213 "/usr/include/sys/timers.h" 3

int clock_getres(clockid_t clock_id,struct timespec *res);

 




# 167 "/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.1/include/time.h" 2 3











extern char *tzname[];

 
extern void tzset  (void)  ;
 






extern long timezone;


extern int daylight;

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












 


 
extern unsigned char *NLctime  (long *)  ;
extern unsigned char *NLasctime  (struct tm *)  ;
extern char *NLstrtime  (char *, size_t , const char *, const struct tm *)  ;
struct tm *getdate  (char *)  ;



 






# 85 "/usr/include/sys/time.h" 2 3



 





 






struct timeval {
	int	tv_sec;		 
	int	tv_usec;	 
};

  






 











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

 



struct timezone {
	int	tz_minuteswest;	 
	int	tz_dsttime;	 
};











 
extern int adjtime  (struct timeval *, struct timeval *)  ;
extern int getitimer  (int, struct itimerval *)  ;
extern int setitimer  (int, struct itimerval *, struct itimerval *)  ;
extern int gettimeofday  (struct timeval *, struct timezone *)  ;
extern int settimeofday  (struct timeval *, struct timezone *)  ;
extern int utimes  (const char *, struct timeval *)  ;
 







# 227 "/usr/include/sys/time.h" 3


# 251 "/usr/include/sys/time.h" 3



# 34 "../Include/mytime.h" 2














# 40 "../Include/myselect.h" 2











 






# 76 "../Include/myselect.h"






# 32 "selectmodule.c" 2


static PyObject  *SelectError;

static
list2set(list, set, fd2obj)
    PyObject  *list;
    fd_set *set;
    PyObject  *fd2obj[4096  ];
{
    int i, len, v, max = -1;
    PyObject  *o, *filenomethod, *fno;

    for ( i=0;  i< 4096  ;  i++ ) {
	fd2obj[i] = (PyObject *)0;
    }
    
    bzero((char *)( set ), sizeof(*( set ))) ;
    len = PyList_Size (list);
    for( i=0; i<len; i++ ) {
	o = PyList_GetItem (list, i);
	if ( (( o )->ob_type == &PyInt_Type)  ) {
	    v = PyInt_AsLong (o);
	} else if ( (filenomethod = PyObject_GetAttrString (o, "fileno")) != 0L  ) {
	    fno = PyEval_CallObject (filenomethod, 0L );
	    if (--( filenomethod )->ob_refcnt != 0) ; else (*(  filenomethod  )->ob_type->tp_dealloc)((PyObject *)(  filenomethod  ))  ;
	    if ( fno == 0L  )
		return -1;
	    if ( ! (( fno )->ob_type == &PyInt_Type)  ) {
		PyErr_BadArgument ();
		if (--( fno )->ob_refcnt != 0) ; else (*(  fno  )->ob_type->tp_dealloc)((PyObject *)(  fno  ))  ;
		return -1;
	    }
	    v = PyInt_AsLong (fno);
	    if (--( fno )->ob_refcnt != 0) ; else (*(  fno  )->ob_type->tp_dealloc)((PyObject *)(  fno  ))  ;
	} else {
	    PyErr_BadArgument ();
	    return -1;
	}
	if ( v < 0 || v >= 4096   ) {
	    PyErr_SetString (PyExc_ValueError , "filedescriptor out of range in select()");
	    return -1;
	}
	if ( v > max ) max = v;
	((  set )->fds_bits[( v )/ (sizeof(fd_mask) * 8 ) ] |= (1 << (( v ) % (sizeof(fd_mask) * 8 ) ))) ;
	fd2obj[v] = o;
    }
    return max+1;
}

static PyObject  *
set2list(set, max, fd2obj)
    fd_set *set;
    int max;
    PyObject  *fd2obj[4096  ];
{
    int i, num=0;
    PyObject  *list, *o;

    for(i=0; i<max; i++)
      if ( (( set )->fds_bits[( i )/ (sizeof(fd_mask) * 8 ) ] & (1 << (( i ) % (sizeof(fd_mask) * 8 ) )))  )
	num++;
    list = PyList_New (num);
    num = 0;
    for(i=0; i<max; i++)
      if ( (( set )->fds_bits[( i )/ (sizeof(fd_mask) * 8 ) ] & (1 << (( i ) % (sizeof(fd_mask) * 8 ) )))  ) {
	  if ( i > 4096   ) {
	      PyErr_SetString (PyExc_SystemError ,
			 "filedescriptor out of range returned in select()");
	      return 0L ;
	  }
	  o = fd2obj[i];
	  if ( o == 0L  ) {
	      PyErr_SetString (PyExc_SystemError ,
			 "Bad filedescriptor returned from select()");
	      return 0L ;
	  }
	  (( o )->ob_refcnt++) ;
	  PyList_SetItem (list, num, o);
	  num++;
    }
    return list;
}
    
static PyObject  *
select_select(self, args)
    PyObject  *self;
    PyObject  *args;
{
    PyObject  *rfd2obj[4096  ], *wfd2obj[4096  ], *efd2obj[4096  ];
    PyObject  *ifdlist, *ofdlist, *efdlist;
    PyObject  *ret, *tout;
    fd_set ifdset, ofdset, efdset;
    double timeout;
    struct timeval tv, *tvp;
    int seconds;
    int imax, omax, emax, max;
    int n;


     
    if ( PyArg_Parse (args, "(OOOO)", &ifdlist, &ofdlist, &efdlist, &tout) ) {
	if (tout == (&_Py_NoneStruct)  )
	    tvp = (struct timeval *)0;
	else {
	    if (! PyArg_Parse (tout, "d;timeout must be float or None", &timeout))
		    return 0L ;
	    seconds = (int)timeout;
	    timeout = timeout - (double)seconds;
	    tv.tv_sec = seconds;
	    tv.tv_usec = (int)(timeout*1000000.0);
	    tvp = &tv;
	}
    } else {
	 
	PyErr_Clear ();
	if (! PyArg_Parse (args, "(OOO)", &ifdlist, &ofdlist, &efdlist) )
	  return 0;
	tvp = (struct timeval *)0;
    }
    if ( ! (( ifdlist )->ob_type == &PyList_Type)  || ! (( ofdlist )->ob_type == &PyList_Type)  ||
	! (( efdlist )->ob_type == &PyList_Type)  ) {
	PyErr_BadArgument ();
	return 0;
    }

     
    if( (imax=list2set(ifdlist, &ifdset, rfd2obj)) < 0 )
      return 0;
    if( (omax=list2set(ofdlist, &ofdset, wfd2obj)) < 0 )
      return 0;
    if( (emax=list2set(efdlist, &efdset, efd2obj)) < 0 )
      return 0;
    max = imax;
    if ( omax > max ) max = omax;
    if ( emax > max ) max = emax;

    {  
    n = select(max, &ifdset, &ofdset, &efdset, tvp);
    }  

    if ( n < 0 ) {
	PyErr_SetFromErrno (SelectError);
	return 0;
    }

    if ( n == 0 )
      imax = omax = emax = 0;  

    ifdlist = set2list(&ifdset, imax, rfd2obj);
    ofdlist = set2list(&ofdset, omax, wfd2obj);
    efdlist = set2list(&efdset, emax, efd2obj);
    ret = Py_BuildValue ("OOO", ifdlist, ofdlist, efdlist);
    if (( ifdlist ) == 0L ) ; else if (--(  ifdlist  )->ob_refcnt != 0) ; else (*(   ifdlist   )->ob_type->tp_dealloc)((PyObject *)(   ifdlist   ))   ;
    if (( ofdlist ) == 0L ) ; else if (--(  ofdlist  )->ob_refcnt != 0) ; else (*(   ofdlist   )->ob_type->tp_dealloc)((PyObject *)(   ofdlist   ))   ;
    if (( efdlist ) == 0L ) ; else if (--(  efdlist  )->ob_refcnt != 0) ; else (*(   efdlist   )->ob_type->tp_dealloc)((PyObject *)(   efdlist   ))   ;
    return ret;
}


static struct PyMethodDef  select_methods[] = {
    { "select",	select_select },
    { 0,	0 },
};


void
initselect()
{
	PyObject  *m, *d;
	m = Py_InitModule4( "select" ,   select_methods , (char *)0L , (PyObject *)0L , 1002 ) ;
	d = PyModule_GetDict (m);
	SelectError = PyString_FromString ("select.error");
	if ( SelectError == 0L  || PyDict_SetItemString (d, "error", SelectError) )
	  Py_FatalError ("Cannot define select.error");
}
Technical Details
Message-ID: <49jlmb$gfv@insosf1.netins.net>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 113d02,d39e8201dfab6816,start
X-Google-Attributes: gid113d02,public
From: rassilon@cs.simpson.edu (Bill Tutt)
Subject: 2.7.1internal error in 2.7.1 on alphas-osf3.2a
Date: 1995/11/30
Message-ID: <49jlmb$gfv@insosf1.netins.net>
X-Deja-AN: 120615972
distribution: gnu
sender: daemon@cis.ohio-state.edu
organization: Simpson College
newsgroups: gnu.gcc.bug