[PATCH 0/1] Input: inline macros for MODULE_LICENSE, etc
From: Julia Lawall
Date: Tue Dec 26 2017 - 12:33:38 EST
Inline macro for MODULE_LICENSE to make the license information easy to
find, eg with grep. Inline the other module-related macros at the same
time.
The complete semantic patch is as follows: (http://coccinelle.lip6.fr/)
// <smpl>
@q@
declarer name MODULE_LICENSE;
identifier i;
constant c;
position p;
@@
MODULE_LICENSE(c@i@p);
@r depends on q@
declarer name MODULE_AUTHOR, MODULE_DESCRIPTION, MODULE_VERSION;
identifier i;
constant c;
position p;
@@
(
MODULE_AUTHOR(c@i@p);
|
MODULE_DESCRIPTION(c@i@p);
|
MODULE_LICENSE(c@i@p);
|
MODULE_VERSION(c@i@p);
)
@other@
identifier r.i;
position p != r.p;
@@
i@p
@s depends on !other@
identifier r.i;
expression e;
@@
#define i e
@@
identifier r.i;
position r.p;
expression s.e;
@@
(
MODULE_AUTHOR(
- i@p
+ e
);
|
MODULE_DESCRIPTION(
- i@p
+ e
);
|
MODULE_LICENSE(
- i@p
+ e
);
|
MODULE_VERSION(
- i@p
+ e
);
)
@@
identifier r.i;
expression s.e;
@@
-#define i e
// </smpl>
---
drivers/input/misc/keyspan_remote.c | 9 +++------
drivers/input/tablet/acecad.c | 9 +++------
drivers/input/tablet/hanwang.c | 10 +++-------
drivers/input/tablet/kbtab.c | 9 +++------
4 files changed, 12 insertions(+), 25 deletions(-)