Coccinelle release 0.2.5-rc6
authorCoccinelle <cocci@diku.dk>
Tue, 22 Feb 2011 10:31:46 +0000 (11:31 +0100)
committerRene Rydhof Hansen <rrh@cs.aau.dk>
Tue, 22 Feb 2011 10:31:46 +0000 (11:31 +0100)
commitf59c9fb7f14038b6e15c3578d930f164a8df9c6c
treeeb5ec263ffca70fd2e29711e0e8b46891740d642
parentd3f655c619238baba11f20bc9f55769e66d3e428
Coccinelle release 0.2.5-rc6

** Language:
- Make a very small attempt to parse C++ code, amounting to accepting
  identifiers containing ::, tilde, and template invocations.  Use the
  option -c++.  This is not likely to be very useful in practice.
- Added metavariable metavariable type.
- Add disjunctions on identifiers in some contexts
- Pretend that & indicates a pointer in -c++ mode

** Features:
- support transformations on variables (only) in declarations that declare
  multiple variables
- allow #endif XXX in C code
- relax_include_path now applied to non local includes too, in which case
  it tries to find a unique file with a suffix of the provided name.
  this is useful for directories that are intended to be symbolic links.
- support matching and removing #undef
- support for iteration in ocaml, requires use of -no_show_diff
- calls to likely and unlikely propagate test expression status to their
  arguments
- reuse typedefs and macros from complete parsing when reparsing the
  transformed code
- optimization for an if branch that is just { ... }

** Bugfix:
- improved parsing of expressions to allow ... to the right of operators in
  more places
- Fix check_config for Python 2.7 on Fedora 14 (Reported-by: Michael Stefaniuc)
- Check for ocamlfind in configure (Reported-by: Paul E. McKenney)
- Postpone use of ocamlfind at runtime to report fewer errors
- Add support for Python 2.4 binding with the provided pycaml library
17 files changed:
changes.txt
docs/manual/main_grammar.pdf
docs/manual/manual.pdf
docs/manual/options.pdf
engine/cocci_vs_c.ml
globals/config.ml.in
parsing_c/ast_c.ml
parsing_c/lexer_c.mll
parsing_c/parser_c.mly
parsing_c/parsing_hacks.ml
parsing_c/parsing_hacks.mli
parsing_c/pretty_print_c.ml
parsing_c/sexp_ast_c.ml
parsing_c/token_helpers.ml
parsing_c/type_annoter_c.ml
parsing_c/type_c.ml
parsing_c/visitor_c.ml