Boost logo

Boost :

From: Kevlin Henney (kevlin_at_[hidden])
Date: 2005-02-01 06:43:44

In message <20050130183325.M46945_at_[hidden]>, Jeff
Garland <jeff_at_[hidden]> writes
>On Sun, 30 Jan 2005 17:55:55 +0100, Terje Slettebø wrote
>> Because of this, Kevlin Henney and I was wondering whether or
>> not MSVC 6 support for this component (and components in Boost in
>> general) is no longer demanded, or in general, what the required
>> conformance level is?
>We've discussed this a number of times, but there is no 'boost-wide' policy.
>Some libraries have slowly started dropping VC6 support -- spirit comes to
>mind. Some authors (as I recall the Boost.Python folks) have a strong user
>base still using VC6 and don't want to cut it off. With date-time I've been
>taking the approach of attempting to maintain existing functionality, but new
>functionality that breaks VC6 is essentially simply marked. Even maintaining
>existing functions takes significant effort because of the VC6 fragilities.
>For example, someone recently reported that VC6 with STLPort and date-time
>creates an ICE.
>Personally, I think the time has come to cut the cord on VC6 testing and
>compatability. In my mind Boost as a whole is being held back by the time
>Boost developers waste hacking apart their implementations and answering
>questions for this 7 year old, seriously non-compliant compiler. Perhaps the
>fact that we move on will spur some people to upgrade compilers, improving the
>life of a few c++ developers along the way (I suppose this also might increase
>sales in Redmond -- of course they already mention Boost on the VC7
>packaging...). And the folks stuck with VC6 can always use older versions of
>Boost or test out new versions against VC6 for themselves, submit patches, or
>pay someone to do this work.
>BTW, I have an interest in your decision b/c date-time depends on
>lexical_cast. So far whatever is breaking the regression tests doesn't seem
>to be affecting date-time...

My current thinking is that the lexical_cast incorporated in the next
Boost release should retain VC6 compatibility. This release is primarily
about fixing bugs and adding a couple of capabilities for common cases
that are not currently accommodated. This will leave those who depend on
VC6 with a stable version to fall back on. The next version would then
break with VC6 compatibility to include a couple of generalisations,
such as replacing full template specialisations and non-templated
overloads with partial specialisations and templated overloads where
those are more appropriate.


   Kevlin Henney                   phone:  +44 117 942 2990
   mailto:kevlin_at_[hidden]     mobile: +44 7801 073 508        fax:    +44 870 052 2289
   Curbralan: Consultancy + Training + Development + Review

Boost list run by bdawes at, gregod at, cpdaniel at, john at