[numeric/conversion] Patch for BCB2006

Hallo, The following patch appears to be necessary to get BCB2006 to pass the conversion tests. If nobody has any objections (Fernando?) , I'll commit it in a few days. Cheers, Nicola Musatti ******Index: cast.hpp =================================================================== RCS file: /cvsroot/boost/boost/boost/numeric/conversion/cast.hpp,v retrieving revision 1.8 diff -d -u -r1.8 cast.hpp --- cast.hpp 27 Jun 2005 15:05:12 -0000 1.8 +++ cast.hpp 27 Apr 2006 20:43:24 -0000 @@ -22,7 +22,7 @@ #include <boost/detail/workaround.hpp> -#if BOOST_WORKAROUND(BOOST_MSVC, < 1300) || BOOST_WORKAROUND(__BORLANDC__, == 0x564) +#if BOOST_WORKAROUND(BOOST_MSVC, < 1300) || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x582)) # include<boost/numeric/conversion/detail/old_numeric_cast.hpp>

Nicola Musatti wrote:
Hallo, The following patch appears to be necessary to get BCB2006 to pass the conversion tests.
If nobody has any objections (Fernando?) , I'll commit it in a few days.
OK. This is the same patch proposed by Alisdair a couple of months ago. As I explained then, the problem is not really with the compiler but the new Dinkum library (that replaced RW in 5.6.x). Version 5.5.1, with the RougeWave library worked perfectly.
But as Alisdair suggested, at this point, we better just commit the fix as both of you are suggesting. The real fix would require to experiment with other std libraries, confirm that the problem is Dinkum specific, and add the appropiate patch checking for that instead of the compiler version. Unfortunately I don't work with BCB anymore (for years now), and last time I did was for my former employer so I have no copy of any BCB version with me, so I can't do that myself (the free comand line tools are equivalent to 5.5.1 which is the one I used to develop this library so it definitely works with it) Cheers -- Fernando Cacciola SciSoft http://fcacciola.50webs.com/

Fernando Cacciola wrote: [...]
This is the same patch proposed by Alisdair a couple of months ago. As I explained then, the problem is not really with the compiler but the new Dinkum library (that replaced RW in 5.6.x). Version 5.5.1, with the RougeWave library worked perfectly.
Yes, I'm aware of the original discussion. Note however that the library doesn't work with both 5.6.x/STLPort and 5.8.x/Dinkumware.
But as Alisdair suggested, at this point, we better just commit the fix as both of you are suggesting.
Even more so now, as it won't be long before 1.34 is released.
The real fix would require to experiment with other std libraries, confirm that the problem is Dinkum specific, and add the appropiate patch checking for that instead of the compiler version.
You're right. It might even be possible to find a more specific workaround than just fall back on the old implementation.
Unfortunately I don't work with BCB anymore (for years now), and last time I did was for my former employer so I have no copy of any BCB version with me, so I can't do that myself (the free comand line tools are equivalent to 5.5.1 which is the one I used to develop this library so it definitely works with it)
I remember your postings on the Borland newsgroups. Hopefully someone will find more time to look into this in the future (or Borland comes out with a reasonably compliant compiler!). Note that 1.34 is the last version of Boost that will explicitly support Borland compilers older than 5.8.x . Cheers, Nicola Musatti

Nicola Musatti wrote:
Fernando Cacciola wrote: [...]
This is the same patch proposed by Alisdair a couple of months ago. As I explained then, the problem is not really with the compiler but the new Dinkum library (that replaced RW in 5.6.x). Version 5.5.1, with the RougeWave library worked perfectly.
Yes, I'm aware of the original discussion. Note however that the library doesn't work with both 5.6.x/STLPort and 5.8.x/Dinkumware.
OK
But as Alisdair suggested, at this point, we better just commit the fix as both of you are suggesting.
Even more so now, as it won't be long before 1.34 is released.
Right.
The real fix would require to experiment with other std libraries, confirm that the problem is Dinkum specific, and add the appropiate patch checking for that instead of the compiler version.
You're right. It might even be possible to find a more specific workaround than just fall back on the old implementation.
Unfortunately I don't work with BCB anymore (for years now), and last time I did was for my former employer so I have no copy of any BCB version with me, so I can't do that myself (the free comand line tools are equivalent to 5.5.1 which is the one I used to develop this library so it definitely works with it)
I remember your postings on the Borland newsgroups. Hopefully someone will find more time to look into this in the future (or Borland comes out with a reasonably compliant compiler!). Note that 1.34 is the last version of Boost that will explicitly support Borland compilers older than 5.8.x .
Good point. Go ahead and commit it (if you haven't done it yet) Best -- Fernando Cacciola SciSoft http://fcacciola.50webs.com/
participants (2)
-
Fernando Cacciola
-
Nicola Musatti