-Release coccinelle-0.2.3rc6
-
-Release Candidate 6 for coccinelle-0.2.3
+Release coccinelle-0.2.3
+
+** Language:
+ - <= constraints relating an expression metavariable to one or more
+ inherited expression metavariables that it should be a subexpression of
+ - the -inplace and -outplace options have been renamed -in_place and
+ -out_place. -in_place no longer makes a backup. A backup can be
+ requested using the option -backup_suffix, eg -backup_suffix .bk
+ - identifiers can be constrained to be different from an inherited
+ identifier metavariable, or from a set containing both concrete
+ identifiers and inherited identifier metavariables.
+ - support for ocaml scripting
+ - ast available in ocaml scripts
+
+** Features:
+ - drop inconsistent paths check when only one node was matched
+ - allow #define id with no definition
+ - attempt to add newlines in the generated code when function calls in the
+ smpl cause passing column 80
+ - allow - in front of statement level nests, if everything inside the nest
+ is also -
+ - 'configure' looks for some system libraries: menhirLib, sexplib, pycaml.
+ Not available libraries are replaced by a copy provided with the sources.
+ - added static for a function goes just before what is specified in the
+ semantic patch, not before any comments etc.
+ - Add a new option, -ignore_unknown_options, to ease the integration
+ of Coccinelle as a checker in a toolchain.
+ - error in python code causes immediate abort of spatch
+ - use the same algorithm for collecting grep tokens as for collecting
+ glimpse tokens
+ - Add scripts/spatch.bash_completion for automatic completion of common
+ options under the bash shell.
+ - Print rule name when a script rule crashes
+ - Allow the declaration of an expression list or parameter list
+ metavariable to specify the number of expressions or parameters,
+ respectively.
+
+** Bugfix:
+ - drop inconsistent paths check when only one node was matched
+ - better take into account virtual rules when selecting glimpse tokens
+ - print diff when only a comment is added
+ - the type of the C code !x should be int regardless of the type of x
+ - allow python code at the beginning of an included file
+ - better adjustment of whitespace when deleting adjacent lines. Thanks to
+ Wolfram Sang for pointing out the problem.
+ - allow metavariables to be inherited from included files
+ - allow ? on goto
+ - more graceful failure on finding a strange character in a macro parameter
+ list
+ - support Parameter metavariables
+ - add space after the last comma in an added portion of an argument list
+ - SmPL nameless struct should only match a nameless struct, not a nameless
+ union. Thanks to Peter Tummeltshammer for pointing out the problem.
+ - adjustments to storage don't modify inline as well
+ - matching and transformation allowed on inline
+ - allow removed field between two ... in structure initialization
+ - allow removing an entire structure initialization
+ - manage labels within do while 0 macros
+ - added space after : in printing a conditional expression. Thanks to Josh
+ Triplett for noticing the problem.
+ - dropped trailing whitespace when code at the end of a line is deleted.
+ Thanks to Josh Triplett for noticing the problem.
+ - Fixed environment management when script rule uses cache. Thanks to
+ Bissyande for finding the problem.
+ - when false matches if with no else
+ - ensure { ... } with whencode checks to the end of the function. Thanks to
+ Rene Rydhof Hansen for finding the problem.
*)
+(*
+ * Copyright 2010, INRIA, University of Copenhagen
+ * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix
+ * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen
+ * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
+ * This file is part of Coccinelle.
+ *
+ * Coccinelle is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, according to version 2 of the License.
+ *
+ * Coccinelle is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Coccinelle. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * The authors reserve the right to distribute this or future versions of
+ * Coccinelle under other licenses.
+ *)
+
+
(*
* Copyright 2005-2010, Ecole des Mines de Nantes, University of Copenhagen
* Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix