Commit Graph
449 Commits
Author SHA1 Message Date
Peter Dimov 706747ab08 Work around g++'s instantiating X on typeid(X*) 2021-10-08 09:44:23 +03:00
Peter Dimov 41c3b6a7dd Reimplement type_name with class templates to avoid instantiating types such as pair<void, void> and tuple<void> 2021-10-08 09:23:26 +03:00
Peter Dimov 8cf4d16297 Merge branch 'feature/type-name' into feature/lwt-type-name 2021-10-05 19:47:11 +03:00
Peter Dimov 0deaa2d502 Update msvc-12.0 workaround 2021-10-05 19:22:20 +03:00
Peter Dimov 98630095f3 Merge branch 'develop' into feature/lwt-type-name 2021-10-05 16:24:49 +03:00
Peter Dimov 6985b1ae25 Remove extra semicolons 2021-10-05 15:53:16 +03:00
Peter Dimov 8ab119135c Add overload for char8_t because Mac has no typeinfo for char8_t 2021-10-05 15:46:22 +03:00
Peter Dimov 1fd2cadddd g++ 4.4 has no string::front 2021-10-05 15:38:33 +03:00
Peter Dimov bb0c6381f6 Add msvc workarounds 2021-10-05 08:04:01 +03:00
Peter Dimov 4f6f7c3799 Add tests for all fundamental types 2021-10-05 07:50:52 +03:00
Peter Dimov cd1a8fd238 Support pointers to members 2021-10-05 07:25:35 +03:00
Peter Dimov b0b48c5783 Support qualified function types 2021-10-05 07:05:34 +03:00
Peter Dimov ccdf5ce031 Track the type suffix independently for better decomposition of functions and arrays 2021-10-05 06:45:41 +03:00
Peter Dimov b3906601f7 Merge branch 'feature/type-name' into feature/lwt-type-name 2021-10-05 05:43:01 +03:00
Peter Dimov f833040d48 Disable msvc warnings around tn_is_function 2021-10-05 05:42:41 +03:00
Peter Dimov 3b5595e940 Merge branch 'feature/type-name' into feature/lwt-type-name 2021-10-05 05:31:09 +03:00
Peter Dimov b93317815c Apply msvc-12.0 (and below) workarounds 2021-10-05 05:30:37 +03:00
Peter Dimov 36cec9a5cc Handle references to functions 2021-10-05 05:01:05 +03:00
Peter Dimov 290340fd27 Use core::type_name in lightweight_test_trait 2021-10-05 04:58:52 +03:00
Peter Dimov 5e382efa84 Fix std::ostream failure on libstdc++ 2021-10-01 15:51:13 +03:00
Peter Dimov e260bb865d Add support for string_view 2021-10-01 15:07:19 +03:00
Peter Dimov f884833b42 Add workaround for msvc-10.0 2021-09-30 03:21:31 +03:00
Peter Dimov a5cbddc466 Add test for enums 2021-09-29 21:09:19 +03:00
Peter Dimov 91a64b3bcf Add support for std::array 2021-09-29 21:02:39 +03:00
Peter Dimov a039f8c318 Support -fno-rtti 2021-09-29 20:53:38 +03:00
Peter Dimov bebb7349ba Add workarounds for msvc-12.0 and earlier 2021-09-29 20:05:23 +03:00
Peter Dimov dc6e3261ec Use typedef instead of using 2021-09-29 19:51:16 +03:00
Peter Dimov 15a7d84858 Use basic_string<char8_t> instead of u8string 2021-09-29 19:50:14 +03:00
Peter Dimov 06023d4ffe Strip libstdc++ and libc++ inline namespaces 2021-09-29 19:34:37 +03:00
Peter Dimov 3e0bc52c32 Add <boost/core/type_name.hpp> 2021-09-29 19:13:12 +03:00
Peter Dimov 177c093151 Automatically use generic cmath if FP_SUBNORMAL isn't defined 2021-09-14 18:57:33 +03:00
Peter Dimov 8043bafb6b Add a generic cmath.hpp implementation, enabled when BOOST_CORE_USE_GENERIC_CMATH is defined 2021-09-14 16:50:34 +03:00
Peter Dimov df91243a1d Whether wchar_t is signed is implementation-defined 2021-08-21 20:28:47 +03:00
Evan Miller 128d9314d6 Restore support for ancient Mac OS
Mac OS 10.4 and earlier lack Availability.h, causing compilation to
fail. Rearrange the macro logic to include Availability.h only if we
already think there may be support for uncaught exceptions.
2021-07-01 16:32:40 -04:00
Peter Dimov 012d96a72b Use non-const references in non-variadic branch as well 2021-06-10 10:09:46 +03:00
Peter Dimov 27d700ec01 Use non-const references in ignore_unused to avoid g++-11 warning 2021-06-10 09:54:51 +03:00
Glen Fernandes ddbaa242a9 Update copyright comments 2021-02-16 02:14:14 -05:00
Glen Fernandes 86bff4c2d3 Revise allocator access utilities
Now supports MSVC 2013, and no workarounds use allocator_traits.
2021-02-15 22:11:41 -05:00
Peter Dimov afba04cf7f Output non-printable chars as \xXY 2021-01-20 02:38:57 +02:00
Peter Dimov 2729beab83 Print char types as numeric values (C++20 deletes these ostream overloads) 2021-01-20 01:54:37 +02:00
Peter Dimov fa82b680cf Work around clang++ 3.3 failure 2020-12-30 19:40:52 +02:00
Peter Dimov 16e9536146 Implement boost::core::endian 2020-12-29 02:41:15 +02:00
Peter Dimov 919b98d425 Use __builtin_popcount 2020-12-29 02:06:56 +02:00
Peter Dimov e8aa0c75b4 Use _BitScanForward 2020-12-29 02:02:33 +02:00
Peter Dimov 8bd2239b0b Use __builtin_ctz 2020-12-29 01:56:34 +02:00
Peter Dimov c838ebc003 Use _BitScanReverse 2020-12-29 01:53:30 +02:00
Peter Dimov aca46fae91 Use __builtin_clz 2020-12-29 01:28:59 +02:00
Peter Dimov 409c809cd8 Add popcount 2020-12-29 01:06:22 +02:00
Peter Dimov 26728848b4 Add bit_ceil 2020-12-29 00:29:44 +02:00
Peter Dimov cc877e6b5b Add countl_zero, countl_one 2020-12-28 23:40:59 +02:00