Release coccinelle-0.1.8
[bpt/coccinelle.git] / commitmsg
dissimilarity index 99%
index f4b65dd..f05683a 100644 (file)
--- a/commitmsg
+++ b/commitmsg
@@ -1,6 +1,72 @@
-Release coccinelle-0.1
-
- * First public release of the source code:
- * Features
-   - embeded python scripting
-   - position
+Release coccinelle-0.1.8
+
+** Features:
+   - Metavariables now capture the cpp code contained within their definitions
+   - When - fragments are separated by ... or nest boundaries in the semantic
+     patch, but end up matching adjacent source code, the comments, cpp code
+     and whitespace that are between them are not deleted.
+   - better parsing of C: do expansion of macros only when needed when
+     have actually a parse error and also leverage the definition of macros
+     in the parsed file (or in a optional_standard.h file passed as a parameter).
+     This should reduce the need for many hardcoded definitions in standard.h
+   - new semantics for the -macro_file option, by default now expand macros
+     only when necessary. To force use the -macro_file_builtins option instead.
+   - a new -extract_macros command line action to help the parser. Works with
+     the -macro_file option. e.g.
+       $ ./spatch -extract_macros ~/linux > /tmp/alldefs.h
+       $ ./spatch -macro_file /tmp/alldefs.h -sp_file foo.cocci -dir ~/linux
+   - removed -D macro_file option, not consistent with what -D usually means
+   - reattempt to be more efficient for statement metavariables that are just
+     placeholders (ie, no modification, no reuse)
+   - triples now returned from ctl in sorted order.  The main key is the
+     state.  On the other hand, the state order does not always agree with the
+     order of appearance in the code.
+   - spatch is now less verbose on the things it does yet handle. Less confusing
+     for new users.
+   - slightly better error report. Thanks to Derek Jones for the suggestion.
+   - added the options -linux_spacing and -smpl_spacing.  -linux_spacing
+     causes spatch to follow the spacing conventions of Linux, while
+     -smpl_spacing causes spatch to follow the spacing in the semantic patch.
+     -linux_spacing is the default.
+   - more informative error reporting for the already tagged token case.
+     Thanks to Erik Hovland for the suggestion.
+    
+** Bugfix:
+   - better parsing of declare macro at toplevel and in structure.
+     cf -text xfield
+   - allowing back typedef names for fieldname
+   - better printing of else in generated code
+   - slightly better type inference for binary operators.
+   - clear out declarer names and iterator names between SmPL files (for
+     -testall)
+   - better parsing and type checking of macro type aliases. Cf -test macro_int16.
+     Thanks to Li Yingtong for pointing out the problem.
+   - make insert_virtual_positions tail rec, avoid stack overflow pb.
+     Thanks to Diego Liziero <diegoliz@gmail.com> for pointing out the
+     problem.
+   - Better type inference for arithmetic binary operators
+     Thanks to Li Yingtong for pointing out the problem.
+   - Better type inference for constants
+     Thanks to Li Yingtong for pointing out the problem.
+   - move computing of adjacency information for semantic patches to after
+     application of isomorphisms, because isomorphisms can introduce "..."
+   - compute adjacency information for negated ...
+   - record with each transformation site the set of indices of the witness
+     trees that caused the transformation site to come about.  Whitespace and
+     comments between remove tokens associated with disjoint witness trees is
+     not removed.
+   - correct treatment of function pointer typed parameters in the SmPL ast0
+     visitor.
+   - better parsing error message and error recovery when comments are not ended,
+     when some macros have a weird body, and when some switch have a weird
+     Body.
+     Thanks to Derek Jones for pointing out the problem.
+   - better detection and passing of "dangerous" ifdefs, cf -test
+     double_switch.
+   - dropped the separation of decls and body in Seq.  This gives better
+     positioning of the bindings of metavariables shared between them.
+     Thanks to Erik Hovland for an example that shows the problem.
+
+** Internals:
+   - supress warning in compiling ocamlsexp (warning caused by a new behavior
+     of cpp used internally in processing files in ocamlsexp/)