Commit Graph

493 Commits

Author SHA1 Message Date
Peter Dimov
e2bb07e160 Add detail/is_fixed_enum.hpp 2020-05-02 21:16:12 +03:00
Peter Dimov
7f025ef4b6 Change >> to > > for C++03 2020-05-02 20:32:42 +03:00
Peter Dimov
ceb58197d5 Add detail/is_scoped_enum.hpp 2020-05-02 20:23:35 +03:00
Peter Dimov
21eed3fd59 Update is_trivially_copyable to also check has_trivial_destructor in the fallback case 2020-05-02 02:25:15 +03:00
Peter Dimov
e1b7981a53 ppc64le doesn't have 32 bit boost-1.73.0.beta1 boost-1.73.0 2020-03-13 00:45:03 +02:00
Peter Dimov
2b101c64a9 Fix alignment test for 32 bit Linux/macOS 2020-03-12 00:59:43 +02:00
Peter Dimov
38598d02a3 Only use address-model=32,64 on selected Travis configurations 2020-03-12 00:50:31 +02:00
Peter Dimov
073ba8ad7d Add address-model=32,64 to Travis 2020-03-11 15:18:12 +02:00
Peter Dimov
a5ae1bb09f Remove stray sentences 2020-01-22 03:48:38 +02:00
Peter Dimov
520d37eb9f Update synopsis of native buffer and arithmetic typedefs 2020-01-22 01:26:11 +02:00
Peter Dimov
81ac17540a Update overview; move 'choosing approach' section after it 2020-01-21 04:26:38 +02:00
Peter Dimov
7eaa25ec2a Delete the no-longer referenced mini_review_topics.adoc 2020-01-21 03:59:00 +02:00
Peter Dimov
297a146950 Move history and acknowledgments to an appendix 2020-01-21 03:58:05 +02:00
Peter Dimov
627fa385f1 Clarify revision history entry about floating point support 2020-01-21 03:29:49 +02:00
Peter Dimov
290761ec3d Move arm64/ppc64le/s390x jobs to the top; add C++14 to them; remove stray VARIANT=release 2020-01-13 19:43:11 +02:00
Peter Dimov
f143fe172d Fix conversion_test.cpp to not rely on BOOST_ENDIAN_BIG_BYTE 2020-01-13 19:41:04 +02:00
Peter Dimov
94bf4b41f4 Add more architectures to Travis 2020-01-13 17:16:17 +02:00
Peter Dimov
69c020ea8f Constrain the primary endian_reverse to not apply to class types; add test. Fixes #41. 2020-01-13 16:22:16 +02:00
Peter Dimov
3d053160ce Switch Travis to Xenial 2020-01-05 04:53:37 +02:00
Peter Dimov
3a50c15a97 Add CMake install support, tests 2020-01-05 03:29:05 +02:00
Peter Dimov
816c7597e3 Add order_test.cpp 2020-01-05 01:32:57 +02:00
Peter Dimov
7ac116915c __i386__ and __x86_64__ are little-endian (g++ 4.4 unfortunately has no other endianness macros) 2020-01-05 01:07:15 +02:00
Peter Dimov
1330d0f3c4 Add more macOS Travis jobs 2020-01-05 00:07:16 +02:00
Peter Dimov
7854cc109d Remove use of Predef in detail/order.hpp 2020-01-04 23:21:23 +02:00
Peter Dimov
1a8b6a498b Remove use of Predef in endian_test.cpp 2020-01-04 21:27:39 +02:00
Peter Dimov
b8139ad7a1 Remove use of Predef in arithmetic.hpp, buffers.hpp, conversion.hpp 2020-01-04 21:18:35 +02:00
Peter Dimov
3de20eb340 Merge pull request #38 from tanzislam/fix-macro-use-with-template-parameters
Fix BOOST_STATIC_ASSERT with template arguments
boost-1.72.0.beta1 boost-1.72.0
2019-10-25 14:06:07 -07:00
Tanzinul Islam
7f9a618b8c Fix BOOST_STATIC_ASSERT with template arguments
a2025a932 introduced a `BOOST_STATIC_ASSERT`-check with a template argument list. This causes a compilation error in a pre-C++11 compiler without support for variadic arguments (i.e. if `BOOST_NO_CXX11_VARIADIC_MACROS` is set).

For example:
    $ echo '#include <boost/endian/buffers.hpp>' > test.cpp
    $ g++ -c -std=c++03 -DBOOST_NO_CXX11_VARIADIC_MACROS -I/path/to/boost test.cpp

results in:

```
In file included from /path/to/boost/boost/endian/detail/endian_store.hpp:9,
                 from /path/to/boost/boost/endian/buffers.hpp:30,
                 from test.cpp:1:
/path/to/boost/boost/endian/detail/endian_reverse.hpp:111:76: error: macro "BOOST_STATIC_ASSERT" passed 2 arguments, but takes just 1
  111 |     BOOST_STATIC_ASSERT( is_integral<T>::value && !is_same<T, bool>::value );
      |                                                                            ^
In file included from /path/to/boost/boost/endian/detail/endian_reverse.hpp:13,
                 from /path/to/boost/boost/endian/detail/endian_store.hpp:9,
                 from /path/to/boost/boost/endian/buffers.hpp:30,
                 from test.cpp:1:
/path/to/boost/boost/static_assert.hpp:157: note: macro "BOOST_STATIC_ASSERT" defined here
  157 | #     define BOOST_STATIC_ASSERT( B ) \
      |
```
2019-10-25 15:18:24 +01:00
Peter Dimov
57d14c5cc5 Update revision history 2019-10-23 16:42:00 +03:00
Peter Dimov
c64f7c3372 Add <boost/endian.hpp> 2019-10-22 19:41:49 +03:00
Peter Dimov
fbc198e75d Add __int128 support to endian_reverse 2019-10-20 21:28:38 +03:00
Peter Dimov
b2faa783ad Update documentation for data() 2019-10-16 00:20:58 +03:00
Peter Dimov
51f095f019 Add data_test 2019-10-15 21:07:40 +03:00
Peter Dimov
59097ada36 Change data() to return unsigned char*; add non-const versions 2019-10-15 18:58:48 +03:00
Peter Dimov
a12049ae04 Document floating point typedefs 2019-10-15 03:11:55 +03:00
Peter Dimov
af83fc2537 Add float_typedef_test 2019-10-15 02:41:11 +03:00
Peter Dimov
b015a164f8 Add floating point typedefs to arithmetic.hpp; rename double64 to float64 in buffers.hpp 2019-10-15 02:26:58 +03:00
Peter Dimov
f992e9d3e4 Test floating point typedefs in buffer_test 2019-10-15 02:08:57 +03:00
Peter Dimov
ac0383f28d Test floating point in endian_arithmetic_test 2019-10-15 02:02:11 +03:00
Peter Dimov
e6136ddf27 Add floating point buffer typedefs 2019-10-15 01:54:26 +03:00
Peter Dimov
60a5068070 Fix whitespace 2019-10-12 22:27:04 +03:00
Peter Dimov
52bbc9147b Update changelog for constexpr endian_reverse 2019-10-12 21:55:11 +03:00
Peter Dimov
41ee26a8d8 Document convenience load/store functions 2019-10-12 20:25:28 +03:00
Peter Dimov
4054afda70 Add convenience store functions 2019-10-12 19:21:19 +03:00
Peter Dimov
22d0d7bcd1 Add convenience load functions 2019-10-12 18:50:59 +03:00
Peter Dimov
0704c271b1 Test clang-win with the VS2017 image 2019-10-12 02:29:39 +03:00
Peter Dimov
cd84a98a88 Add VS2019 to Appveyor 2019-10-12 00:48:41 +03:00
Peter Dimov
33dea996a7 Add constexpr tests for *_to_*, conditional_reverse 2019-10-11 19:57:49 +03:00
Peter Dimov
704cd4d9f7 Skip endian_reverse_cx_test when using non-constexpr intrinsics 2019-10-11 19:48:11 +03:00
Peter Dimov
a4bc0f1a44 Make endian_reverse constexpr when possible 2019-10-11 19:43:02 +03:00