謎's キッチン

謎のひとりごと。Amazon欲しい物リストはこちら: https://www.amazon.co.jp/hz/wishlist/ls/CCPOV7C6JTD2

Coccinelleを使ってみる

sudo aptitude install coccinelle でインストール。
マッチングには*使えって書かれてるけどハイライトしてくれないで-になるので、以下のようにするしか無さそう。

@@
expression e;
@@

- (int) e
+ ((int) e)

ざっと見簡単で非常に良さげ。
型や関数や変数にアノテーション付けてsparse的なことできないのかな…と思ったけど__attribute__への対応が微妙。
それでもIDEリファクタリングツールでは補えない複雑なリファクタリングに便利だし、バグを見つけて修正するのにも便利だし、レビューの補助ツールとしても良さそう。