1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- /* $Header$ */
- /* SELECTOR DESCRIPTOR */
- struct sdef { /* for selectors */
- struct sdef *next;
- int sd_level;
- struct idf *sd_idf; /* its name */
- struct sdef *sd_sdef; /* the next selector */
- struct type *sd_stype; /* the struct it belongs to */
- struct type *sd_type; /* its type */
- arith sd_offset;
- };
- extern char *st_alloc();
- /* allocation definitions of struct sdef */
- /* ALLOCDEF "sdef" */
- extern char *st_alloc();
- extern struct sdef *h_sdef;
- #define new_sdef() ((struct sdef *) \
- st_alloc((char **)&h_sdef, sizeof(struct sdef)))
- #define free_sdef(p) st_free(p, h_sdef, sizeof(struct sdef))
- struct tag { /* for struct-, union- and enum tags */
- struct tag *next;
- int tg_level;
- int tg_busy; /* non-zero during declaration of struct/union pack */
- struct type *tg_type;
- };
- /* allocation definitions of struct tag */
- /* ALLOCDEF "tag" */
- extern char *st_alloc();
- extern struct tag *h_tag;
- #define new_tag() ((struct tag *) \
- st_alloc((char **)&h_tag, sizeof(struct tag)))
- #define free_tag(p) st_free(p, h_tag, sizeof(struct tag))
- struct sdef *idf2sdef();
|