pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/coccinelle Update to 0.1.8:



details:   https://anonhg.NetBSD.org/pkgsrc/rev/67a791481b31
branches:  trunk
changeset: 558665:67a791481b31
user:      wiz <wiz%pkgsrc.org@localhost>
date:      Sun May 10 21:26:12 2009 +0000

description:
Update to 0.1.8:

* 0.1.8

** Language:

** 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@localhost> 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.

diffstat:

 devel/coccinelle/Makefile |  7 ++++---
 devel/coccinelle/distinfo |  8 ++++----
 2 files changed, 8 insertions(+), 7 deletions(-)

diffs (31 lines):

diff -r fee97840253d -r 67a791481b31 devel/coccinelle/Makefile
--- a/devel/coccinelle/Makefile Sun May 10 21:11:43 2009 +0000
+++ b/devel/coccinelle/Makefile Sun May 10 21:26:12 2009 +0000
@@ -1,8 +1,9 @@
-# $NetBSD: Makefile,v 1.4 2009/04/29 11:21:52 wiz Exp $
+# $NetBSD: Makefile,v 1.5 2009/05/10 21:26:12 wiz Exp $
 
-DISTNAME=      coccinelle-0.1.7
+DISTNAME=      coccinelle-0.1.8
 CATEGORIES=    devel
-MASTER_SITES=  http://aryx.cs.uiuc.edu/~pad/software/project-coccinelle/#http://www.emn.fr/x-info/coccinelle/distrib/
+MASTER_SITES=  http://www.emn.fr/x-info/coccinelle/distrib/
+#http://aryx.cs.uiuc.edu/~pad/software/project-coccinelle/
 EXTRACT_SUFX=  .tgz
 
 MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
diff -r fee97840253d -r 67a791481b31 devel/coccinelle/distinfo
--- a/devel/coccinelle/distinfo Sun May 10 21:11:43 2009 +0000
+++ b/devel/coccinelle/distinfo Sun May 10 21:26:12 2009 +0000
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.4 2009/04/29 11:21:52 wiz Exp $
+$NetBSD: distinfo,v 1.5 2009/05/10 21:26:12 wiz Exp $
 
-SHA1 (coccinelle-0.1.7.tgz) = d8976c170bc1ca3c6642e678c5235fb7ba74e340
-RMD160 (coccinelle-0.1.7.tgz) = 2485754f041bcae2f049933eb1194f9a1758accc
-Size (coccinelle-0.1.7.tgz) = 1686438 bytes
+SHA1 (coccinelle-0.1.8.tgz) = 8531f601873950ea79f60671ea8de76365d86277
+RMD160 (coccinelle-0.1.8.tgz) = b55954f191bfd286df7005836ba5bb025d077cf3
+Size (coccinelle-0.1.8.tgz) = 1914684 bytes
 SHA1 (patch-aa) = 12614a91c49a3bbf4d707b4a65fee5e3aba58b3f
 SHA1 (patch-ab) = 0be4fb19afdb530c5d27f0611cc9d245b6db0bad



Home | Main Index | Thread Index | Old Index