This approach for arena-allocated objects destruction seems for me to be a little bit unusual. Why not creating wrapper classes similar to unique_ptr o vector, which allocate memory from an arena instance and call destructors of stored objects upon their destruction?
Panzerschrek•2h ago