{
#ifdef DBSYMTAB
if (options['g']) {
- stb_tag(idf->id_enum, idf->id_text);
+ stb_tag(idf->id_tag, idf->id_text);
}
#endif /*DBSYMTAB */
}
[
{
declare_struct(fund, idf, tpp);
- (idf->id_struct->tg_busy)++;
+ (idf->id_tag->tg_busy)++;
}
struct_declaration_pack(*tpp)
{
- (idf->id_struct->tg_busy)--;
+ (idf->id_tag->tg_busy)--;
#ifdef DBSYMTAB
if (options['g']) {
- stb_tag(idf->id_struct, idf->id_text);
+ stb_tag(idf->id_tag, idf->id_text);
}
#endif /*DBSYMTAB */
}
}
dumpsdefs(idf->id_sdef, selector);
}
- if (idf->id_struct) {
+ if (idf->id_tag) {
if (!started++) {
newline();
print("%s:", idf->id_text);
}
- dumptags(idf->id_struct);
- }
- if (idf->id_enum) {
- if (!started++) {
- newline();
- print("%s:", idf->id_text);
- }
- dumptags(idf->id_enum);
+ dumptags(idf->id_tag);
}
}
struct def *idd_label; /* labels */
struct def *idd_def; /* variables, typedefs, enum-constants */
struct sdef *idd_sdef; /* selector tags */
- struct tag *idd_struct; /* struct and union tags */
+ struct tag *idd_tag; /* struct, union, and enum tags */
int idd_special; /* special action needed at occurrence */
};
#define id_label id_user.idd_label
#define id_def id_user.idd_def
#define id_sdef id_user.idd_sdef
-#define id_struct id_user.idd_struct
-#define id_enum id_user.idd_struct
+#define id_tag id_user.idd_tag
#define id_special id_user.idd_special
#include <idf_pkg.spec>
switch(tp->tp_fund) {
case ENUM:
case UNION:
- case STRUCT: tg = tp->tp_idf->id_struct; break;
+ case STRUCT: tg = tp->tp_idf->id_tag; break;
}
return tg;
}
switch (tp->tp_fund) {
case ENUM:
case STRUCT:
- case UNION: tgpp = &(ident->id_struct); break;
+ case UNION: tgpp = &(ident->id_tag); break;
default: return;
}
idf->id_sdef = sdef->next;
free_sdef(sdef);
}
- while ( (tag = idf->id_struct)
+ while ( (tag = idf->id_tag)
&& tag->tg_level >= level
) {
/* unlink it from the struct list under the idf block */
- idf->id_struct = tag->next;
+ idf->id_tag = tag->next;
free_tag(tag);
}
}
extern arith add_field();
#endif NOBITFIELD
- struct tag *tg = stp->tp_idf->id_struct; /* or union */
+ struct tag *tg = stp->tp_idf->id_tag; /* or union */
struct sdef *sdef = idf->id_sdef;
register struct sdef *newsdef;
int lvl = tg->tg_level;
if (*tpp) error("multiple types in declaration");
if (!idf)
idf = gen_idf();
- tgp = &idf->id_struct;
+ tgp = &idf->id_tag;
tg = *tgp;
if (tg
&& tg->tg_type->tp_size < 0
*/
register struct tag **tgp;
- tgp = &idf->id_struct;
+ tgp = &idf->id_tag;
if (*tgp)
*tpp = (*tgp)->tg_type;