Boost logo

Boost :

From: David B. Held (dheld_at_[hidden])
Date: 2004-02-09 15:43:58


Dave A: Just out of curiosity, how many compilers like your
technique?

Daniel Wallin: I have only been skimming this thread. Could you
comment on its relevance to the move stuff you sent me earlier?
In particular, does this thread suggest any changes to the code
you sent me? Also, I tested your code with gcc-3.3, and it mostly
liked it. I believe that it likes the moving part, but it triggers a
bizarre error on an unrelated test that I think is a bug in 3.3 (due
to improper instantiations during overload resolution...at least,
I hope that's all it is, because I'm upgrading to 3.3.2 right now,
and that fixes a bug of that nature). Also, do you expect your
technique to work properly for the conversion copy c'tor case:

template <typename U, policies...>
smart_ptr(smart_ptr<U, policies> const&p);

template <typename U, policies...>
smart_ptr(smart_ptr<U, policies>&p);

These two c'tors are still in the code. Do you think that will interfere
with the move semantics when doing a move-convert? i.e.:

smart_ptr<Base, destructive_copy> p(
    smart_ptr<Derived, destructive_copy>(new Derived)
);

If it does, what do you suggest we do? Simply removing the
non-const& c'tor is undesirable because it limits what policies
can do.

Dave

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.571 / Virus Database: 361 - Release Date: 1/26/2004

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