50 lines
1.4 KiB
Plaintext
50 lines
1.4 KiB
Plaintext
/*
|
|
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
|
|
* See the copyright notice in the ACK home directory, in the file "Copyright".
|
|
*/
|
|
/* $Header$ */
|
|
/* IDENTIFIER DESCRIPTOR */
|
|
|
|
#include "nopp.h"
|
|
|
|
struct id_u {
|
|
#ifndef NOPP
|
|
struct macro *idd_macro;
|
|
int idd_resmac; /* if nonzero: keyword of macroproc. */
|
|
#endif /* NOPP */
|
|
int idd_reserved; /* non-zero for reserved words */
|
|
char *idd_file; /* file containing the occurrence */
|
|
unsigned int idd_line; /* line number of the occurrence */
|
|
struct def *idd_label; /* labels */
|
|
struct def *idd_def; /* variables, typedefs, enum-constants */
|
|
struct sdef *idd_sdef; /* selector tags */
|
|
struct tag *idd_tag; /* struct, union, and enum tags */
|
|
int idd_special; /* special action needed at occurrence */
|
|
};
|
|
|
|
#define IDF_TYPE struct id_u
|
|
#define id_macro id_user.idd_macro
|
|
#define id_resmac id_user.idd_resmac
|
|
#define id_reserved id_user.idd_reserved
|
|
#define id_file id_user.idd_file
|
|
#define id_line id_user.idd_line
|
|
#define id_label id_user.idd_label
|
|
#define id_def id_user.idd_def
|
|
#define id_sdef id_user.idd_sdef
|
|
#define id_tag id_user.idd_tag
|
|
#define id_special id_user.idd_special
|
|
|
|
#include <idf_pkg.spec>
|
|
|
|
#ifndef NOPP
|
|
struct dependency {
|
|
struct dependency *next;
|
|
struct idf *dep_idf;
|
|
};
|
|
|
|
/* ALLOCDEF "dependency" 10 */
|
|
#endif /* NOPP */
|
|
|
|
extern int level;
|
|
extern struct idf *gen_idf();
|