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