Version 1.0.0-rc17 has been released. Some changes are:
[bpt/coccinelle.git] / parsing_cocci / lexer_cocci.mll
index 47ca36a..ea612f0 100644 (file)
@@ -251,6 +251,7 @@ let id_tokens lexbuf =
   | "iterator" when in_meta ->   check_arity_context_linetype s; TIterator
   | "name" when in_meta ->       check_arity_context_linetype s; TName
   | "position" when in_meta ->   check_arity_context_linetype s; TPosition
+  | "analysis" when in_meta ->   check_arity_context_linetype s; TAnalysis
   | "any" when in_meta ->        check_arity_context_linetype s; TPosAny
   | "pure" when in_meta && in_iso ->
       check_arity_context_linetype s; TPure
@@ -680,6 +681,10 @@ rule token = parse
                        add_current_line_type D.MINUS; token lexbuf) }
   | '/'            { start_line true;
                     TDmOp (Ast.Div,get_current_line_type lexbuf) }
+  | "<?"           { start_line true;
+                    TDmOp (Ast.Min,get_current_line_type lexbuf) }
+  | ">?"           { start_line true;
+                    TDmOp (Ast.Max,get_current_line_type lexbuf) }
   | '%'            { start_line true;
                     TDmOp (Ast.Mod,get_current_line_type lexbuf) }
   | '~'            { start_line true;  TTilde (get_current_line_type lexbuf) }
@@ -704,6 +709,8 @@ rule token = parse
   | "&="           { start_line true; mkassign Ast.And lexbuf }
   | "|="           { start_line true; mkassign Ast.Or lexbuf }
   | "^="           { start_line true; mkassign Ast.Xor lexbuf }
+  | ">?="           { start_line true; mkassign Ast.Max lexbuf }
+  | "<?="           { start_line true; mkassign Ast.Min lexbuf }
 
   | "<<="          { start_line true; mkassign Ast.DecLeft lexbuf }
   | ">>="          { start_line true; mkassign Ast.DecRight lexbuf }