This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH 0/4] Installed-header compilation hygiene, BZ#20366
- From: Adhemerval Zanella <adhemerval dot zanella at linaro dot org>
- To: Zack Weinberg <zackw at panix dot com>, libc-alpha at sourceware dot org
- Cc: joseph at codesourcery dot com
- Date: Thu, 14 Jul 2016 15:25:43 +0100
- Subject: Re: [PATCH 0/4] Installed-header compilation hygiene, BZ#20366
- Authentication-results: sourceware.org; auth=none
- References: <cover.1468441534.git.zackw@panix.com>
On 13/07/2016 21:45, Zack Weinberg wrote:
> Some of glibc's installed headers throw compilation errors if used in
> strict standards compliance modes (e.g. -std=c89 with no
> -D_ANYTHING_SOURCE), or if included without dependencies. I have a
> program that tests the installed headers for this class of problems,
> among other things, and I'd like to propose a batch of corrections for
> 2.24. I believe all of these qualify as bugfixes and should be
> low-risk.
I do see these kind of fixes good fixes, but I think it is too late
for 2.24. I would like to move them to 2.25.
>
> The problems fixed are:
>
> * Use of the "legacy" BSD unsigned integer typedefs (u_intN_t, u_char,
> u_int, u_short, u_long) in code not guarded by __USE_MISC
> (sys/gmon.h, fts.h, resolv.h, many others)
>
> * Use of foo_t instead of __foo_t, where foo_t is only defined by
> <sys/types.h> under __USE_MISC or __USE_XOPEN2K8 or like that.
> (sys/quota.h, sys/timerfd.h)
>
> * Unconditional use of 'struct ifreq', 'struct osockaddr', and
> 'stack_t', which are conditionally defined, and no alternative is
> available (net/if_ppp.h, protocols/talkd.h, sys/ucontext.h
> respectively)
>
> * Use of BYTE_ORDER, BIG_ENDIAN, etc instead of __BYTE_ORDER,
> __BIG_ENDIAN, etc. (arpa/nameser_compat.h)
>
> * No-longer-necessary #warnings (sys/ipc.h)
>
> * Missing #includes (rpcsvc/nislib.h, netrose/rose.h)
>
> * Accidentally installed internal-use-only headers (grp-merge.h)
>
> This is BZ#20366.
>
> zw
>