commit 7e1489630f34b472cb571a2f7ffb863d8e86f598
parent 4692b18a244f65207b5d2c2f0451ff54f50474c0
Author: d.levin256@gmail.com <d.levin256@gmail.com>
Date: Mon, 25 Nov 2019 12:33:38 +0000
Workaround for aligned new
Diffstat:
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/kfr/base/pointer.hpp b/include/kfr/base/pointer.hpp
@@ -111,7 +111,7 @@ struct expression_vtable<T, 0>
}
};
-struct expression_resource : aligned_new
+struct expression_resource
{
virtual ~expression_resource() {}
virtual void* instance() { return nullptr; }
@@ -133,7 +133,7 @@ KFR_INTRINSIC std::shared_ptr<expression_resource> make_resource(E&& e)
{
using T = expression_resource_impl<decay<E>>;
return std::static_pointer_cast<expression_resource>(
- std::allocate_shared<T>(allocator<T>(), std::move(e)));
+ std::shared_ptr<T>(new (aligned_allocate<T>()) T(std::move(e))));
}
template <typename T, bool enable_resource>