n_cons
adv_attr: IN_KW { $$ = n_cons (IN_KW); }
| OUT_KW { $$ = n_cons (OUT_KW); }
| OPERATION_KW LP arg RP { $$ = n_cons (OPERATION_KW, $3); }
| ALIGN_KW LP arg RP { $$ = n_cons (ALIGN_KW, $3); }
| STRING_KW { $$ = n_cons (STRING_KW); }
| FAKE_KW { $$ = n_cons (FAKE_KW); }
{ $$ = n_cons (SIZE_IS_KW, $3, $3, $3); }
{ $$ = n_cons (SIZE_IS_KW, $3, $4, $5); }
{ $$ = n_cons (LENGTH_IS_KW, $3, $3, $3); }
{ $$ = n_cons (LENGTH_IS_KW, $3, $4, $5); }
{ $$ = n_cons (SWITCH_IS_KW, $3, $3, $3); }
{ $$ = n_cons (SWITCH_IS_KW, $3, $4, $5); }
| CASE_KW LP arg RP { $$ = n_cons (CASE_KW, $3); }
| DEFAULT_KW { $$ = n_cons (DEFAULT_KW); }
| ARG_IS_KW LP arg RP { $$ = n_cons (ARG_IS_KW, $3); }
{ $$ = n_cons (TRANSMIT_AS_KW, $3); }
| INTERFACE_KW LP arg RP { $$ = n_cons (INTERFACE_KW, $3); }
| UUID_KW LP arg RP { $$ = n_cons (UUID_KW, $3); }
| _NO_REORDER_KW { $$ = n_cons (_NO_REORDER_KW); }
| EXTERN_KW { $$ = n_cons (EXTERN_KW); }
| REFERENCE_KW { $$ = n_cons (REFERENCE_KW); }
| STAR decl1 { $$ = n_cons (STAR, $2); }
| decl3 LB RB { $$ = n_cons (LB, $1, 0); }
| decl3 LB STAR RB { $$ = n_cons (LB, $1, 0); }
| decl3 LB INTEGER RB { $$ = n_cons (LB, $1, $3); }
| LP decl1 RP { $$ = n_cons (LP, $2); }
{ $$ = n_cons (UNION_KW, $1, $3, $5);
{ $$ = n_cons (L_MEMBER, $1, $2, $3);
extern struct node *n_cons(int, ...);