Boost logo

Boost :

From: Gennaro Prota (gennaro_prota_at_[hidden])
Date: 2006-07-22 21:31:24


On Sat, 22 Jul 2006 19:55:50 -0400, David Abrahams
<dave_at_[hidden]> wrote:

>> Dave, wouldn't "support for Borland compilers older than BCB2006" be
>> dropped anyway after 1.34?
>
>I don't know, and I'm not sure it's relevant.

Well, for sure anything below 0x581 is deprecated starting from
1.34.0. I had a look at the Boost.Parameter code in the hope that I
could find a workaround but honestly I think there's no hope. For a
while boost developers have done heroic efforts to support compilers
that not even their vendors cared about. Some of these went ahead and
improved. Some others didn't, and I don't believe it's our job to
reawaken dead bodies (and this is from someone who liked Borland,
years ago).

A similar thing is happening with Digital Mars. I've recently found
that when faced with something like:

 template <typename Integer> void f(Integer x);

 template <typename T> void f(T x) { ...}

it thinks they are two different templates and if you attempt a call
it yields a message along the lines of "ambiguous call: could be
f(Integer) or f(T)". Probably it is internally treating the
declaration as a string and comparing the supposed parameter-list
substrings, who knows. The point is... it is a "young" compiler,
though it exists for many years now, and it's noticeably improving, so
we try supporting it. But if it doesn't "keep up" and meet some
minimum quality requirements in one year or so, it is deemed. I expect
boost code to exploit more and more sophisticated techniques in the
next years. And make use of the new C++0x features. And then relying
on TR2... Well, you got the point.

--
[ Gennaro Prota, C++ developer for hire ]

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk