|
Prev: [blog] The Henn and Egg problem
Next: Call for contributions to SIGAda 2008, Portland Oct. 26-30
From: Ludovic Brenta on 23 Jan 2008 14:18 tmo...(a)acm.org wrote: > >..., but 4.1 was OK again and the Ada part of GCC has steadily improved > >since (i.e. no or very few regressions). I have a very good feeling > >about the upcoming GCC 4.3 > I'm glad that others have been doing the testing on the GCC Gnat. That's part of what I meant with "support from the Free Software community". By joining this community, you can even contribute much- appreciated testing and bug reports. > Perhaps 4.3 will be as solid as 3.15p, or perhaps 3.15p is incompatible > with Vista and MS will effectively force me to GCC Gnat 4.1 I think that, yes, Vista broke compatibility with old executables compiled with GNAT 3.15p. I know that GNAT GPL 2007 edition was specifically revised to support Vista. Chances are high that this support is already in GCC 4.3 but probably not in 4.1. I don't use Vista (or any proprietary software) myself so I wouldn't know. > When is 4.3 expected? GCC 4.3 entered regressions-only mode today [1]. As usual, no date has yet been announced but I think the release will take place in the next couple of months. Of course, nothing forces you to wait for a release; you can use a weekly snapshot at any time and test Vista support for yourself. The Ada part of GCC will probably not change anymore now. [1] http://gcc.gnu.org/ml/gcc/2008-01/msg00387.html -- Ludovic Brenta.
From: Robert A Duff on 23 Jan 2008 14:24 tmoran(a)acm.org writes: > A bug that is known and successfully worked-around isn't a bug, it's > a feature. Probably not a nice feature, but not a nasty surprise waiting > to bite you. > Personally, I usually don't enjoy time spent finding the bugs in > other people's (compilers or OSes etc) code. I usually have little idea > where the problem might be and there's a lot of grunt work trying to > cut down to a small program that demonstrates the problem (see the > recent thread on "Ada obfuscation"). And when there is a simple > example, learning what to avoid may be its only payback, while those > responsible take months, or even years, to release a corrected version. > My understanding is that the current Gnat is not a 3.15p with > improvements, but is rather a substantially new thing, with new, > unknown, bugs. Is that a mis-understanding? I can understand the reluctance to upgrade software, in general. But if you're upgrading the OS (Windows XP to Vista) you really need to upgrade GNAT as well. There are several ways in which Vista is incompatible, so it's not surprising that a version of GNAT that predates Vista doesn't work! The DEP issue was mentioned. I suppose you can turn off DEP in Vista, either in general, or for particular programs. (I don't know -- I've never used Vista myself.) The latest GNAT compiler no longer uses trampolines (which don't work when DEP is turned on). However, it can still generate code that uses trampolines in some cases. We've mostly fixed that, too, but there's still a lot of testing to do. Getting rid of trampolines is a change in the guts of the back end, and is target dependent. Pointers to nested functions in C code will probably continue to use trampolines for the forseeable future, but we can do better in pure Ada code. - Bob
From: Alex R. Mosteo on 23 Jan 2008 14:37 Ludovic Brenta wrote: > tmo...(a)acm.org wrote: >> My understanding is that the current Gnat is not a 3.15p with >> improvements, but is rather a substantially new thing, with new, >> unknown, bugs. Is that a mis-understanding? > > IMHO your understanding is correct up to a point, but not for the > current version of GCC (4.2.2) or the next version. > > When AdaCore merged GNAT into the GCC sources, a long period of > instability ensued for the reasons you outline. I never considered > versions 3.1, 3.2 or 3.3 production-worthy and this is where I agree > with your understanding. However, 3.4 was OK. With version 4.0, a > major change to the back-end ("tree-SSA") introduced some new bugs in > the interface with the Ada front-end, but 4.1 was OK again and the Ada > part of GCC has steadily improved since (i.e. no or very few > regressions). I have a very good feeling about the upcoming GCC 4.3 > because AdaCore and Sam Tardieu have recently fixed several dozen old > bugs, most of which have been present since GNAT 3.15p or before. I > anticipate that GCC 4.3 will be the best version of GCC ever as > regards Ada. This is very interesting. In regard to Ada 2005 features, the improvement is also noticeable. GPL 2006 bombed quite frequently, 2007 *much* less to the point of being a rarity. The only big thing I'm waiting to be useable is interfaces. I wonder about the amount of differences between the 2007 and 4.x branches.
From: Ludovic Brenta on 23 Jan 2008 15:49 Alex R. Mosteo writes: > Ludovic Brenta wrote: > >> tmo...(a)acm.org wrote: >>> My understanding is that the current Gnat is not a 3.15p with >>> improvements, but is rather a substantially new thing, with new, >>> unknown, bugs. Is that a mis-understanding? >> >> IMHO your understanding is correct up to a point, but not for the >> current version of GCC (4.2.2) or the next version. >> >> When AdaCore merged GNAT into the GCC sources, a long period of >> instability ensued for the reasons you outline. I never considered >> versions 3.1, 3.2 or 3.3 production-worthy and this is where I agree >> with your understanding. However, 3.4 was OK. With version 4.0, a >> major change to the back-end ("tree-SSA") introduced some new bugs in >> the interface with the Ada front-end, but 4.1 was OK again and the Ada >> part of GCC has steadily improved since (i.e. no or very few >> regressions). I have a very good feeling about the upcoming GCC 4.3 >> because AdaCore and Sam Tardieu have recently fixed several dozen old >> bugs, most of which have been present since GNAT 3.15p or before. I >> anticipate that GCC 4.3 will be the best version of GCC ever as >> regards Ada. > > This is very interesting. In regard to Ada 2005 features, the improvement is > also noticeable. GPL 2006 bombed quite frequently, 2007 *much* less to the > point of being a rarity. The only big thing I'm waiting to be useable is > interfaces. I wonder about the amount of differences between the 2007 and > 4.x branches. AdaCore normally merge from GNAT Pro into GCC during Stage 1, and then do almost nothing during Stages 2 and 3 (only a few bug fixes in the middle-end and the back-end). That, however, changed for GCC 4.3 where many Ada bug fixes happened during Stage 3 and I think the two branches are now quite close. By looking at the timeline of GCC's development[1], one can establish a rough correspondence between GCC and GNAT GPL releases: GCC release | end of stage 1 | GNAT GPL release | release date -------------------------------------------------------------- 4.1 | 2005-04-25 | 2005 | 2005-09-15 4.2 | 2006-01-18 | 2006 | 2006-05-22 4.3 | 2007-01-20 | 2007 | 2007-05-11 The time between the end of Stage 1 and the final release of GCC is approximately one year: GCC release | release date | time since end of Stage 1 -------------------------------------------------------- 4.1.0 | 2006-02-28 | 10 mo 4.2.0 | 2007-05-13 | 14 mo 4.3.0 | ????-??-?? | 10 mo and counting This explains why GCC lags behind GNAT Pro and GNAT GPL in terms of Ada support. [1] http://gcc.gnu.org/develop.html#timeline -- Ludovic Brenta.
First
|
Prev
|
Pages: 1 2 3 4 Prev: [blog] The Henn and Egg problem Next: Call for contributions to SIGAda 2008, Portland Oct. 26-30 |