Closed Ryan-rsm-McKenzie closed 3 years ago
The unscoped call to free here can find unwanted overloads of the function and throw compilation errors. Here's an example:
free
#include <cstdlib> #include "robin_hood.h" namespace foo { void free(void* ptr) { std::free(ptr); } enum bar {}; } int main() { robin_hood::unordered_set<foo::bar> error; return 0; }
Resolving the scope like ::free should solve it.
::free
Thanks for finding this, should be fixed in the latest commits (no release yet though)
The unscoped call to
free
here can find unwanted overloads of the function and throw compilation errors. Here's an example:Resolving the scope like
::free
should solve it.