First Coccinelle semantic patch.
* coccinelle: New subdirectory * coccinelle/README: Documentation stub. * coccinelle/vector_contents.cocci: Semantic patch to replace direct access to `contents' member of Lisp_Vector objects with AREF and ASET where appropriate.
This commit is contained in:
parent
772b2e2ce2
commit
3c9359dfe4
3 changed files with 28 additions and 0 deletions
|
@ -1,3 +1,12 @@
|
|||
2012-06-24 Dmitry Antipov <dmantipov@yandex.ru>
|
||||
|
||||
First Coccinelle semantic patch.
|
||||
* coccinelle: New subdirectory
|
||||
* coccinelle/README: Documentation stub.
|
||||
* coccinelle/vector_contents.cocci: Semantic patch to replace direct
|
||||
access to `contents' member of Lisp_Vector objects with AREF and ASET
|
||||
where appropriate.
|
||||
|
||||
2012-06-22 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Support higher-resolution time stamps (Bug#9000).
|
||||
|
|
3
admin/coccinelle/README
Normal file
3
admin/coccinelle/README
Normal file
|
@ -0,0 +1,3 @@
|
|||
This directory contains semantic patches for Coccinelle, a program matching
|
||||
and transformation tool for programs written in C. For more details, see
|
||||
http://coccinelle.lip6.fr.
|
16
admin/coccinelle/vector_contents.cocci
Normal file
16
admin/coccinelle/vector_contents.cocci
Normal file
|
@ -0,0 +1,16 @@
|
|||
// Avoid direct access to `contents' member of
|
||||
// Lisp_Vector, use AREF and ASET where possible.
|
||||
@expression@
|
||||
identifier I1, I2;
|
||||
expression E1, E2;
|
||||
@@
|
||||
(
|
||||
- XVECTOR (I1)->contents[I2++] = E1
|
||||
+ ASET (I1, I2, E1), I2++
|
||||
|
|
||||
- XVECTOR (I1)->contents[E1] = E2
|
||||
+ ASET (I1, E1, E2)
|
||||
|
|
||||
-XVECTOR (I1)->contents[E1]
|
||||
+AREF (I1, E1)
|
||||
)
|
Loading…
Add table
Reference in a new issue