From: Andrzej Hajda <a.hajda@samsung.com>
To: cocci@systeme.lip6.fr
Subject: Re: [PATCH] coccinelle: assign signed result to unsigned variable
Date: Fri, 25 Sep 2015 10:08:43 +0000 [thread overview]
Message-ID: <56051D2B.5040802@samsung.com> (raw)
In-Reply-To: <56041BE5.5010005@users.sourceforge.net>
On 09/24/2015 05:51 PM, SF Markus Elfring wrote:
>> +@rs@
>> +position p;
>> +typedef bool, u8, u16, u32, u64, s8, s16, s32, s64;
>> +{char, short int, int, long, long long, s8, s16, s32, s64} vs;
> Can it matter to specify also the type modifier "signed" in this SmPL approach?
> http://coccinelle.lip6.fr/docs/main_grammar005.html#ctype_qualif
According to my tests it does not matter.
Btw I should replace short int, with short, to allow catch short intergers.
>
>
>> +{unsigned char, unsigned short, unsigned int, unsigned long, unsigned long long, size_t, bool, u8, u16, u32, u64} vu;
> How do you think about to reformat such a data type enumeration?
If you mean split line to be below 80 chars, OK.
>
>
>> +@@
>> +
>> +vu@p = vs
>> +
>> +@r@
>> +position rs.p;
>> +identifier v, f;
>> +statement S1, S2;
>> +expression e;
>> +@@
>> +
>> +*v@p = f(...);
> Do you try to check here if the value receiver is at the same source code
> position from the SmPL rule "rs"?
Yes.
Generally I want to catch all assignments of signed function result to unsigned var.
In this script I have implemented it this way:
1. Look for all assignments 'unsigned = signed' (rs rule).
2. Check if signed from rs rule looks as a function call.
Is there better way to do it?
Regards
Andrzej
>
> Regards,
> Markus
>
next prev parent reply other threads:[~2015-09-25 10:08 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1443099286-16559-1-git-send-email-a.hajda@samsung.com>
2015-09-24 15:51 ` [PATCH] coccinelle: assign signed result to unsigned variable SF Markus Elfring
2015-09-25 10:08 ` Andrzej Hajda [this message]
2015-09-25 15:51 ` SF Markus Elfring
2015-09-26 7:45 ` SF Markus Elfring
2015-09-26 9:07 ` Julia Lawall
2015-09-26 9:41 ` SF Markus Elfring
2015-09-26 9:45 ` Julia Lawall
2015-09-26 9:52 ` SF Markus Elfring
2015-09-26 9:55 ` Julia Lawall
2015-09-26 11:43 ` SF Markus Elfring
2015-09-26 13:55 ` Julia Lawall
2015-09-26 15:22 ` SF Markus Elfring
2015-09-26 15:30 ` Julia Lawall
2015-09-26 15:50 ` SF Markus Elfring
2015-09-26 15:55 ` Julia Lawall
2015-09-26 16:01 ` SF Markus Elfring
2015-09-28 10:54 ` [PATCH v2] " Andrzej Hajda
2015-09-28 11:32 ` Julia Lawall
2015-09-28 11:59 ` Andrzej Hajda
2015-09-30 21:51 ` Julia Lawall
2015-09-28 12:07 ` SF Markus Elfring
2015-09-28 12:12 ` Andrzej Hajda
2015-09-28 12:20 ` SF Markus Elfring
2015-09-28 12:42 ` [Cocci] " Julia Lawall
2015-09-28 12:55 ` SF Markus Elfring
2015-09-28 13:13 ` Julia Lawall
2015-09-28 13:53 ` SF Markus Elfring
2015-09-28 15:07 ` Julia Lawall
2015-10-03 7:09 ` Julia Lawall
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56051D2B.5040802@samsung.com \
--to=a.hajda@samsung.com \
--cc=cocci@systeme.lip6.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).