- Semantic patch for other languages
- Support metavariables, virtual rules and virtual identifiers
in initialize and finalize rules
+- Support for matching #ifdef, etc.
+- function-typed metavariables
** Features:
- New scripting languages
** Bugfix:
- Add more information in documentation, man pages and wiki
+* 1.0.0
+** Language:
+- Addition of initializer list metavariables. Thanks to Michael Stefaniuc
+ for noticing the need for them.
+- Allow multiple position variables per token
+
+** Features:
+- Preserve spacing before // comments when not at the beginning of a line
+
+** Bugfix:
+- Corrected parsing of script strings delimited by a single quote. Thanks
+ to Eugeniy Meshcheryakov for reporting the problem.
+- Improved indentation of added ifdefs.
+- Allow added comments and #ifdefs to precede other added code. Thanks to
+ Jani Monoses for noticing the problem.
* 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 and delete
+- Allow arrays in smpl parameter declarations. Thanks to Jesper Louis
+ Andersen for pointing out the problem.
+- Field list metavariables
+- Add the ability to add __attributes__ (NB, no matching on attributes)
+- Slightly improved the error message for transformation on multiple
+ variable declaration. Thanks to Jonathan Nieder for pointing out the
+ problem.
** 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
+- better explanation when presenting glimpse tokens
+- optimization for an if branch that is just { ... }
+- spatch -control_flow_to_file file.c generates a file file.dot
+- include files with names ending in .cpp if -c++ option is given
+- removed use of the no longer supported sexplib function Conv.hashtbl_of_sexp
+- add information about which Fedora packages are needed
** 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
+- Allow '@' in script code. Thanks to Laurent Reveillere for noticing the
+ problem.
+- Remove an optimization of x or true to true in asttoctl2 for the case
+ where x may make a modification, eg the case of -thing ?-thing
+- Allow adding comments before a function.
+- Introduction of newlines in function arguments needs to take into account
+ that the code added by SmPL can include newlines. Thanks to Thomas
+ Gleixner for finding the problem.
* 0.2.4
** Language: