30 lines
		
	
	
	
		
			837 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
	
		
			837 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
 | |
|  * See the copyright notice in the ACK home directory, in the file "Copyright".
 | |
|  */
 | |
| /* $Header$ */
 | |
| 
 | |
| /*	Bit patterns to allow fast answers to set questions about classes.
 | |
| 	The classes in the inpdef are given as single letters; the array
 | |
| 	class[] contains a bit pattern for each letter, with those bits set
 | |
| 	that correspond to the lint class meaning of the letter.
 | |
| 
 | |
| 	This facility is used through the macro  is_class(inpdef_var, CL_XXX)
 | |
| */
 | |
| 
 | |
| #define	CL_DEF		(1<<0)
 | |
| #define	CL_DECL		(1<<1)
 | |
| #define	CL_USAGE	(1<<2)
 | |
| 
 | |
| #define	CL_FUNC		(1<<3)
 | |
| #define	CL_VAR		(1<<4)
 | |
| 
 | |
| #define	CL_LIB		(1<<5)
 | |
| #define	CL_EXT		(1<<6)
 | |
| #define	CL_IMPL		(1<<7)
 | |
| #define	CL_STAT		(1<<8)
 | |
| 
 | |
| extern int class[];
 | |
| 
 | |
| #define	is_class(id,cl)	((class[(id)->id_class-MIN_CLASS_CONST] & (cl)) == (cl))
 | |
| 
 |