Skip to content

3.12.01 Release

Compare
Choose a tag to compare
@rparolin rparolin released this 09 Aug 17:29
· 208 commits to master since this release
  • eastl::pair first element constructor required fix due to a Clang compiler bug when using is_default_constructible type trait on a class with NSDMI.
  • eastl::is_final type trait support added.
  • eastl::endian support for C++20 conformance.
  • eastl::fixed_pool improving swap performance by enabling move semantics.
  • eastl::optional bug fixes to properly destroy held objects when assigning another object.
  • eastl::string bug fixes for string_view substr ctor overload.
  • eastl::function improved C++17 standards conformance
    • Can now call functions where return type is implicity converitble to the
      return type specified in the function template
    • Implemented missing functions for operator=, such as operator=(Functor&&)
    • operator bool() is now explicit so function cannot be implicit convertible
      to bool in wierd unintended places (eg. vectoreastl::function).
    • SFINAE away the templated construct/operator= so it is not a candidate in
      the overload set
  • eastl::function && eastl::fixed_function now share a common implementation
  • eastl::invoke_result && eastl::is_invocable are now C++14 compliant
    • can be used in an unevaluated context
    • typename F is no longer required to be a Callable
  • Added EASTL_CPP17_INLINE_VARIABLE macro to declare a variable as inline
  • eastl::pair first element constructor overload can not be toggled to give users the opportunity to fix their code before the overloads are removed in a future release.
    • Look at the feature define: EASTL_ENABLE_PAIR_FIRST_ELEMENT_CONSTRUCTOR
  • eastl::string_map and eastl::string_hash_map optimizations to avoid implicit eastl::string conversions.
  • eastl::ring_buffer fixes when using an underlying container with a large stack memory requirement that it allocates the required heap allocation from the containers allocator -- not the default EASTL allocator instance.