pkgsrc/devel/coccinelle/PLIST
obache 027eac5e84 Update coccinelle to 0.2.5.
(accept any of python-2.x).

* 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:
- scripts now have names and can declare metavariables that are seen by
  SmPL as identifier metavariables, see demos/{python,ocaml}tococci.cocci
- declaration (match variable declarations) and field (match structure
  field declarations) metavariables
- matching of array initializations and of enum declarations

** Features:
- compatability with Python 2.7.  Thanks to Richard W.M. Jones for pointing
  out the problem
- python and ocaml string representations of parameter lists and expression
  lists
- try simpler patterns on glimpse failure
- graceful and immediate failure when a virtual rule is defined on the
  command line, but not in the rule
- spatch returns -1 when a virtual rule is requested that is not supported
- no transformation when using * with the option -no_show_diff
- expanded +++ file name for match output
- 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
- allow inheriting position variables over rules that make transformations
  but depend on virtual rules that are not defined on the command line
- treat top-level tokens in decl visitor.  Thanks to Peter Tummeltshammer
  for noticing a resulting problem.
- improve typing of the result of an assignment expression
- eliminate some recursive calls in C code parsing to avoid stack overflows
- better pretty printing of #define when the whole line is removed
- better pretty printing of asm code containing
  "::[input]"r"(&coherence_data[i])"
- allow pretty printing of C code with nameless bit fields
- avoid adding an error message to standard output if ocamlfind is not
  found
- struct/union/enum-typed metavariables with a metavariable type name
- better management of whitespace between deleted lines.  Thanks to
  Andriy Gapon for noticing the problem.
- improved parsing recovery for badly parsed struct/enum typedefs
- drop expanded tokens in sgrep output.  Thanks to Andriy Gapon for
  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.
2011-10-14 09:06:35 +00:00

73 lines
3 KiB
Text

@comment $NetBSD: PLIST,v 1.6 2011/10/14 09:06:35 obache Exp $
bin/spatch
bin/spatch.opt
lib/dllpycaml_stubs.so
man/man1/spatch.1
share/coccinelle/commons/common.cmi
share/coccinelle/commons/common_extra.cmi
share/coccinelle/commons/glimpse.cmi
share/coccinelle/commons/interfaces.cmi
share/coccinelle/commons/oarray.cmi
share/coccinelle/commons/oassoc.cmi
share/coccinelle/commons/objet.cmi
share/coccinelle/commons/ocollection.cmi
share/coccinelle/commons/ofullcommon.cmi
share/coccinelle/commons/ograph.cmi
share/coccinelle/commons/ograph_extended.cmi
share/coccinelle/commons/ograph_simple.cmi
share/coccinelle/commons/osequence.cmi
share/coccinelle/commons/oset.cmi
share/coccinelle/commons/parser_combinators.cmi
share/coccinelle/commons/seti.cmi
share/coccinelle/commons/sexp_common.cmi
share/coccinelle/globals/iteration.cmi
share/coccinelle/ocaml/coccilib.cmi
share/coccinelle/parsing_c/ast_c.cmi
share/coccinelle/parsing_c/comment_annotater_c.cmi
share/coccinelle/parsing_c/compare_c.cmi
share/coccinelle/parsing_c/control_flow_c.cmi
share/coccinelle/parsing_c/control_flow_c_build.cmi
share/coccinelle/parsing_c/cpp_analysis_c.cmi
share/coccinelle/parsing_c/cpp_ast_c.cmi
share/coccinelle/parsing_c/cpp_token_c.cmi
share/coccinelle/parsing_c/flag_parsing_c.cmi
share/coccinelle/parsing_c/lexer_c.cmi
share/coccinelle/parsing_c/lexer_parser.cmi
share/coccinelle/parsing_c/lib_parsing_c.cmi
share/coccinelle/parsing_c/parse_c.cmi
share/coccinelle/parsing_c/parser_c.cmi
share/coccinelle/parsing_c/parsing_consistency_c.cmi
share/coccinelle/parsing_c/parsing_hacks.cmi
share/coccinelle/parsing_c/parsing_recovery_c.cmi
share/coccinelle/parsing_c/parsing_stat.cmi
share/coccinelle/parsing_c/pretty_print_c.cmi
share/coccinelle/parsing_c/semantic_c.cmi
share/coccinelle/parsing_c/test_parsing_c.cmi
share/coccinelle/parsing_c/token_c.cmi
share/coccinelle/parsing_c/token_helpers.cmi
share/coccinelle/parsing_c/token_views_c.cmi
share/coccinelle/parsing_c/type_annoter_c.cmi
share/coccinelle/parsing_c/type_c.cmi
share/coccinelle/parsing_c/unparse_c.cmi
share/coccinelle/parsing_c/unparse_cocci.cmi
share/coccinelle/parsing_c/unparse_hrule.cmi
share/coccinelle/parsing_c/visitor_c.cmi
share/coccinelle/python/coccilib/__init__.py
share/coccinelle/python/coccilib/coccigui/__init__.py
share/coccinelle/python/coccilib/coccigui/coccigui.py
share/coccinelle/python/coccilib/coccigui/pycoccimodel.py
share/coccinelle/python/coccilib/coccigui/pygui.glade
share/coccinelle/python/coccilib/coccigui/pygui.gladep
share/coccinelle/python/coccilib/coccigui/vim.py
share/coccinelle/python/coccilib/coccigui/vimcom.py
share/coccinelle/python/coccilib/coccigui/vimeditor.py
share/coccinelle/python/coccilib/coccigui/vimembed.py
share/coccinelle/python/coccilib/elems.py
share/coccinelle/python/coccilib/org.py
share/coccinelle/python/coccilib/output.py
share/coccinelle/python/coccilib/report.py
share/coccinelle/python/coccilib/trac.py
share/coccinelle/spatch
share/coccinelle/spatch.opt
share/coccinelle/standard.h
share/coccinelle/standard.iso