Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Example  





2 Development  





3 References  





4 External links  














Coccinelle (software): Difference between revisions






فارسی
Français

Suomi
 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 




Print/export  



















Appearance
   

 





Help
 

From Wikipedia, the free encyclopedia
 


Browse history interactively
 Previous editNext edit 
Content deleted Content added
No edit summary
Nikai (talk | contribs)
11,344 edits
v.1.0.0-rc3, added official GitHub tracking repository
Line 4: Line 4:

| latest release version = 0.2.5

| latest release version = 0.2.5

| latest release date = {{Start date and age|2011|04|03}}

| latest release date = {{Start date and age|2011|04|03}}

| latest preview version = 1.0.0-rc1

| latest preview version = 1.0.0-rc3

| latest preview date = {{Start date and age|2011|04|14}}

| latest preview date = {{Start date and age|2011|06|03}}

| programming language = [[Objective Caml]], [[Python (programming language)|Python]]

| programming language = [[Objective Caml]], [[Python (programming language)|Python]]

| status = Active

| status = Active

Line 46: Line 46:

==External links==

==External links==

* {{Official website|coccinelle.lip6.fr}}

* {{Official website|coccinelle.lip6.fr}}

* [https://github.com/coccinelle/coccinelle Official release tracking repository] at [[GitHub]]

* [http://coccinelle.lip6.fr/papers.php Articles describing the use of Coccinelle]

* [http://coccinelle.lip6.fr/papers.php Articles describing the use of Coccinelle]




Revision as of 14:24, 6 June 2011

Coccinelle
Stable release

0.2.5 / April 3, 2011; 13 years ago (2011-04-03)

Preview release

1.0.0-rc3 / June 3, 2011; 13 years ago (2011-06-03)

Repository
Written inObjective Caml, Python
TypeStatic program analysis
LicenseGNU GPL v2
Websitecoccinelle.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]

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

  1. ^ Valerie Henson (2009-01-20). "Semantic patching with Coccinelle". Linux Weekly News. Retrieved 2011-04-25.
  • ^ Wolfram Sang (2010-03-30). "Evolutionary development of a semantic patch using Coccinelle". Linux Weekly News. Retrieved 2011-04-25.
  • External links


    Retrieved from "https://en.wikipedia.org/w/index.php?title=Coccinelle_(software)&oldid=432854290"

    Categories: 
    Refactoring
    Static program analysis tools
    Hidden categories: 
    Pages using Infobox software with unknown parameters
    Official website different in Wikidata and Wikipedia
     



    This page was last edited on 6 June 2011, at 14:24 (UTC).

    This version of the page has been revised. Besides normal editing, the reason for revision may have been that this version contains factual inaccuracies, vandalism, or material not compatible with the Creative Commons Attribution-ShareAlike License.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki