Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] View of /sml/trunk/ckit/regression/valid-programs.obs/ps2ascii.c.c
ViewVC logotype

View of /sml/trunk/ckit/regression/valid-programs.obs/ps2ascii.c.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 597 - (download) (as text) (annotate)
Wed Apr 5 18:34:51 2000 UTC (21 years, 2 months ago) by dbm
File size: 23469 byte(s)
Initial revision
 









 

















 





































 
















 
 

 
 
 

 






 

















 






























 








 
















 
 
 
 

 
 
 

 












 
 
 


 







 
 
 
 

 







 
 

 



 
 
 
 
 

 









 
 

 















 
 

 
 

 








 





 

















 















 






 









 






		 


 









 



































 













 





typedef int __int32_t;
typedef unsigned  __uint32_t;



 



































	 
typedef long long __int64_t;
typedef unsigned long long  __uint64_t;






typedef __int32_t __psint_t;
typedef __uint32_t __psunsigned_t;




 





 
typedef __int32_t __scint_t;
typedef __uint32_t __scunsigned_t;













typedef unsigned int 	size_t;





typedef long		fpos_t;




 
typedef	__int64_t	off64_t;	 




 
typedef	__int64_t	fpos64_t;





 


typedef char *va_list;



























































typedef struct	 

 







__file_s

{

	int		_cnt;	 


	unsigned char	*_ptr;	 
	unsigned char	*_base;	 

	unsigned char	_flag;	 
	unsigned char	_file;	 

} FILE;

extern FILE		__iob[100 ];	
extern FILE		*_lastbuf;
extern unsigned char 	*_bufendtab[];
extern unsigned char	 _sibuf[], _sobuf[];

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 *, ...);
extern int	vfprintf(FILE *, const char *,   char *);
extern int	vprintf(const char *,   char *);
extern int	vsprintf(char *, const char *,   char *);



