[exim] designated-initialisers and C99 - was Re: Retiring ol…

Top Page
Delete this message
Reply to this message
Author: Andrew C Aitchison
Date:  
To: exim-users
Old-Topics: Re: [exim] Retiring old build targets
Subject: [exim] designated-initialisers and C99 - was Re: Retiring old build targets
On Sun, 6 Aug 2017, Ian Zimmerman wrote:

> On 2017-08-06 14:39, Jeremy Harris wrote:
>> I'd like to start using designated-initialisers, which is a C99
>> feature. We've avoided such things up until now, to keep backward
>> compatability. Does anyone want to take a stance, pro or con?


Hmm. I'd not come across designated-initialisers before.
I see that they are not available in C++ before C++14 and not the same
way even then (I see something about strict rules on order in C++).
Also gcc allows a non-standard extension to initialising array *ranges*.
Designated-initialisers might be a difficulty for the occasional
exim developer.

----

More generally:
on SL6, "man gcc" says:
        -std=
         ...            ...
            c99
            c9x
            iso9899:1999
            iso9899:199x
                ISO C99.  Note that this standard is not yet fully
                supported; see <http://gcc.gnu.org/gcc-4.4/c99status.html>
                for more information.  The names c9x and iso9899:199x are
                deprecated.


RHEL6/CentOS6/SL6 do have newer versions of GNU C, at least up to 5.3.1
which has "substantially completely support" for C99 and C11, so C99
would not be a complete disaster for these old but still supported OSes.

--
Andrew C Aitchison