[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 1/6] tools/libxl: Introduce min and max macros
2015-02-18 16:34 GMT+00:00 Andrew Cooper <andrew.cooper3@xxxxxxxxxx>: > This is the same set used by libxc. > > Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> > CC: Ian Campbell <Ian.Campbell@xxxxxxxxxx> > CC: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx> > CC: Wei Liu <wei.liu2@xxxxxxxxxx> > --- > tools/libxl/libxl_internal.h | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) > > diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h > index 934465a..a2b6fb7 100644 > --- a/tools/libxl/libxl_internal.h > +++ b/tools/libxl/libxl_internal.h > @@ -108,6 +108,22 @@ > > #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0])) > > +#define min(X, Y) ({ \ > + const typeof (X) _x = (X); \ > + const typeof (Y) _y = (Y); \ > + (void) (&_x == &_y); \ > + (_x < _y) ? _x : _y; }) > +#define max(X, Y) ({ \ > + const typeof (X) _x = (X); \ > + const typeof (Y) _y = (Y); \ > + (void) (&_x == &_y); \ > + (_x > _y) ? _x : _y; }) > + > +#define min_t(type,x,y) \ > + ({ type __x = (x); type __y = (y); __x < __y ? __x: __y; }) > +#define max_t(type,x,y) \ > + ({ type __x = (x); type __y = (y); __x > __y ? __x: __y; }) > + Surely nobody will complain about these defines but according to standard (ie https://www.securecoding.cert.org/confluence/display/seccode/DCL37-C.+Do+not+declare+or+define+a+reserved+identifier) identifiers that start with double underscore are reserved. Here you used _x, _y and __x, __y as it's a single patch make at least coherent. > #define LIBXL__LOGGING_ENABLED > > #ifdef LIBXL__LOGGING_ENABLED > -- > 1.7.10.4 > Frediano _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |