endian_in_union_test.cpp 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. // endian_in_union_test.cpp -------------------------------------------------//
  2. // Copyright Beman Dawes 2008
  3. // Distributed under the Boost Software License, Version 1.0. (See accompanying
  4. // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  5. // See library home page at http://www.boost.org/libs/endian
  6. //----------------------------------------------------------------------------//
  7. #define BOOST_ENDIAN_FORCE_PODNESS
  8. #include <boost/endian/detail/disable_warnings.hpp>
  9. #include <boost/endian/arithmetic.hpp>
  10. using namespace boost::endian;
  11. union U
  12. {
  13. big_int8_t big_8;
  14. big_int16_t big_16;
  15. big_int24_t big_24;
  16. big_int32_t big_32;
  17. big_int40_t big_40;
  18. big_int48_t big_48;
  19. big_int56_t big_56;
  20. big_int64_t big_64;
  21. big_uint8_t big_u8;
  22. big_uint16_t big_u16;
  23. big_uint24_t big_u24;
  24. big_uint32_t big_u32;
  25. big_uint40_t big_u40;
  26. big_uint48_t big_u48;
  27. big_uint56_t big_u56;
  28. big_uint64_t big_u64;
  29. little_int8_t little_8;
  30. little_int16_t little_16;
  31. little_int24_t little_24;
  32. little_int32_t little_32;
  33. little_int40_t little_40;
  34. little_int48_t little_48;
  35. little_int56_t little_56;
  36. little_int64_t little_64;
  37. little_uint8_t little_u8;
  38. little_uint16_t little_u16;
  39. little_uint24_t little_u24;
  40. little_uint32_t little_u32;
  41. little_uint40_t little_u40;
  42. little_uint48_t little_u48;
  43. little_uint56_t little_u56;
  44. little_uint64_t little_u64;
  45. native_int8_t native_8;
  46. native_int16_t native_16;
  47. native_int24_t native_24;
  48. native_int32_t native_32;
  49. native_int40_t native_40;
  50. native_int48_t native_48;
  51. native_int56_t native_56;
  52. native_int64_t native_64;
  53. native_uint8_t native_u8;
  54. native_uint16_t native_u16;
  55. native_uint24_t native_u24;
  56. native_uint32_t native_u32;
  57. native_uint40_t native_u40;
  58. native_uint48_t native_u48;
  59. native_uint56_t native_u56;
  60. native_uint64_t native_u64;
  61. };
  62. U foo;
  63. int main()
  64. {
  65. }