Boost logo

Boost Users :

Subject: [Boost-users] Serialization: C4308 warning with MSVC9
From: Political Confusion (politicalconfusion_at_[hidden])
Date: 2010-05-16 21:05:56


I'm using Boost 1.43 with MSVC9 SP1 and Windows SDK v7 on Windows 7. I've created a class like the "A Very Simple Case" example (i.e. added 'access' as friend and a templated serialize function). In serialize, I just archive 10 ints (signed and unsigned). It compiles fine, but when I add program code to save my class to a text_oarchive, I get a warning:

c:\third-party\boost_1_43_0\boost\mpl\print.hpp(51) : warning C4308: negative integral constant converted to unsigned type

Line 51 of print.hpp is: enum { n = sizeof(T) + -1 };

Calling sizeof() on my class gives a 44. I do not get any warning when I load my class with text_iarchive. And both save and load appear to work fine.

      


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net