|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [XEN PATCH 04/10] xen/public: address violations of MISRA C Rule 20.7
On Thu, 29 Feb 2024, Nicola Vetrini wrote:
> On 2024-02-29 17:40, Jan Beulich wrote:
> > On 29.02.2024 16:27, Nicola Vetrini wrote:
> > > --- a/xen/include/public/xen.h
> > > +++ b/xen/include/public/xen.h
> > > @@ -988,7 +988,7 @@ typedef struct {
> > > ((b) >> 8) & 0xFF, ((b) >> 0) & 0xFF, \
> > > ((c) >> 8) & 0xFF, ((c) >> 0) & 0xFF, \
> > > ((d) >> 8) & 0xFF, ((d) >> 0) & 0xFF, \
> > > - e1, e2, e3, e4, e5, e6}}
> > > + (e1), (e2), (e3), (e4), (e5), (e6)}}
> >
> > Why? Wasn't it agreed already that long macro arguments passed on
> > (no matter whether to a function, a macro, or like used here) don't
> > need parenthesizing?
> >
>
> That applies to all outermost macro invocations, but not to the innermost one.
I don't understand what you mean. Maybe a couple of trivial examples
would help.
> If you want also aggregate initalizers to be deviated, that could be done
> (provided that the macro arg is not included in some expression, such as
> "{..., e1 + 1, ...}"
My gut feeling tells me that probably this is what we want but I'd
rather first understand exactly what you meant above
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |