X-Git-Url: https://git.saurik.com/cycript.git/blobdiff_plain/440424e2bd3babd0bb2c266ba931b3c41ccc0f65..b5af12b8bc9c3fda53ebce1ba823734a279610c9:/Cycript.yy.in diff --git a/Cycript.yy.in b/Cycript.yy.in index 7ffc951..62cdca2 100644 --- a/Cycript.yy.in +++ b/Cycript.yy.in @@ -81,9 +81,6 @@ typedef struct { CYString *string_; CYThis *this_; CYTrue *true_; - CYTypeModifier *type_; - CYTypedIdentifier *typedIdentifier_; - CYTypedParameter *typedParameter_; CYWord *word_; @begin ObjectiveC @@ -93,6 +90,9 @@ typedef struct { CYMessageParameter *messageParameter_; CYProtocol *protocol_; CYSelectorPart *selector_; + CYTypeModifier *type_; + CYTypedIdentifier *typedIdentifier_; + CYTypedParameter *typedParameter_; @end @begin E4X @@ -557,8 +557,10 @@ LexNoFunction : { if (yychar == yyempty_) driver.no_.Function = true; else if (yychar == token::Function) yychar = token::Function_; } ; -LexNoAtImplementation - : { if (yychar == yyempty_) driver.no_.AtImplementation = true; else if (yychar == token::AtImplementation) yychar = token::AtImplementation_; } +LexNoAtImplementation : +@begin ObjectiveC + { if (yychar == yyempty_) driver.no_.AtImplementation = true; else if (yychar == token::AtImplementation) yychar = token::AtImplementation_; } +@end ; LexSetStatement @@ -1349,7 +1351,7 @@ ProgramBodyOpt SuffixedType : IdentifierOpt { $$ = CYNew CYTypedIdentifier($1); } | "(" LexPushInOff PrefixedType ")" LexPopIn { $$ = $3; } - | SuffixedType "[" NumericLiteral "]" { CYSetLast($1->type_) = CYNew CYTypeArrayOf($3->Value()); $$ = $1; } + | SuffixedType "[" NumericLiteral "]" { CYSetLast($1->type_) = CYNew CYTypeArrayOf($3); $$ = $1; } ; PrefixedType