Release coccinelle-0.1.6
[bpt/coccinelle.git] / parsing_cocci / parser_cocci_menhir.mly
index 09fb8ad..a72182a 100644 (file)
@@ -56,7 +56,7 @@ module P = Parse_aux
 
 %token <Data.clt> TIf TElse TWhile TFor TDo TSwitch TCase TDefault TReturn
 %token <Data.clt> TBreak TContinue TGoto TSizeof TFunDecl
-%token <string * Data.clt> TIdent TTypeId TDeclarerId TIteratorId
+%token <string * Data.clt> TIdent TTypeId TDeclarerId TIteratorId TPragma
 
 %token <Parse_aux.idinfo>     TMetaId TMetaFunc TMetaLocalFunc
 %token <Parse_aux.idinfo>     TMetaIterator TMetaDeclarer
@@ -76,7 +76,7 @@ module P = Parse_aux
 %token <Data.clt> TWhy TDotDot TBang TOPar TOPar0
 %token <Data.clt> TMid0 TCPar TCPar0
 
-%token <string>  TPragma TPathIsoFile
+%token <string>  TPathIsoFile
 %token <string * Data.clt> TIncludeL TIncludeNL
 %token <Data.clt * token> TDefine
 %token <Data.clt * token * int> TDefineParam
@@ -681,7 +681,8 @@ defineop:
     { let (clt,ident,parenoff) = $1 in
       let (arity,line,lline,offset,col,strbef,straft,pos) = clt in
       let lp =
-       P.clt2mcode "(" (arity,line,lline,parenoff,0,[],[],Ast0.NoMetaPos) in
+       P.clt2mcode "("
+         (arity,line,lline,parenoff,0,[],[],Ast0.NoMetaPos) in
       function body ->
        Ast0.wrap
          (Ast0.Define
@@ -1290,7 +1291,7 @@ unary_expr(r,pe):
       { Ast0.wrap(Ast0.Infix ($2, P.clt2mcode Ast.Inc $1)) }
   | TDec unary_expr(r,pe)
       { Ast0.wrap(Ast0.Infix ($2, P.clt2mcode Ast.Dec $1)) }
-  | unary_op unary_expr(r,pe)
+  | unary_op cast_expr(r,pe)
       { let mcode = $1 in Ast0.wrap(Ast0.Unary($2, mcode)) }
   | TBang unary_expr(r,pe)
       { let mcode = P.clt2mcode Ast.Not $1 in