extern int	fgetc(FILE *);
extern char	*fgets(char *, int, FILE *); 
extern int	fputc(int, FILE *);
extern int	fputs(const char *, FILE *);
extern int	getc(FILE *);
extern int	getchar(void);
extern char	*gets(char *);
extern int	putc(int, FILE *);
extern int	putchar(int);
extern int	puts(const char *);
extern int	ungetc(int, FILE *);
extern size_t	fread(void *, size_t, size_t, FILE *);
extern size_t	fwrite(const void *, size_t, size_t, 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	clearerr(FILE *);
extern int	feof(FILE *);
extern int	ferror(FILE *);
extern void	perror(const char *);

extern int	__filbuf(FILE *);	
extern int	__flsbuf(int, FILE *);	


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



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



extern FILE	*popen(const char *, const char *);
extern int	pclose(FILE *);


	 





 




















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

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




 





extern int	getsubopt(char **, char *const *, char **);
extern void	getoptreset(void);





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




	 
extern char	*mktemp(char *);
extern int	mkstemp(char *);
extern int	setbuffer(FILE *, char *, int);
extern int	setlinebuf(FILE *);
extern int	system(const char *);



	 
extern int	fgetpos64(FILE *, fpos64_t *);
extern FILE	*fopen64(const char *, const char *);
extern FILE	*freopen64(const char *, const char *, FILE *);
extern int	fseek64(FILE *, off64_t, int);
extern int	fseeko64(FILE *, off64_t, int);
 
extern int	fseeko(FILE *, __int64_t, int);
extern int	fsetpos64(FILE *, const fpos64_t *);
extern off64_t	ftell64(FILE *);
 
extern __int64_t ftello(FILE *);
extern off64_t	ftello64(FILE *);
extern FILE	*tmpfile64(void);



extern int	__semputc(int, FILE *);
extern int	__semgetc(FILE *);
extern int	__us_rsthread_stdio;



extern char	*ctermid_r(char *);





 










 





 




 

 

 
 







 


 


















 




 



 















 
 

 
 
 







 












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

 
typedef	char *		addr_t;		 
typedef	char *		caddr_t;	 

typedef	long		daddr_t;	 

typedef	long		pgno_t;		 
typedef	__uint32_t	pfn_t;		 
typedef	short		cnt_t;		 
typedef unsigned long	basictime_t;
typedef __int64_t	micro_t;
 



typedef __int32_t	pgcnt_t;	 

typedef enum { B_FALSE, B_TRUE } boolean_t;


 








typedef long			id_t;	 
					 
					 
					 
					 



 


typedef ulong_t	major_t;	 
typedef ulong_t	minor_t;	 



 










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 __uint32_t o_ino_t;		 


typedef	unsigned long	mode_t;		 
typedef	unsigned long	dev_t;		 
typedef	long		uid_t;
typedef	long		gid_t;
typedef unsigned long	nlink_t;	 
typedef long		pid_t;		 



typedef dev_t	vertex_hdl_t;		 


typedef	unsigned long	ino_t;		 

typedef __uint64_t	ino64_t;	 


typedef long		off_t;		 




typedef __scint_t	__scoff_t;	 

typedef __scoff_t	scoff_t;	 



	 
typedef	__int64_t	blkcnt64_t;
typedef	__uint64_t	fsblkcnt64_t;
typedef	__uint64_t	fsfilcnt64_t;



typedef	long		blkcnt_t;	 
typedef	ulong_t		fsblkcnt_t;	 
typedef	ulong_t		fsfilcnt_t;	 


typedef	long		swblk_t;
typedef	unsigned long	paddr_t;	 
typedef	unsigned long	iopaddr_t;	 
typedef	int		key_t;		 
typedef	unsigned char	use_t;		 
typedef	long		sysid_t;
typedef	short		index_t;

typedef signed short	nasid_t;         
typedef signed short	cnodeid_t;	 
typedef	signed char  	partid_t;	 
typedef signed short 	moduleid_t;	 

typedef unsigned int 	lock_t;		 
typedef	signed short	cpuid_t;	 
typedef	unsigned char	pri_t;		 
typedef __uint64_t	accum_t;	 
typedef __int64_t	prid_t;		 
typedef __int64_t	ash_t;		 
typedef int		cell_t;	 






typedef int    ssize_t;







typedef	long		time_t;		 







typedef	long		clock_t;  







typedef long wchar_t;






typedef int             clockid_t;



typedef int		timer_t;



 




typedef	unsigned int	useconds_t;


 



typedef __scunsigned_t	bitnum_t;	 
typedef __scunsigned_t	bitlen_t;	 


typedef int processorid_t;		 
typedef int toid_t;			 
typedef	long *qaddr_t;		       
typedef __uint32_t inst_t;		 

 


typedef unsigned machreg_t;




 


typedef __uint32_t fpreg_t;




 







typedef signed char             int8_t;
typedef unsigned char           uint8_t;
typedef signed short            int16_t;
typedef unsigned short          uint16_t;
typedef signed int              int32_t;
typedef unsigned int            uint32_t;
typedef __int64_t 		int64_t;
typedef __uint64_t		uint64_t;
typedef __int64_t 		intmax_t;
typedef __uint64_t		uintmax_t;
typedef signed long int         intptr_t;
typedef unsigned long int       uintptr_t;


 



typedef	unsigned char	u_int8_t;
typedef	unsigned short	u_int16_t;
typedef	__uint32_t	u_int32_t;


 













 



typedef	long	hostid_t;

 








 



 





















 




typedef	struct { int r[1]; } *	physadr;
typedef	unsigned char	unchar;
typedef	unsigned char	u_char;
typedef	unsigned short	ushort;
typedef	unsigned short	u_short;
typedef	unsigned int	uint;
typedef	unsigned int	u_int;
typedef	unsigned long	ulong;
typedef	unsigned long	u_long;
typedef	struct	_quad { long val[2]; } quad;



 















 
 
 

 
 
 
 








 






 










typedef	long	fd_mask_t;
typedef	unsigned long	ufd_mask_t;






typedef	struct fd_set {
	fd_mask_t	fds_bits[(((1024)+(( (int)(sizeof(fd_mask_t) * 8))-1))/( (int)(sizeof(fd_mask_t) * 8))) ];
} fd_set;









 
















 
 
 

 
 
 
 

 










 


extern void *memcpy(void *, const void *, size_t);
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 void *memccpy(void *, const void *, int, 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 void *memchr(const void *, int, size_t);
extern char *strchr(const char *, int);
extern size_t strcspn(const char *, const char *);
extern char *strpbrk(const char *, const char *);
extern char *strrchr(const char *, int);
extern size_t strspn(const char *, const char *);
extern char *strstr(const char *, const char *);
extern char *strtok(char *, const char *);
extern void *memset(void *, int, size_t);
extern char *strerror(int);
extern size_t strlen(const char *);


extern int ffs(int);
 
extern int strcasecmp(const char *, const char *);
extern int strncasecmp(const char *, const char *, size_t);



extern char *strdup(const char *);



extern char *strtok_r(char *, const char *, char **);



 















 













typedef	long	fd_mask;













typedef struct {                 
        __uint32_t sigbits[2];
} k_sigset_t;









 




extern int	bcmp(const void *, const void *, size_t);
extern void	bcopy(const void *, void *, size_t);
extern void	bzero(void *, size_t);
extern char	*index(const char *, int);
extern char	*rindex(const char *, int);









 
















 
 

 
 
 

 
















extern int isalnum(int);        
extern int isalpha(int);        
extern int iscntrl(int);        
extern int isdigit(int);        
extern int isgraph(int);        
extern int islower(int);        
extern int isprint(int);        
extern int ispunct(int);        
extern int isspace(int);        
extern int isupper(int);        
extern int isxdigit(int);       
extern int tolower(int);
extern int toupper(int);

 
extern int isascii(int);        
extern int toascii(int);        

extern int _tolower(int);
extern int _toupper(int);


extern unsigned char	__ctype[];






























 
















 
 

 
 
 

 



 














 



 





 






















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

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


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










extern unsigned char 	__ctype[];	



 
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 div_t div(int, int);
extern long int labs(long);

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


	 
extern int putenv(const char *);
extern double	drand48(void);
extern double	erand48(unsigned short [3]);
extern long	lrand48(void);
extern long	nrand48(unsigned short [3]);
extern long	mrand48(void);
extern long	jrand48(unsigned short [3]);
extern void	srand48(long);
extern void	lcong48(unsigned short int [7]);
extern void     setkey(const char *);
extern unsigned short * seed48(unsigned short int [3]);



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




extern int rand_r(unsigned int *);



	 

extern int atcheckpoint(void (*)(void));
extern int atrestart(void (*)(void));
extern int getpw(int, char *);
extern void l3tol(long *, const char *, int);
extern void ltol3(char *, const long *, int);
extern void *memalign(size_t, size_t);


	 




extern int dup2(int, int);
extern char *getcwd(char *, size_t);
extern char *getlogin(void);
extern char *getpass(const char *);
extern int isatty(int);
extern void swab(const void *, void *, ssize_t);
extern char *ttyname(int);
extern long long int atoll(const char *);
extern long long int strtoll(const char *, char **, int);
extern unsigned long long int strtoull(const char *, char **, int);
extern long long llabs(long long);

extern lldiv_t lldiv(long long, long long);



extern char *ecvt_r(double, int, int *, int *, char *);
extern char *fcvt_r(double, int, int *, int *, char *);











void dviparse(FILE *);   
void psparse();

void main(argc, argv)
int argc; 
char *argv[];
{
  int i,                   
      known_flag,          
      dvi_file = 0 ;    
  FILE *file, *source;     

  source = (&__iob[0]) ;                                     
  for(i=1; i<argc; i++)                            
    {
      known_flag = 0 ;
      if (strcmp(argv[i],"-dvi") == 0)     
	{ 
	  dvi_file = 1 ; 
	  known_flag = 1 ;
	}
      if (strcmp(argv[i],"-") == 0)     
	{ 
	  source = (&__iob[0]) ; 
	  known_flag = 1 ; 
	}
      if (!known_flag)                         
	{
	  if ((file=fopen(argv[i],"r")) != 0L  )
	    source=file;
	  else 
	    {
	      fprintf((&__iob[2]) ,"ps2txt: error opening file %s\n",argv[i]);
	      fprintf((&__iob[2]) ,"usage:  ps2txt [-dvi] [-] [input_file.ps]\n");
	      exit(1);
	    }
	}
    }

dviparse(source);   
    
}

void dviparse(source)
FILE *source;
{
  int ch,                  
      prev_ch = '\n',      
      next_to_prev_ch = '\n',      
      in_paren = 0 ,    
      b_flag = 0 ,      
      b_space = 1 ,      
      c,                   
      word_over_line = 0 ;  
  char junk[80];           

  while ((ch = fgetc(source)) != (-1) )
    {
      if (ch == '\n') ch = fgetc(source);       
      if (in_paren)               
	switch(ch)
	  {
	  case ')'  : in_paren--; b_flag=1; break;  
	  case '\n' : (__us_rsthread_stdio ? __semputc((' '), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((' ')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((' ')))))  ; ; break;               
	  case '-' : if((c = fgetc(source)) == ')') {   
	               word_over_line=1 ;
		     }
	             else {
		       (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ; ;
		     }
	             ungetc(c, source);
	             break;
	    
	    (__us_rsthread_stdio ? __semputc((' '), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((' ')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((' ')))))  ; ; break;               
	  case '\\' : 
	    switch(ch=fgetc(source))
	      {
	      case '(' :
	      case ')' : (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ; ; break;                          
	      case 't' : (__us_rsthread_stdio ? __semputc(('\t'), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf((('\t')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)(('\t')))))  ; ; break;                    
	      case '\n' : break;
	      case 'n' :   break;              
	      case '\\': (__us_rsthread_stdio ? __semputc(('"'), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf((('"')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)(('"')))))  ; ; break;                     
	      case '0' : switch(ch=fgetc(source))
		{
		case '1': switch(ch=fgetc(source))
		  {
		  case '3' : fputs("ff",(&__iob[1]) ); break;          
		  case '4' : fputs("fi",(&__iob[1]) ); break;
		  case '5' : fputs("fl",(&__iob[1]) ); break;
		  case '6' : fputs("ffi",(&__iob[1]) ); break;
		  case '7' : fputs("ffl",(&__iob[1]) ); break;
		  default: fputs("\\01",(&__iob[1]) ); (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ; ;    
		  } break;                                        
		default: fputs("\\0",(&__iob[1]) ); (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ; ;       
		} break;
	      case '1' : case '2' : case '3' : case '4' :
	      case '5' : case '6' : case '7' : (__us_rsthread_stdio ? __semputc(('\\'), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf((('\\')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)(('\\')))))  ; ;    
	      default: (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ; ;
	      } break;                                
	  default: (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ; ;
	  }
      else                                                  
	switch(ch)
	  {
	  case '%'  : fgets(junk, 80, source); break;    
	  case '\n' : break;                 
	  case '-'  : if (b_flag) 
	    {
	      b_flag = 0;                    
	      b_space = 0;     
                               
                               
	    } break;
	  case '('  : in_paren++;                     
	    if(!word_over_line) {
	      if(!((__ctype + 1)[next_to_prev_ch] & (01  | 02 )) ) {
		switch(prev_ch)   
		  {
		  case 'l' : case 'm' : case 'n' : case 'o' :  
		  case 'q' : case 'r' : case 's' : case 't' : 
		    break;
		  case 'y' : (__us_rsthread_stdio ? __semputc(('\n'), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf((('\n')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)(('\n')))))  ; ; break;                
		  case 'b' : if (b_space) (__us_rsthread_stdio ? __semputc((' '), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((' ')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((' ')))))  ; ; break;  
		  case 'a' : case 'c' : case 'd' : case 'e' : 
		  case 'f' : case 'g' : case 'h' : case 'i' : 
		  case 'j' : case 'k' : case 'x' : (__us_rsthread_stdio ? __semputc((' '), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((' ')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((' ')))))  ; ; break;
		  default: break;
		  } 
	      }
	      else {
		(__us_rsthread_stdio ? __semputc((' '), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((' ')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((' ')))))  ; ;
	      }
	    }
	    b_space = 1;               
	    word_over_line = 0 ;
	    break;
	  default: b_flag = 0; break;             
	  }
      next_to_prev_ch=prev_ch;   
      prev_ch=ch;   

    }
}

void psparse(source)      
FILE *source;             
{
char *str;
char junk[80];
int ch, para=0, last=0;
while ((ch=fgetc(source)) != (-1) )
  {
    switch (ch)
      {
      case '%'  : if (para==0) fgets(junk, 80, source);
      else (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ;
      case '\n' : if (last==1) { puts(""); last=0; } break;
      case '('  : if (para++>0) (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ; break;
      case ')'  : if (para-->1) (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ; 
      else (__us_rsthread_stdio ? __semputc((' '), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((' ')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((' ')))))  ;
	last=1; break;
	
      case '\\' : if (para>0)
	switch(ch=fgetc(source))
	  {
	  case '(' :
	  case ')' :  (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ; break;
	  case 't' :  (__us_rsthread_stdio ? __semputc(('\t'), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf((('\t')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)(('\t')))))  ; break;
	  case 'n' :  (__us_rsthread_stdio ? __semputc(('\n'), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf((('\n')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)(('\n')))))  ; break;
	  case '\\':  (__us_rsthread_stdio ? __semputc(('\\'), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf((('\\')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)(('\\')))))  ; break;
	  case '0' :  case '1' : case '2' : case '3' :
	  case '4' :  case '5' : case '6' : case '7' :
	    (__us_rsthread_stdio ? __semputc(('\\'), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf((('\\')), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)(('\\')))))  ;
	  default:  (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ; break;
	  }
	break;
      default:	if (para>0) (__us_rsthread_stdio ? __semputc((ch), (&__iob[1])) : 			(--( (&__iob[1]))->_cnt < 0 ? __flsbuf(((ch)), ( (&__iob[1]))) 					  : (int)(*( (&__iob[1]))->_ptr++ = (unsigned char)((ch)))))  ;
      }
  }
}

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0