48 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
/*
 | 
						|
 * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
 | 
						|
 * See the copyright notice in the ACK home directory, in the file "Copyright".
 | 
						|
 */
 | 
						|
/* $Header$ */
 | 
						|
/*	Lint output definition	*/
 | 
						|
 | 
						|
/* Values for ar_class */
 | 
						|
#define	ArgFormal	0
 | 
						|
#define	ArgExpr		1		/* actual */
 | 
						|
#define	ArgConst	2		/* integer constant */
 | 
						|
#define	ArgString	3		/* string */
 | 
						|
#define	ArgEllipsis	4		/* ellipsis */
 | 
						|
 | 
						|
struct argument {
 | 
						|
	struct argument *next;
 | 
						|
	struct type *ar_type;
 | 
						|
	int ar_class;			/* for constant parameters */
 | 
						|
	union const_arg {
 | 
						|
		arith ca_value;
 | 
						|
		struct {
 | 
						|
			char *cas_value;
 | 
						|
			int cas_len;
 | 
						|
		} ca_string;
 | 
						|
	} ar_object;
 | 
						|
};
 | 
						|
 | 
						|
#define	CAA_VALUE	ar_object.ca_value
 | 
						|
#define	CAS_VALUE	ar_object.ca_string.cas_value
 | 
						|
#define	CAS_LEN		ar_object.ca_string.cas_len
 | 
						|
 | 
						|
/* ALLOCDEF "argument" 10 */
 | 
						|
 | 
						|
struct outdef {
 | 
						|
	char od_class;
 | 
						|
	int od_statnr;
 | 
						|
	char *od_name;
 | 
						|
	char *od_file;
 | 
						|
	unsigned int od_line;
 | 
						|
	int od_nrargs;
 | 
						|
	struct argument *od_arg;	/* a list of the types of the
 | 
						|
					 * formal parameters */
 | 
						|
	int od_valreturned;
 | 
						|
		/* NOVALRETURNED, VALRETURNED, NORETURN; see l_lint.h */
 | 
						|
	int od_valused;
 | 
						|
		/* USED, IGNORED, SET, VOIDED; see l_lint.h */
 | 
						|
	struct type *od_type;
 | 
						|
};
 |