|
Boost : |
From: John Maddock (John_Maddock_at_[hidden])
Date: 2001-05-05 06:47:56
>So things are indeed not very good. Of course, a workaround of the
>compressed_pair's assignment problem (ll1 = ll2;) is to explicitly define
>the copy assignment operator for it; but I don't see what we can do about
>the original problem:
Yes we already define an assignment operator for compressed_pair, but I'll
check it again :-(
>and cases like 4-th one from the above code, except documenting the issues
>so users could be aware of them. (well, as for 'compressed_pair', we could
>make MSVC versions of the class 'first' or/and 'second' method(s) to
return
>a copy of the empty class instead of a reference to it , but as I see it
>now, it creates even more problems). hmm.., probably I wasn't very helpful
>:(...
<
Thanks for the feedback anyway,
I guess the alternatives are:
1) document it.
2) disable the "compressed" part of compressed_pair for VC6
Option (2) doesn't fix the problem for any other classes that use the empty
base class idiom though...
- John Maddock
http://ourworld.compuserve.com/homepages/john_maddock/
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk