
Hi,
From: David Abrahams
second_reference second() { return static_cast<second_reference>(*this); }
Should be boost::implicit_cast<second_reference>(*this);
Hmmm... I've tried to replace static_cast with implicit_cast, but then the compilation error with DM comes back :-/
If the problem wasn't mentioned before, then I'd suggest to fix it. The solution is quite easy to introduce and AFAICT has no negative side effects. Does anybody object to this?
I don't object, but the obfuscation of the code is a negative side effect.
100% right :-) By saying 'negative side effects' I meant no new compilation or usage problems introduced by this fix. Of course the cleaner code the better, but OTOH adding a few casts into the implementation seems rather a low price to pay for better portability. What is the procedure for adding fixes like this? Is the author of the file responsible for this, or should I provide the fixed version? Best regards, Robert