Messages in this thread | | | From | Denis Vlasenko <> | Subject | Re: Use enum to declare errno values | Date | Wed, 23 Nov 2005 16:24:49 +0200 |
| |
On Wednesday 23 November 2005 16:19, linux-os (Dick Johnson) wrote: > > I'm just wondering why not declaring errno values using enumaration ? > > It is just more convenient when debuging the kernel. > > > > Thanks > > There is an attempt to keep kernel errno values similar to > user-mode errno values. This simplifies the user-kernel > interface where the kernel will return -ERRNO and the user-mode > code negates it and puts it into the user errno then sets the > return value to -1 (a Unix convention). > > The user-mode errno's therefore must correspond. You can't > expect the 'C' runtime libraries to be rebuilt and/or all the > programs recompiled just because the kernel got changed so > the errno's are hard-coded. 0 will always mean "no error" and > 1 will always be EPERM, etc. There are error-codes that are > the same number also, EWOULDBLOCK and EAGAIN are examples. > > So, you can't just auto-enumerate. If auto-enumeration isn't > possible, then you might just as well use #define, which is > what is done.
?!!
enum { one, two, ten = 10 };
-- vda - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |