Coccinelle (software)

Coccinelle (software)
Coccinelle
Stable release 0.2.5 / April 3, 2011; 6 months ago (2011-04-03)
Preview release 1.0.0-rc7 / August 27, 2011; 48 days ago (2011-08-27)
Development status Active
Written in Objective Caml, Python
Type Static program analysis
License GNU GPL v2
Website coccinelle.lip6.fr

Coccinelle (French word for ladybug) is a tool to match and transform the source code of programs written in the programming language C. Coccinelle was initially used to aid the evolution of Linux; with support for changes to library application programming interfaces (APIs) such as renaming a function, adding a function argument which value is somehow context-dependent, and reorganizing a data structure. The tool is freely available under an open source license.

The source code to be matched and/or replaced is specified using a pattern that is very similar to C (the Semantic Patch Language).[1][2]

Contents

Example

@@
expression lock, flags;
expression urb;
@@

 spin_lock_irqsave(lock, flags);
 <...
- usb_submit_urb(urb)
+ usb_submit_urb(urb, GFP_ATOMIC)
 ...>
 spin_unlock_irqrestore(lock, flags);

@@
expression urb;
@@

- usb_submit_urb(urb)
+ usb_submit_urb(urb, GFP_KERNEL)

Development

Support is provided by IRILL and funding for the development of Coccinelle has been provided by the Agence Nationale de la Recherche (France), the Danish Research Council for Technology and Production Sciences and INRIA.

References

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Coccinelle (disambiguation) — Coccinelle is the French word for a ladybug (or ladybird). It may refer to: a French transsexual actress and entertainer, see Coccinelle an Italian leatherware and shoe manufacturer, see Coccinelle (manufacturer) Coccinelle (software) a framework …   Wikipedia

  • The Walt Disney Company — Création 16 octobre 1923 (Burbank, Californie) Dates clés 1929, renommage en Walt Disne …   Wikipédia en Français

  • OCaml — Paradigm(s) multi paradigm: imperative, functional, object oriented Appeared in 1996 Developer INRIA Stable release 3.12.1 (July 4, 2011; 4 months ago ( …   Wikipedia

  • Historique De La Walt Disney Company — Sommaire 1 La période Walt Disney : 1923 1966 1.1 Les courts métrages : 1923 1937 1.2 Les longs métrages : 1937 1954 …   Wikipédia en Français

  • Historique de la Walt Disney Company — Sommaire 1 La période Walt Disney : 1923 1966 1.1 Les courts métrages : 1923 1937 1.2 Les longs métrages : 1937 1954 …   Wikipédia en Français

  • Historique de la walt disney company — Sommaire 1 La période Walt Disney : 1923 1966 1.1 Les courts métrages : 1923 1937 1.2 Les longs métrages : 1937 1954 …   Wikipédia en Français

  • Liste de jeux Nintendo DS —   Liste des listes de jeux vidéo  Voici la liste des jeux vidéo sortis sur Nintendo DS. Sommaire  …   Wikipédia en Français

  • Tesco — For other uses, see Tesco (disambiguation). Coordinates: 51°42′18.89″N 0°1′36.37″W / 51.7052472°N 0.0267694°W / 51.7052472; 0.0267694 …   Wikipedia

  • Atlas (disambiguation) — Most things with a name that includes the term Atlas stem directly or indirectly from the mythological character AtlasAtlas may also refer to: Greek mythology * Atlas (mythology), a Titan who bore the spheres of the heavens; inspiring the widely… …   Wikipedia

  • Walt Disney Home Entertainment — Logo de Walt Disney Home Entertainment Création 1980 …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”