Hello all,

After a suggestion by Eric Gallager
Idea for a compromise: What if, instead of flipping the switch on all
3 of these at once, we staggered them so that each one becomes a
default in a separate release? i.e., something like:

- GCC 14: -Werror=implicit-function-declaration gets added to the defaults
- GCC 15: -Werror=implicit-int gets added to the defaults
- GCC 16: -Werror=int-conversion gets added to the defaults

That would give people more time to catch up on a particular warning,
rather than overwhelming them with a whole bunch all at once. Just an
idea.

Eli Zaretskii <e...@gnu.org> wrote on 10 may 2023, at 14:00

And that is just one example of perfectly valid reasons for not
wanting or not being able to make changes to pacify GCC.

Once again, my bother is not about "villains" who don't want to get
their act together, my bother is about cases such as the one above,
where the developers simply have no practical choice.

And please don't tell me they should use an older GCC, because as
systems go forward and are upgraded, older GCC will not work anymore.


My experience is that for safety critical software (per DOI 178C, embedded in aircrafts, or for the French covid breathing machine on https://github.com/Recovid/Controller ) the regulations, funders, and authorities requires a very specific version of GCC with very specific compilation flags.


Changing either the compiler (even from gcc-12.1 to gcc-12.2) or the compilation flags (even changing -O1 by -O2) requires written (on paper) approval by a large number of human persons, and formal certifications (eg ISO9001, ISO27001 procedures) and lots of checks and headaches.


I do know several persons making their living of these constraints.

I do know several corporations making a living from them (and keeping decade older GCC compiler binaries on many disks).

So I really think that for safety critical software (whose failure may impact lives) people are using an older (and well specified) GCC.


Of course, to compile an ordinary business web service (e-shop for clothes) with e.g. libonion (from https://github.com/davidmoreno/onion ...) or to compile a zsh.org from source code (for or on a developer's laptop) the constraints are a lot lighter.

Regards!


PS : my pet open source project is the RefPerSys open source inference engine on http://refpersys.org/ and https://github.com/RefPerSys/RefPerSys ; it is explicitly thought for non-critical use (desktop, teaching, ...).

--
Basile Starynkevitch                  <bas...@starynkevitch.net>
(only mine opinions / les opinions sont miennes uniquement)
92340 Bourg-la-Reine, France
web page: starynkevitch.net/Basile/

Reply via email to