Boost logo

Boost-Build :

From: Eric Niebler (eric_at_[hidden])
Date: 2004-02-28 16:06:39

All in all, my extensive min/max changes went smoother than I
anticipated. We did have one casualty, however -- the Borland 0x0564
tooset, which I do not have access to. The failure is:

Error E2357 C:\boost\site\boost/minmax.hpp 46: Reference initialized
with 'unsigned long', needs lvalue of type 'unsigned long' in function
const unsigned long & std_max<unsigned long>(const unsigned long &,const
unsigned long &)
*** 1 errors in Compile ***

The code in question is:

template< typename T >
inline T const & std_max( T const & a, T const & b )
#if defined(__COMO__) || defined(BOOST_INTEL) ||
using std::max;
using ::max;
using std::max;

return max BOOST_PREVENT_MACRO_SUBSTITUTION ( a, b ); /*** here ***/

The error is on the line marked ***here***. What I'm guessing is that
Borland defines an overload of std::max for intrinsic types, or just
unsigned long, which does not return a reference, but I'm just guessing
here. Can anybody who has access to this toolset confirm? And how can
I test a fix?

Thanks in advance,


Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at