svn commit: r236917 - head/sys/kern
Pawel Jakub Dawidek
pjd at FreeBSD.org
Tue Jun 12 11:53:13 UTC 2012
On Tue, Jun 12, 2012 at 12:53:47PM +1000, Bruce Evans wrote:
> On Mon, 11 Jun 2012, Pawel Jakub Dawidek wrote:
> > - KASSERT(fd >= 0 && fd < fdp->fd_nfiles,
> > + KASSERT((unsigned int)fd < fdp->fd_nfiles,
> > ("file descriptor %d out of range (0, %d)", fd, fdp->fd_nfiles));
> > return ((fdp->fd_map[NDSLOT(fd)] & NDBIT(fd)) != 0);
> > }
>
> This is backwards. Apart from using the worst possible (most verbose)
> spelling of `unsigned', it uses a type hack manually optimize away the
> test for fd being < 0. The compiler will do this "optimization"
> automatically if it is any good (or undo it if it is not), so all the
> hack does is obfuscate the test. With the verbose spelling of u_int,
> it even takes more space.
Well, to be honest I presonally would prefer explicit check for fd being
less than 0, but my impression was that using cast is the most popular
way and I wanted this check to be consistent across our source tree.
Feel free to change it.
BTW. I really dislike using 'unsigned' with omitted 'int'. u_int is fine.
--
Pawel Jakub Dawidek http://www.wheelsystems.com
FreeBSD committer http://www.FreeBSD.org
Am I Evil? Yes, I Am! http://tupytaj.pl
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/svn-src-all/attachments/20120612/41291d7b/attachment.pgp
More information about the svn-src-all
mailing list