2
0
mirror of https://github.com/boostorg/pfr.git synced 2026-01-19 04:22:13 +00:00
Commit Graph

198 Commits

Author SHA1 Message Date
Antony Polukhin
e27bb2a979 Add helper GIT files 2018-06-12 13:08:15 +03:00
Antony Polukhin
aec668962d Document the unions behavior and fix #22 2018-06-12 13:06:37 +03:00
Antony Polukhin
8efe184b7a Fix test compilation on MSVC (2) 2018-06-02 20:18:16 +03:00
Antony Polukhin
4ca855fdbb Fix test compilation on MSVC 2018-06-02 19:58:47 +03:00
Antony Polukhin
ee7a716b6d Update copyrights 2018-06-02 12:21:56 +03:00
Antony Polukhin
d36729a3ad Make static_assert messages more visible 2018-06-02 00:18:27 +03:00
Antony Polukhin
4a6d8d10c7 More static asserts and tests on unions (#22) 2018-05-31 23:26:15 +03:00
Antony Polukhin
cb12e9a05d Disable all the flat reflection for unions (refs #22) 2018-05-30 23:33:19 +03:00
Antony Polukhin
ea47144b60 More tests on unions (refs #22) 2018-05-30 23:04:03 +03:00
Antony Polukhin
e7abff68f6 Some tests for unions #22 2018-05-24 20:36:20 +03:00
Antony Polukhin
8b575abe43 We can pass string_view by copy now (like all the cool people do\!), because we do not use forward declared string_view any more. 2018-02-21 23:29:26 +03:00
Antony Polukhin
d9735b867c Set sudo to true to make sanitizers comfortable 2018-02-20 23:31:43 +03:00
Antony Polukhin
a229d560ee Remove leak sanitizer comand line option (address sanitizer includes leak sanitizer). This may probably fix the CI failures with GCC-7 2018-02-20 23:16:18 +03:00
Antony Polukhin
a11ff11ab4 Do not forward declare basic_string_view. Fixes #19 2018-02-20 22:52:48 +03:00
Antony Polukhin
250d5011f4 Travis CI related fixes 2017-10-20 18:02:26 +03:00
Antony Polukhin
30d65a2ad4 Test on GCC7 in C++14 and C++17 modes instead of testing on clang 2017-10-20 17:08:44 +03:00
Antony Polukhin
2007f2f339 Test on clang too in TravisCI 2017-10-20 16:46:57 +03:00
Antony Polukhin
1bdc6cae9b Made tests more strict and updated MSVC bersion in readme 2017-10-20 16:45:55 +03:00
Antony Polukhin
72b69d3288 GCC related fixes and simplifications 2017-10-20 14:26:07 +03:00
Antony Polukhin
8031f575fe Ironed out the lvalues and rvalues in detail namespace. Less template instantiations must happen now 2017-10-18 22:40:54 +03:00
Antony Polukhin
999e7d8619 Dropped BOOST_PFR_NO_STRICT_ALIASING macro 2017-10-18 22:38:32 +03:00
Antony Polukhin
b8f5ddd70f MSVC related checks improved and Appveyor fixes applied 2017-10-18 22:37:29 +03:00
Antony Polukhin
f686c9a77e Fixes for autotesting on MinGW 2017-10-18 11:05:10 +03:00
Antony Polukhin
6a5a04de55 Run MinGW instead of MSVC in Appveyor. Apveyor does not have the latest MSVC, required for PFR library build 2017-10-17 23:20:41 +03:00
Antony Polukhin
372f72a9fd Appveyor script fixes 2017-10-17 22:23:07 +03:00
Antony Polukhin
a9e5e73c30 Simplifications for MSVC and some polishing 2017-10-17 22:02:31 +03:00
Antony Polukhin
0c0332fe97 Use preview version of msvc in appveyor 2017-10-17 10:11:01 +03:00
Antony Polukhin
ab5140df52 Relax MSVC check 2017-10-17 09:00:26 +03:00
Antony Polukhin
d487496605 Appveyor fixes and badges update 2017-10-17 00:06:50 +03:00
Antony Polukhin
52b7f8f83a Final MSVC fixes, including detection idiom rewrite and simplifications of some tests. Docs updated to show MSVC usage ability 2017-10-17 00:01:15 +03:00
Antony Polukhin
d7cfbef235 MSVC fixes 2017-10-16 23:59:21 +03:00
Antony Polukhin
c48df9ba12 Multiple small fixes and improved testing 2017-10-16 23:58:34 +03:00
Antony Polukhin
12f8e1baa1 Fixes for non default constructible classes in loophole impl 2017-10-16 23:56:32 +03:00
Antony Polukhin
1b138a4bd7 Fixes for classes that could be constructed from everything. Fixes #15 2017-10-16 23:55:05 +03:00
Antony Polukhin
623e0ec093 More compile time checks and tests for #14 2017-10-13 21:30:06 +03:00
Antony Polukhin
5770f67671 Polishing: use std::addressof for getting address of user provided type, make some functions static and constexpr 2017-10-13 20:33:39 +03:00
Antony Polukhin
6814449a82 Merge pull request #13 from cbeck88/develop
Attempt to factor out cast_to_layout_compatible
2017-10-12 14:52:03 +03:00
Antony Polukhin
f91d809fc0 Polished readme 2017-10-01 22:10:34 +03:00
Antony Polukhin
41d73e45d4 Added one more example and some tests 2017-10-01 21:57:27 +03:00
Chris Beck
d37163cc98 use internal implementation of std::aligned_storage, remove constexpr
this fixes msvc2017 issues in godbolt
2017-09-28 15:40:39 -07:00
Chris Beck
29ab2524aa massaging of offset_based_getter offset calculation and code comments 2017-09-28 15:13:38 -07:00
Chris Beck
96b7c38666 fixup handling of volatile qualified user-defined types in offset_based_getter 2017-09-28 12:37:57 -07:00
Chris Beck
a9b952cdb8 add a configuration flag to control the use of offset_based_getter
this might be useful if on some compilers, cast_to_layout_compatible
leads to better codegen
2017-09-28 12:33:52 -07:00
Antony Polukhin
f75fa56076 Fixed issue #11 - incorrect fields count detection for non-default-constructible types 2017-09-28 21:08:32 +03:00
Chris Beck
af8be96595 adjust a code comment in offset_based_getter 2017-09-28 07:55:34 -07:00
Chris Beck
3aba48c9a9 use cast_to_layout_compatible again for enums in core14_loophole
this partially reverts a subtle change to static_cast in
551b36a536

the reason that is wrong is that the static_cast produces a new value,
while we need to produce a reference to the underlying type of the enum
essentially.
2017-09-28 07:13:55 -07:00
Chris Beck
62b972e500 comment out rvalue-reference overloads of offset_based_getter
this mirrors the earlier practice of commenting this out in
cast_to_layout_compatible
2017-09-28 07:03:50 -07:00
Chris Beck
6844dcb48f attempt to fixup value category logic changes introduced in the refactor
i didn't think intuitively that these changes were significant but they
appear to be necessary to pass the tests
2017-09-27 23:23:53 -07:00
Chris Beck
2a6a4752b8 add support for volatile qualifier to offset_based_getter 2017-09-27 22:14:21 -07:00
Chris Beck
f0dfa5ed4e add some more code comments around offset_based_getter 2017-09-27 21:48:36 -07:00