Boost logo

Boost :

From: Alisdair Meredith (alisdair.meredith_at_[hidden])
Date: 2002-11-13 17:58:26


Hasty patch to get some code shared with an MSVC using colleague, so it
just solves my immediate problems the dirtiest way possible <g>

I'm not sure what BOOST macros might otherwise cover these same issues,
or what to change in config.

Changes to format_class.hpp [from boost 1_29_0]

Patch pt 1:

template<class Ch, class Tr>
class basic_format
{
#if defined( __BORLANDC__ ) // AJM patch for BCB5
  typedef Ch Ch_type;
  typedef Tr Tr_type;
#endif

...

Patch pt 2:

  // pass arguments through those operators :
  template<class T> basic_format& operator%(const T& x)
  {
#if defined( __BORLANDC__ )
    return io::detail::feed<Ch_type, Tr_type, const T&>(*this,x);
#else
    return io::detail::feed<Ch, Tr, const T&>(*this,x);
#endif
  }

#ifdef BOOST_OVERLOAD_FOR_NON_CONST
  template<class T> basic_format& operator%(T& x)
  {
#if defined( __BORLANDC__ )
    return io::detail::feed<Ch_type, Tr_type, T&>(*this,x);
#else
    return io::detail::feed<Ch, Tr, T&>(*this,x);
#endif
  }
#endif

Patch pt 3:
[around line 110]
// This might be better handled by patching config for this compiler?

#if !defined( BOOST_NO_MEMBER_TEMPLATE_FRIENDS ) && !defined(
__BORLANDC__ )

-- 
AlisdairM

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