diff --git a/include/xo/alloc/GC.hpp b/include/xo/alloc/GC.hpp index d145e2c7..313306bc 100644 --- a/include/xo/alloc/GC.hpp +++ b/include/xo/alloc/GC.hpp @@ -119,6 +119,8 @@ namespace xo { **/ class GcCopyCallback { public: + virtual ~GcCopyCallback() = default; + virtual void notify_gc_copy(std::size_t z, const void * src_addr, const void * dest_addr, generation src_gen, generation dest_gen) = 0; /** invoked when added to callback set (i.e. @ref GC::GcCopyCallbackSet) **/ diff --git a/include/xo/alloc/ObjectStatistics.hpp b/include/xo/alloc/ObjectStatistics.hpp index ced3b463..43ddd70e 100644 --- a/include/xo/alloc/ObjectStatistics.hpp +++ b/include/xo/alloc/ObjectStatistics.hpp @@ -56,7 +56,8 @@ namespace xo { * * Passed to @ref Object::deep_move for example **/ - struct ObjectStatistics { + class ObjectStatistics { + public: void display(std::ostream & os) const; /** per-object-type statistics, indexed by TypeId **/ diff --git a/src/alloc/ArenaAlloc.cpp b/src/alloc/ArenaAlloc.cpp index 9703d103..4fdcefe8 100644 --- a/src/alloc/ArenaAlloc.cpp +++ b/src/alloc/ArenaAlloc.cpp @@ -9,6 +9,7 @@ #include "xo/indentlog/scope.hpp" #include "xo/indentlog/print/tag.hpp" #include +#include // for getpagesize() on OSX #include namespace xo {