- Semantic patch for other languages
- Support metavariables, virtual rules and virtual identifiers
in initialize and finalize rules
+- Support for matching #ifdef, etc.
** Features:
- New scripting languages
- Add more information in documentation, man pages and wiki
+* 0.2.5
+** 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
+- Support for new
+
+** 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 { ... }
+- spatch -control_flow_to_file file.c generates a file file.dot
+
+** 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
+
* 0.2.4
** Language:
- scripts now have names and can declare metavariables that are seen by
- struct *^* and enum *^* metavariable types
- allow an assignment to match a variable initialization, even if multiple
variables are declared at the same time.
+- add the option -recursive_includes
+- added the option -use_idutils. The requires the previous use of the
+ script idutils_index.sh
** Bugfix:
- detect used after metavariables in simple statement metavariable match
noticing the problem.
- constant strings have array type, not pointer type. Thanks to Vasiliy
Kulikov for noticing the problem.
+- improve indentation when adding code after a function call with indented
+ arguments.
+- return type of sizeof converted to unsigned long. Thanks to Vasiliy
+ Kulikov for noticing the problem.
+- improve spacing when adding structure initializers. Thanks to Vasiliy
+ Kulikov for noticing the problem.
* 0.2.3
** Language: