This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Ada files now checked in
- To: dewar at gnat dot com, jsm28 at cam dot ac dot uk
- Subject: Re: Ada files now checked in
- From: dewar at gnat dot com
- Date: Sat, 6 Oct 2001 13:53:28 -0400 (EDT)
- Cc: gcc at gcc dot gnu dot org, zack at codesourcery dot com
<<if after this some bug is found in a past packaged release that prevents
bootstrap, you can contribute a test for the relevant bug (*not* a version
>>
Note that this need not always be a bug, there are two other cases:
a) a new version of GNAT uses a feature that has not always been
supported in previous releases. Obviously one does not do this
casually, but if code can be improved substantially by such usage
as has happened in the past (e.g. the addition of Inline_ALways)
then you want to be able to take advantage of the improvement
in some cases.
b) sometimes bugs cannot be fixed cleanly because of bootstrap path
problems, and we have to fix them in two stages, a kludge to get
things working for now, and a clean fix in a later version once
the version with the kludge is sufficiently official/distributed
to base the bootstrap on. An example is the Style_Checks pragmas
that are in the current sources. They have an awkward form, just
because of such a consideration. Another example is from s-stalib:
Inside_Elab_Final_Code : Integer := 0;
pragma Export (C, Inside_Elab_Final_Code, "__gnat_inside_elab_final_code");
-- ???This variable is obsolete starting from 29/08 but cannot be removed
-- ???right away due to the bootstrap problems
(these are both examples from the current sources where we are at the
kludge stage, but not past it yet)
The reason I separate these is that indeed you can produce a test for
class a) problems, but not always for class b) problems.