Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Feb 2002 16:37:44 +1100 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Mark Murray <mark@grondar.za>
Cc:        <cvs-committers@FreeBSD.org>, <cvs-all@FreeBSD.org>
Subject:   Re: cvs commit: src/include grp.h 
Message-ID:  <20020226162341.O43512-100000@gamplex.bde.org>
In-Reply-To: <200202260015.g1Q0FgPA005896@grimreaper.grondar.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 26 Feb 2002, Mark Murray wrote:

> > On Mon, 25 Feb 2002, Andrey A. Chernov wrote:
> >
> > > On Mon, Feb 25, 2002 at 05:55:48 -0800, Maxim Sobolev wrote:
> > > > sobomax     2002/02/25 05:55:48 PST
> > > >
> > > >   Modified files:
> > > >     include              grp.h
> > > >   Log:
> > > >   Backout rev.1.5 - it seems that it's posixly correct that the program
> > > >   needs to include <sys/types.h> before <grp.h>.
> >
> > Thanks.  You should have seen my recent 10-20 commits for dependencies on
> > namespace pollution in <sys/stat.h>, and some of my hundreds of commits
> > for namespace pollution not so recently.  I don't want any new namespace
> > pollution.
>
> pwd.h also currently includes sys/types.h (and has done for a while).
> Should this also be removed for NS pollution reasons?

No.  It is very old namespace pollution (it has been there since rev.1.1
like that in <unistd.h>), so it is too late to fix it in ways that are
wrong in current standards.  Even removing the pollution will cause a
few problems.  Hopefully not as many as in <sys/stat.h>, since <sys/types.h>
is not so polluted.  AFAIR, its pollution consists mainly of:
- select macros (POSIX.1-2001 does something about this)
- ntoh* and endian functions and macros (mostly already fixed in -current by
  mike)
- too many typedefs for type names ending in _t.  Not a bug, but it is a bug
  if applications depend on the nonstandard ones.
- typedefs for type names not ending in _t.  Mostly compatibility cruft for
  old BSD and SYSV types, but a large number of things depend on the old
  BSD types (u_char, etc.  We have an even sillier problem for the not-so-old
  BSD fixed-width types.  They are spelled u_int8_t, etc. in FreeBSD but
  uint8_t etc. in C99.  I expect the old spellings will take longer to go
  away than __P(()) :-(.

Bruce


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020226162341.O43512-100000>