From: AlisdairM (alisdair.meredith_at_[hidden])
Date: 2006-01-10 10:15:53
Edward Diener wrote:
> I am not trying to get Boost to not support BCB, since I have used it
> significantly in the past and am using its prior release, BCB6,
> currently on a project on which I am working but...
I appreciate that, and your many contributions to the Borland community
at the time.
> 1) I submitted a number of compiler bug reports in Borland's bug
> tracking system circa late 2002, and one even in 2000, many of which
> were taken from Boost's reports and verified by myself. I provided
> test code to show the bugs in the compiler.
> 2) Very few of these have been fixed in the latest release of their
> compiler, while a great many still remain, are supposedly still open
> and being "investigated" still over 3 years later.
The public status of bug reports at Borland is a little strange. There
is not a lot between 'bug reported' and 'bug fixed', so it is hard to
see when work is happening.
Note that quite some time in those 3 years was spent developing another
C++ product, C++BuilderX, which would not be back-compatible for
existing projects, but would have a new conforming compiler based on an
EDG front end. That project seems to be on hold, as customers
obviously wanted to take their old code with them! So progress on BCB6
issues will appear slow if you think in terms of 4 years work -
unfortunately that has not been the case.
> This shows to me, unfortunately, that Borland is still not serious
> about fixing compiler bugs
I know Borland spent significant time solving bugs with object
lifetimes. These are far more significant to 'regular' users and would
affect usage of Boost libraries too - simply not in your average
regression test case that does not look for how many times destructors
were called, or that they are called on valid objects.
The fixes for intialization, and aggregate handling that comes with it,
at least mean BCB2006 should pass the array tests - although I am not
aware of any other new passes yet. I am not sure if the benefit shows
up anywhere else in Boost though.
Many of the assertions in the compiler now give error messages where
they could not be easily fixed - so at least there is a chance of
diagnosing the problem and putting in a workaround. It would be better
if there was no compiler bug at all, but this is progress.
I know there were also fixes in preprocessor, and a little bit on the
template handling. There clearly remains quite a bit of work though :?(
Now that a lot of re-engineering of the toolchain has been finished, I
am optimistic that we will continue to see compiler fixes at a faster
rate - although I fear it will be some time before we see a 'fully'
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk