All of lore.kernel.org
 help / color / mirror / Atom feed
From: wagi@monom.org (Daniel Wagner)
To: cocci@systeme.lip6.fr
Subject: [Cocci] Formatting issues
Date: Mon, 29 Jul 2013 11:07:35 +0200	[thread overview]
Message-ID: <51F630D7.1070701@monom.org> (raw)
In-Reply-To: <alpine.DEB.2.02.1307291047250.2271@hadrien>

On 07/29/2013 10:49 AM, Julia Lawall wrote:
>>> I now try to convince others to use first option as this allows all
>>> submitted patches have perfect formatting because formatter took care of
>>> it. This can save few round trips when reviewer wants space after comma
>>> etc.
>>
>> The main problem I see is as soon you start modifing the output from spatch by
>> hand you risk to introduce an error and as soon one does several rounds of
>> review it one will introduce an error.
>>
>> For the changes in ConnMan I did applied the semantic patch and then
>> went over the code base via checkpatch.pl and fixed up the errors.
>>
>> I don't know if a simple rule like 80 chars max couldn't be added for
>> the --linux-spacing switch. That was the offender in my case. The
>> rest of the patch was okay.
>
> It's a simple rule in theory, but not so simple in practice.  Pretty
> printing is a hard problem, because doing a good job requires knowing both
> what you have seen before and what is coming up.  Also, when Coccinelle is
> generating code, it doesn't see the AST any more, only tokens, so it has
> limited information.

I understand that in reality this is a hard problem. Something what I 
would helpful here would be a list of lines (emacs/vim parseable) where 
the the result line is too long, presumed that detecting of long lines 
is easy.

> In any case, the huge indent was just a bug, so hopefully the result will
> be somewhat better in the future.

Yes, that one is gone. Thanks again.

Okay, maybe I am overdoing it with my wishlist. I am trying to prepare 
another semantic patch and I see that coccinelle's parser is not too 
happy with certain code. Most of the time I just need to add the right 
macro to my standard.h to make coccinelle happy. My wish would be that 
coccinelle wouldn't just ignore that file instead just stop and yell at 
me: "Parser error: ...". Did I overlook such an option?

cheers,
daniel

  reply	other threads:[~2013-07-29  9:07 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-17 14:56 [Cocci] Formatting issues Daniel Wagner
2013-07-17 15:07 ` Julia Lawall
2013-07-17 15:16   ` Daniel Wagner
2013-07-17 15:31     ` Julia Lawall
2013-07-17 15:41       ` Daniel Wagner
2013-07-17 15:51       ` Ondřej Bílka
2013-07-29  8:42         ` Daniel Wagner
2013-07-29  8:49           ` Julia Lawall
2013-07-29  9:07             ` Daniel Wagner [this message]
2013-07-29  9:14               ` Julia Lawall
2013-07-29 14:58                 ` [Cocci] Formatting issue Daniel Wagner
2013-07-29  9:28               ` [Cocci] Formatting issues Ondřej Bílka
2013-07-29 14:59                 ` Daniel Wagner
2013-07-29 15:59                   ` Ondřej Bílka
2013-07-30 21:06                     ` Daniel Wagner
2013-07-28 10:48 ` Julia Lawall
2013-07-29  8:33   ` Daniel Wagner

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=51F630D7.1070701@monom.org \
    --to=wagi@monom.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.