| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| 3.18.00.tar.gz | 2021-10-20 | 1.6 MB | |
| 3.18.00.zip | 2021-10-20 | 1.8 MB | |
| README.md | 2021-10-20 | 2.2 kB | |
| Totals: 3 Items | 3.4 MB | 0 | |
Welcome to the 3.18.00 release of EASTL. Thank you to everyone who's contributed to this release.
Feature additions and standard updates:
- Implemented eastl::bit_cast.
- Implemented eastl::is_nothrow_invocable.
- Implemented eastl::to_underlying.
- Implemented LWG defect 2106: move_iterator doesn't work with iterators which don't return a reference
Bugfixes:
- eastl::invoke fixes:
- invoke now correctly deduces the function signature when invoking a member function or member data pointer on a reference_wrapper. Previously, this would fail if using arguments which were convertible to the correct type, but did not exactly match.
- invoke now correctly forwards arguments when invoking a member data pointer.
- invoke now correctly uses decay_t instead of remove_reference_t in a number of places.
- invoke_result_t no longer uses decay_t on the type being invoked.
-
invoke is now constexpr.
-
eastl::variant fixes:
- Fixed incorrect results from some relational operators when valueless_by_exception() is true.
-
Fixed incorrect index when an exception is thrown during emplace().
-
Removed assertions from some eastl::array functions in order to ensure usability in constexpr contexts.
- eastl::make_signed and eastl::make_unsigned now work correctly for enum types and volatile-qualified types.
- Containers which support find_as now support using it with keys of the same type as the container's key.
- Disallowed use of smart pointer default deleter on incomplete types.
- Fixed an issue where nodes for some data structures could be under-aligned.
- Properly supported arrays in eastl::cbegin() and eastl::cend().
- Fixed creation of zero-length spans and subspans.
- eastl::is_reference now returns true for rvalue references.
- Fixed a potential out-of-bounds memory access when sorting certain containers.
Optimizations:
- eastl::variant optimizations:
- Avoided unnecessary double index checks in variant relational operators.
- Avoided unnecessary work in valueless_by_exception() when exceptions are disabled.
- Optimized visit() for the common case of visiting a single variant.
- Removed unnecessary copies during visit().