This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Minimum GCC version for building glibc
- From: Paul Eggert <eggert at cs dot ucla dot edu>
- To: libc-alpha at sourceware dot org
- Date: Tue, 04 Nov 2014 11:06:03 -0800
- Subject: Re: Minimum GCC version for building glibc
- Authentication-results: sourceware.org; auth=none
- References: <Pine dot LNX dot 4 dot 64 dot 1410311352200 dot 4263 at digraph dot polyomino dot org dot uk> <20141104165815 dot GK5402 at vapier dot wh0rd dot info>
On 11/04/2014 08:58 AM, Mike Frysinger wrote:
what's the diff between 4.4 and 4.6 ?
4.5 didn't add much to the language: __builtin_unreachable is the only
thing I'd write home about.
4.6 added anonymous structures and unions, _Static_assert, __attribute__
((leaf)), __attribute__((|callee_pop_aggregate)),|__int128 (as opposed
to __int128_t), and better selection of diagnostics (e.g., #pragma GCC
diagnostic push"). Anonymous structures and unions could make internals
nicer, but one can always use non-anonymous. _Static_assert is very
helpful but we could emulate it in pre-4.6 compilers by using something
like Gnulib's verify module. glibc already uses __attribute__ ((leaf))
if available. The others are minor. All in all, not a compelling case
for changing the minimum version to 4.6.
4.7 adds atomics, and that's by far the most important thing that's been
mentioned; I can easily see this motivating an upgrade. Although 4.7
also adds transactional memory, I don't know if we'd want to use it
(it's termed "experimental"). A nicety is 4.7's support for stdalign.h
and related operators, though that's not essential.