$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Gennadiy Rozental (rogeeff_at_[hidden])
Date: 2002-04-30 21:51:42
"Peter Dimov" <pdimov_at_[hidden]> wrote in message
news:00f801c1f068$0c7fc650$1d00a8c0_at_pdimov2...
>
> X is defined in X.hpp, along with the associated traits specializations.
The
> problem, with a smart_ptr that uses the type of its template parameter to
> somehow alter its type (via traits, sizeof(expression-involving-X), or
some
> other mechanism), is that a.cpp sees a different smart_ptr<X>. So there's
an
> ODR violation.
>
> Note that shared_ptr doesn't have this problem.
>
And how shared_ptr will automatically switch between intrusive/nonintrusive
counting? I asking cause it was one of the reason we started to talk about
traits.
Gennadiy.