[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 1/4] hvmloader: Fixup pci_write* macros
On Mon, 15 Jun 2015 16:23:13 +0100 Jan Beulich wrote: > >>> On 15.06.15 at 16:35, <andrew.cooper3@xxxxxxxxxx> wrote: > > On 15/06/15 15:30, Don Slutz wrote: > >> On 06/15/15 10:19, Andrew Cooper wrote: > >>> Furthermore, what about devfn or reg? > >>> > >> devfn and reg do not need the bracketing since they are just passed, > >> but I have no issue with adding the extra brackets. > > > > Macros, under all circumstances, should have all of their parameters > > bracketed for safety. > > No, as this harms readability: > > #define macro(x) function((x)) > > would completely pointlessly be having an extra set of parentheses. > And > > #define macro(x, y) function(x, y) > > is just the logical extension to that: There is nothing the expressions > passed as arguments could contain to require parenthesization, as > there's no operator of precedence lower than comma (and if either > argument contains a comma expression, it needs to be > parenthesized at the invocation site anyway). I think parenthesis are just long term guards against classic surprises such as: #define macro(x) function(x * 2) ... macro(N + 3) You could treat this case separately though, but people often go for the "good practice". -- Mihai DonÈu _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |