title: warning C4189 in concurrent_vector.h
body: <p>I got following warning in my project (both Release and Debug mode):</p>
  
  <pre><code>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\concurrent_vector.h(1599): warning C4189: '_Array' : local variable is initialized but not referenced
        C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\concurrent_vector.h(1598) : while compiling class template member function 'void Concurrency::concurrent_vector&lt;_Ty&gt;::_Destroy_array(void *,Concurrency::concurrent_vector&lt;_Ty&gt;::size_type)'
        with
        [
            _Ty=Vector3i
        ]
        d:\Some_path\somefile.h(780) : see reference to class template instantiation 'Concurrency::concurrent_vector&lt;_Ty&gt;' being compiled
        with
        [
            _Ty=Vector3i
        ]
  </code></pre>
  
  <p>Where somefile.h is my file and line 780 has this code:</p>
  
  <pre><code>Concurrency::concurrent_vector&lt;Vector3i&gt; m_ovColors;
  </code></pre>
  
  <p>Vector3i is something like this:</p>
  
  <pre><code>template&lt;typename T&gt; class TVector3 {
  public:
      T x, y, z;
  }
  
  typedef TVector3&lt;int&gt;           Vector3i;
  </code></pre>
  
  <p>Code around line 1598 in concurrent_vector.h is (line 1598 is just '{'):</p>
  
  <pre><code>template&lt;typename _Ty, class _Ax&gt;
  void concurrent_vector&lt;_Ty, _Ax&gt;::_Destroy_array( void* _Begin, size_type _N ) 
  {
      _Ty* _Array = static_cast&lt;_Ty*&gt;(_Begin);
      for( size_type _J=_N; _J&gt;0; --_J )
          _Array[_J-1].~_Ty(); // destructors are supposed to not throw any exceptions
  }
  </code></pre>
  
  <p>What could be a reason for this?
  This somefile.h when included in other projects does not issue that kind of warning.</p>