Re: Comma at end of enum lists

Mikael Pettersson
2008-03-29T17:19:52Z

Jacek Luczak writes:
> Hi All,
>
> I've found that in many enum lists, there's a comma at the end, e.g.
> (arch/x86/kernel/early_printk.c):
>
> enum {
> MAGIC1 = 0xBACCD00A,
> MAGIC2 = 0xCA110000,
> XOPEN = 5,
> XWRITE = 4,
> };
>
> Just out of curiosity, is there any particular reason here (no word in
> CodingStyle about that).

Yes. This idiom allows you to add or remove items without
changing adjacent lines.

In a language with strict a comma-as-separator rule you can
get this benefit by placing the comma before new items rather
than after existing items:

enum { FOO
,FIE
,FUM
};

but luckily C doesn't need this perversion.