Header files with enums instead of defines?

Greg 'groggy' Lehey grog at FreeBSD.org
Tue Dec 21 18:03:11 PST 2004


On Tuesday, 21 December 2004 at 20:43:14 -0500, Brian Fundakowski Feldman wrote:
> On Wed, Dec 22, 2004 at 11:31:43AM +1030, Greg 'groggy' Lehey wrote:
>> Has anybody thought about replacing #defines with enums in header
>> files?  It would make debugging a whole lot easier.  Foe example, I'm
>> currently looking at a debug printout which contains:
>>
>>   xerrno = 17,
>>
>> To find out what that means, I need to go to
>> /usr/src/include/sys/errno.h and look for 17.  I find:
>>
>> #define	EEXIST		17		/* File exists */
>>
>> If we were to change this to
>>
>> enum EEXIST = 17;	                /* File exists */
>>
>> I'd then be able to see:
>>
>>   xerrno = EEXIST,
>>
>> That makes debugging a whole lot easier.  About the only down side I
>> can see is that you can't #undef an enum.  Is this a big deal?
>
> I think you'll screw up an awful lot of people that #ifdef based upon
> the errno names.

*sigh*  Yes, I didn't think about that.  Never mind.

Greg
--
See complete headers for address and phone numbers.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20041222/1938281d/attachment.bin


More information about the freebsd-arch mailing list