Does this handle byte packing and bitwise operations such as bitfields do?  Is byte ordering 1 for free here as desired?

#pragma push (pack ,1)
struct
{
    boost::uint32_t rawSensorValue1 : 12;
    boost::uint32_t errorFlag1: 1;
    boost::uint32_t rawSensorValue2 : 12;
    boost::uint32_t errorFlag2: 1;
    boost::uint32_t unused : 6;

};
#pragma pop (pack)

Brian