title: boost serialization warning C4308: negative integral constant converted to unsigned type
body: <p>my struct : </p>
  
  <pre><code>  struct member{
          std::string ip_address;
          std::string port;
  
      protected:
          friend class boost::serialization::access;
  
          template&lt;class Archive&gt;
          void serialize(Archive &amp; ar, const unsigned int version)
          {
              ar &amp; ip_address;
              ar &amp; port;
          }
      };
  </code></pre>
  
  <p>when I use it to save and load it works perfectly, all the data is as I expect it to be, </p>
  
  <pre><code>std::vector&lt;member&gt; members;
  std::ostringstream ss; 
  boost::archive::text_oarchive oa(ss); 
  oa&lt;&lt;members;
  
  
  std::istringstream ss_(received_data.data()); 
  boost::archive::text_iarchive ia(ss_); 
  ia&gt;&gt;members;
  </code></pre>
  
  <p>but on compiling I get this warning</p>
  
  <pre><code>warning C4308: negative integral constant converted to unsigned type
  1&gt;        c:\program files\boost\boost_1_51\boost\serialization\static_warning.hpp(92) : see reference to class template instantiation 'boost::mpl::print&lt;T&gt;' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            T=boost::serialization::BOOST_SERIALIZATION_STATIC_WARNING_LINE&lt;98&gt;
  1&gt;        ]
  1&gt;        c:\program files\boost\boost_1_51\boost\archive\detail\check.hpp(98) : see reference to class template instantiation 'boost::serialization::static_warning_test&lt;B,L&gt;' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            B=false,
  1&gt;            L=98
  1&gt;        ]
  1&gt;        c:\program files\boost\boost_1_51\boost\archive\detail\oserializer.hpp(313) : see reference to function template instantiation 'void boost::archive::detail::check_object_tracking&lt;T&gt;(void)' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            T=std::vector&lt;member&gt;
  1&gt;        ]
  1&gt;        c:\program files\boost\boost_1_51\boost\archive\detail\oserializer.hpp(525) : see reference to function template instantiation 'void boost::archive::detail::save_non_pointer_type&lt;Archive&gt;::invoke&lt;T&gt;(Archive &amp;,T &amp;)' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            Archive=boost::archive::text_oarchive,
  1&gt;            T=std::vector&lt;member&gt;
  1&gt;        ]
  1&gt;        c:\program files\boost\boost_1_51\boost\archive\detail\common_oarchive.hpp(69) : see reference to function template instantiation 'void boost::archive::save&lt;Archive,T&gt;(Archive &amp;,T &amp;)' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            Archive=boost::archive::text_oarchive,
  1&gt;            T=std::vector&lt;member&gt;
  1&gt;        ]
  1&gt;        c:\program files\boost\boost_1_51\boost\archive\basic_text_oarchive.hpp(80) : see reference to function template instantiation 'void boost::archive::detail::common_oarchive&lt;Archive&gt;::save_override&lt;T&gt;(T &amp;,int)' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            Archive=boost::archive::text_oarchive,
  1&gt;            T=std::vector&lt;member&gt;
  1&gt;        ]
  1&gt;        c:\program files\boost\boost_1_51\boost\archive\detail\interface_oarchive.hpp(63) : see reference to function template instantiation 'void boost::archive::basic_text_oarchive&lt;Archive&gt;::save_override&lt;T&gt;(T &amp;,int)' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            Archive=boost::archive::text_oarchive,
  1&gt;            T=std::vector&lt;member&gt;
  1&gt;        ]
  1&gt;        c:\users\user\desktop\shve\shve\member_server.h(58) : see reference to function template instantiation 'Archive &amp;boost::archive::detail::interface_oarchive&lt;Archive&gt;::operator &lt;&lt;&lt;std::vector&lt;_Ty&gt;&gt;(T &amp;)' being compiled
  1&gt;        with
  1&gt;        [
  1&gt;            Archive=boost::archive::text_oarchive,
  1&gt;            _Ty=member,
  1&gt;            T=std::vector&lt;member&gt;
  1&gt;        ]
  </code></pre>