[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v4 2/2] xl: Add commands for usb hot-plug

Ian Campbell writes ("Re: [Xen-devel] [PATCH v4 2/2] xl: Add commands for usb 
> On Wed, 2013-04-17 at 11:02 +0100, Roger Pau Monné wrote:
> > This are kind of general macros, that could be used elsewhere, might be
> > suitable to put them outside of this function and name them CHAR_IS_DEC
> > and CHAR_IS_HEX.
> ctype.h already provides isdigit() and isxdigit(), no need for our own.

These functions' behaviour depends on the locale.  That may or may not
be desirable.

If you do use isdigit, be sure to invoke it via the CTYPE macro in

   * int CTYPE(ISFOO, char c);
   * int CTYPE(toupper, char c);
   * int CTYPE(tolower, char c);
   * This is necessary because passing a simple char to a ctype.h
   * is forbidden.  ctype.h macros take ints derived from _unsigned_ chars.
   * If you have a char which might be EOF then you should already have
   * it in an int representing an unsigned char, and you can use the
   * <ctype.h> macros directly.  This generally happens only with values
   * from fgetc et al.
   * For any value known to be a character (eg, anything that came from
   * a char[]), use CTYPE.
  #define CTYPE(isfoo,c) (isfoo((unsigned char)(c)))


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.