On Sat, 2017-02-04 at 20:24 +0100, Julia Lawall wrote:
> 
> On Sat, 4 Feb 2017, Joe Perches wrote:
> 
> > On Sat, 2017-02-04 at 19:10 +0100, Julia Lawall wrote:
> > > 
> > > On Fri, 3 Feb 2017, Joe Perches wrote:
> > > 
> > > > (adding Julia Lawall)
> > > > 
> > > > On Fri, 2017-02-03 at 20:44 -0800, Guenter Roeck wrote:
> > > > > On Sat, Jan 28, 2017 at 07:05:09PM +1300, Derek Robson wrote:
> > > > > > A style fix across whole driver.
> > > > > > changed permissions to octal style, found using checkpatch
> > > > > > 
> > > > > > Signed-off-by: Derek Robson <robso...@gmail.com>
> > > > > 
> > > > > FWIW, I think changes like this are best done using coccinelle.
> > > > 
> > > > I think checkpatch does it reasonably well.
> > > > 
> > > > Julia?  Can coccinelle do this?
> > > > 
> > > > I believe cocinelle doesn't handle the substitution
> > > > and octal addition very well when multiple flags
> > > > are used.
> > > 
> > > OK, finally received.  I think that Guenter's solution is a good one,
> > > because the rule-writer knows better than Coccinelle what people find to
> > > be intelligible.
> > 
> > If it's written in python, I don't see how that's
> > particularly different than being written in perl,
> > but coccinelle could certainly handle expressions
> > on multiple lines of these or'd constants better.
> 
> Well, the python would only be needed if there was a need for actual
> calculations.  Should S_IRGRP | S_IWGRP become 0060?

Yes.

> > Are there any than span 2 or more lines?
> > I didn't see one with a casual grep.
> > 
> > Does coccinelle handle arbitrary ordering of these
> > constants in a form like Guenter suggests or does
> > each possible ordered sequence need to be written?
> 
> There is the following isomorphism:
> 
> X | Y => Y | X
> 
> But that only works when the associativity is right.
> 
> A | B | C is (A | B) | C, so the B and C won't exchange with each other.
> One can also write eg
> 
> A | ... | B
> 
> which gives more fexibility.  I'm not sure to what extent that works when
> there are changes, though.

The perl code doesn't care about the ordering
but it doesn't handle the A | ... | B case.

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to