Hi Willy,
Willy Tarreau writes:
I dont agree with you here : enums are good to simply specify an ordering.
But they must not be used to specify static mapping. Eg: if REG4 *must* be
equal to BASE+4, you should not use enums, otherwise it will render the
code unreadable. I personnaly don't want to count the position of REG7 in
the enum to discover that it's at BASE+7.
Sorry, what do you have to count with the following?
enum {
TLCLK_REG0 = TLCLK_BASE,
TLCLK_REG1 = TLCLK_BASE+1,
TLCLK_REG2 = TLCLK_BASE+2,
};
Please note that enums are a general way of specifying _constants_ with the
type int, not necessarily named enumerations.
Willy Tarreau writes:
if you need something more verbose to say exactly "write 7 to port 123",
it's better to use defines (or even variables sometimes) than enums.
I would agree on variables (for some special cases) but not for defines. The
problem with defines is that you can override a constant without even
noticing it. Therefore, always use enums when you can, and defines only when
you must.
Pekka
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]