microsoft / mimalloc

mimalloc is a compact general purpose allocator with excellent performance.
MIT License
9.74k stars 791 forks source link

Override a couple additional C++ delete symbols #863

Closed tbwLcFm5uXcAeQ closed 2 months ago

tbwLcFm5uXcAeQ commented 3 months ago

I found some delete symbols in libstdc++ that are currently not overridden:

del_opant.o:  _ZdlPvSt11align_val_tRKSt9nothrow_t
del_opnt.o:   _ZdlPvRKSt9nothrow_t
del_opvant.o: _ZdaPvSt11align_val_tRKSt9nothrow_t
del_opvnt.o:  _ZdaPvRKSt9nothrow_t

Should they be overriden?

daanx commented 3 months ago

Uh, maybe. Sometimes it does not matter as most of these functions eventually use malloc directly. Do you know the C++ type signatures of the above functions?

tbwLcFm5uXcAeQ commented 3 months ago

Here you go:

del_opant.o:  _ZdlPvSt11align_val_tRKSt9nothrow_t => operator delete(void*, std::align_val_t, std::nothrow_t const&) 
del_opnt.o:   _ZdlPvRKSt9nothrow_t                => operator delete(void*, std::nothrow_t const&) 
del_opvant.o: _ZdaPvSt11align_val_tRKSt9nothrow_t => operator delete[](void*, std::align_val_t, std::nothrow_t const&) 
del_opvnt.o:  _ZdaPvRKSt9nothrow_t                => operator delete[](void*, std::nothrow_t const&)
daanx commented 2 months ago

Thanks! I merged it in dev/dev-slice.