diff --git a/include/xo/gc/GCObjectStore.hpp b/include/xo/gc/GCObjectStore.hpp index 83aec4e..1191e17 100644 --- a/include/xo/gc/GCObjectStore.hpp +++ b/include/xo/gc/GCObjectStore.hpp @@ -49,7 +49,7 @@ namespace xo { /** lookup interface from type sequence * (can use tseq = typeseq::id() for type T) **/ - const AGCObject * lookup_type(typeseq tseq) const noexcept; + AGCObject * lookup_type(typeseq tseq) const noexcept; /** generation to which pointer @p addr belongs, given role @p r; * sentinel if not found in this collector @@ -217,7 +217,7 @@ namespace xo { * Shallow: does not traverse children **/ void * _shallow_move(DX1Collector * gc, - const AGCObject * iface, + AGCObject * iface, void * from_src); private: diff --git a/src/gc/GCObjectStore.cpp b/src/gc/GCObjectStore.cpp index df897e3..9fb1449 100644 --- a/src/gc/GCObjectStore.cpp +++ b/src/gc/GCObjectStore.cpp @@ -110,7 +110,7 @@ namespace xo { return slot.is_occupied(); } - const AGCObject * + AGCObject * GCObjectStore::lookup_type(typeseq tseq) const noexcept { scope log(XO_DEBUG(false)); @@ -846,7 +846,7 @@ namespace xo { GCMoveCheckpoint gray_lo_v = this->snap_move_checkpoint(upto); //obj alloc(this); - const AGCObject * iface = lookup_type(tseq); + AGCObject * iface = this->lookup_type(tseq); assert(iface->_has_null_vptr() == false); @@ -861,7 +861,7 @@ namespace xo { void * GCObjectStore::_shallow_move(DX1Collector * gc, - const AGCObject * iface, + AGCObject * iface, void * from_src) { scope log(XO_DEBUG(config_.debug_flag_));