[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1514310748.3468.3.camel@perches.com>
Date: Tue, 26 Dec 2017 09:52:28 -0800
From: Joe Perches <joe@...ches.com>
To: Julia Lawall <Julia.Lawall@...6.fr>,
Dmitry Torokhov <dmitry.torokhov@...il.com>,
linux-kernel@...r.kernel.org
Cc: kernel-janitors@...r.kernel.org, linux-input@...r.kernel.org,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Subject: Re: [PATCH 0/1] Input: inline macros for MODULE_LICENSE, etc
On Tue, 2017-12-26 at 18:05 +0100, Julia Lawall wrote:
> 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>
What assures that the #define is only used by
MODULE_<FOO> and is not used in any other way?
Powered by blists - more mailing lists