Date: Mon, 03 Sep 2001 15:22:10 -0600 From: Warner Losh <imp@harmony.village.org> To: "Brian F. Feldman" <green@FreeBSD.ORG> Cc: Mike Barcroft <mike@FreeBSD.ORG>, David Hill <david@phobia.ms>, audit@FreeBSD.ORG Subject: Re: users.c PATCH - please review Message-ID: <200109032122.f83LMAh28309@harmony.village.org> In-Reply-To: Your message of "Mon, 03 Sep 2001 17:20:50 EDT." <200109032120.f83LKoS53035@green.bikeshed.org> References: <200109032120.f83LKoS53035@green.bikeshed.org>
index | next in thread | previous in thread | raw e-mail
In message <200109032120.f83LKoS53035@green.bikeshed.org> "Brian F. Feldman" writes:
: Warner Losh <imp@harmony.village.org> wrote:
: > In message <20010901125802.F85574@coffee.q9media.com> Mike Barcroft writes:
: > : David Hill <david@phobia.ms> writes:
: > : > I have patched users/users.c so that it will compile under WARNS?=2. I have both attached and cut/pasted it to the message.
: > : > Please review it.
: > :
: > : > diff -ru /usr/src/usr.bin/users.orig/users.c /usr/src/usr.bin/users/users.c
: > : > --- /usr/src/usr.bin/users.orig/users.c Fri Aug 27 21:07:14 1999
: > : > +++ /usr/src/usr.bin/users/users.c Fri Aug 31 15:58:20 2001
: > : > @@ -117,5 +117,8 @@
: > : > scmp(p, q)
: > : > const void *p, *q;
: > : > {
: > : > - return(strncmp((char *)p, (char *)q, UT_NAMESIZE));
: > : > + const char *const pp1 = p;
: > : > + const char *const pp2 = q;
: > : > +
: > : > + return(strncmp(pp1, pp2, UT_NAMESIZE));
: > : > }
: > :
: > : Why create new local variables? Just get rid of the bogus casts.
: >
: > Why not just
: > return (strncmp((const char *)p, (const char *)q, UT_NAMESIZE));
: >
: > Also, const char *const is wrong. No need for the second const.
:
: Technically, there's nothing wrong with declaring "a const pointer to a
: const character", just casting to that would be very strange (and probably
: illegal; not sure). In any case, I'm not sure I see the point of not just
: using two (const char *) casts and not increasing the function size other
: than adding a blank line and space for style(9). That should remove any
: warning about casting away const qualification.
That was rather my point. const char *const is wrong because it is
too consty, the second const doesn't buy you anything.
Warner
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-audit" in the body of the message
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200109032122.f83LMAh28309>
