This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Ada] Bootstrapping mainline GNAT fails


Alexandre Oliva wrote:
> [...] I can't decree anything.  But I'd suggest a rule that, if someone
> takes the trouble of posting a message to the mailing list complaining
> that such and such change caused an Ada-enabled bootstrap to fail with
> such and such compiler, this should be read as a sign that there still
> are people out there who'd rather be able to use that older compiler
> to bootstrap a newer GCC, and so replying `you have to use this other
> compiler because the ancient version you have is no longer supported'
> is not an acceptable answer, even though `you may have better luck
> using this newer version instead' might be.
> [...]
> I understand that part.  But we're not talking about ACT, we're
> talking about the GNU project here.  Even if ACT is the major
> contributor to GNAT, it must play by rules considered best by the GNU
> project, not by rules that ACT determined internally and that the
> maintainers of GNAT for GNU, used to them for a long time, may now be
> taking for granted as acceptable for GCC. [...]

Well we don't have infinite GNU volunteer ressources for GNAT development
and certainly far less than for C.

As a volunteer, I by far prefer to work on new features and tools, bug fix
and performance enhancement for the current version than
polluting the current code or using suboptimal or plain ugly code and 
configure just
because someone absolutely want to bootstrap using a three
year old GNAT version instead of downloading the one year old first...

If someone comes up with a fix for the problem that doesn't look too ugly
future-maintenance wise, that's perfectly fine, but keeping
the compatibility with only a limited and documented range of versions
has a lot of technical and process advantages (and also
avoids fragmenting the community since it is small,
that's also a good thing).

In practice, GNAT keeps improving and there are no major stepbacks from
version to version, only a better compiler, and the user community
so far has always followed the current version eagerly.
Ada people, especially "libre" contributors don't like to put kludges in 
their code just to make
an old broken compiler happy, they have their test suite
and validate that new versions do work. Now that
current sources is close to be available on a regular
basis, all these people are very likely to test before
releases and we probably won't have stepbacks affecting the GNU community
anymore.

If the project has a formal setting then they'll never use the FSF
version anyway and they will pay ACT to maintain their old
version for 30 years if necessary with a formal contract
or just maintain the version themselves.

GNAT sometimes put warnings on illegal code that was not diagnosed
before and say that it will turn into an error in a future version,
Ada people usually don't like warning or non standard code the way C 
people do, they
just fix their code instead of complaining of broken new compilers.

There are a lot of C people that never want to change their broken code 
and compiler, that's okay
and sometimes there's even a reason but don't pretend it is the same for 
Ada.
Just look: everyone has migrated to Ada 95 from Ada 83 or at least from 
an Ada 83 compiler to an Ada 95 one,
the C community is still stuck with K&R code that predates Ada 83 by 
five years...

Please don't push apply the GCC C recipes to Ada, it makes
no technical and community sense.

-- 
Laurent Guerby <guerby@acm.org>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]