Boost logo

Boost :

From: Daniel Frey (daniel.frey_at_[hidden])
Date: 2003-07-30 02:55:49


David Abrahams wrote:
> Matthias Troyer <troyer_at_[hidden]> writes:
>
>>The third patch (patch3) is a workaround for operators.hpp, since the
>>Boost PP library does not seem to work on the IBM. Is the preprocessor
>>library really needed for that name mangling:
>>
>>#define BOOST_OPERATOR2_LEFT(name)
>> BOOST_PP_SEQ_CAT_S(1,(name)(2)(_)(left))
>>
>>or couldn't the simple
>>
>>#define BOOST_OPERATOR2_LEFT(name) name##2_left
>>
>>be used which would make Boost more portable? If there are reasons why
>>the PP version is preferred? If there is a reason for the PP version
>>then could someone please apply the patch with the workaround?
>
> Done.

Looks good to me, too.

> Daniel, I also had to apply massive patching to accessibility in
> bool_testable. It fails on so many compilers that I begin to have
> doubts that making it private is legal. Could you check, please?

It seems to me that replacing the plain "operator bool()" by the
safe-bool-idiom in Wrapper1 caused the problems. This can't work, as
bool_testable tries to provide safe bool conversion, too, and both
idioms together are incompatible. In fact, bool_testable was meant to
replace the safe-bool-idiom, making it easier for users to write their
operator bool(). Maybe I should clarify this in the documentation to
prevent others from making the same error. Can you please correct it and
see if the problems you were seeing remain?

Regards, Daniel

-- 
Daniel Frey
aixigo AG - financial training, research and technology
Schloß-Rahe-Straße 15, 52072 Aachen, Germany
fon: +49 (0)241 936737-42, fax: +49 (0)241 936737-99
eMail: daniel.frey_at_[hidden], web: http://www.aixigo.de

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