* s .. symbols */
@attributes { char *name; } IDENT
@attributes { struct symbol *f; struct symbol *s; } Program
-@attributes { struct symbol *f; } Idents Structdef Parms
+@attributes { struct symbol *f; } FeldID Structdef Parms
@attributes { struct symbol *s; } Methoddef Statseq Lexpr Expr Minusterm Multerm Orterm
Term Exprs Feld
@attributes { struct symbol *sin; struct symbol *sout; } Statement
;
Structdef:
- STRUCT Idents END
+ STRUCT FeldID END
@{
- @i @Structdef.f@ = @Idents.f@;
+ @i @Structdef.f@ = @FeldID.f@;
@}
;
@}
;
-Idents:
- IDENT Idents
+FeldID:
+ IDENT FeldID
@{
- @i @Idents.0.f@ = tab_add_symbol(@Idents.1.f@, @IDENT.name@, S_FIELD, 1);
+ @i @FeldID.0.f@ = tab_add_symbol(@FeldID.1.f@, @IDENT.name@, S_FIELD, 1);
@}
|
@{
- @i @Idents.f@ = new_tab();
+ @i @FeldID.f@ = new_tab();
@}
;