-@if Bison24 %code provides {
-int cylex(YYSTYPE *, cy::location *, void *);
-@if Bison24 }
-
-@if Bison23 %}
-@if Bison23 %union {
-@if Bison23 }
-@if Bison23 %{
-
-@if Bison24 }
-@if Bison23 %}
+%code provides {
+int cylex(YYSTYPE *, CYLocation *, void *);
+}
%token <identifier_> Typedef "typedef"
%token <identifier_> Unsigned "unsigned"
%token <identifier_> Signed "signed"
%token <identifier_> Typedef "typedef"
%token <identifier_> Unsigned "unsigned"
%token <identifier_> Signed "signed"
%type <null_> NullLiteral
%type <literal_> ObjectLiteral
%type <compound_> Parenthetical
%type <null_> NullLiteral
%type <literal_> ObjectLiteral
%type <compound_> Parenthetical
%type <expression_> PostfixExpression
%type <expression_> PrimaryExpression
%type <statement_> Program
%type <expression_> PostfixExpression
%type <expression_> PrimaryExpression
%type <statement_> Program
: ArrayedType { $$ = $1; }
| "(" LexPushInOff "^" TypeQualifierRight ")" LexPopIn "(" LexPushInOff TypedParameterListOpt ")" LexPopIn { $$ = $4; $$->modifier_ = CYNew CYTypeBlockWith($9, $$->modifier_); }
| TypeParenthetical FunctionedType { $$ = $1; CYSetLast($2) = $$->modifier_; $$->modifier_ = $2; }
: ArrayedType { $$ = $1; }
| "(" LexPushInOff "^" TypeQualifierRight ")" LexPopIn "(" LexPushInOff TypedParameterListOpt ")" LexPopIn { $$ = $4; $$->modifier_ = CYNew CYTypeBlockWith($9, $$->modifier_); }
| TypeParenthetical FunctionedType { $$ = $1; CYSetLast($2) = $$->modifier_; $$->modifier_ = $2; }