On Mon, 24 May 2004, Arkady V.Belousov wrote: > 23-���-2004 21:50 [EMAIL PROTECTED] (Bart Oldeman) wrote to > [EMAIL PROTECTED]: > > >> /* DELETED (0x5) || EXT_DELETED (0xe5) ? */ > >> if ((UBYTE)(name[0] & ~0xE0) == DELETED) > > Ops, mistype. Should be: > > if ((UBYTE)((0x20 + name[0]) & ~0x20) == DELETED) > ----------------^^^^^^^ > BO> Your code is much harder to understand > > Just slightly more arithmetics. For some begginers harder to read ?: > instead if/else or even ++ instead +1, but this not stops you from using > these constructions?
Maybe I'm just a weirdo, but what you call "slightly more arithmetics" takes 100 times longer to figure out for me (unlike those syntactical constructs like ++). Replacing if (name[0] == DELETED || name[0] == EXT_DELETED) by /* DELETED (0x5) || EXT_DELETED (0xe5) ? */ if ((UBYTE)((0x20 + name[0]) & ~0x20) == DELETED) may help (it doesn't for Open Watcom) but such changes should be done by the compiler's code generator, not by a human being... Bart ------------------------------------------------------- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id149&alloc_id�66&op=click _______________________________________________ Freedos-kernel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freedos-kernel
