formats introduced in lint

This commit is contained in:
dick
1988-10-12 16:05:17 +00:00
parent ac21f8d98a
commit e66f3adc06
13 changed files with 325 additions and 166 deletions

View File

@@ -5,14 +5,30 @@
/* $Header$ */
/* Lint output definition */
struct tp_entry {
struct tp_entry *next;
struct type *te_type;
int te_class; /* for constant parameters */
arith te_value;
/* Values for ar_class */
#define ArgFormal 0
#define ArgExpr 1 /* actual */
#define ArgConst 2 /* integer constant */
#define ArgString 3 /* string */
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;
};
/* ALLOCDEF "tp_entry" 10 */
#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;
@@ -21,7 +37,7 @@ struct outdef {
char *od_file;
unsigned int od_line;
int od_nrargs;
struct tp_entry *od_entry; /* a list of the types of the
struct argument *od_arg; /* a list of the types of the
* formal parameters */
int od_valreturned;
/* NOVALRETURNED, VALRETURNED, NORETURN; see l_lint.h */