On Sun, Aug 6, 2017 at 11:25 AM, Julia Lawall <Julia.Lawall@xxxxxxx> wrote: > The v4l2_m2m_ops structures are only passed as the only > argument to v4l2_m2m_init, which is declared as const. > Thus the v4l2_m2m_ops structures themselves can be const. > > Done with the help of Coccinelle. > > // <smpl> > @r disable optional_qualifier@ > identifier i; > position p; > @@ > static struct v4l2_m2m_ops i@p = { ... }; > > @ok1@ > identifier r.i; > position p; > @@ > v4l2_m2m_init(&i@p) > > @bad@ > position p != {r.p,ok1.p}; > identifier r.i; > struct v4l2_m2m_ops e; > @@ > e@i@p > > @depends on !bad disable optional_qualifier@ > identifier r.i; > @@ > static > +const > struct v4l2_m2m_ops i = { ... }; > // </smpl> > > Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx> Acked-by: Ulyanov Mikhail <mikhail.ulyanov@xxxxxxxxxxxxxxxxxx>