mirror of
https://github.com/boostorg/endian.git
synced 2026-05-05 12:24:18 +02:00
Revert the default (*_t) types to unaligned, and used *_at to identify the aligned types. See mini-review thread for rationale.
This commit is contained in:
+119
-119
@@ -194,67 +194,67 @@ void op_test_aux()
|
||||
Test<T1, unsigned long>::test();
|
||||
Test<T1, long long>::test();
|
||||
Test<T1, unsigned long long>::test();
|
||||
Test<T1, be::big_int16_at>::test();
|
||||
Test<T1, be::big_int32_at>::test();
|
||||
Test<T1, be::big_int64_at>::test();
|
||||
Test<T1, be::big_uint16_at>::test();
|
||||
Test<T1, be::big_uint32_at>::test();
|
||||
Test<T1, be::big_uint64_at>::test();
|
||||
Test<T1, be::little_int16_at>::test();
|
||||
Test<T1, be::little_int32_at>::test();
|
||||
Test<T1, be::little_int64_at>::test();
|
||||
Test<T1, be::little_uint16_at>::test();
|
||||
Test<T1, be::little_uint32_at>::test();
|
||||
Test<T1, be::little_uint64_at>::test();
|
||||
Test<T1, be::big_int8_t>::test();
|
||||
Test<T1, be::big_int16_t>::test();
|
||||
Test<T1, be::big_int24_t>::test();
|
||||
Test<T1, be::big_int32_t>::test();
|
||||
Test<T1, be::big_int40_t>::test();
|
||||
Test<T1, be::big_int48_t>::test();
|
||||
Test<T1, be::big_int56_t>::test();
|
||||
Test<T1, be::big_int64_t>::test();
|
||||
Test<T1, be::big_uint8_t>::test();
|
||||
Test<T1, be::big_uint16_t>::test();
|
||||
Test<T1, be::big_uint24_t>::test();
|
||||
Test<T1, be::big_uint32_t>::test();
|
||||
Test<T1, be::big_uint40_t>::test();
|
||||
Test<T1, be::big_uint64_t>::test();
|
||||
Test<T1, be::little_int16_t>::test();
|
||||
Test<T1, be::little_int24_t>::test();
|
||||
Test<T1, be::little_int32_t>::test();
|
||||
Test<T1, be::little_int64_t>::test();
|
||||
Test<T1, be::little_uint16_t>::test();
|
||||
Test<T1, be::little_uint32_t>::test();
|
||||
Test<T1, be::little_uint56_t>::test();
|
||||
Test<T1, be::little_uint64_t>::test();
|
||||
Test<T1, be::big_int8_ut>::test();
|
||||
Test<T1, be::big_int16_ut>::test();
|
||||
Test<T1, be::big_int24_ut>::test();
|
||||
Test<T1, be::big_int32_ut>::test();
|
||||
Test<T1, be::big_int40_ut>::test();
|
||||
Test<T1, be::big_int48_ut>::test();
|
||||
Test<T1, be::big_int56_ut>::test();
|
||||
Test<T1, be::big_int64_ut>::test();
|
||||
Test<T1, be::big_uint8_ut>::test();
|
||||
Test<T1, be::big_uint16_ut>::test();
|
||||
Test<T1, be::big_uint24_ut>::test();
|
||||
Test<T1, be::big_uint32_ut>::test();
|
||||
Test<T1, be::big_uint40_ut>::test();
|
||||
Test<T1, be::big_uint64_ut>::test();
|
||||
Test<T1, be::little_int16_ut>::test();
|
||||
Test<T1, be::little_int24_ut>::test();
|
||||
Test<T1, be::little_int32_ut>::test();
|
||||
Test<T1, be::little_int64_ut>::test();
|
||||
Test<T1, be::little_uint16_ut>::test();
|
||||
Test<T1, be::little_uint32_ut>::test();
|
||||
Test<T1, be::little_uint56_ut>::test();
|
||||
Test<T1, be::little_uint64_ut>::test();
|
||||
Test<T1, be::native_int16_ut>::test();
|
||||
Test<T1, be::native_int24_ut>::test();
|
||||
Test<T1, be::native_int32_ut>::test();
|
||||
Test<T1, be::native_int64_ut>::test();
|
||||
Test<T1, be::native_int16_t>::test();
|
||||
Test<T1, be::native_int24_t>::test();
|
||||
Test<T1, be::native_int32_t>::test();
|
||||
Test<T1, be::native_int64_t>::test();
|
||||
#ifdef BOOST_LONG_ENDIAN_TEST
|
||||
Test<T1, be::native_uint16_ut>::test();
|
||||
Test<T1, be::native_uint24_ut>::test();
|
||||
Test<T1, be::native_uint32_ut>::test();
|
||||
Test<T1, be::native_uint48_ut>::test();
|
||||
Test<T1, be::native_uint64_ut>::test();
|
||||
Test<T1, be::big_uint48_ut>::test();
|
||||
Test<T1, be::big_uint56_ut>::test();
|
||||
Test<T1, be::little_int8_ut>::test();
|
||||
Test<T1, be::little_int56_ut>::test();
|
||||
Test<T1, be::little_int40_ut>::test();
|
||||
Test<T1, be::little_int48_ut>::test();
|
||||
Test<T1, be::little_uint8_ut>::test();
|
||||
Test<T1, be::little_uint24_ut>::test();
|
||||
Test<T1, be::little_uint40_ut>::test();
|
||||
Test<T1, be::little_uint48_ut>::test();
|
||||
Test<T1, be::native_int8_ut>::test();
|
||||
Test<T1, be::native_int40_ut>::test();
|
||||
Test<T1, be::native_int48_ut>::test();
|
||||
Test<T1, be::native_int56_ut>::test();
|
||||
Test<T1, be::native_uint8_ut>::test();
|
||||
Test<T1, be::native_uint40_ut>::test();
|
||||
Test<T1, be::native_uint56_ut>::test();
|
||||
Test<T1, be::native_uint16_t>::test();
|
||||
Test<T1, be::native_uint24_t>::test();
|
||||
Test<T1, be::native_uint32_t>::test();
|
||||
Test<T1, be::native_uint48_t>::test();
|
||||
Test<T1, be::native_uint64_t>::test();
|
||||
Test<T1, be::big_uint48_t>::test();
|
||||
Test<T1, be::big_uint56_t>::test();
|
||||
Test<T1, be::little_int8_t>::test();
|
||||
Test<T1, be::little_int56_t>::test();
|
||||
Test<T1, be::little_int40_t>::test();
|
||||
Test<T1, be::little_int48_t>::test();
|
||||
Test<T1, be::little_uint8_t>::test();
|
||||
Test<T1, be::little_uint24_t>::test();
|
||||
Test<T1, be::little_uint40_t>::test();
|
||||
Test<T1, be::little_uint48_t>::test();
|
||||
Test<T1, be::native_int8_t>::test();
|
||||
Test<T1, be::native_int40_t>::test();
|
||||
Test<T1, be::native_int48_t>::test();
|
||||
Test<T1, be::native_int56_t>::test();
|
||||
Test<T1, be::native_uint8_t>::test();
|
||||
Test<T1, be::native_uint40_t>::test();
|
||||
Test<T1, be::native_uint56_t>::test();
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -272,61 +272,61 @@ void op_test()
|
||||
op_test_aux<Test, unsigned long>();
|
||||
op_test_aux<Test, long long>();
|
||||
op_test_aux<Test, unsigned long long>();
|
||||
op_test_aux<Test, be::big_int16_t>();
|
||||
op_test_aux<Test, be::big_int32_t>();
|
||||
op_test_aux<Test, be::big_int64_t>();
|
||||
op_test_aux<Test, be::little_int16_t>();
|
||||
op_test_aux<Test, be::little_int32_t>();
|
||||
op_test_aux<Test, be::little_int64_t>();
|
||||
op_test_aux<Test, be::big_int16_at>();
|
||||
op_test_aux<Test, be::big_int32_at>();
|
||||
op_test_aux<Test, be::big_int64_at>();
|
||||
op_test_aux<Test, be::little_int16_at>();
|
||||
op_test_aux<Test, be::little_int32_at>();
|
||||
op_test_aux<Test, be::little_int64_at>();
|
||||
#ifdef BOOST_LONG_ENDIAN_TEST
|
||||
op_test_aux<Test, be::big_int8_ut>();
|
||||
op_test_aux<Test, be::big_int16_ut>();
|
||||
op_test_aux<Test, be::big_int24_ut>();
|
||||
op_test_aux<Test, be::big_int32_ut>();
|
||||
op_test_aux<Test, be::big_int40_ut>();
|
||||
op_test_aux<Test, be::big_int48_ut>();
|
||||
op_test_aux<Test, be::big_int56_ut>();
|
||||
op_test_aux<Test, be::big_int64_ut>();
|
||||
op_test_aux<Test, be::big_uint8_ut>();
|
||||
op_test_aux<Test, be::big_uint16_ut>();
|
||||
op_test_aux<Test, be::big_uint24_ut>();
|
||||
op_test_aux<Test, be::big_uint32_ut>();
|
||||
op_test_aux<Test, be::big_uint40_ut>();
|
||||
op_test_aux<Test, be::big_uint48_ut>();
|
||||
op_test_aux<Test, be::big_uint56_ut>();
|
||||
op_test_aux<Test, be::big_uint64_ut>();
|
||||
op_test_aux<Test, be::little_int8_ut>();
|
||||
op_test_aux<Test, be::little_int16_ut>();
|
||||
op_test_aux<Test, be::little_int24_ut>();
|
||||
op_test_aux<Test, be::little_int32_ut>();
|
||||
op_test_aux<Test, be::little_int40_ut>();
|
||||
op_test_aux<Test, be::little_int48_ut>();
|
||||
op_test_aux<Test, be::little_int56_ut>();
|
||||
op_test_aux<Test, be::little_int64_ut>();
|
||||
op_test_aux<Test, be::little_uint8_ut>();
|
||||
op_test_aux<Test, be::little_uint16_ut>();
|
||||
op_test_aux<Test, be::little_uint24_ut>();
|
||||
op_test_aux<Test, be::little_uint32_ut>();
|
||||
op_test_aux<Test, be::little_uint40_ut>();
|
||||
op_test_aux<Test, be::little_uint48_ut>();
|
||||
op_test_aux<Test, be::little_uint56_ut>();
|
||||
op_test_aux<Test, be::little_uint64_ut>();
|
||||
op_test_aux<Test, be::native_int8_ut>();
|
||||
op_test_aux<Test, be::native_int16_ut>();
|
||||
op_test_aux<Test, be::native_int24_ut>();
|
||||
op_test_aux<Test, be::native_int32_ut>();
|
||||
op_test_aux<Test, be::native_int40_ut>();
|
||||
op_test_aux<Test, be::native_int48_ut>();
|
||||
op_test_aux<Test, be::native_int56_ut>();
|
||||
op_test_aux<Test, be::native_int64_ut>();
|
||||
op_test_aux<Test, be::native_uint8_ut>();
|
||||
op_test_aux<Test, be::native_uint16_ut>();
|
||||
op_test_aux<Test, be::native_uint24_ut>();
|
||||
op_test_aux<Test, be::native_uint32_ut>();
|
||||
op_test_aux<Test, be::native_uint40_ut>();
|
||||
op_test_aux<Test, be::native_uint48_ut>();
|
||||
op_test_aux<Test, be::native_uint56_ut>();
|
||||
op_test_aux<Test, be::native_uint64_ut>();
|
||||
op_test_aux<Test, be::big_int8_t>();
|
||||
op_test_aux<Test, be::big_int16_t>();
|
||||
op_test_aux<Test, be::big_int24_t>();
|
||||
op_test_aux<Test, be::big_int32_t>();
|
||||
op_test_aux<Test, be::big_int40_t>();
|
||||
op_test_aux<Test, be::big_int48_t>();
|
||||
op_test_aux<Test, be::big_int56_t>();
|
||||
op_test_aux<Test, be::big_int64_t>();
|
||||
op_test_aux<Test, be::big_uint8_t>();
|
||||
op_test_aux<Test, be::big_uint16_t>();
|
||||
op_test_aux<Test, be::big_uint24_t>();
|
||||
op_test_aux<Test, be::big_uint32_t>();
|
||||
op_test_aux<Test, be::big_uint40_t>();
|
||||
op_test_aux<Test, be::big_uint48_t>();
|
||||
op_test_aux<Test, be::big_uint56_t>();
|
||||
op_test_aux<Test, be::big_uint64_t>();
|
||||
op_test_aux<Test, be::little_int8_t>();
|
||||
op_test_aux<Test, be::little_int16_t>();
|
||||
op_test_aux<Test, be::little_int24_t>();
|
||||
op_test_aux<Test, be::little_int32_t>();
|
||||
op_test_aux<Test, be::little_int40_t>();
|
||||
op_test_aux<Test, be::little_int48_t>();
|
||||
op_test_aux<Test, be::little_int56_t>();
|
||||
op_test_aux<Test, be::little_int64_t>();
|
||||
op_test_aux<Test, be::little_uint8_t>();
|
||||
op_test_aux<Test, be::little_uint16_t>();
|
||||
op_test_aux<Test, be::little_uint24_t>();
|
||||
op_test_aux<Test, be::little_uint32_t>();
|
||||
op_test_aux<Test, be::little_uint40_t>();
|
||||
op_test_aux<Test, be::little_uint48_t>();
|
||||
op_test_aux<Test, be::little_uint56_t>();
|
||||
op_test_aux<Test, be::little_uint64_t>();
|
||||
op_test_aux<Test, be::native_int8_t>();
|
||||
op_test_aux<Test, be::native_int16_t>();
|
||||
op_test_aux<Test, be::native_int24_t>();
|
||||
op_test_aux<Test, be::native_int32_t>();
|
||||
op_test_aux<Test, be::native_int40_t>();
|
||||
op_test_aux<Test, be::native_int48_t>();
|
||||
op_test_aux<Test, be::native_int56_t>();
|
||||
op_test_aux<Test, be::native_int64_t>();
|
||||
op_test_aux<Test, be::native_uint8_t>();
|
||||
op_test_aux<Test, be::native_uint16_t>();
|
||||
op_test_aux<Test, be::native_uint24_t>();
|
||||
op_test_aux<Test, be::native_uint32_t>();
|
||||
op_test_aux<Test, be::native_uint40_t>();
|
||||
op_test_aux<Test, be::native_uint48_t>();
|
||||
op_test_aux<Test, be::native_uint56_t>();
|
||||
op_test_aux<Test, be::native_uint64_t>();
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -336,8 +336,8 @@ void test_inserter_and_extractor()
|
||||
{
|
||||
std::cout << "test inserter and extractor..." << std::endl;
|
||||
|
||||
be::big_uint64_ut bu64(0x010203040506070ULL);
|
||||
be::little_uint64_ut lu64(0x010203040506070ULL);
|
||||
be::big_uint64_t bu64(0x010203040506070ULL);
|
||||
be::little_uint64_t lu64(0x010203040506070ULL);
|
||||
|
||||
uint64_t x;
|
||||
|
||||
@@ -354,13 +354,13 @@ void test_inserter_and_extractor()
|
||||
|
||||
ss.clear();
|
||||
ss << 0x010203040506070ULL;
|
||||
be::big_uint64_ut bu64z(0);
|
||||
be::big_uint64_t bu64z(0);
|
||||
ss >> bu64z;
|
||||
BOOST_TEST_EQ(bu64z, bu64);
|
||||
|
||||
ss.clear();
|
||||
ss << 0x010203040506070ULL;
|
||||
be::little_uint64_ut lu64z(0);
|
||||
be::little_uint64_t lu64z(0);
|
||||
ss >> lu64z;
|
||||
BOOST_TEST_EQ(lu64z, lu64);
|
||||
|
||||
@@ -368,7 +368,7 @@ void test_inserter_and_extractor()
|
||||
|
||||
}
|
||||
|
||||
void f_big_int32_ut(be::big_int32_ut) {}
|
||||
void f_big_int32_ut(be::big_int32_t) {}
|
||||
|
||||
// main ------------------------------------------------------------------------------//
|
||||
|
||||
@@ -378,10 +378,10 @@ int cpp_main(int, char * [])
|
||||
|
||||
// make sure some simple things work
|
||||
|
||||
be::big_int32_ut o1(1);
|
||||
be::big_int32_ut o2(2L);
|
||||
be::big_int32_ut o3(3LL);
|
||||
be::big_int64_ut o4(1);
|
||||
be::big_int32_t o1(1);
|
||||
be::big_int32_t o2(2L);
|
||||
be::big_int32_t o3(3LL);
|
||||
be::big_int64_t o4(1);
|
||||
|
||||
// use cases; if BOOST_ENDIAN_LOG is defined, will output to clog info on
|
||||
// what overloads and conversions are actually being performed.
|
||||
@@ -389,13 +389,13 @@ int cpp_main(int, char * [])
|
||||
be::endian_log = true;
|
||||
|
||||
std::clog << "set up test values\n";
|
||||
be::big_int32_ut big(12345);
|
||||
be::little_uint16_ut little_u(10);
|
||||
be::big_int64_ut result;
|
||||
be::big_int32_t big(12345);
|
||||
be::little_uint16_t little_u(10);
|
||||
be::big_int64_t result;
|
||||
|
||||
// this is the use case that is so irritating that it caused the endian
|
||||
// constructors to be made non-explicit
|
||||
std::clog << "\nf(1234) where f(big_int32_ut)\n";
|
||||
std::clog << "\nf(1234) where f(big_int32_t)\n";
|
||||
f_big_int32_ut(1234);
|
||||
|
||||
std::clog << "\nresult = big\n";
|
||||
@@ -456,8 +456,8 @@ int cpp_main(int, char * [])
|
||||
// test from Roland Schwarz that detected ambiguities; these ambiguities
|
||||
// were eliminated by BOOST_ENDIAN_MINIMAL_COVER_OPERATORS
|
||||
unsigned u;
|
||||
be::little_uint32_ut u1;
|
||||
be::little_uint32_ut u2;
|
||||
be::little_uint32_t u1;
|
||||
be::little_uint32_t u2;
|
||||
|
||||
u = 9;
|
||||
u1 = 1;
|
||||
@@ -467,7 +467,7 @@ int cpp_main(int, char * [])
|
||||
|
||||
// variations to detect ambiguities
|
||||
|
||||
be::little_uint32_ut u3 = u1 + 5;
|
||||
be::little_uint32_t u3 = u1 + 5;
|
||||
u3 = u1 + 5u;
|
||||
|
||||
if (u1 == 5)
|
||||
@@ -482,7 +482,7 @@ int cpp_main(int, char * [])
|
||||
u2 = u1 + 5u;
|
||||
|
||||
// one more wrinkle
|
||||
be::little_uint16_ut u4(3);
|
||||
be::little_uint16_t u4(3);
|
||||
u4 = 3;
|
||||
std::clog << "\nu2 = u1 + u4\n";
|
||||
u2 = u1 + u4;
|
||||
|
||||
Reference in New Issue
Block a user