[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GCC 7 warnings
From: |
Eli Zaretskii |
Subject: |
Re: GCC 7 warnings |
Date: |
Sat, 09 Sep 2017 22:29:30 +0300 |
> Cc: address@hidden, Richard Copley <address@hidden>
> From: Paul Eggert <address@hidden>
> Date: Sat, 9 Sep 2017 11:27:40 -0700
>
> There is a tradeoff for --enable-gcc-warnings. If we try to support ancient
> GCC
> compilers, we'll have to complicate the code and consume scarce maintenance
> resources. If we support only the latest GCC, developers using slightly-older
> GCCs will get some annoying warnings when they use --enable-gcc-warnings. I
> prefer to push the bleeding edge here, and ask developers who use
> --enable-gcc-warnings to at most (say) a year-old GCC version, as this saves
> some work for the rest of us. Of course we can't expect everybody to
> immediately
> sync to the latest GCC when released, but on the other hand there is a cost
> to
> supporting too-old GCCs, a cost I'd rather not pay (since I bear a good deal
> of
> it...).
We already filter the warnings by GCC version. We just needto filter
more, perhaps, and not just based on what GCC supports.
Since --enable-gcc-warnings is on by default for building the
development version, it needs to build relatively cleanly with a
reasonably recent GCC. It's okay to have the code ready for the
bleeding edge, but if that triggers warnings with slightly older GCC,
it's counter-productive IMO, because asking developers to use GCC
which is too new might waste their time due to GCC bugs. GCC 6 or 5
is not yet old enough to cause those who use them such trouble.
> By the way, I find the UNINIT macro to be more readable than supplying nonce
> expressions, as UNINIT clearly indicates to the reader that the variable is
> intended to be uninitialized.
This is a matter of personal style preferences. I find the syntax of
UNINIT confusing, because it's not C-like.