Given an actual compiler there should be a construct method in object_pool like ``` template<typename... Args> element_type * construct(Args&&... args); ``` See https://en.cppreference.com/w/cpp/memory/shared_ptr/make_shared