title: Using std::shared_ptr with clang++ and libstdc++
body: <p>I'm trying to use the std::shared_ptr in clang++(clang version 3.1 (trunk 143100)) using libstdc++(4.6.1). I have a little demo program:</p>
  
  <pre><code>#include &lt;memory&gt;
  
  int main()
  {
      std::shared_ptr&lt;int&gt; some(new int);
      std::shared_ptr&lt;int&gt; other(some);
      return 0;
  }
  </code></pre>
  
  <p>which can be build using:</p>
  
  <pre><code>clang++ -std=c++0x -o main main.cpp
  </code></pre>
  
  <p>and gives the following error output:</p>
  
  <pre><code>main.cpp:6:23: error: call to deleted constructor of 'std::shared_ptr&lt;int&gt;'
      std::shared_ptr&lt;int&gt; other(some);
                           ^     ~~~~
  /usr/include/c++/4.6/bits/shared_ptr.h:93:11: note: function has been explicitly marked
  deleted here
  class shared_ptr : public __shared_ptr&lt;_Tp&gt;
  </code></pre>
  
  <p>For some reason it needs the constructor which is deleted because a move constructor is provided (which is correct behaviour).
  But why does it work compile with (g++ (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1.)? Somebody any ideas on how to fix this?</p>