title: MinGw 4.7.0 doesnt compile code with #include <boost/thread>
body: <p>MinGw 4.7.0 Boost 1.47<br>
  code:</p>
  
  <pre><code>#include &lt;iostream&gt;
  #include &lt;boost/thread.hpp&gt;
  int main(int argc, char *argv[])
  {
  std::cout&lt;&lt;"In main"&lt;&lt;std::endl;
  }
  </code></pre>
  
  <p>Compiler string:<br></p>
  
  <pre><code>g++.exe -Wall -fexceptions  -g    -IC:\soft\ides_comp\mingw\include\boost_1_47_0  -c      D:\work\cpp_cb\mt1\main.cpp -o obj\Debug\main.o
  </code></pre>
  
  <p>It doesnt compile and i have same error whatever compiler options i tried.</p>
  
  <p>Warning:<br>
  <code>In file included from C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/thread/win32/thread_data.hpp:12:0,
                   from C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/thread/thread.hpp:15,
                   from C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/thread.hpp:13,
                   from D:\work\cpp_cb\mt1\main.cpp:2:
  C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/thread/win32/thread_heap_alloc.hpp:59:40: warning: inline function 'void* boost::detail::allocate_raw_heap_memory(unsigned int)' declared as  dllimport: attribute ignored [-Wattributes]
  C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/thread/win32/thread_heap_alloc.hpp:69:39: warning: inline function 'void boost::detail::free_raw_heap_memory(void*)' declared as  dllimport: attribute ignored [-Wattributes]</code></p>
  
  <p>Error:<br>
  <code>In file included from C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/smart_ptr/shared_ptr.hpp:30:0,
                   from C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/shared_ptr.hpp:17,
                   from C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/date_time/time_clock.hpp:17,
                   from C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/thread/thread_time.hpp:9,
                   from C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/thread/win32/thread_data.hpp:10,
                   from C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/thread/thread.hpp:15,
                   from C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/thread.hpp:13,
                   from D:\work\cpp_cb\mt1\main.cpp:2:</code>
  <br>     </p>
  
  <p><code>C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/checked_delete.hpp: In instantiation of 'void boost::checked_delete(T*) [with T = boost::error_info&lt;boost::tag_original_exception_type, const std::type_info*&gt;]':</code></p>
  
  <p><br></p>
  
  <p><code>C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/smart_ptr/detail/shared_count.hpp:95:13:   required from 'boost::detail::shared_count::shared_count(Y*) [with Y = boost::error_info&lt;boost::tag_original_exception_type, const std::type_info*&gt;]'
  C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/smart_ptr/shared_ptr.hpp:183:50:   required from 'boost::shared_ptr&lt;T&gt;::shared_ptr(Y*) [with Y = boost::error_info&lt;boost::tag_original_exception_type, const std::type_info*&gt;; T = boost::error_info&lt;boost::tag_original_exception_type, const std::type_info*&gt;]'
  C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/exception/info.hpp:171:69:   required from 'const E&amp; boost::exception_detail::set_info(const E&amp;, const boost::error_info&lt;Tag, T&gt;&amp;) [with E = boost::unknown_exception; Tag = boost::tag_original_exception_type; T = const std::type_info*]'
  C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/exception/info.hpp:192:46:   required from 'typename boost::enable_if&lt;boost::exception_detail::derives_boost_exception&lt;E&gt;, const E&amp;&gt;::type boost::operator&lt;&lt;(const E&amp;, const boost::error_info&lt;Tag, T&gt;&amp;) [with E = boost::unknown_exception; Tag = boost::tag_original_exception_type; T = const std::type_info*; typename boost::enable_if&lt;boost::exception_detail::derives_boost_exception&lt;E&gt;, const E&amp;&gt;::type = const boost::unknown_exception&amp;]'
  C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/exception/detail/exception_ptr.hpp:182:13:   required from 'void boost::unknown_exception::add_original_type(const E&amp;) [with E = std::exception]'
  C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/exception/detail/exception_ptr.hpp:161:32:   required from here</code></p>
  
  <p>Warning 2:<br>
  <code>C:\soft\ides_comp\mingw\include\boost_1_47_0/boost/checked_delete.hpp:34:5: warning: deleting object of polymorphic class type 'boost::error_info&lt;boost::tag_original_exception_type, const std::type_info*&gt;' which has non-virtual destructor might cause undefined behaviour [-Wdelete-non-virtual-dtor]</code></p>
  
  <p>What can it be? Thanks</p>