Coccinelle release 1.0.0-rc3
authorCoccinelle <cocci@diku.dk>
Mon, 6 Jun 2011 09:36:19 +0000 (11:36 +0200)
committerRene Rydhof Hansen <rrh@cs.aau.dk>
Mon, 6 Jun 2011 09:36:19 +0000 (11:36 +0200)
commit65038c617fe3e5d7a284059fbfa78dddfbb9b9c4
treef3233fad1308bbe45f2f5dcd2bb99351d505b296
parent8babbc8f18fe06ec20e19630a1ec09e759c380e1
Coccinelle release 1.0.0-rc3

** Language:
- Addition of initializer list metavariables.  Thanks to Michael Stefaniuc
  for noticing the need for them.
- Allow multiple position variables per token
- ++ can now be associated with - code
- Allow /* */ comments as smpl comments, not only as + code
- Add support for && (label addresses)
- local idexpression metavariable no longer matches static local x

** Features:
- Preserve spacing before // comments when not at the beginning of a line
- Adjusted parsing of endif to put it after jump code
- Improve warning message when using -use_cache
- More helpful initial value for exported variables in python
- Support - on expression nests
- Better handling of the case of a matched declaration that should only
  be replaced by other top level things.

** 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.
- Corrected failure to due missing ocamlfind. Thanks to Derek M. Jones for
  reporting the problem.
- Allow fake nodes to be - in the allminus case, to drop tokens related to
  a function definition or forward declaration but before the first code
  mentioned in the semantic patch.
- Drop __init etc when deleting a whole function.
- Cause appropriate newlines to be preserved when multiple matches (trees)
  contain adjacent modifications derived from the same SmPL code.
- check_meta takes into account fresh identifier seed information.
- Types for worth-trying optimization should not be followed by space
- Improved filtering of result of matching atomic patterns
- Drop positions before creating function prototype rules
- Adjust position of { introduced by adding multiple statements in a
  single-statement position
- Drop newline after function call ( when all arguments on that line are
  eliminated
- Accept removal of a single declaration, replaced by arbitrary,
  non-declaration code
- smpl_spacing takes into account newlines, indentation
63 files changed:
Makefile
Makefile.release
changes.txt
cocci.ml
ctl/.depend [deleted file]
ctl/ctl_engine.ml
docs/Coccilib.3cocci
docs/manual/macros.tex
docs/manual/main_grammar.pdf
docs/manual/manual.pdf
docs/manual/options.pdf
engine/asttoctl2.ml
engine/asttoctl2.mli
engine/asttomember.ml
engine/cocci_vs_c.ml
engine/ctltotex.mli
globals/config.ml.in
parsing_c/lexer_parser.ml
parsing_c/unparse_c.ml
parsing_c/unparse_cocci.ml
parsing_c/unparse_hrule.ml
parsing_cocci/.depend [deleted file]
parsing_cocci/arity.ml
parsing_cocci/ast0_cocci.ml
parsing_cocci/ast0_cocci.mli
parsing_cocci/ast0toast.ml
parsing_cocci/ast_cocci.ml
parsing_cocci/ast_cocci.mli
parsing_cocci/check_meta.ml
parsing_cocci/compute_lines.ml
parsing_cocci/context_neg.ml
parsing_cocci/function_prototypes.ml
parsing_cocci/index.ml
parsing_cocci/insert_plus.ml
parsing_cocci/iso_pattern.ml
parsing_cocci/parse_cocci.ml
parsing_cocci/parser_cocci_menhir.ml
parsing_cocci/parser_cocci_menhir.mly
parsing_cocci/pretty_print_cocci.ml
parsing_cocci/single_statement.ml
parsing_cocci/top_level.ml
parsing_cocci/top_level.mli
parsing_cocci/unparse_ast0.ml
parsing_cocci/visitor_ast.ml
parsing_cocci/visitor_ast0.ml
popl/popl.mli
popl/popltoctl.ml
popl/popltoctl.mli
popl09/.depend [deleted file]
popl09/popl.mli
popl09/popltoctl.ml
popl09/popltoctl.mli
python/.depend [deleted file]
scripts/coccicheck/configure
tests/SCORE_expected.sexp
tests/SCORE_expected_orig.sexp
tests/addfield.c [new file with mode: 0644]
tests/addfield.cocci [new file with mode: 0644]
tests/addfield.res [new file with mode: 0644]
tests/spacing.c [new file with mode: 0644]
tests/spacing.cocci [new file with mode: 0644]
tests/spacing.res [new file with mode: 0644]
tests/top.cocci